VTPrsTbl.c revision 2eaa94a1
12eaa94a1Schristos/* $XTermId: VTPrsTbl.c,v 1.50 2008/05/26 22:38:23 tom Exp $ */ 2d522f475Smrg 3d522f475Smrg/* 4d522f475Smrg * 5d522f475Smrg * Copyright 1999-2006,2008 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 58d522f475Smrg#if !OPT_DEC_LOCATOR 59d522f475Smrg#undef CASE_CSI_TICK_STATE 60d522f475Smrg#define CASE_CSI_TICK_STATE CASE_CSI_IGNORE 61d522f475Smrg#endif 62d522f475Smrg 63d522f475Smrg#if !OPT_WIDE_CHARS 64d522f475Smrg#undef CASE_ESC_PERCENT 65d522f475Smrg#define CASE_ESC_PERCENT CASE_ESC_IGNORE 66d522f475Smrg#endif 67d522f475Smrg 68d522f475Smrg#if !OPT_MOD_FKEYS 69d522f475Smrg#undef CASE_SET_MOD_FKEYS 70d522f475Smrg#define CASE_SET_MOD_FKEYS CASE_GROUND_STATE 71d522f475Smrg#undef CASE_SET_MOD_FKEYS0 72d522f475Smrg#define CASE_SET_MOD_FKEYS0 CASE_GROUND_STATE 73d522f475Smrg#endif 74d522f475Smrg 75d522f475Smrg/* 76d522f475Smrg * Stupid Apollo C preprocessor can't handle long lines. So... To keep 77d522f475Smrg * it happy, we put each onto a separate line.... Sigh... 78d522f475Smrg */ 79d522f475Smrg 80d522f475SmrgConst PARSE_T ansi_table[] = 81d522f475Smrg{ 82d522f475Smrg/* NUL SOH STX ETX */ 83d522f475SmrgCASE_IGNORE, 84d522f475SmrgCASE_IGNORE, 85d522f475SmrgCASE_IGNORE, 86d522f475SmrgCASE_IGNORE, 87d522f475Smrg/* EOT ENQ ACK BEL */ 88d522f475SmrgCASE_IGNORE, 89d522f475SmrgCASE_ENQ, 90d522f475SmrgCASE_IGNORE, 91d522f475SmrgCASE_BELL, 92d522f475Smrg/* BS HT NL VT */ 93d522f475SmrgCASE_BS, 94d522f475SmrgCASE_TAB, 95d522f475SmrgCASE_VMOT, 96d522f475SmrgCASE_VMOT, 97d522f475Smrg/* NP CR SO SI */ 98d522f475SmrgCASE_VMOT, 99d522f475SmrgCASE_CR, 100d522f475SmrgCASE_SO, 101d522f475SmrgCASE_SI, 102d522f475Smrg/* DLE DC1 DC2 DC3 */ 103d522f475SmrgCASE_IGNORE, 104d522f475SmrgCASE_IGNORE, 105d522f475SmrgCASE_IGNORE, 106d522f475SmrgCASE_IGNORE, 107d522f475Smrg/* DC4 NAK SYN ETB */ 108d522f475SmrgCASE_IGNORE, 109d522f475SmrgCASE_IGNORE, 110d522f475SmrgCASE_IGNORE, 111d522f475SmrgCASE_IGNORE, 112d522f475Smrg/* CAN EM SUB ESC */ 113d522f475SmrgCASE_GROUND_STATE, 114d522f475SmrgCASE_IGNORE, 115d522f475SmrgCASE_GROUND_STATE, 116d522f475SmrgCASE_ESC, 117d522f475Smrg/* FS GS RS US */ 118d522f475SmrgCASE_IGNORE, 119d522f475SmrgCASE_IGNORE, 120d522f475SmrgCASE_IGNORE, 121d522f475SmrgCASE_IGNORE, 122d522f475Smrg/* SP ! " # */ 123d522f475SmrgCASE_PRINT, 124d522f475SmrgCASE_PRINT, 125d522f475SmrgCASE_PRINT, 126d522f475SmrgCASE_PRINT, 127d522f475Smrg/* $ % & ' */ 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/* 0 1 2 3 */ 143d522f475SmrgCASE_PRINT, 144d522f475SmrgCASE_PRINT, 145d522f475SmrgCASE_PRINT, 146d522f475SmrgCASE_PRINT, 147d522f475Smrg/* 4 5 6 7 */ 148d522f475SmrgCASE_PRINT, 149d522f475SmrgCASE_PRINT, 150d522f475SmrgCASE_PRINT, 151d522f475SmrgCASE_PRINT, 152d522f475Smrg/* 8 9 : ; */ 153d522f475SmrgCASE_PRINT, 154d522f475SmrgCASE_PRINT, 155d522f475SmrgCASE_PRINT, 156d522f475SmrgCASE_PRINT, 157d522f475Smrg/* < = > ? */ 158d522f475SmrgCASE_PRINT, 159d522f475SmrgCASE_PRINT, 160d522f475SmrgCASE_PRINT, 161d522f475SmrgCASE_PRINT, 162d522f475Smrg/* @ A B C */ 163d522f475SmrgCASE_PRINT, 164d522f475SmrgCASE_PRINT, 165d522f475SmrgCASE_PRINT, 166d522f475SmrgCASE_PRINT, 167d522f475Smrg/* D E F G */ 168d522f475SmrgCASE_PRINT, 169d522f475SmrgCASE_PRINT, 170d522f475SmrgCASE_PRINT, 171d522f475SmrgCASE_PRINT, 172d522f475Smrg/* H I J K */ 173d522f475SmrgCASE_PRINT, 174d522f475SmrgCASE_PRINT, 175d522f475SmrgCASE_PRINT, 176d522f475SmrgCASE_PRINT, 177d522f475Smrg/* L M N O */ 178d522f475SmrgCASE_PRINT, 179d522f475SmrgCASE_PRINT, 180d522f475SmrgCASE_PRINT, 181d522f475SmrgCASE_PRINT, 182d522f475Smrg/* P Q R S */ 183d522f475SmrgCASE_PRINT, 184d522f475SmrgCASE_PRINT, 185d522f475SmrgCASE_PRINT, 186d522f475SmrgCASE_PRINT, 187d522f475Smrg/* T U V W */ 188d522f475SmrgCASE_PRINT, 189d522f475SmrgCASE_PRINT, 190d522f475SmrgCASE_PRINT, 191d522f475SmrgCASE_PRINT, 192d522f475Smrg/* X Y Z [ */ 193d522f475SmrgCASE_PRINT, 194d522f475SmrgCASE_PRINT, 195d522f475SmrgCASE_PRINT, 196d522f475SmrgCASE_PRINT, 197d522f475Smrg/* \ ] ^ _ */ 198d522f475SmrgCASE_PRINT, 199d522f475SmrgCASE_PRINT, 200d522f475SmrgCASE_PRINT, 201d522f475SmrgCASE_PRINT, 202d522f475Smrg/* ` a b c */ 203d522f475SmrgCASE_PRINT, 204d522f475SmrgCASE_PRINT, 205d522f475SmrgCASE_PRINT, 206d522f475SmrgCASE_PRINT, 207d522f475Smrg/* d e f g */ 208d522f475SmrgCASE_PRINT, 209d522f475SmrgCASE_PRINT, 210d522f475SmrgCASE_PRINT, 211d522f475SmrgCASE_PRINT, 212d522f475Smrg/* h i j k */ 213d522f475SmrgCASE_PRINT, 214d522f475SmrgCASE_PRINT, 215d522f475SmrgCASE_PRINT, 216d522f475SmrgCASE_PRINT, 217d522f475Smrg/* l m n o */ 218d522f475SmrgCASE_PRINT, 219d522f475SmrgCASE_PRINT, 220d522f475SmrgCASE_PRINT, 221d522f475SmrgCASE_PRINT, 222d522f475Smrg/* p q r s */ 223d522f475SmrgCASE_PRINT, 224d522f475SmrgCASE_PRINT, 225d522f475SmrgCASE_PRINT, 226d522f475SmrgCASE_PRINT, 227d522f475Smrg/* t u v w */ 228d522f475SmrgCASE_PRINT, 229d522f475SmrgCASE_PRINT, 230d522f475SmrgCASE_PRINT, 231d522f475SmrgCASE_PRINT, 232d522f475Smrg/* x y z { */ 233d522f475SmrgCASE_PRINT, 234d522f475SmrgCASE_PRINT, 235d522f475SmrgCASE_PRINT, 236d522f475SmrgCASE_PRINT, 237d522f475Smrg/* | } ~ DEL */ 238d522f475SmrgCASE_PRINT, 239d522f475SmrgCASE_PRINT, 240d522f475SmrgCASE_PRINT, 241d522f475SmrgCASE_IGNORE, 242d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 243d522f475SmrgCASE_GROUND_STATE, 244d522f475SmrgCASE_GROUND_STATE, 245d522f475SmrgCASE_GROUND_STATE, 246d522f475SmrgCASE_GROUND_STATE, 247d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 248d522f475SmrgCASE_IND, 249d522f475SmrgCASE_NEL, 250d522f475SmrgCASE_GROUND_STATE, 251d522f475SmrgCASE_GROUND_STATE, 252d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 253d522f475SmrgCASE_HTS, 254d522f475SmrgCASE_GROUND_STATE, 255d522f475SmrgCASE_GROUND_STATE, 256d522f475SmrgCASE_GROUND_STATE, 257d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 258d522f475SmrgCASE_GROUND_STATE, 259d522f475SmrgCASE_RI, 260d522f475SmrgCASE_SS2, 261d522f475SmrgCASE_SS3, 262d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 263d522f475SmrgCASE_DCS, 264d522f475SmrgCASE_GROUND_STATE, 265d522f475SmrgCASE_GROUND_STATE, 266d522f475SmrgCASE_GROUND_STATE, 267d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 268d522f475SmrgCASE_GROUND_STATE, 269d522f475SmrgCASE_GROUND_STATE, 270d522f475SmrgCASE_SPA, 271d522f475SmrgCASE_EPA, 272d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 273d522f475SmrgCASE_SOS, 274d522f475SmrgCASE_GROUND_STATE, 275d522f475SmrgCASE_DECID, 276d522f475SmrgCASE_CSI_STATE, 277d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 278d522f475SmrgCASE_ST, 279d522f475SmrgCASE_OSC, 280d522f475SmrgCASE_PM, 281d522f475SmrgCASE_APC, 282d522f475Smrg/* nobreakspace exclamdown cent sterling */ 283d522f475SmrgCASE_PRINT, 284d522f475SmrgCASE_PRINT, 285d522f475SmrgCASE_PRINT, 286d522f475SmrgCASE_PRINT, 287d522f475Smrg/* currency yen brokenbar section */ 288d522f475SmrgCASE_PRINT, 289d522f475SmrgCASE_PRINT, 290d522f475SmrgCASE_PRINT, 291d522f475SmrgCASE_PRINT, 292d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 293d522f475SmrgCASE_PRINT, 294d522f475SmrgCASE_PRINT, 295d522f475SmrgCASE_PRINT, 296d522f475SmrgCASE_PRINT, 297d522f475Smrg/* notsign hyphen registered macron */ 298d522f475SmrgCASE_PRINT, 299d522f475SmrgCASE_PRINT, 300d522f475SmrgCASE_PRINT, 301d522f475SmrgCASE_PRINT, 302d522f475Smrg/* degree plusminus twosuperior threesuperior */ 303d522f475SmrgCASE_PRINT, 304d522f475SmrgCASE_PRINT, 305d522f475SmrgCASE_PRINT, 306d522f475SmrgCASE_PRINT, 307d522f475Smrg/* acute mu paragraph periodcentered */ 308d522f475SmrgCASE_PRINT, 309d522f475SmrgCASE_PRINT, 310d522f475SmrgCASE_PRINT, 311d522f475SmrgCASE_PRINT, 312d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 313d522f475SmrgCASE_PRINT, 314d522f475SmrgCASE_PRINT, 315d522f475SmrgCASE_PRINT, 316d522f475SmrgCASE_PRINT, 317d522f475Smrg/* onequarter onehalf threequarters questiondown */ 318d522f475SmrgCASE_PRINT, 319d522f475SmrgCASE_PRINT, 320d522f475SmrgCASE_PRINT, 321d522f475SmrgCASE_PRINT, 322d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 323d522f475SmrgCASE_PRINT, 324d522f475SmrgCASE_PRINT, 325d522f475SmrgCASE_PRINT, 326d522f475SmrgCASE_PRINT, 327d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 328d522f475SmrgCASE_PRINT, 329d522f475SmrgCASE_PRINT, 330d522f475SmrgCASE_PRINT, 331d522f475SmrgCASE_PRINT, 332d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 333d522f475SmrgCASE_PRINT, 334d522f475SmrgCASE_PRINT, 335d522f475SmrgCASE_PRINT, 336d522f475SmrgCASE_PRINT, 337d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 338d522f475SmrgCASE_PRINT, 339d522f475SmrgCASE_PRINT, 340d522f475SmrgCASE_PRINT, 341d522f475SmrgCASE_PRINT, 342d522f475Smrg/* Eth Ntilde Ograve Oacute */ 343d522f475SmrgCASE_PRINT, 344d522f475SmrgCASE_PRINT, 345d522f475SmrgCASE_PRINT, 346d522f475SmrgCASE_PRINT, 347d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 348d522f475SmrgCASE_PRINT, 349d522f475SmrgCASE_PRINT, 350d522f475SmrgCASE_PRINT, 351d522f475SmrgCASE_PRINT, 352d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 353d522f475SmrgCASE_PRINT, 354d522f475SmrgCASE_PRINT, 355d522f475SmrgCASE_PRINT, 356d522f475SmrgCASE_PRINT, 357d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 358d522f475SmrgCASE_PRINT, 359d522f475SmrgCASE_PRINT, 360d522f475SmrgCASE_PRINT, 361d522f475SmrgCASE_PRINT, 362d522f475Smrg/* agrave aacute acircumflex atilde */ 363d522f475SmrgCASE_PRINT, 364d522f475SmrgCASE_PRINT, 365d522f475SmrgCASE_PRINT, 366d522f475SmrgCASE_PRINT, 367d522f475Smrg/* adiaeresis aring ae ccedilla */ 368d522f475SmrgCASE_PRINT, 369d522f475SmrgCASE_PRINT, 370d522f475SmrgCASE_PRINT, 371d522f475SmrgCASE_PRINT, 372d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 373d522f475SmrgCASE_PRINT, 374d522f475SmrgCASE_PRINT, 375d522f475SmrgCASE_PRINT, 376d522f475SmrgCASE_PRINT, 377d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 378d522f475SmrgCASE_PRINT, 379d522f475SmrgCASE_PRINT, 380d522f475SmrgCASE_PRINT, 381d522f475SmrgCASE_PRINT, 382d522f475Smrg/* eth ntilde ograve oacute */ 383d522f475SmrgCASE_PRINT, 384d522f475SmrgCASE_PRINT, 385d522f475SmrgCASE_PRINT, 386d522f475SmrgCASE_PRINT, 387d522f475Smrg/* ocircumflex otilde odiaeresis division */ 388d522f475SmrgCASE_PRINT, 389d522f475SmrgCASE_PRINT, 390d522f475SmrgCASE_PRINT, 391d522f475SmrgCASE_PRINT, 392d522f475Smrg/* oslash ugrave uacute ucircumflex */ 393d522f475SmrgCASE_PRINT, 394d522f475SmrgCASE_PRINT, 395d522f475SmrgCASE_PRINT, 396d522f475SmrgCASE_PRINT, 397d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 398d522f475SmrgCASE_PRINT, 399d522f475SmrgCASE_PRINT, 400d522f475SmrgCASE_PRINT, 401d522f475SmrgCASE_PRINT, 402d522f475Smrg}; 403d522f475Smrg 404d522f475SmrgConst PARSE_T csi_table[] = /* CSI */ 405d522f475Smrg{ 406d522f475Smrg/* NUL SOH STX ETX */ 407d522f475SmrgCASE_IGNORE, 408d522f475SmrgCASE_IGNORE, 409d522f475SmrgCASE_IGNORE, 410d522f475SmrgCASE_IGNORE, 411d522f475Smrg/* EOT ENQ ACK BEL */ 412d522f475SmrgCASE_IGNORE, 413d522f475SmrgCASE_ENQ, 414d522f475SmrgCASE_IGNORE, 415d522f475SmrgCASE_BELL, 416d522f475Smrg/* BS HT NL VT */ 417d522f475SmrgCASE_BS, 418d522f475SmrgCASE_TAB, 419d522f475SmrgCASE_VMOT, 420d522f475SmrgCASE_VMOT, 421d522f475Smrg/* NP CR SO SI */ 422d522f475SmrgCASE_VMOT, 423d522f475SmrgCASE_CR, 424d522f475SmrgCASE_SO, 425d522f475SmrgCASE_SI, 426d522f475Smrg/* DLE DC1 DC2 DC3 */ 427d522f475SmrgCASE_IGNORE, 428d522f475SmrgCASE_IGNORE, 429d522f475SmrgCASE_IGNORE, 430d522f475SmrgCASE_IGNORE, 431d522f475Smrg/* DC4 NAK SYN ETB */ 432d522f475SmrgCASE_IGNORE, 433d522f475SmrgCASE_IGNORE, 434d522f475SmrgCASE_IGNORE, 435d522f475SmrgCASE_IGNORE, 436d522f475Smrg/* CAN EM SUB ESC */ 437d522f475SmrgCASE_GROUND_STATE, 438d522f475SmrgCASE_IGNORE, 439d522f475SmrgCASE_GROUND_STATE, 440d522f475SmrgCASE_ESC, 441d522f475Smrg/* FS GS RS US */ 442d522f475SmrgCASE_IGNORE, 443d522f475SmrgCASE_IGNORE, 444d522f475SmrgCASE_IGNORE, 445d522f475SmrgCASE_IGNORE, 446d522f475Smrg/* SP ! " # */ 447d522f475SmrgCASE_CSI_IGNORE, 448d522f475SmrgCASE_CSI_EX_STATE, 449d522f475SmrgCASE_CSI_QUOTE_STATE, 450d522f475SmrgCASE_CSI_IGNORE, 451d522f475Smrg/* $ % & ' */ 452d522f475SmrgCASE_CSI_IGNORE, 453d522f475SmrgCASE_CSI_IGNORE, 454d522f475SmrgCASE_CSI_IGNORE, 455d522f475SmrgCASE_CSI_TICK_STATE, 456d522f475Smrg/* ( ) * + */ 457d522f475SmrgCASE_CSI_IGNORE, 458d522f475SmrgCASE_CSI_IGNORE, 459d522f475SmrgCASE_CSI_IGNORE, 460d522f475SmrgCASE_CSI_IGNORE, 461d522f475Smrg/* , - . / */ 462d522f475SmrgCASE_CSI_IGNORE, 463d522f475SmrgCASE_CSI_IGNORE, 464d522f475SmrgCASE_CSI_IGNORE, 465d522f475SmrgCASE_CSI_IGNORE, 466d522f475Smrg/* 0 1 2 3 */ 467d522f475SmrgCASE_ESC_DIGIT, 468d522f475SmrgCASE_ESC_DIGIT, 469d522f475SmrgCASE_ESC_DIGIT, 470d522f475SmrgCASE_ESC_DIGIT, 471d522f475Smrg/* 4 5 6 7 */ 472d522f475SmrgCASE_ESC_DIGIT, 473d522f475SmrgCASE_ESC_DIGIT, 474d522f475SmrgCASE_ESC_DIGIT, 475d522f475SmrgCASE_ESC_DIGIT, 476d522f475Smrg/* 8 9 : ; */ 477d522f475SmrgCASE_ESC_DIGIT, 478d522f475SmrgCASE_ESC_DIGIT, 479d522f475SmrgCASE_CSI_IGNORE, 480d522f475SmrgCASE_ESC_SEMI, 481d522f475Smrg/* < = > ? */ 482d522f475SmrgCASE_CSI_IGNORE, 483d522f475SmrgCASE_DEC3_STATE, 484d522f475SmrgCASE_DEC2_STATE, 485d522f475SmrgCASE_DEC_STATE, 486d522f475Smrg/* @ A B C */ 487d522f475SmrgCASE_ICH, 488d522f475SmrgCASE_CUU, 489d522f475SmrgCASE_CUD, 490d522f475SmrgCASE_CUF, 491d522f475Smrg/* D E F G */ 492d522f475SmrgCASE_CUB, 493d522f475SmrgCASE_CNL, 494d522f475SmrgCASE_CPL, 495d522f475SmrgCASE_HPA, 496d522f475Smrg/* H I J K */ 497d522f475SmrgCASE_CUP, 498d522f475SmrgCASE_CHT, 499d522f475SmrgCASE_ED, 500d522f475SmrgCASE_EL, 501d522f475Smrg/* L M N O */ 502d522f475SmrgCASE_IL, 503d522f475SmrgCASE_DL, 504d522f475SmrgCASE_GROUND_STATE, 505d522f475SmrgCASE_GROUND_STATE, 506d522f475Smrg/* P Q R S */ 507d522f475SmrgCASE_DCH, 508d522f475SmrgCASE_GROUND_STATE, 509d522f475SmrgCASE_GROUND_STATE, 510d522f475SmrgCASE_SU, 511d522f475Smrg/* T U V W */ 512d522f475SmrgCASE_TRACK_MOUSE, 513d522f475SmrgCASE_GROUND_STATE, 514d522f475SmrgCASE_GROUND_STATE, 515d522f475SmrgCASE_GROUND_STATE, 516d522f475Smrg/* X Y Z [ */ 517d522f475SmrgCASE_ECH, 518d522f475SmrgCASE_GROUND_STATE, 519d522f475SmrgCASE_CBT, 520d522f475SmrgCASE_GROUND_STATE, 521d522f475Smrg/* \ ] ^ _ */ 522d522f475SmrgCASE_GROUND_STATE, 523d522f475SmrgCASE_GROUND_STATE, 524d522f475SmrgCASE_GROUND_STATE, 525d522f475SmrgCASE_GROUND_STATE, 526d522f475Smrg/* ` a b c */ 527d522f475SmrgCASE_HPA, 528d522f475SmrgCASE_GROUND_STATE, 529d522f475SmrgCASE_REP, 530d522f475SmrgCASE_DA1, 531d522f475Smrg/* d e f g */ 532d522f475SmrgCASE_VPA, 533d522f475SmrgCASE_GROUND_STATE, 534d522f475SmrgCASE_CUP, 535d522f475SmrgCASE_TBC, 536d522f475Smrg/* h i j k */ 537d522f475SmrgCASE_SET, 538d522f475SmrgCASE_MC, 539d522f475SmrgCASE_GROUND_STATE, 540d522f475SmrgCASE_GROUND_STATE, 541d522f475Smrg/* l m n o */ 542d522f475SmrgCASE_RST, 543d522f475SmrgCASE_SGR, 544d522f475SmrgCASE_CPR, 545d522f475SmrgCASE_GROUND_STATE, 546d522f475Smrg/* p q r s */ 547d522f475SmrgCASE_GROUND_STATE, 548d522f475SmrgCASE_GROUND_STATE, 549d522f475SmrgCASE_DECSTBM, 550d522f475SmrgCASE_DECSC, 551d522f475Smrg/* t u v w */ 552d522f475SmrgCASE_XTERM_WINOPS, 553d522f475SmrgCASE_DECRC, 554d522f475SmrgCASE_GROUND_STATE, 555d522f475SmrgCASE_GROUND_STATE, 556d522f475Smrg/* x y z { */ 557d522f475SmrgCASE_DECREQTPARM, 558d522f475SmrgCASE_GROUND_STATE, 559d522f475SmrgCASE_GROUND_STATE, 560d522f475SmrgCASE_GROUND_STATE, 561d522f475Smrg/* | } ~ DEL */ 562d522f475SmrgCASE_GROUND_STATE, 563d522f475SmrgCASE_GROUND_STATE, 564d522f475SmrgCASE_GROUND_STATE, 565d522f475SmrgCASE_IGNORE, 566d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 567d522f475SmrgCASE_GROUND_STATE, 568d522f475SmrgCASE_GROUND_STATE, 569d522f475SmrgCASE_GROUND_STATE, 570d522f475SmrgCASE_GROUND_STATE, 571d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 572d522f475SmrgCASE_IND, 573d522f475SmrgCASE_NEL, 574d522f475SmrgCASE_GROUND_STATE, 575d522f475SmrgCASE_GROUND_STATE, 576d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 577d522f475SmrgCASE_HTS, 578d522f475SmrgCASE_GROUND_STATE, 579d522f475SmrgCASE_GROUND_STATE, 580d522f475SmrgCASE_GROUND_STATE, 581d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 582d522f475SmrgCASE_GROUND_STATE, 583d522f475SmrgCASE_RI, 584d522f475SmrgCASE_SS2, 585d522f475SmrgCASE_SS3, 586d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 587d522f475SmrgCASE_DCS, 588d522f475SmrgCASE_GROUND_STATE, 589d522f475SmrgCASE_GROUND_STATE, 590d522f475SmrgCASE_GROUND_STATE, 591d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 592d522f475SmrgCASE_GROUND_STATE, 593d522f475SmrgCASE_GROUND_STATE, 594d522f475SmrgCASE_SPA, 595d522f475SmrgCASE_EPA, 596d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 597d522f475SmrgCASE_SOS, 598d522f475SmrgCASE_GROUND_STATE, 599d522f475SmrgCASE_DECID, 600d522f475SmrgCASE_CSI_STATE, 601d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 602d522f475SmrgCASE_ST, 603d522f475SmrgCASE_OSC, 604d522f475SmrgCASE_PM, 605d522f475SmrgCASE_APC, 606d522f475Smrg/* nobreakspace exclamdown cent sterling */ 607d522f475SmrgCASE_CSI_IGNORE, 608d522f475SmrgCASE_CSI_EX_STATE, 609d522f475SmrgCASE_CSI_QUOTE_STATE, 610d522f475SmrgCASE_CSI_IGNORE, 611d522f475Smrg/* currency yen brokenbar section */ 612d522f475SmrgCASE_CSI_IGNORE, 613d522f475SmrgCASE_CSI_IGNORE, 614d522f475SmrgCASE_CSI_IGNORE, 615d522f475SmrgCASE_CSI_TICK_STATE, 616d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 617d522f475SmrgCASE_CSI_IGNORE, 618d522f475SmrgCASE_CSI_IGNORE, 619d522f475SmrgCASE_CSI_IGNORE, 620d522f475SmrgCASE_CSI_IGNORE, 621d522f475Smrg/* notsign hyphen registered macron */ 622d522f475SmrgCASE_CSI_IGNORE, 623d522f475SmrgCASE_CSI_IGNORE, 624d522f475SmrgCASE_CSI_IGNORE, 625d522f475SmrgCASE_CSI_IGNORE, 626d522f475Smrg/* degree plusminus twosuperior threesuperior */ 627d522f475SmrgCASE_ESC_DIGIT, 628d522f475SmrgCASE_ESC_DIGIT, 629d522f475SmrgCASE_ESC_DIGIT, 630d522f475SmrgCASE_ESC_DIGIT, 631d522f475Smrg/* acute mu paragraph periodcentered */ 632d522f475SmrgCASE_ESC_DIGIT, 633d522f475SmrgCASE_ESC_DIGIT, 634d522f475SmrgCASE_ESC_DIGIT, 635d522f475SmrgCASE_ESC_DIGIT, 636d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 637d522f475SmrgCASE_ESC_DIGIT, 638d522f475SmrgCASE_ESC_DIGIT, 639d522f475SmrgCASE_CSI_IGNORE, 640d522f475SmrgCASE_ESC_SEMI, 641d522f475Smrg/* onequarter onehalf threequarters questiondown */ 642d522f475SmrgCASE_CSI_IGNORE, 643d522f475SmrgCASE_DEC3_STATE, 644d522f475SmrgCASE_DEC2_STATE, 645d522f475SmrgCASE_DEC_STATE, 646d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 647d522f475SmrgCASE_ICH, 648d522f475SmrgCASE_CUU, 649d522f475SmrgCASE_CUD, 650d522f475SmrgCASE_CUF, 651d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 652d522f475SmrgCASE_CUB, 653d522f475SmrgCASE_CNL, 654d522f475SmrgCASE_CPL, 655d522f475SmrgCASE_HPA, 656d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 657d522f475SmrgCASE_CUP, 658d522f475SmrgCASE_CHT, 659d522f475SmrgCASE_ED, 660d522f475SmrgCASE_EL, 661d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 662d522f475SmrgCASE_IL, 663d522f475SmrgCASE_DL, 664d522f475SmrgCASE_GROUND_STATE, 665d522f475SmrgCASE_GROUND_STATE, 666d522f475Smrg/* Eth Ntilde Ograve Oacute */ 667d522f475SmrgCASE_DCH, 668d522f475SmrgCASE_GROUND_STATE, 669d522f475SmrgCASE_GROUND_STATE, 670d522f475SmrgCASE_SU, 671d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 672d522f475SmrgCASE_TRACK_MOUSE, 673d522f475SmrgCASE_GROUND_STATE, 674d522f475SmrgCASE_GROUND_STATE, 675d522f475SmrgCASE_GROUND_STATE, 676d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 677d522f475SmrgCASE_ECH, 678d522f475SmrgCASE_GROUND_STATE, 679d522f475SmrgCASE_CBT, 680d522f475SmrgCASE_GROUND_STATE, 681d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 682d522f475SmrgCASE_GROUND_STATE, 683d522f475SmrgCASE_GROUND_STATE, 684d522f475SmrgCASE_GROUND_STATE, 685d522f475SmrgCASE_GROUND_STATE, 686d522f475Smrg/* agrave aacute acircumflex atilde */ 687d522f475SmrgCASE_HPA, 688d522f475SmrgCASE_GROUND_STATE, 689d522f475SmrgCASE_REP, 690d522f475SmrgCASE_DA1, 691d522f475Smrg/* adiaeresis aring ae ccedilla */ 692d522f475SmrgCASE_VPA, 693d522f475SmrgCASE_GROUND_STATE, 694d522f475SmrgCASE_CUP, 695d522f475SmrgCASE_TBC, 696d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 697d522f475SmrgCASE_SET, 698d522f475SmrgCASE_MC, 699d522f475SmrgCASE_GROUND_STATE, 700d522f475SmrgCASE_GROUND_STATE, 701d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 702d522f475SmrgCASE_RST, 703d522f475SmrgCASE_SGR, 704d522f475SmrgCASE_CPR, 705d522f475SmrgCASE_GROUND_STATE, 706d522f475Smrg/* eth ntilde ograve oacute */ 707d522f475SmrgCASE_GROUND_STATE, 708d522f475SmrgCASE_GROUND_STATE, 709d522f475SmrgCASE_DECSTBM, 710d522f475SmrgCASE_DECSC, 711d522f475Smrg/* ocircumflex otilde odiaeresis division */ 712d522f475SmrgCASE_XTERM_WINOPS, 713d522f475SmrgCASE_DECRC, 714d522f475SmrgCASE_GROUND_STATE, 715d522f475SmrgCASE_GROUND_STATE, 716d522f475Smrg/* oslash ugrave uacute ucircumflex */ 717d522f475SmrgCASE_DECREQTPARM, 718d522f475SmrgCASE_GROUND_STATE, 719d522f475SmrgCASE_GROUND_STATE, 720d522f475SmrgCASE_GROUND_STATE, 721d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 722d522f475SmrgCASE_GROUND_STATE, 723d522f475SmrgCASE_GROUND_STATE, 724d522f475SmrgCASE_GROUND_STATE, 725d522f475SmrgCASE_IGNORE, 726d522f475Smrg}; 727d522f475Smrg 728d522f475SmrgConst PARSE_T csi2_table[] = /* CSI */ 729d522f475Smrg{ 730d522f475Smrg/* NUL SOH STX ETX */ 731d522f475SmrgCASE_IGNORE, 732d522f475SmrgCASE_IGNORE, 733d522f475SmrgCASE_IGNORE, 734d522f475SmrgCASE_IGNORE, 735d522f475Smrg/* EOT ENQ ACK BEL */ 736d522f475SmrgCASE_IGNORE, 737d522f475SmrgCASE_ENQ, 738d522f475SmrgCASE_IGNORE, 739d522f475SmrgCASE_BELL, 740d522f475Smrg/* BS HT NL VT */ 741d522f475SmrgCASE_BS, 742d522f475SmrgCASE_TAB, 743d522f475SmrgCASE_VMOT, 744d522f475SmrgCASE_VMOT, 745d522f475Smrg/* NP CR SO SI */ 746d522f475SmrgCASE_VMOT, 747d522f475SmrgCASE_CR, 748d522f475SmrgCASE_SO, 749d522f475SmrgCASE_SI, 750d522f475Smrg/* DLE DC1 DC2 DC3 */ 751d522f475SmrgCASE_IGNORE, 752d522f475SmrgCASE_IGNORE, 753d522f475SmrgCASE_IGNORE, 754d522f475SmrgCASE_IGNORE, 755d522f475Smrg/* DC4 NAK SYN ETB */ 756d522f475SmrgCASE_IGNORE, 757d522f475SmrgCASE_IGNORE, 758d522f475SmrgCASE_IGNORE, 759d522f475SmrgCASE_IGNORE, 760d522f475Smrg/* CAN EM SUB ESC */ 761d522f475SmrgCASE_GROUND_STATE, 762d522f475SmrgCASE_IGNORE, 763d522f475SmrgCASE_GROUND_STATE, 764d522f475SmrgCASE_ESC, 765d522f475Smrg/* FS GS RS US */ 766d522f475SmrgCASE_IGNORE, 767d522f475SmrgCASE_IGNORE, 768d522f475SmrgCASE_IGNORE, 769d522f475SmrgCASE_IGNORE, 770d522f475Smrg/* SP ! " # */ 771d522f475SmrgCASE_CSI_IGNORE, 772d522f475SmrgCASE_CSI_EX_STATE, 773d522f475SmrgCASE_CSI_QUOTE_STATE, 774d522f475SmrgCASE_CSI_IGNORE, 775d522f475Smrg/* $ % & ' */ 776d522f475SmrgCASE_CSI_DOLLAR_STATE, 777d522f475SmrgCASE_CSI_IGNORE, 778d522f475SmrgCASE_CSI_IGNORE, 779d522f475SmrgCASE_CSI_TICK_STATE, 780d522f475Smrg/* ( ) * + */ 781d522f475SmrgCASE_CSI_IGNORE, 782d522f475SmrgCASE_CSI_IGNORE, 783d522f475SmrgCASE_CSI_STAR_STATE, 784d522f475SmrgCASE_CSI_IGNORE, 785d522f475Smrg/* , - . / */ 786d522f475SmrgCASE_CSI_IGNORE, 787d522f475SmrgCASE_CSI_IGNORE, 788d522f475SmrgCASE_CSI_IGNORE, 789d522f475SmrgCASE_CSI_IGNORE, 790d522f475Smrg/* 0 1 2 3 */ 791d522f475SmrgCASE_ESC_DIGIT, 792d522f475SmrgCASE_ESC_DIGIT, 793d522f475SmrgCASE_ESC_DIGIT, 794d522f475SmrgCASE_ESC_DIGIT, 795d522f475Smrg/* 4 5 6 7 */ 796d522f475SmrgCASE_ESC_DIGIT, 797d522f475SmrgCASE_ESC_DIGIT, 798d522f475SmrgCASE_ESC_DIGIT, 799d522f475SmrgCASE_ESC_DIGIT, 800d522f475Smrg/* 8 9 : ; */ 801d522f475SmrgCASE_ESC_DIGIT, 802d522f475SmrgCASE_ESC_DIGIT, 803d522f475SmrgCASE_CSI_IGNORE, 804d522f475SmrgCASE_ESC_SEMI, 805d522f475Smrg/* < = > ? */ 806d522f475SmrgCASE_CSI_IGNORE, 807d522f475SmrgCASE_CSI_IGNORE, 808d522f475SmrgCASE_CSI_IGNORE, 809d522f475SmrgCASE_CSI_IGNORE, 810d522f475Smrg/* @ A B C */ 811d522f475SmrgCASE_ICH, 812d522f475SmrgCASE_CUU, 813d522f475SmrgCASE_CUD, 814d522f475SmrgCASE_CUF, 815d522f475Smrg/* D E F G */ 816d522f475SmrgCASE_CUB, 817d522f475SmrgCASE_CNL, 818d522f475SmrgCASE_CPL, 819d522f475SmrgCASE_HPA, 820d522f475Smrg/* H I J K */ 821d522f475SmrgCASE_CUP, 822d522f475SmrgCASE_CHT, 823d522f475SmrgCASE_ED, 824d522f475SmrgCASE_EL, 825d522f475Smrg/* L M N O */ 826d522f475SmrgCASE_IL, 827d522f475SmrgCASE_DL, 828d522f475SmrgCASE_GROUND_STATE, 829d522f475SmrgCASE_GROUND_STATE, 830d522f475Smrg/* P Q R S */ 831d522f475SmrgCASE_DCH, 832d522f475SmrgCASE_GROUND_STATE, 833d522f475SmrgCASE_GROUND_STATE, 834d522f475SmrgCASE_SU, 835d522f475Smrg/* T U V W */ 836d522f475SmrgCASE_TRACK_MOUSE, 837d522f475SmrgCASE_GROUND_STATE, 838d522f475SmrgCASE_GROUND_STATE, 839d522f475SmrgCASE_GROUND_STATE, 840d522f475Smrg/* X Y Z [ */ 841d522f475SmrgCASE_ECH, 842d522f475SmrgCASE_GROUND_STATE, 843d522f475SmrgCASE_CBT, 844d522f475SmrgCASE_GROUND_STATE, 845d522f475Smrg/* \ ] ^ _ */ 846d522f475SmrgCASE_GROUND_STATE, 847d522f475SmrgCASE_GROUND_STATE, 848d522f475SmrgCASE_GROUND_STATE, 849d522f475SmrgCASE_GROUND_STATE, 850d522f475Smrg/* ` a b c */ 851d522f475SmrgCASE_HPA, 852d522f475SmrgCASE_GROUND_STATE, 853d522f475SmrgCASE_REP, 854d522f475SmrgCASE_DA1, 855d522f475Smrg/* d e f g */ 856d522f475SmrgCASE_VPA, 857d522f475SmrgCASE_GROUND_STATE, 858d522f475SmrgCASE_CUP, 859d522f475SmrgCASE_TBC, 860d522f475Smrg/* h i j k */ 861d522f475SmrgCASE_SET, 862d522f475SmrgCASE_MC, 863d522f475SmrgCASE_GROUND_STATE, 864d522f475SmrgCASE_GROUND_STATE, 865d522f475Smrg/* l m n o */ 866d522f475SmrgCASE_RST, 867d522f475SmrgCASE_SGR, 868d522f475SmrgCASE_CPR, 869d522f475SmrgCASE_GROUND_STATE, 870d522f475Smrg/* p q r s */ 871d522f475SmrgCASE_GROUND_STATE, 872d522f475SmrgCASE_GROUND_STATE, 873d522f475SmrgCASE_DECSTBM, 874d522f475SmrgCASE_DECSC, 875d522f475Smrg/* t u v w */ 876d522f475SmrgCASE_XTERM_WINOPS, 877d522f475SmrgCASE_DECRC, 878d522f475SmrgCASE_GROUND_STATE, 879d522f475SmrgCASE_GROUND_STATE, 880d522f475Smrg/* x y z { */ 881d522f475SmrgCASE_DECREQTPARM, 882d522f475SmrgCASE_GROUND_STATE, 883d522f475SmrgCASE_GROUND_STATE, 884d522f475SmrgCASE_GROUND_STATE, 885d522f475Smrg/* | } ~ DEL */ 886d522f475SmrgCASE_GROUND_STATE, 887d522f475SmrgCASE_GROUND_STATE, 888d522f475SmrgCASE_GROUND_STATE, 889d522f475SmrgCASE_IGNORE, 890d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 891d522f475SmrgCASE_GROUND_STATE, 892d522f475SmrgCASE_GROUND_STATE, 893d522f475SmrgCASE_GROUND_STATE, 894d522f475SmrgCASE_GROUND_STATE, 895d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 896d522f475SmrgCASE_IND, 897d522f475SmrgCASE_NEL, 898d522f475SmrgCASE_GROUND_STATE, 899d522f475SmrgCASE_GROUND_STATE, 900d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 901d522f475SmrgCASE_HTS, 902d522f475SmrgCASE_GROUND_STATE, 903d522f475SmrgCASE_GROUND_STATE, 904d522f475SmrgCASE_GROUND_STATE, 905d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 906d522f475SmrgCASE_GROUND_STATE, 907d522f475SmrgCASE_RI, 908d522f475SmrgCASE_SS2, 909d522f475SmrgCASE_SS3, 910d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 911d522f475SmrgCASE_DCS, 912d522f475SmrgCASE_GROUND_STATE, 913d522f475SmrgCASE_GROUND_STATE, 914d522f475SmrgCASE_GROUND_STATE, 915d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 916d522f475SmrgCASE_GROUND_STATE, 917d522f475SmrgCASE_GROUND_STATE, 918d522f475SmrgCASE_SPA, 919d522f475SmrgCASE_EPA, 920d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 921d522f475SmrgCASE_SOS, 922d522f475SmrgCASE_GROUND_STATE, 923d522f475SmrgCASE_DECID, 924d522f475SmrgCASE_CSI_STATE, 925d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 926d522f475SmrgCASE_ST, 927d522f475SmrgCASE_OSC, 928d522f475SmrgCASE_PM, 929d522f475SmrgCASE_APC, 930d522f475Smrg/* nobreakspace exclamdown cent sterling */ 931d522f475SmrgCASE_CSI_IGNORE, 932d522f475SmrgCASE_CSI_EX_STATE, 933d522f475SmrgCASE_CSI_QUOTE_STATE, 934d522f475SmrgCASE_CSI_IGNORE, 935d522f475Smrg/* currency yen brokenbar section */ 936d522f475SmrgCASE_CSI_IGNORE, 937d522f475SmrgCASE_CSI_IGNORE, 938d522f475SmrgCASE_CSI_IGNORE, 939d522f475SmrgCASE_CSI_TICK_STATE, 940d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 941d522f475SmrgCASE_CSI_IGNORE, 942d522f475SmrgCASE_CSI_IGNORE, 943d522f475SmrgCASE_CSI_IGNORE, 944d522f475SmrgCASE_CSI_IGNORE, 945d522f475Smrg/* notsign hyphen registered macron */ 946d522f475SmrgCASE_CSI_IGNORE, 947d522f475SmrgCASE_CSI_IGNORE, 948d522f475SmrgCASE_CSI_IGNORE, 949d522f475SmrgCASE_CSI_IGNORE, 950d522f475Smrg/* degree plusminus twosuperior threesuperior */ 951d522f475SmrgCASE_ESC_DIGIT, 952d522f475SmrgCASE_ESC_DIGIT, 953d522f475SmrgCASE_ESC_DIGIT, 954d522f475SmrgCASE_ESC_DIGIT, 955d522f475Smrg/* acute mu paragraph periodcentered */ 956d522f475SmrgCASE_ESC_DIGIT, 957d522f475SmrgCASE_ESC_DIGIT, 958d522f475SmrgCASE_ESC_DIGIT, 959d522f475SmrgCASE_ESC_DIGIT, 960d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 961d522f475SmrgCASE_ESC_DIGIT, 962d522f475SmrgCASE_ESC_DIGIT, 963d522f475SmrgCASE_CSI_IGNORE, 964d522f475SmrgCASE_ESC_SEMI, 965d522f475Smrg/* onequarter onehalf threequarters questiondown */ 966d522f475SmrgCASE_CSI_IGNORE, 967d522f475SmrgCASE_CSI_IGNORE, 968d522f475SmrgCASE_CSI_IGNORE, 969d522f475SmrgCASE_CSI_IGNORE, 970d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 971d522f475SmrgCASE_ICH, 972d522f475SmrgCASE_CUU, 973d522f475SmrgCASE_CUD, 974d522f475SmrgCASE_CUF, 975d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 976d522f475SmrgCASE_CUB, 977d522f475SmrgCASE_CNL, 978d522f475SmrgCASE_CPL, 979d522f475SmrgCASE_HPA, 980d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 981d522f475SmrgCASE_CUP, 982d522f475SmrgCASE_CHT, 983d522f475SmrgCASE_ED, 984d522f475SmrgCASE_EL, 985d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 986d522f475SmrgCASE_IL, 987d522f475SmrgCASE_DL, 988d522f475SmrgCASE_GROUND_STATE, 989d522f475SmrgCASE_GROUND_STATE, 990d522f475Smrg/* Eth Ntilde Ograve Oacute */ 991d522f475SmrgCASE_DCH, 992d522f475SmrgCASE_GROUND_STATE, 993d522f475SmrgCASE_GROUND_STATE, 994d522f475SmrgCASE_SU, 995d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 996d522f475SmrgCASE_TRACK_MOUSE, 997d522f475SmrgCASE_GROUND_STATE, 998d522f475SmrgCASE_GROUND_STATE, 999d522f475SmrgCASE_GROUND_STATE, 1000d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 1001d522f475SmrgCASE_ECH, 1002d522f475SmrgCASE_GROUND_STATE, 1003d522f475SmrgCASE_CBT, 1004d522f475SmrgCASE_GROUND_STATE, 1005d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 1006d522f475SmrgCASE_GROUND_STATE, 1007d522f475SmrgCASE_GROUND_STATE, 1008d522f475SmrgCASE_GROUND_STATE, 1009d522f475SmrgCASE_GROUND_STATE, 1010d522f475Smrg/* agrave aacute acircumflex atilde */ 1011d522f475SmrgCASE_HPA, 1012d522f475SmrgCASE_GROUND_STATE, 1013d522f475SmrgCASE_REP, 1014d522f475SmrgCASE_DA1, 1015d522f475Smrg/* adiaeresis aring ae ccedilla */ 1016d522f475SmrgCASE_VPA, 1017d522f475SmrgCASE_GROUND_STATE, 1018d522f475SmrgCASE_CUP, 1019d522f475SmrgCASE_TBC, 1020d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 1021d522f475SmrgCASE_SET, 1022d522f475SmrgCASE_MC, 1023d522f475SmrgCASE_GROUND_STATE, 1024d522f475SmrgCASE_GROUND_STATE, 1025d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 1026d522f475SmrgCASE_RST, 1027d522f475SmrgCASE_SGR, 1028d522f475SmrgCASE_CPR, 1029d522f475SmrgCASE_GROUND_STATE, 1030d522f475Smrg/* eth ntilde ograve oacute */ 1031d522f475SmrgCASE_GROUND_STATE, 1032d522f475SmrgCASE_GROUND_STATE, 1033d522f475SmrgCASE_DECSTBM, 1034d522f475SmrgCASE_DECSC, 1035d522f475Smrg/* ocircumflex otilde odiaeresis division */ 1036d522f475SmrgCASE_XTERM_WINOPS, 1037d522f475SmrgCASE_DECRC, 1038d522f475SmrgCASE_GROUND_STATE, 1039d522f475SmrgCASE_GROUND_STATE, 1040d522f475Smrg/* oslash ugrave uacute ucircumflex */ 1041d522f475SmrgCASE_DECREQTPARM, 1042d522f475SmrgCASE_GROUND_STATE, 1043d522f475SmrgCASE_GROUND_STATE, 1044d522f475SmrgCASE_GROUND_STATE, 1045d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 1046d522f475SmrgCASE_GROUND_STATE, 1047d522f475SmrgCASE_GROUND_STATE, 1048d522f475SmrgCASE_GROUND_STATE, 1049d522f475SmrgCASE_IGNORE, 1050d522f475Smrg}; 1051d522f475Smrg 1052d522f475SmrgConst PARSE_T csi_ex_table[] = /* CSI ! */ 1053d522f475Smrg{ 1054d522f475Smrg/* NUL SOH STX ETX */ 1055d522f475SmrgCASE_IGNORE, 1056d522f475SmrgCASE_IGNORE, 1057d522f475SmrgCASE_IGNORE, 1058d522f475SmrgCASE_IGNORE, 1059d522f475Smrg/* EOT ENQ ACK BEL */ 1060d522f475SmrgCASE_IGNORE, 1061d522f475SmrgCASE_ENQ, 1062d522f475SmrgCASE_IGNORE, 1063d522f475SmrgCASE_BELL, 1064d522f475Smrg/* BS HT NL VT */ 1065d522f475SmrgCASE_BS, 1066d522f475SmrgCASE_TAB, 1067d522f475SmrgCASE_VMOT, 1068d522f475SmrgCASE_VMOT, 1069d522f475Smrg/* NP CR SO SI */ 1070d522f475SmrgCASE_VMOT, 1071d522f475SmrgCASE_CR, 1072d522f475SmrgCASE_SO, 1073d522f475SmrgCASE_SI, 1074d522f475Smrg/* DLE DC1 DC2 DC3 */ 1075d522f475SmrgCASE_IGNORE, 1076d522f475SmrgCASE_IGNORE, 1077d522f475SmrgCASE_IGNORE, 1078d522f475SmrgCASE_IGNORE, 1079d522f475Smrg/* DC4 NAK SYN ETB */ 1080d522f475SmrgCASE_IGNORE, 1081d522f475SmrgCASE_IGNORE, 1082d522f475SmrgCASE_IGNORE, 1083d522f475SmrgCASE_IGNORE, 1084d522f475Smrg/* CAN EM SUB ESC */ 1085d522f475SmrgCASE_GROUND_STATE, 1086d522f475SmrgCASE_IGNORE, 1087d522f475SmrgCASE_GROUND_STATE, 1088d522f475SmrgCASE_ESC, 1089d522f475Smrg/* FS GS RS US */ 1090d522f475SmrgCASE_IGNORE, 1091d522f475SmrgCASE_IGNORE, 1092d522f475SmrgCASE_IGNORE, 1093d522f475SmrgCASE_IGNORE, 1094d522f475Smrg/* SP ! " # */ 1095d522f475SmrgCASE_CSI_IGNORE, 1096d522f475SmrgCASE_CSI_IGNORE, 1097d522f475SmrgCASE_CSI_IGNORE, 1098d522f475SmrgCASE_CSI_IGNORE, 1099d522f475Smrg/* $ % & ' */ 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/* 0 1 2 3 */ 1115d522f475SmrgCASE_CSI_IGNORE, 1116d522f475SmrgCASE_CSI_IGNORE, 1117d522f475SmrgCASE_CSI_IGNORE, 1118d522f475SmrgCASE_CSI_IGNORE, 1119d522f475Smrg/* 4 5 6 7 */ 1120d522f475SmrgCASE_CSI_IGNORE, 1121d522f475SmrgCASE_CSI_IGNORE, 1122d522f475SmrgCASE_CSI_IGNORE, 1123d522f475SmrgCASE_CSI_IGNORE, 1124d522f475Smrg/* 8 9 : ; */ 1125d522f475SmrgCASE_CSI_IGNORE, 1126d522f475SmrgCASE_CSI_IGNORE, 1127d522f475SmrgCASE_CSI_IGNORE, 1128d522f475SmrgCASE_CSI_IGNORE, 1129d522f475Smrg/* < = > ? */ 1130d522f475SmrgCASE_CSI_IGNORE, 1131d522f475SmrgCASE_CSI_IGNORE, 1132d522f475SmrgCASE_CSI_IGNORE, 1133d522f475SmrgCASE_CSI_IGNORE, 1134d522f475Smrg/* @ A B C */ 1135d522f475SmrgCASE_GROUND_STATE, 1136d522f475SmrgCASE_GROUND_STATE, 1137d522f475SmrgCASE_GROUND_STATE, 1138d522f475SmrgCASE_GROUND_STATE, 1139d522f475Smrg/* D E F G */ 1140d522f475SmrgCASE_GROUND_STATE, 1141d522f475SmrgCASE_GROUND_STATE, 1142d522f475SmrgCASE_GROUND_STATE, 1143d522f475SmrgCASE_GROUND_STATE, 1144d522f475Smrg/* H I J K */ 1145d522f475SmrgCASE_GROUND_STATE, 1146d522f475SmrgCASE_GROUND_STATE, 1147d522f475SmrgCASE_GROUND_STATE, 1148d522f475SmrgCASE_GROUND_STATE, 1149d522f475Smrg/* L M N O */ 1150d522f475SmrgCASE_GROUND_STATE, 1151d522f475SmrgCASE_GROUND_STATE, 1152d522f475SmrgCASE_GROUND_STATE, 1153d522f475SmrgCASE_GROUND_STATE, 1154d522f475Smrg/* P Q R S */ 1155d522f475SmrgCASE_GROUND_STATE, 1156d522f475SmrgCASE_GROUND_STATE, 1157d522f475SmrgCASE_GROUND_STATE, 1158d522f475SmrgCASE_GROUND_STATE, 1159d522f475Smrg/* T U V W */ 1160d522f475SmrgCASE_GROUND_STATE, 1161d522f475SmrgCASE_GROUND_STATE, 1162d522f475SmrgCASE_GROUND_STATE, 1163d522f475SmrgCASE_GROUND_STATE, 1164d522f475Smrg/* X Y Z [ */ 1165d522f475SmrgCASE_GROUND_STATE, 1166d522f475SmrgCASE_GROUND_STATE, 1167d522f475SmrgCASE_GROUND_STATE, 1168d522f475SmrgCASE_GROUND_STATE, 1169d522f475Smrg/* \ ] ^ _ */ 1170d522f475SmrgCASE_GROUND_STATE, 1171d522f475SmrgCASE_GROUND_STATE, 1172d522f475SmrgCASE_GROUND_STATE, 1173d522f475SmrgCASE_GROUND_STATE, 1174d522f475Smrg/* ` a b c */ 1175d522f475SmrgCASE_GROUND_STATE, 1176d522f475SmrgCASE_GROUND_STATE, 1177d522f475SmrgCASE_GROUND_STATE, 1178d522f475SmrgCASE_GROUND_STATE, 1179d522f475Smrg/* d e f g */ 1180d522f475SmrgCASE_GROUND_STATE, 1181d522f475SmrgCASE_GROUND_STATE, 1182d522f475SmrgCASE_GROUND_STATE, 1183d522f475SmrgCASE_GROUND_STATE, 1184d522f475Smrg/* h i j k */ 1185d522f475SmrgCASE_GROUND_STATE, 1186d522f475SmrgCASE_GROUND_STATE, 1187d522f475SmrgCASE_GROUND_STATE, 1188d522f475SmrgCASE_GROUND_STATE, 1189d522f475Smrg/* l m n o */ 1190d522f475SmrgCASE_GROUND_STATE, 1191d522f475SmrgCASE_GROUND_STATE, 1192d522f475SmrgCASE_GROUND_STATE, 1193d522f475SmrgCASE_GROUND_STATE, 1194d522f475Smrg/* p q r s */ 1195d522f475SmrgCASE_DECSTR, 1196d522f475SmrgCASE_GROUND_STATE, 1197d522f475SmrgCASE_GROUND_STATE, 1198d522f475SmrgCASE_GROUND_STATE, 1199d522f475Smrg/* t u v w */ 1200d522f475SmrgCASE_GROUND_STATE, 1201d522f475SmrgCASE_GROUND_STATE, 1202d522f475SmrgCASE_GROUND_STATE, 1203d522f475SmrgCASE_GROUND_STATE, 1204d522f475Smrg/* x y z { */ 1205d522f475SmrgCASE_GROUND_STATE, 1206d522f475SmrgCASE_GROUND_STATE, 1207d522f475SmrgCASE_GROUND_STATE, 1208d522f475SmrgCASE_GROUND_STATE, 1209d522f475Smrg/* | } ~ DEL */ 1210d522f475SmrgCASE_GROUND_STATE, 1211d522f475SmrgCASE_GROUND_STATE, 1212d522f475SmrgCASE_GROUND_STATE, 1213d522f475SmrgCASE_IGNORE, 1214d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 1215d522f475SmrgCASE_GROUND_STATE, 1216d522f475SmrgCASE_GROUND_STATE, 1217d522f475SmrgCASE_GROUND_STATE, 1218d522f475SmrgCASE_GROUND_STATE, 1219d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 1220d522f475SmrgCASE_IND, 1221d522f475SmrgCASE_NEL, 1222d522f475SmrgCASE_GROUND_STATE, 1223d522f475SmrgCASE_GROUND_STATE, 1224d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 1225d522f475SmrgCASE_HTS, 1226d522f475SmrgCASE_GROUND_STATE, 1227d522f475SmrgCASE_GROUND_STATE, 1228d522f475SmrgCASE_GROUND_STATE, 1229d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 1230d522f475SmrgCASE_GROUND_STATE, 1231d522f475SmrgCASE_RI, 1232d522f475SmrgCASE_SS2, 1233d522f475SmrgCASE_SS3, 1234d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 1235d522f475SmrgCASE_DCS, 1236d522f475SmrgCASE_GROUND_STATE, 1237d522f475SmrgCASE_GROUND_STATE, 1238d522f475SmrgCASE_GROUND_STATE, 1239d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 1240d522f475SmrgCASE_GROUND_STATE, 1241d522f475SmrgCASE_GROUND_STATE, 1242d522f475SmrgCASE_SPA, 1243d522f475SmrgCASE_EPA, 1244d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 1245d522f475SmrgCASE_SOS, 1246d522f475SmrgCASE_GROUND_STATE, 1247d522f475SmrgCASE_DECID, 1248d522f475SmrgCASE_CSI_STATE, 1249d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 1250d522f475SmrgCASE_ST, 1251d522f475SmrgCASE_OSC, 1252d522f475SmrgCASE_PM, 1253d522f475SmrgCASE_APC, 1254d522f475Smrg/* nobreakspace exclamdown cent sterling */ 1255d522f475SmrgCASE_CSI_IGNORE, 1256d522f475SmrgCASE_CSI_IGNORE, 1257d522f475SmrgCASE_CSI_IGNORE, 1258d522f475SmrgCASE_CSI_IGNORE, 1259d522f475Smrg/* currency yen brokenbar section */ 1260d522f475SmrgCASE_CSI_IGNORE, 1261d522f475SmrgCASE_CSI_IGNORE, 1262d522f475SmrgCASE_CSI_IGNORE, 1263d522f475SmrgCASE_CSI_IGNORE, 1264d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 1265d522f475SmrgCASE_CSI_IGNORE, 1266d522f475SmrgCASE_CSI_IGNORE, 1267d522f475SmrgCASE_CSI_IGNORE, 1268d522f475SmrgCASE_CSI_IGNORE, 1269d522f475Smrg/* notsign hyphen registered macron */ 1270d522f475SmrgCASE_CSI_IGNORE, 1271d522f475SmrgCASE_CSI_IGNORE, 1272d522f475SmrgCASE_CSI_IGNORE, 1273d522f475SmrgCASE_CSI_IGNORE, 1274d522f475Smrg/* degree plusminus twosuperior threesuperior */ 1275d522f475SmrgCASE_CSI_IGNORE, 1276d522f475SmrgCASE_CSI_IGNORE, 1277d522f475SmrgCASE_CSI_IGNORE, 1278d522f475SmrgCASE_CSI_IGNORE, 1279d522f475Smrg/* acute mu paragraph periodcentered */ 1280d522f475SmrgCASE_CSI_IGNORE, 1281d522f475SmrgCASE_CSI_IGNORE, 1282d522f475SmrgCASE_CSI_IGNORE, 1283d522f475SmrgCASE_CSI_IGNORE, 1284d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 1285d522f475SmrgCASE_CSI_IGNORE, 1286d522f475SmrgCASE_CSI_IGNORE, 1287d522f475SmrgCASE_CSI_IGNORE, 1288d522f475SmrgCASE_CSI_IGNORE, 1289d522f475Smrg/* onequarter onehalf threequarters questiondown */ 1290d522f475SmrgCASE_CSI_IGNORE, 1291d522f475SmrgCASE_CSI_IGNORE, 1292d522f475SmrgCASE_CSI_IGNORE, 1293d522f475SmrgCASE_CSI_IGNORE, 1294d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 1295d522f475SmrgCASE_GROUND_STATE, 1296d522f475SmrgCASE_GROUND_STATE, 1297d522f475SmrgCASE_GROUND_STATE, 1298d522f475SmrgCASE_GROUND_STATE, 1299d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 1300d522f475SmrgCASE_GROUND_STATE, 1301d522f475SmrgCASE_GROUND_STATE, 1302d522f475SmrgCASE_GROUND_STATE, 1303d522f475SmrgCASE_GROUND_STATE, 1304d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 1305d522f475SmrgCASE_GROUND_STATE, 1306d522f475SmrgCASE_GROUND_STATE, 1307d522f475SmrgCASE_GROUND_STATE, 1308d522f475SmrgCASE_GROUND_STATE, 1309d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 1310d522f475SmrgCASE_GROUND_STATE, 1311d522f475SmrgCASE_GROUND_STATE, 1312d522f475SmrgCASE_GROUND_STATE, 1313d522f475SmrgCASE_GROUND_STATE, 1314d522f475Smrg/* Eth Ntilde Ograve Oacute */ 1315d522f475SmrgCASE_GROUND_STATE, 1316d522f475SmrgCASE_GROUND_STATE, 1317d522f475SmrgCASE_GROUND_STATE, 1318d522f475SmrgCASE_GROUND_STATE, 1319d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 1320d522f475SmrgCASE_GROUND_STATE, 1321d522f475SmrgCASE_GROUND_STATE, 1322d522f475SmrgCASE_GROUND_STATE, 1323d522f475SmrgCASE_GROUND_STATE, 1324d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 1325d522f475SmrgCASE_GROUND_STATE, 1326d522f475SmrgCASE_GROUND_STATE, 1327d522f475SmrgCASE_GROUND_STATE, 1328d522f475SmrgCASE_GROUND_STATE, 1329d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 1330d522f475SmrgCASE_GROUND_STATE, 1331d522f475SmrgCASE_GROUND_STATE, 1332d522f475SmrgCASE_GROUND_STATE, 1333d522f475SmrgCASE_GROUND_STATE, 1334d522f475Smrg/* agrave aacute acircumflex atilde */ 1335d522f475SmrgCASE_GROUND_STATE, 1336d522f475SmrgCASE_GROUND_STATE, 1337d522f475SmrgCASE_GROUND_STATE, 1338d522f475SmrgCASE_GROUND_STATE, 1339d522f475Smrg/* adiaeresis aring ae ccedilla */ 1340d522f475SmrgCASE_GROUND_STATE, 1341d522f475SmrgCASE_GROUND_STATE, 1342d522f475SmrgCASE_GROUND_STATE, 1343d522f475SmrgCASE_GROUND_STATE, 1344d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 1345d522f475SmrgCASE_GROUND_STATE, 1346d522f475SmrgCASE_GROUND_STATE, 1347d522f475SmrgCASE_GROUND_STATE, 1348d522f475SmrgCASE_GROUND_STATE, 1349d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 1350d522f475SmrgCASE_GROUND_STATE, 1351d522f475SmrgCASE_GROUND_STATE, 1352d522f475SmrgCASE_GROUND_STATE, 1353d522f475SmrgCASE_GROUND_STATE, 1354d522f475Smrg/* eth ntilde ograve oacute */ 1355d522f475SmrgCASE_DECSTR, 1356d522f475SmrgCASE_GROUND_STATE, 1357d522f475SmrgCASE_GROUND_STATE, 1358d522f475SmrgCASE_GROUND_STATE, 1359d522f475Smrg/* ocircumflex otilde odiaeresis division */ 1360d522f475SmrgCASE_GROUND_STATE, 1361d522f475SmrgCASE_GROUND_STATE, 1362d522f475SmrgCASE_GROUND_STATE, 1363d522f475SmrgCASE_GROUND_STATE, 1364d522f475Smrg/* oslash ugrave uacute ucircumflex */ 1365d522f475SmrgCASE_GROUND_STATE, 1366d522f475SmrgCASE_GROUND_STATE, 1367d522f475SmrgCASE_GROUND_STATE, 1368d522f475SmrgCASE_GROUND_STATE, 1369d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 1370d522f475SmrgCASE_GROUND_STATE, 1371d522f475SmrgCASE_GROUND_STATE, 1372d522f475SmrgCASE_GROUND_STATE, 1373d522f475SmrgCASE_IGNORE, 1374d522f475Smrg}; 1375d522f475Smrg 1376d522f475SmrgConst PARSE_T csi_quo_table[] = /* CSI ... " */ 1377d522f475Smrg{ 1378d522f475Smrg/* NUL SOH STX ETX */ 1379d522f475SmrgCASE_IGNORE, 1380d522f475SmrgCASE_IGNORE, 1381d522f475SmrgCASE_IGNORE, 1382d522f475SmrgCASE_IGNORE, 1383d522f475Smrg/* EOT ENQ ACK BEL */ 1384d522f475SmrgCASE_IGNORE, 1385d522f475SmrgCASE_ENQ, 1386d522f475SmrgCASE_IGNORE, 1387d522f475SmrgCASE_BELL, 1388d522f475Smrg/* BS HT NL VT */ 1389d522f475SmrgCASE_BS, 1390d522f475SmrgCASE_TAB, 1391d522f475SmrgCASE_VMOT, 1392d522f475SmrgCASE_VMOT, 1393d522f475Smrg/* NP CR SO SI */ 1394d522f475SmrgCASE_VMOT, 1395d522f475SmrgCASE_CR, 1396d522f475SmrgCASE_SO, 1397d522f475SmrgCASE_SI, 1398d522f475Smrg/* DLE DC1 DC2 DC3 */ 1399d522f475SmrgCASE_IGNORE, 1400d522f475SmrgCASE_IGNORE, 1401d522f475SmrgCASE_IGNORE, 1402d522f475SmrgCASE_IGNORE, 1403d522f475Smrg/* DC4 NAK SYN ETB */ 1404d522f475SmrgCASE_IGNORE, 1405d522f475SmrgCASE_IGNORE, 1406d522f475SmrgCASE_IGNORE, 1407d522f475SmrgCASE_IGNORE, 1408d522f475Smrg/* CAN EM SUB ESC */ 1409d522f475SmrgCASE_GROUND_STATE, 1410d522f475SmrgCASE_IGNORE, 1411d522f475SmrgCASE_GROUND_STATE, 1412d522f475SmrgCASE_ESC, 1413d522f475Smrg/* FS GS RS US */ 1414d522f475SmrgCASE_IGNORE, 1415d522f475SmrgCASE_IGNORE, 1416d522f475SmrgCASE_IGNORE, 1417d522f475SmrgCASE_IGNORE, 1418d522f475Smrg/* SP ! " # */ 1419d522f475SmrgCASE_CSI_IGNORE, 1420d522f475SmrgCASE_CSI_IGNORE, 1421d522f475SmrgCASE_CSI_IGNORE, 1422d522f475SmrgCASE_CSI_IGNORE, 1423d522f475Smrg/* $ % & ' */ 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/* 0 1 2 3 */ 1439d522f475SmrgCASE_CSI_IGNORE, 1440d522f475SmrgCASE_CSI_IGNORE, 1441d522f475SmrgCASE_CSI_IGNORE, 1442d522f475SmrgCASE_CSI_IGNORE, 1443d522f475Smrg/* 4 5 6 7 */ 1444d522f475SmrgCASE_CSI_IGNORE, 1445d522f475SmrgCASE_CSI_IGNORE, 1446d522f475SmrgCASE_CSI_IGNORE, 1447d522f475SmrgCASE_CSI_IGNORE, 1448d522f475Smrg/* 8 9 : ; */ 1449d522f475SmrgCASE_CSI_IGNORE, 1450d522f475SmrgCASE_CSI_IGNORE, 1451d522f475SmrgCASE_CSI_IGNORE, 1452d522f475SmrgCASE_CSI_IGNORE, 1453d522f475Smrg/* < = > ? */ 1454d522f475SmrgCASE_CSI_IGNORE, 1455d522f475SmrgCASE_CSI_IGNORE, 1456d522f475SmrgCASE_CSI_IGNORE, 1457d522f475SmrgCASE_CSI_IGNORE, 1458d522f475Smrg/* @ A B C */ 1459d522f475SmrgCASE_GROUND_STATE, 1460d522f475SmrgCASE_GROUND_STATE, 1461d522f475SmrgCASE_GROUND_STATE, 1462d522f475SmrgCASE_GROUND_STATE, 1463d522f475Smrg/* D E F G */ 1464d522f475SmrgCASE_GROUND_STATE, 1465d522f475SmrgCASE_GROUND_STATE, 1466d522f475SmrgCASE_GROUND_STATE, 1467d522f475SmrgCASE_GROUND_STATE, 1468d522f475Smrg/* H I J K */ 1469d522f475SmrgCASE_GROUND_STATE, 1470d522f475SmrgCASE_GROUND_STATE, 1471d522f475SmrgCASE_GROUND_STATE, 1472d522f475SmrgCASE_GROUND_STATE, 1473d522f475Smrg/* L M N O */ 1474d522f475SmrgCASE_GROUND_STATE, 1475d522f475SmrgCASE_GROUND_STATE, 1476d522f475SmrgCASE_GROUND_STATE, 1477d522f475SmrgCASE_GROUND_STATE, 1478d522f475Smrg/* P Q R S */ 1479d522f475SmrgCASE_GROUND_STATE, 1480d522f475SmrgCASE_GROUND_STATE, 1481d522f475SmrgCASE_GROUND_STATE, 1482d522f475SmrgCASE_GROUND_STATE, 1483d522f475Smrg/* T U V W */ 1484d522f475SmrgCASE_GROUND_STATE, 1485d522f475SmrgCASE_GROUND_STATE, 1486d522f475SmrgCASE_GROUND_STATE, 1487d522f475SmrgCASE_GROUND_STATE, 1488d522f475Smrg/* X Y Z [ */ 1489d522f475SmrgCASE_GROUND_STATE, 1490d522f475SmrgCASE_GROUND_STATE, 1491d522f475SmrgCASE_GROUND_STATE, 1492d522f475SmrgCASE_GROUND_STATE, 1493d522f475Smrg/* \ ] ^ _ */ 1494d522f475SmrgCASE_GROUND_STATE, 1495d522f475SmrgCASE_GROUND_STATE, 1496d522f475SmrgCASE_GROUND_STATE, 1497d522f475SmrgCASE_GROUND_STATE, 1498d522f475Smrg/* ` a b c */ 1499d522f475SmrgCASE_GROUND_STATE, 1500d522f475SmrgCASE_GROUND_STATE, 1501d522f475SmrgCASE_GROUND_STATE, 1502d522f475SmrgCASE_GROUND_STATE, 1503d522f475Smrg/* d e f g */ 1504d522f475SmrgCASE_GROUND_STATE, 1505d522f475SmrgCASE_GROUND_STATE, 1506d522f475SmrgCASE_GROUND_STATE, 1507d522f475SmrgCASE_GROUND_STATE, 1508d522f475Smrg/* h i j k */ 1509d522f475SmrgCASE_GROUND_STATE, 1510d522f475SmrgCASE_GROUND_STATE, 1511d522f475SmrgCASE_GROUND_STATE, 1512d522f475SmrgCASE_GROUND_STATE, 1513d522f475Smrg/* l m n o */ 1514d522f475SmrgCASE_GROUND_STATE, 1515d522f475SmrgCASE_GROUND_STATE, 1516d522f475SmrgCASE_GROUND_STATE, 1517d522f475SmrgCASE_GROUND_STATE, 1518d522f475Smrg/* p q r s */ 1519d522f475SmrgCASE_DECSCL, 1520d522f475SmrgCASE_DECSCA, 1521d522f475SmrgCASE_GROUND_STATE, 1522d522f475SmrgCASE_GROUND_STATE, 1523d522f475Smrg/* t u v w */ 1524d522f475SmrgCASE_GROUND_STATE, 1525d522f475SmrgCASE_GROUND_STATE, 1526d522f475SmrgCASE_GROUND_STATE, 1527d522f475SmrgCASE_GROUND_STATE, 1528d522f475Smrg/* x y z { */ 1529d522f475SmrgCASE_GROUND_STATE, 1530d522f475SmrgCASE_GROUND_STATE, 1531d522f475SmrgCASE_GROUND_STATE, 1532d522f475SmrgCASE_GROUND_STATE, 1533d522f475Smrg/* | } ~ DEL */ 1534d522f475SmrgCASE_GROUND_STATE, 1535d522f475SmrgCASE_GROUND_STATE, 1536d522f475SmrgCASE_GROUND_STATE, 1537d522f475SmrgCASE_IGNORE, 1538d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 1539d522f475SmrgCASE_GROUND_STATE, 1540d522f475SmrgCASE_GROUND_STATE, 1541d522f475SmrgCASE_GROUND_STATE, 1542d522f475SmrgCASE_GROUND_STATE, 1543d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 1544d522f475SmrgCASE_IND, 1545d522f475SmrgCASE_NEL, 1546d522f475SmrgCASE_GROUND_STATE, 1547d522f475SmrgCASE_GROUND_STATE, 1548d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 1549d522f475SmrgCASE_HTS, 1550d522f475SmrgCASE_GROUND_STATE, 1551d522f475SmrgCASE_GROUND_STATE, 1552d522f475SmrgCASE_GROUND_STATE, 1553d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 1554d522f475SmrgCASE_GROUND_STATE, 1555d522f475SmrgCASE_RI, 1556d522f475SmrgCASE_SS2, 1557d522f475SmrgCASE_SS3, 1558d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 1559d522f475SmrgCASE_DCS, 1560d522f475SmrgCASE_GROUND_STATE, 1561d522f475SmrgCASE_GROUND_STATE, 1562d522f475SmrgCASE_GROUND_STATE, 1563d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 1564d522f475SmrgCASE_GROUND_STATE, 1565d522f475SmrgCASE_GROUND_STATE, 1566d522f475SmrgCASE_SPA, 1567d522f475SmrgCASE_EPA, 1568d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 1569d522f475SmrgCASE_SOS, 1570d522f475SmrgCASE_GROUND_STATE, 1571d522f475SmrgCASE_DECID, 1572d522f475SmrgCASE_CSI_STATE, 1573d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 1574d522f475SmrgCASE_ST, 1575d522f475SmrgCASE_OSC, 1576d522f475SmrgCASE_PM, 1577d522f475SmrgCASE_APC, 1578d522f475Smrg/* nobreakspace exclamdown cent sterling */ 1579d522f475SmrgCASE_CSI_IGNORE, 1580d522f475SmrgCASE_CSI_IGNORE, 1581d522f475SmrgCASE_CSI_IGNORE, 1582d522f475SmrgCASE_CSI_IGNORE, 1583d522f475Smrg/* currency yen brokenbar section */ 1584d522f475SmrgCASE_CSI_IGNORE, 1585d522f475SmrgCASE_CSI_IGNORE, 1586d522f475SmrgCASE_CSI_IGNORE, 1587d522f475SmrgCASE_CSI_IGNORE, 1588d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 1589d522f475SmrgCASE_CSI_IGNORE, 1590d522f475SmrgCASE_CSI_IGNORE, 1591d522f475SmrgCASE_CSI_IGNORE, 1592d522f475SmrgCASE_CSI_IGNORE, 1593d522f475Smrg/* notsign hyphen registered macron */ 1594d522f475SmrgCASE_CSI_IGNORE, 1595d522f475SmrgCASE_CSI_IGNORE, 1596d522f475SmrgCASE_CSI_IGNORE, 1597d522f475SmrgCASE_CSI_IGNORE, 1598d522f475Smrg/* degree plusminus twosuperior threesuperior */ 1599d522f475SmrgCASE_CSI_IGNORE, 1600d522f475SmrgCASE_CSI_IGNORE, 1601d522f475SmrgCASE_CSI_IGNORE, 1602d522f475SmrgCASE_CSI_IGNORE, 1603d522f475Smrg/* acute mu paragraph periodcentered */ 1604d522f475SmrgCASE_CSI_IGNORE, 1605d522f475SmrgCASE_CSI_IGNORE, 1606d522f475SmrgCASE_CSI_IGNORE, 1607d522f475SmrgCASE_CSI_IGNORE, 1608d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 1609d522f475SmrgCASE_CSI_IGNORE, 1610d522f475SmrgCASE_CSI_IGNORE, 1611d522f475SmrgCASE_CSI_IGNORE, 1612d522f475SmrgCASE_CSI_IGNORE, 1613d522f475Smrg/* onequarter onehalf threequarters questiondown */ 1614d522f475SmrgCASE_CSI_IGNORE, 1615d522f475SmrgCASE_CSI_IGNORE, 1616d522f475SmrgCASE_CSI_IGNORE, 1617d522f475SmrgCASE_CSI_IGNORE, 1618d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 1619d522f475SmrgCASE_GROUND_STATE, 1620d522f475SmrgCASE_GROUND_STATE, 1621d522f475SmrgCASE_GROUND_STATE, 1622d522f475SmrgCASE_GROUND_STATE, 1623d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 1624d522f475SmrgCASE_GROUND_STATE, 1625d522f475SmrgCASE_GROUND_STATE, 1626d522f475SmrgCASE_GROUND_STATE, 1627d522f475SmrgCASE_GROUND_STATE, 1628d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 1629d522f475SmrgCASE_GROUND_STATE, 1630d522f475SmrgCASE_GROUND_STATE, 1631d522f475SmrgCASE_GROUND_STATE, 1632d522f475SmrgCASE_GROUND_STATE, 1633d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 1634d522f475SmrgCASE_GROUND_STATE, 1635d522f475SmrgCASE_GROUND_STATE, 1636d522f475SmrgCASE_GROUND_STATE, 1637d522f475SmrgCASE_GROUND_STATE, 1638d522f475Smrg/* Eth Ntilde Ograve Oacute */ 1639d522f475SmrgCASE_GROUND_STATE, 1640d522f475SmrgCASE_GROUND_STATE, 1641d522f475SmrgCASE_GROUND_STATE, 1642d522f475SmrgCASE_GROUND_STATE, 1643d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 1644d522f475SmrgCASE_GROUND_STATE, 1645d522f475SmrgCASE_GROUND_STATE, 1646d522f475SmrgCASE_GROUND_STATE, 1647d522f475SmrgCASE_GROUND_STATE, 1648d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 1649d522f475SmrgCASE_GROUND_STATE, 1650d522f475SmrgCASE_GROUND_STATE, 1651d522f475SmrgCASE_GROUND_STATE, 1652d522f475SmrgCASE_GROUND_STATE, 1653d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 1654d522f475SmrgCASE_GROUND_STATE, 1655d522f475SmrgCASE_GROUND_STATE, 1656d522f475SmrgCASE_GROUND_STATE, 1657d522f475SmrgCASE_GROUND_STATE, 1658d522f475Smrg/* agrave aacute acircumflex atilde */ 1659d522f475SmrgCASE_GROUND_STATE, 1660d522f475SmrgCASE_GROUND_STATE, 1661d522f475SmrgCASE_GROUND_STATE, 1662d522f475SmrgCASE_GROUND_STATE, 1663d522f475Smrg/* adiaeresis aring ae ccedilla */ 1664d522f475SmrgCASE_GROUND_STATE, 1665d522f475SmrgCASE_GROUND_STATE, 1666d522f475SmrgCASE_GROUND_STATE, 1667d522f475SmrgCASE_GROUND_STATE, 1668d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 1669d522f475SmrgCASE_GROUND_STATE, 1670d522f475SmrgCASE_GROUND_STATE, 1671d522f475SmrgCASE_GROUND_STATE, 1672d522f475SmrgCASE_GROUND_STATE, 1673d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 1674d522f475SmrgCASE_GROUND_STATE, 1675d522f475SmrgCASE_GROUND_STATE, 1676d522f475SmrgCASE_GROUND_STATE, 1677d522f475SmrgCASE_GROUND_STATE, 1678d522f475Smrg/* eth ntilde ograve oacute */ 1679d522f475SmrgCASE_DECSCL, 1680d522f475SmrgCASE_DECSCA, 1681d522f475SmrgCASE_GROUND_STATE, 1682d522f475SmrgCASE_GROUND_STATE, 1683d522f475Smrg/* ocircumflex otilde odiaeresis division */ 1684d522f475SmrgCASE_GROUND_STATE, 1685d522f475SmrgCASE_GROUND_STATE, 1686d522f475SmrgCASE_GROUND_STATE, 1687d522f475SmrgCASE_GROUND_STATE, 1688d522f475Smrg/* oslash ugrave uacute ucircumflex */ 1689d522f475SmrgCASE_GROUND_STATE, 1690d522f475SmrgCASE_GROUND_STATE, 1691d522f475SmrgCASE_GROUND_STATE, 1692d522f475SmrgCASE_GROUND_STATE, 1693d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 1694d522f475SmrgCASE_GROUND_STATE, 1695d522f475SmrgCASE_GROUND_STATE, 1696d522f475SmrgCASE_GROUND_STATE, 1697d522f475SmrgCASE_IGNORE, 1698d522f475Smrg}; 1699d522f475Smrg 1700d522f475Smrg#if OPT_DEC_LOCATOR 1701d522f475SmrgConst PARSE_T csi_tick_table[] = /* CSI ... ' */ 1702d522f475Smrg{ 1703d522f475Smrg/* NUL SOH STX ETX */ 1704d522f475SmrgCASE_IGNORE, 1705d522f475SmrgCASE_IGNORE, 1706d522f475SmrgCASE_IGNORE, 1707d522f475SmrgCASE_IGNORE, 1708d522f475Smrg/* EOT ENQ ACK BEL */ 1709d522f475SmrgCASE_IGNORE, 1710d522f475SmrgCASE_ENQ, 1711d522f475SmrgCASE_IGNORE, 1712d522f475SmrgCASE_BELL, 1713d522f475Smrg/* BS HT NL VT */ 1714d522f475SmrgCASE_BS, 1715d522f475SmrgCASE_TAB, 1716d522f475SmrgCASE_VMOT, 1717d522f475SmrgCASE_VMOT, 1718d522f475Smrg/* NP CR SO SI */ 1719d522f475SmrgCASE_VMOT, 1720d522f475SmrgCASE_CR, 1721d522f475SmrgCASE_SO, 1722d522f475SmrgCASE_SI, 1723d522f475Smrg/* DLE DC1 DC2 DC3 */ 1724d522f475SmrgCASE_IGNORE, 1725d522f475SmrgCASE_IGNORE, 1726d522f475SmrgCASE_IGNORE, 1727d522f475SmrgCASE_IGNORE, 1728d522f475Smrg/* DC4 NAK SYN ETB */ 1729d522f475SmrgCASE_IGNORE, 1730d522f475SmrgCASE_IGNORE, 1731d522f475SmrgCASE_IGNORE, 1732d522f475SmrgCASE_IGNORE, 1733d522f475Smrg/* CAN EM SUB ESC */ 1734d522f475SmrgCASE_GROUND_STATE, 1735d522f475SmrgCASE_IGNORE, 1736d522f475SmrgCASE_GROUND_STATE, 1737d522f475SmrgCASE_ESC, 1738d522f475Smrg/* FS GS RS US */ 1739d522f475SmrgCASE_IGNORE, 1740d522f475SmrgCASE_IGNORE, 1741d522f475SmrgCASE_IGNORE, 1742d522f475SmrgCASE_IGNORE, 1743d522f475Smrg/* SP ! " # */ 1744d522f475SmrgCASE_CSI_IGNORE, 1745d522f475SmrgCASE_CSI_IGNORE, 1746d522f475SmrgCASE_CSI_IGNORE, 1747d522f475SmrgCASE_CSI_IGNORE, 1748d522f475Smrg/* $ % & ' */ 1749d522f475SmrgCASE_CSI_IGNORE, 1750d522f475SmrgCASE_CSI_IGNORE, 1751d522f475SmrgCASE_CSI_IGNORE, 1752d522f475SmrgCASE_CSI_IGNORE, 1753d522f475Smrg/* ( ) * + */ 1754d522f475SmrgCASE_CSI_IGNORE, 1755d522f475SmrgCASE_CSI_IGNORE, 1756d522f475SmrgCASE_CSI_IGNORE, 1757d522f475SmrgCASE_CSI_IGNORE, 1758d522f475Smrg/* , - . / */ 1759d522f475SmrgCASE_CSI_IGNORE, 1760d522f475SmrgCASE_CSI_IGNORE, 1761d522f475SmrgCASE_CSI_IGNORE, 1762d522f475SmrgCASE_CSI_IGNORE, 1763d522f475Smrg/* 0 1 2 3 */ 1764d522f475SmrgCASE_CSI_IGNORE, 1765d522f475SmrgCASE_CSI_IGNORE, 1766d522f475SmrgCASE_CSI_IGNORE, 1767d522f475SmrgCASE_CSI_IGNORE, 1768d522f475Smrg/* 4 5 6 7 */ 1769d522f475SmrgCASE_CSI_IGNORE, 1770d522f475SmrgCASE_CSI_IGNORE, 1771d522f475SmrgCASE_CSI_IGNORE, 1772d522f475SmrgCASE_CSI_IGNORE, 1773d522f475Smrg/* 8 9 : ; */ 1774d522f475SmrgCASE_CSI_IGNORE, 1775d522f475SmrgCASE_CSI_IGNORE, 1776d522f475SmrgCASE_CSI_IGNORE, 1777d522f475SmrgCASE_CSI_IGNORE, 1778d522f475Smrg/* < = > ? */ 1779d522f475SmrgCASE_CSI_IGNORE, 1780d522f475SmrgCASE_CSI_IGNORE, 1781d522f475SmrgCASE_CSI_IGNORE, 1782d522f475SmrgCASE_CSI_IGNORE, 1783d522f475Smrg/* @ A B C */ 1784d522f475SmrgCASE_GROUND_STATE, 1785d522f475SmrgCASE_GROUND_STATE, 1786d522f475SmrgCASE_GROUND_STATE, 1787d522f475SmrgCASE_GROUND_STATE, 1788d522f475Smrg/* D E F G */ 1789d522f475SmrgCASE_GROUND_STATE, 1790d522f475SmrgCASE_GROUND_STATE, 1791d522f475SmrgCASE_GROUND_STATE, 1792d522f475SmrgCASE_GROUND_STATE, 1793d522f475Smrg/* H I J K */ 1794d522f475SmrgCASE_GROUND_STATE, 1795d522f475SmrgCASE_GROUND_STATE, 1796d522f475SmrgCASE_GROUND_STATE, 1797d522f475SmrgCASE_GROUND_STATE, 1798d522f475Smrg/* L M N O */ 1799d522f475SmrgCASE_GROUND_STATE, 1800d522f475SmrgCASE_GROUND_STATE, 1801d522f475SmrgCASE_GROUND_STATE, 1802d522f475SmrgCASE_GROUND_STATE, 1803d522f475Smrg/* P Q R S */ 1804d522f475SmrgCASE_GROUND_STATE, 1805d522f475SmrgCASE_GROUND_STATE, 1806d522f475SmrgCASE_GROUND_STATE, 1807d522f475SmrgCASE_GROUND_STATE, 1808d522f475Smrg/* T U V W */ 1809d522f475SmrgCASE_GROUND_STATE, 1810d522f475SmrgCASE_GROUND_STATE, 1811d522f475SmrgCASE_GROUND_STATE, 1812d522f475SmrgCASE_GROUND_STATE, 1813d522f475Smrg/* X Y Z [ */ 1814d522f475SmrgCASE_GROUND_STATE, 1815d522f475SmrgCASE_GROUND_STATE, 1816d522f475SmrgCASE_GROUND_STATE, 1817d522f475SmrgCASE_GROUND_STATE, 1818d522f475Smrg/* \ ] ^ _ */ 1819d522f475SmrgCASE_GROUND_STATE, 1820d522f475SmrgCASE_GROUND_STATE, 1821d522f475SmrgCASE_GROUND_STATE, 1822d522f475SmrgCASE_GROUND_STATE, 1823d522f475Smrg/* ` a b c */ 1824d522f475SmrgCASE_GROUND_STATE, 1825d522f475SmrgCASE_GROUND_STATE, 1826d522f475SmrgCASE_GROUND_STATE, 1827d522f475SmrgCASE_GROUND_STATE, 1828d522f475Smrg/* d e f g */ 1829d522f475SmrgCASE_GROUND_STATE, 1830d522f475SmrgCASE_GROUND_STATE, 1831d522f475SmrgCASE_GROUND_STATE, 1832d522f475SmrgCASE_GROUND_STATE, 1833d522f475Smrg/* h i j k */ 1834d522f475SmrgCASE_GROUND_STATE, 1835d522f475SmrgCASE_GROUND_STATE, 1836d522f475SmrgCASE_GROUND_STATE, 1837d522f475SmrgCASE_GROUND_STATE, 1838d522f475Smrg/* l m n o */ 1839d522f475SmrgCASE_GROUND_STATE, 1840d522f475SmrgCASE_GROUND_STATE, 1841d522f475SmrgCASE_GROUND_STATE, 1842d522f475SmrgCASE_GROUND_STATE, 1843d522f475Smrg/* p q r s */ 1844d522f475SmrgCASE_GROUND_STATE, 1845d522f475SmrgCASE_GROUND_STATE, 1846d522f475SmrgCASE_GROUND_STATE, 1847d522f475SmrgCASE_GROUND_STATE, 1848d522f475Smrg/* t u v w */ 1849d522f475SmrgCASE_GROUND_STATE, 1850d522f475SmrgCASE_GROUND_STATE, 1851d522f475SmrgCASE_GROUND_STATE, 1852d522f475SmrgCASE_DECEFR, 1853d522f475Smrg/* x y z { */ 1854d522f475SmrgCASE_GROUND_STATE, 1855d522f475SmrgCASE_GROUND_STATE, 1856d522f475SmrgCASE_DECELR, 1857d522f475SmrgCASE_DECSLE, 1858d522f475Smrg/* | } ~ DEL */ 1859d522f475SmrgCASE_DECRQLP, 1860d522f475SmrgCASE_GROUND_STATE, 1861d522f475SmrgCASE_GROUND_STATE, 1862d522f475SmrgCASE_IGNORE, 1863d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 1864d522f475SmrgCASE_GROUND_STATE, 1865d522f475SmrgCASE_GROUND_STATE, 1866d522f475SmrgCASE_GROUND_STATE, 1867d522f475SmrgCASE_GROUND_STATE, 1868d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 1869d522f475SmrgCASE_IND, 1870d522f475SmrgCASE_NEL, 1871d522f475SmrgCASE_GROUND_STATE, 1872d522f475SmrgCASE_GROUND_STATE, 1873d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 1874d522f475SmrgCASE_HTS, 1875d522f475SmrgCASE_GROUND_STATE, 1876d522f475SmrgCASE_GROUND_STATE, 1877d522f475SmrgCASE_GROUND_STATE, 1878d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 1879d522f475SmrgCASE_GROUND_STATE, 1880d522f475SmrgCASE_RI, 1881d522f475SmrgCASE_SS2, 1882d522f475SmrgCASE_SS3, 1883d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 1884d522f475SmrgCASE_DCS, 1885d522f475SmrgCASE_GROUND_STATE, 1886d522f475SmrgCASE_GROUND_STATE, 1887d522f475SmrgCASE_GROUND_STATE, 1888d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 1889d522f475SmrgCASE_GROUND_STATE, 1890d522f475SmrgCASE_GROUND_STATE, 1891d522f475SmrgCASE_SPA, 1892d522f475SmrgCASE_EPA, 1893d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 1894d522f475SmrgCASE_SOS, 1895d522f475SmrgCASE_GROUND_STATE, 1896d522f475SmrgCASE_DECID, 1897d522f475SmrgCASE_CSI_STATE, 1898d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 1899d522f475SmrgCASE_ST, 1900d522f475SmrgCASE_OSC, 1901d522f475SmrgCASE_PM, 1902d522f475SmrgCASE_APC, 1903d522f475Smrg/* nobreakspace exclamdown cent sterling */ 1904d522f475SmrgCASE_CSI_IGNORE, 1905d522f475SmrgCASE_CSI_IGNORE, 1906d522f475SmrgCASE_CSI_IGNORE, 1907d522f475SmrgCASE_CSI_IGNORE, 1908d522f475Smrg/* currency yen brokenbar section */ 1909d522f475SmrgCASE_CSI_IGNORE, 1910d522f475SmrgCASE_CSI_IGNORE, 1911d522f475SmrgCASE_CSI_IGNORE, 1912d522f475SmrgCASE_CSI_IGNORE, 1913d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 1914d522f475SmrgCASE_CSI_IGNORE, 1915d522f475SmrgCASE_CSI_IGNORE, 1916d522f475SmrgCASE_CSI_IGNORE, 1917d522f475SmrgCASE_CSI_IGNORE, 1918d522f475Smrg/* notsign hyphen registered macron */ 1919d522f475SmrgCASE_CSI_IGNORE, 1920d522f475SmrgCASE_CSI_IGNORE, 1921d522f475SmrgCASE_CSI_IGNORE, 1922d522f475SmrgCASE_CSI_IGNORE, 1923d522f475Smrg/* degree plusminus twosuperior threesuperior */ 1924d522f475SmrgCASE_CSI_IGNORE, 1925d522f475SmrgCASE_CSI_IGNORE, 1926d522f475SmrgCASE_CSI_IGNORE, 1927d522f475SmrgCASE_CSI_IGNORE, 1928d522f475Smrg/* acute mu paragraph periodcentered */ 1929d522f475SmrgCASE_CSI_IGNORE, 1930d522f475SmrgCASE_CSI_IGNORE, 1931d522f475SmrgCASE_CSI_IGNORE, 1932d522f475SmrgCASE_CSI_IGNORE, 1933d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 1934d522f475SmrgCASE_CSI_IGNORE, 1935d522f475SmrgCASE_CSI_IGNORE, 1936d522f475SmrgCASE_CSI_IGNORE, 1937d522f475SmrgCASE_CSI_IGNORE, 1938d522f475Smrg/* onequarter onehalf threequarters questiondown */ 1939d522f475SmrgCASE_CSI_IGNORE, 1940d522f475SmrgCASE_CSI_IGNORE, 1941d522f475SmrgCASE_CSI_IGNORE, 1942d522f475SmrgCASE_CSI_IGNORE, 1943d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 1944d522f475SmrgCASE_GROUND_STATE, 1945d522f475SmrgCASE_GROUND_STATE, 1946d522f475SmrgCASE_GROUND_STATE, 1947d522f475SmrgCASE_GROUND_STATE, 1948d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 1949d522f475SmrgCASE_GROUND_STATE, 1950d522f475SmrgCASE_GROUND_STATE, 1951d522f475SmrgCASE_GROUND_STATE, 1952d522f475SmrgCASE_GROUND_STATE, 1953d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 1954d522f475SmrgCASE_GROUND_STATE, 1955d522f475SmrgCASE_GROUND_STATE, 1956d522f475SmrgCASE_GROUND_STATE, 1957d522f475SmrgCASE_GROUND_STATE, 1958d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 1959d522f475SmrgCASE_GROUND_STATE, 1960d522f475SmrgCASE_GROUND_STATE, 1961d522f475SmrgCASE_GROUND_STATE, 1962d522f475SmrgCASE_GROUND_STATE, 1963d522f475Smrg/* Eth Ntilde Ograve Oacute */ 1964d522f475SmrgCASE_GROUND_STATE, 1965d522f475SmrgCASE_GROUND_STATE, 1966d522f475SmrgCASE_GROUND_STATE, 1967d522f475SmrgCASE_GROUND_STATE, 1968d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 1969d522f475SmrgCASE_GROUND_STATE, 1970d522f475SmrgCASE_GROUND_STATE, 1971d522f475SmrgCASE_GROUND_STATE, 1972d522f475SmrgCASE_GROUND_STATE, 1973d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 1974d522f475SmrgCASE_GROUND_STATE, 1975d522f475SmrgCASE_GROUND_STATE, 1976d522f475SmrgCASE_GROUND_STATE, 1977d522f475SmrgCASE_GROUND_STATE, 1978d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 1979d522f475SmrgCASE_GROUND_STATE, 1980d522f475SmrgCASE_GROUND_STATE, 1981d522f475SmrgCASE_GROUND_STATE, 1982d522f475SmrgCASE_GROUND_STATE, 1983d522f475Smrg/* agrave aacute acircumflex atilde */ 1984d522f475SmrgCASE_GROUND_STATE, 1985d522f475SmrgCASE_GROUND_STATE, 1986d522f475SmrgCASE_GROUND_STATE, 1987d522f475SmrgCASE_GROUND_STATE, 1988d522f475Smrg/* adiaeresis aring ae ccedilla */ 1989d522f475SmrgCASE_GROUND_STATE, 1990d522f475SmrgCASE_GROUND_STATE, 1991d522f475SmrgCASE_GROUND_STATE, 1992d522f475SmrgCASE_GROUND_STATE, 1993d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 1994d522f475SmrgCASE_GROUND_STATE, 1995d522f475SmrgCASE_GROUND_STATE, 1996d522f475SmrgCASE_GROUND_STATE, 1997d522f475SmrgCASE_GROUND_STATE, 1998d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 1999d522f475SmrgCASE_GROUND_STATE, 2000d522f475SmrgCASE_GROUND_STATE, 2001d522f475SmrgCASE_GROUND_STATE, 2002d522f475SmrgCASE_GROUND_STATE, 2003d522f475Smrg/* eth ntilde ograve oacute */ 2004d522f475SmrgCASE_GROUND_STATE, 2005d522f475SmrgCASE_GROUND_STATE, 2006d522f475SmrgCASE_GROUND_STATE, 2007d522f475SmrgCASE_GROUND_STATE, 2008d522f475Smrg/* ocircumflex otilde odiaeresis division */ 2009d522f475SmrgCASE_GROUND_STATE, 2010d522f475SmrgCASE_GROUND_STATE, 2011d522f475SmrgCASE_GROUND_STATE, 2012d522f475SmrgCASE_DECEFR, 2013d522f475Smrg/* oslash ugrave uacute ucircumflex */ 2014d522f475SmrgCASE_GROUND_STATE, 2015d522f475SmrgCASE_GROUND_STATE, 2016d522f475SmrgCASE_DECELR, 2017d522f475SmrgCASE_DECSLE, 2018d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 2019d522f475SmrgCASE_DECRQLP, 2020d522f475SmrgCASE_GROUND_STATE, 2021d522f475SmrgCASE_GROUND_STATE, 2022d522f475SmrgCASE_IGNORE, 2023d522f475Smrg}; 2024d522f475Smrg#endif /* OPT_DEC_LOCATOR */ 2025d522f475Smrg 2026d522f475Smrg#if OPT_DEC_RECTOPS 2027d522f475SmrgConst PARSE_T csi_dollar_table[] = /* CSI ... $ */ 2028d522f475Smrg{ 2029d522f475Smrg/* NUL SOH STX ETX */ 2030d522f475SmrgCASE_IGNORE, 2031d522f475SmrgCASE_IGNORE, 2032d522f475SmrgCASE_IGNORE, 2033d522f475SmrgCASE_IGNORE, 2034d522f475Smrg/* EOT ENQ ACK BEL */ 2035d522f475SmrgCASE_IGNORE, 2036d522f475SmrgCASE_ENQ, 2037d522f475SmrgCASE_IGNORE, 2038d522f475SmrgCASE_BELL, 2039d522f475Smrg/* BS HT NL VT */ 2040d522f475SmrgCASE_BS, 2041d522f475SmrgCASE_TAB, 2042d522f475SmrgCASE_VMOT, 2043d522f475SmrgCASE_VMOT, 2044d522f475Smrg/* NP CR SO SI */ 2045d522f475SmrgCASE_VMOT, 2046d522f475SmrgCASE_CR, 2047d522f475SmrgCASE_SO, 2048d522f475SmrgCASE_SI, 2049d522f475Smrg/* DLE DC1 DC2 DC3 */ 2050d522f475SmrgCASE_IGNORE, 2051d522f475SmrgCASE_IGNORE, 2052d522f475SmrgCASE_IGNORE, 2053d522f475SmrgCASE_IGNORE, 2054d522f475Smrg/* DC4 NAK SYN ETB */ 2055d522f475SmrgCASE_IGNORE, 2056d522f475SmrgCASE_IGNORE, 2057d522f475SmrgCASE_IGNORE, 2058d522f475SmrgCASE_IGNORE, 2059d522f475Smrg/* CAN EM SUB ESC */ 2060d522f475SmrgCASE_GROUND_STATE, 2061d522f475SmrgCASE_IGNORE, 2062d522f475SmrgCASE_GROUND_STATE, 2063d522f475SmrgCASE_ESC, 2064d522f475Smrg/* FS GS RS US */ 2065d522f475SmrgCASE_IGNORE, 2066d522f475SmrgCASE_IGNORE, 2067d522f475SmrgCASE_IGNORE, 2068d522f475SmrgCASE_IGNORE, 2069d522f475Smrg/* SP ! " # */ 2070d522f475SmrgCASE_CSI_IGNORE, 2071d522f475SmrgCASE_CSI_IGNORE, 2072d522f475SmrgCASE_CSI_IGNORE, 2073d522f475SmrgCASE_CSI_IGNORE, 2074d522f475Smrg/* $ % & ' */ 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/* 0 1 2 3 */ 2090d522f475SmrgCASE_CSI_IGNORE, 2091d522f475SmrgCASE_CSI_IGNORE, 2092d522f475SmrgCASE_CSI_IGNORE, 2093d522f475SmrgCASE_CSI_IGNORE, 2094d522f475Smrg/* 4 5 6 7 */ 2095d522f475SmrgCASE_CSI_IGNORE, 2096d522f475SmrgCASE_CSI_IGNORE, 2097d522f475SmrgCASE_CSI_IGNORE, 2098d522f475SmrgCASE_CSI_IGNORE, 2099d522f475Smrg/* 8 9 : ; */ 2100d522f475SmrgCASE_CSI_IGNORE, 2101d522f475SmrgCASE_CSI_IGNORE, 2102d522f475SmrgCASE_CSI_IGNORE, 2103d522f475SmrgCASE_CSI_IGNORE, 2104d522f475Smrg/* < = > ? */ 2105d522f475SmrgCASE_CSI_IGNORE, 2106d522f475SmrgCASE_CSI_IGNORE, 2107d522f475SmrgCASE_CSI_IGNORE, 2108d522f475SmrgCASE_CSI_IGNORE, 2109d522f475Smrg/* @ A B C */ 2110d522f475SmrgCASE_GROUND_STATE, 2111d522f475SmrgCASE_GROUND_STATE, 2112d522f475SmrgCASE_GROUND_STATE, 2113d522f475SmrgCASE_GROUND_STATE, 2114d522f475Smrg/* D E F G */ 2115d522f475SmrgCASE_GROUND_STATE, 2116d522f475SmrgCASE_GROUND_STATE, 2117d522f475SmrgCASE_GROUND_STATE, 2118d522f475SmrgCASE_GROUND_STATE, 2119d522f475Smrg/* H I J K */ 2120d522f475SmrgCASE_GROUND_STATE, 2121d522f475SmrgCASE_GROUND_STATE, 2122d522f475SmrgCASE_GROUND_STATE, 2123d522f475SmrgCASE_GROUND_STATE, 2124d522f475Smrg/* L M N O */ 2125d522f475SmrgCASE_GROUND_STATE, 2126d522f475SmrgCASE_GROUND_STATE, 2127d522f475SmrgCASE_GROUND_STATE, 2128d522f475SmrgCASE_GROUND_STATE, 2129d522f475Smrg/* P Q R S */ 2130d522f475SmrgCASE_GROUND_STATE, 2131d522f475SmrgCASE_GROUND_STATE, 2132d522f475SmrgCASE_GROUND_STATE, 2133d522f475SmrgCASE_GROUND_STATE, 2134d522f475Smrg/* T U V W */ 2135d522f475SmrgCASE_GROUND_STATE, 2136d522f475SmrgCASE_GROUND_STATE, 2137d522f475SmrgCASE_GROUND_STATE, 2138d522f475SmrgCASE_GROUND_STATE, 2139d522f475Smrg/* X Y Z [ */ 2140d522f475SmrgCASE_GROUND_STATE, 2141d522f475SmrgCASE_GROUND_STATE, 2142d522f475SmrgCASE_GROUND_STATE, 2143d522f475SmrgCASE_GROUND_STATE, 2144d522f475Smrg/* \ ] ^ _ */ 2145d522f475SmrgCASE_GROUND_STATE, 2146d522f475SmrgCASE_GROUND_STATE, 2147d522f475SmrgCASE_GROUND_STATE, 2148d522f475SmrgCASE_GROUND_STATE, 2149d522f475Smrg/* ` a b c */ 2150d522f475SmrgCASE_GROUND_STATE, 2151d522f475SmrgCASE_GROUND_STATE, 2152d522f475SmrgCASE_GROUND_STATE, 2153d522f475SmrgCASE_GROUND_STATE, 2154d522f475Smrg/* d e f g */ 2155d522f475SmrgCASE_GROUND_STATE, 2156d522f475SmrgCASE_GROUND_STATE, 2157d522f475SmrgCASE_GROUND_STATE, 2158d522f475SmrgCASE_GROUND_STATE, 2159d522f475Smrg/* h i j k */ 2160d522f475SmrgCASE_GROUND_STATE, 2161d522f475SmrgCASE_GROUND_STATE, 2162d522f475SmrgCASE_GROUND_STATE, 2163d522f475SmrgCASE_GROUND_STATE, 2164d522f475Smrg/* l m n o */ 2165d522f475SmrgCASE_GROUND_STATE, 2166d522f475SmrgCASE_GROUND_STATE, 2167d522f475SmrgCASE_GROUND_STATE, 2168d522f475SmrgCASE_GROUND_STATE, 2169d522f475Smrg/* p q r s */ 2170d522f475SmrgCASE_GROUND_STATE, 2171d522f475SmrgCASE_GROUND_STATE, 2172d522f475SmrgCASE_DECCARA, 2173d522f475SmrgCASE_GROUND_STATE, 2174d522f475Smrg/* t u v w */ 2175d522f475SmrgCASE_DECRARA, 2176d522f475SmrgCASE_GROUND_STATE, 2177d522f475SmrgCASE_DECCRA, 2178d522f475SmrgCASE_GROUND_STATE, 2179d522f475Smrg/* x y z { */ 2180d522f475SmrgCASE_DECFRA, 2181d522f475SmrgCASE_GROUND_STATE, 2182d522f475SmrgCASE_DECERA, 2183d522f475SmrgCASE_DECSERA, 2184d522f475Smrg/* | } ~ DEL */ 2185d522f475SmrgCASE_GROUND_STATE, 2186d522f475SmrgCASE_GROUND_STATE, 2187d522f475SmrgCASE_GROUND_STATE, 2188d522f475SmrgCASE_IGNORE, 2189d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 2190d522f475SmrgCASE_GROUND_STATE, 2191d522f475SmrgCASE_GROUND_STATE, 2192d522f475SmrgCASE_GROUND_STATE, 2193d522f475SmrgCASE_GROUND_STATE, 2194d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 2195d522f475SmrgCASE_IND, 2196d522f475SmrgCASE_NEL, 2197d522f475SmrgCASE_GROUND_STATE, 2198d522f475SmrgCASE_GROUND_STATE, 2199d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 2200d522f475SmrgCASE_HTS, 2201d522f475SmrgCASE_GROUND_STATE, 2202d522f475SmrgCASE_GROUND_STATE, 2203d522f475SmrgCASE_GROUND_STATE, 2204d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 2205d522f475SmrgCASE_GROUND_STATE, 2206d522f475SmrgCASE_RI, 2207d522f475SmrgCASE_SS2, 2208d522f475SmrgCASE_SS3, 2209d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 2210d522f475SmrgCASE_DCS, 2211d522f475SmrgCASE_GROUND_STATE, 2212d522f475SmrgCASE_GROUND_STATE, 2213d522f475SmrgCASE_GROUND_STATE, 2214d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 2215d522f475SmrgCASE_GROUND_STATE, 2216d522f475SmrgCASE_GROUND_STATE, 2217d522f475SmrgCASE_SPA, 2218d522f475SmrgCASE_EPA, 2219d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 2220d522f475SmrgCASE_SOS, 2221d522f475SmrgCASE_GROUND_STATE, 2222d522f475SmrgCASE_DECID, 2223d522f475SmrgCASE_CSI_STATE, 2224d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 2225d522f475SmrgCASE_ST, 2226d522f475SmrgCASE_OSC, 2227d522f475SmrgCASE_PM, 2228d522f475SmrgCASE_APC, 2229d522f475Smrg/* nobreakspace exclamdown cent sterling */ 2230d522f475SmrgCASE_CSI_IGNORE, 2231d522f475SmrgCASE_CSI_IGNORE, 2232d522f475SmrgCASE_CSI_IGNORE, 2233d522f475SmrgCASE_CSI_IGNORE, 2234d522f475Smrg/* currency yen brokenbar section */ 2235d522f475SmrgCASE_CSI_IGNORE, 2236d522f475SmrgCASE_CSI_IGNORE, 2237d522f475SmrgCASE_CSI_IGNORE, 2238d522f475SmrgCASE_CSI_IGNORE, 2239d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 2240d522f475SmrgCASE_CSI_IGNORE, 2241d522f475SmrgCASE_CSI_IGNORE, 2242d522f475SmrgCASE_CSI_IGNORE, 2243d522f475SmrgCASE_CSI_IGNORE, 2244d522f475Smrg/* notsign hyphen registered macron */ 2245d522f475SmrgCASE_CSI_IGNORE, 2246d522f475SmrgCASE_CSI_IGNORE, 2247d522f475SmrgCASE_CSI_IGNORE, 2248d522f475SmrgCASE_CSI_IGNORE, 2249d522f475Smrg/* degree plusminus twosuperior threesuperior */ 2250d522f475SmrgCASE_CSI_IGNORE, 2251d522f475SmrgCASE_CSI_IGNORE, 2252d522f475SmrgCASE_CSI_IGNORE, 2253d522f475SmrgCASE_CSI_IGNORE, 2254d522f475Smrg/* acute mu paragraph periodcentered */ 2255d522f475SmrgCASE_CSI_IGNORE, 2256d522f475SmrgCASE_CSI_IGNORE, 2257d522f475SmrgCASE_CSI_IGNORE, 2258d522f475SmrgCASE_CSI_IGNORE, 2259d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 2260d522f475SmrgCASE_CSI_IGNORE, 2261d522f475SmrgCASE_CSI_IGNORE, 2262d522f475SmrgCASE_CSI_IGNORE, 2263d522f475SmrgCASE_CSI_IGNORE, 2264d522f475Smrg/* onequarter onehalf threequarters questiondown */ 2265d522f475SmrgCASE_CSI_IGNORE, 2266d522f475SmrgCASE_CSI_IGNORE, 2267d522f475SmrgCASE_CSI_IGNORE, 2268d522f475SmrgCASE_CSI_IGNORE, 2269d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 2270d522f475SmrgCASE_GROUND_STATE, 2271d522f475SmrgCASE_GROUND_STATE, 2272d522f475SmrgCASE_GROUND_STATE, 2273d522f475SmrgCASE_GROUND_STATE, 2274d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 2275d522f475SmrgCASE_GROUND_STATE, 2276d522f475SmrgCASE_GROUND_STATE, 2277d522f475SmrgCASE_GROUND_STATE, 2278d522f475SmrgCASE_GROUND_STATE, 2279d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 2280d522f475SmrgCASE_GROUND_STATE, 2281d522f475SmrgCASE_GROUND_STATE, 2282d522f475SmrgCASE_GROUND_STATE, 2283d522f475SmrgCASE_GROUND_STATE, 2284d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 2285d522f475SmrgCASE_GROUND_STATE, 2286d522f475SmrgCASE_GROUND_STATE, 2287d522f475SmrgCASE_GROUND_STATE, 2288d522f475SmrgCASE_GROUND_STATE, 2289d522f475Smrg/* Eth Ntilde Ograve Oacute */ 2290d522f475SmrgCASE_GROUND_STATE, 2291d522f475SmrgCASE_GROUND_STATE, 2292d522f475SmrgCASE_GROUND_STATE, 2293d522f475SmrgCASE_GROUND_STATE, 2294d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 2295d522f475SmrgCASE_GROUND_STATE, 2296d522f475SmrgCASE_GROUND_STATE, 2297d522f475SmrgCASE_GROUND_STATE, 2298d522f475SmrgCASE_GROUND_STATE, 2299d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 2300d522f475SmrgCASE_GROUND_STATE, 2301d522f475SmrgCASE_GROUND_STATE, 2302d522f475SmrgCASE_GROUND_STATE, 2303d522f475SmrgCASE_GROUND_STATE, 2304d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 2305d522f475SmrgCASE_GROUND_STATE, 2306d522f475SmrgCASE_GROUND_STATE, 2307d522f475SmrgCASE_GROUND_STATE, 2308d522f475SmrgCASE_GROUND_STATE, 2309d522f475Smrg/* agrave aacute acircumflex atilde */ 2310d522f475SmrgCASE_GROUND_STATE, 2311d522f475SmrgCASE_GROUND_STATE, 2312d522f475SmrgCASE_GROUND_STATE, 2313d522f475SmrgCASE_GROUND_STATE, 2314d522f475Smrg/* adiaeresis aring ae ccedilla */ 2315d522f475SmrgCASE_GROUND_STATE, 2316d522f475SmrgCASE_GROUND_STATE, 2317d522f475SmrgCASE_GROUND_STATE, 2318d522f475SmrgCASE_GROUND_STATE, 2319d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 2320d522f475SmrgCASE_GROUND_STATE, 2321d522f475SmrgCASE_GROUND_STATE, 2322d522f475SmrgCASE_GROUND_STATE, 2323d522f475SmrgCASE_GROUND_STATE, 2324d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 2325d522f475SmrgCASE_GROUND_STATE, 2326d522f475SmrgCASE_GROUND_STATE, 2327d522f475SmrgCASE_GROUND_STATE, 2328d522f475SmrgCASE_GROUND_STATE, 2329d522f475Smrg/* eth ntilde ograve oacute */ 2330d522f475SmrgCASE_GROUND_STATE, 2331d522f475SmrgCASE_GROUND_STATE, 2332d522f475SmrgCASE_DECCARA, 2333d522f475SmrgCASE_GROUND_STATE, 2334d522f475Smrg/* ocircumflex otilde odiaeresis division */ 2335d522f475SmrgCASE_DECRARA, 2336d522f475SmrgCASE_GROUND_STATE, 2337d522f475SmrgCASE_DECCRA, 2338d522f475SmrgCASE_GROUND_STATE, 2339d522f475Smrg/* oslash ugrave uacute ucircumflex */ 2340d522f475SmrgCASE_DECFRA, 2341d522f475SmrgCASE_GROUND_STATE, 2342d522f475SmrgCASE_DECERA, 2343d522f475SmrgCASE_DECSERA, 2344d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 2345d522f475SmrgCASE_GROUND_STATE, 2346d522f475SmrgCASE_GROUND_STATE, 2347d522f475SmrgCASE_GROUND_STATE, 2348d522f475SmrgCASE_GROUND_STATE, 2349d522f475Smrg}; 2350d522f475Smrg 2351d522f475SmrgConst PARSE_T csi_star_table[] = /* CSI ... * */ 2352d522f475Smrg{ 2353d522f475Smrg/* NUL SOH STX ETX */ 2354d522f475SmrgCASE_IGNORE, 2355d522f475SmrgCASE_IGNORE, 2356d522f475SmrgCASE_IGNORE, 2357d522f475SmrgCASE_IGNORE, 2358d522f475Smrg/* EOT ENQ ACK BEL */ 2359d522f475SmrgCASE_IGNORE, 2360d522f475SmrgCASE_ENQ, 2361d522f475SmrgCASE_IGNORE, 2362d522f475SmrgCASE_BELL, 2363d522f475Smrg/* BS HT NL VT */ 2364d522f475SmrgCASE_BS, 2365d522f475SmrgCASE_TAB, 2366d522f475SmrgCASE_VMOT, 2367d522f475SmrgCASE_VMOT, 2368d522f475Smrg/* NP CR SO SI */ 2369d522f475SmrgCASE_VMOT, 2370d522f475SmrgCASE_CR, 2371d522f475SmrgCASE_SO, 2372d522f475SmrgCASE_SI, 2373d522f475Smrg/* DLE DC1 DC2 DC3 */ 2374d522f475SmrgCASE_IGNORE, 2375d522f475SmrgCASE_IGNORE, 2376d522f475SmrgCASE_IGNORE, 2377d522f475SmrgCASE_IGNORE, 2378d522f475Smrg/* DC4 NAK SYN ETB */ 2379d522f475SmrgCASE_IGNORE, 2380d522f475SmrgCASE_IGNORE, 2381d522f475SmrgCASE_IGNORE, 2382d522f475SmrgCASE_IGNORE, 2383d522f475Smrg/* CAN EM SUB ESC */ 2384d522f475SmrgCASE_GROUND_STATE, 2385d522f475SmrgCASE_IGNORE, 2386d522f475SmrgCASE_GROUND_STATE, 2387d522f475SmrgCASE_ESC, 2388d522f475Smrg/* FS GS RS US */ 2389d522f475SmrgCASE_IGNORE, 2390d522f475SmrgCASE_IGNORE, 2391d522f475SmrgCASE_IGNORE, 2392d522f475SmrgCASE_IGNORE, 2393d522f475Smrg/* SP ! " # */ 2394d522f475SmrgCASE_CSI_IGNORE, 2395d522f475SmrgCASE_CSI_IGNORE, 2396d522f475SmrgCASE_CSI_IGNORE, 2397d522f475SmrgCASE_CSI_IGNORE, 2398d522f475Smrg/* $ % & ' */ 2399d522f475SmrgCASE_CSI_IGNORE, 2400d522f475SmrgCASE_CSI_IGNORE, 2401d522f475SmrgCASE_CSI_IGNORE, 2402d522f475SmrgCASE_CSI_IGNORE, 2403d522f475Smrg/* ( ) * + */ 2404d522f475SmrgCASE_CSI_IGNORE, 2405d522f475SmrgCASE_CSI_IGNORE, 2406d522f475SmrgCASE_CSI_IGNORE, 2407d522f475SmrgCASE_CSI_IGNORE, 2408d522f475Smrg/* , - . / */ 2409d522f475SmrgCASE_CSI_IGNORE, 2410d522f475SmrgCASE_CSI_IGNORE, 2411d522f475SmrgCASE_CSI_IGNORE, 2412d522f475SmrgCASE_CSI_IGNORE, 2413d522f475Smrg/* 0 1 2 3 */ 2414d522f475SmrgCASE_CSI_IGNORE, 2415d522f475SmrgCASE_CSI_IGNORE, 2416d522f475SmrgCASE_CSI_IGNORE, 2417d522f475SmrgCASE_CSI_IGNORE, 2418d522f475Smrg/* 4 5 6 7 */ 2419d522f475SmrgCASE_CSI_IGNORE, 2420d522f475SmrgCASE_CSI_IGNORE, 2421d522f475SmrgCASE_CSI_IGNORE, 2422d522f475SmrgCASE_CSI_IGNORE, 2423d522f475Smrg/* 8 9 : ; */ 2424d522f475SmrgCASE_CSI_IGNORE, 2425d522f475SmrgCASE_CSI_IGNORE, 2426d522f475SmrgCASE_CSI_IGNORE, 2427d522f475SmrgCASE_CSI_IGNORE, 2428d522f475Smrg/* < = > ? */ 2429d522f475SmrgCASE_CSI_IGNORE, 2430d522f475SmrgCASE_CSI_IGNORE, 2431d522f475SmrgCASE_CSI_IGNORE, 2432d522f475SmrgCASE_CSI_IGNORE, 2433d522f475Smrg/* @ A B C */ 2434d522f475SmrgCASE_GROUND_STATE, 2435d522f475SmrgCASE_GROUND_STATE, 2436d522f475SmrgCASE_GROUND_STATE, 2437d522f475SmrgCASE_GROUND_STATE, 2438d522f475Smrg/* D E F G */ 2439d522f475SmrgCASE_GROUND_STATE, 2440d522f475SmrgCASE_GROUND_STATE, 2441d522f475SmrgCASE_GROUND_STATE, 2442d522f475SmrgCASE_GROUND_STATE, 2443d522f475Smrg/* H I J K */ 2444d522f475SmrgCASE_GROUND_STATE, 2445d522f475SmrgCASE_GROUND_STATE, 2446d522f475SmrgCASE_GROUND_STATE, 2447d522f475SmrgCASE_GROUND_STATE, 2448d522f475Smrg/* L M N O */ 2449d522f475SmrgCASE_GROUND_STATE, 2450d522f475SmrgCASE_GROUND_STATE, 2451d522f475SmrgCASE_GROUND_STATE, 2452d522f475SmrgCASE_GROUND_STATE, 2453d522f475Smrg/* P Q R S */ 2454d522f475SmrgCASE_GROUND_STATE, 2455d522f475SmrgCASE_GROUND_STATE, 2456d522f475SmrgCASE_GROUND_STATE, 2457d522f475SmrgCASE_GROUND_STATE, 2458d522f475Smrg/* T U V W */ 2459d522f475SmrgCASE_GROUND_STATE, 2460d522f475SmrgCASE_GROUND_STATE, 2461d522f475SmrgCASE_GROUND_STATE, 2462d522f475SmrgCASE_GROUND_STATE, 2463d522f475Smrg/* X Y Z [ */ 2464d522f475SmrgCASE_GROUND_STATE, 2465d522f475SmrgCASE_GROUND_STATE, 2466d522f475SmrgCASE_GROUND_STATE, 2467d522f475SmrgCASE_GROUND_STATE, 2468d522f475Smrg/* \ ] ^ _ */ 2469d522f475SmrgCASE_GROUND_STATE, 2470d522f475SmrgCASE_GROUND_STATE, 2471d522f475SmrgCASE_GROUND_STATE, 2472d522f475SmrgCASE_GROUND_STATE, 2473d522f475Smrg/* ` a b c */ 2474d522f475SmrgCASE_GROUND_STATE, 2475d522f475SmrgCASE_GROUND_STATE, 2476d522f475SmrgCASE_GROUND_STATE, 2477d522f475SmrgCASE_GROUND_STATE, 2478d522f475Smrg/* d e f g */ 2479d522f475SmrgCASE_GROUND_STATE, 2480d522f475SmrgCASE_GROUND_STATE, 2481d522f475SmrgCASE_GROUND_STATE, 2482d522f475SmrgCASE_GROUND_STATE, 2483d522f475Smrg/* h i j k */ 2484d522f475SmrgCASE_GROUND_STATE, 2485d522f475SmrgCASE_GROUND_STATE, 2486d522f475SmrgCASE_GROUND_STATE, 2487d522f475SmrgCASE_GROUND_STATE, 2488d522f475Smrg/* l m n o */ 2489d522f475SmrgCASE_GROUND_STATE, 2490d522f475SmrgCASE_GROUND_STATE, 2491d522f475SmrgCASE_GROUND_STATE, 2492d522f475SmrgCASE_GROUND_STATE, 2493d522f475Smrg/* p q r s */ 2494d522f475SmrgCASE_GROUND_STATE, 2495d522f475SmrgCASE_GROUND_STATE, 2496d522f475SmrgCASE_GROUND_STATE, 2497d522f475SmrgCASE_GROUND_STATE, 2498d522f475Smrg/* t u v w */ 2499d522f475SmrgCASE_GROUND_STATE, 2500d522f475SmrgCASE_GROUND_STATE, 2501d522f475SmrgCASE_GROUND_STATE, 2502d522f475SmrgCASE_GROUND_STATE, 2503d522f475Smrg/* x y z { */ 2504d522f475SmrgCASE_DECSACE, 2505d522f475SmrgCASE_GROUND_STATE, 2506d522f475SmrgCASE_GROUND_STATE, 2507d522f475SmrgCASE_GROUND_STATE, 2508d522f475Smrg/* | } ~ DEL */ 2509d522f475SmrgCASE_GROUND_STATE, 2510d522f475SmrgCASE_GROUND_STATE, 2511d522f475SmrgCASE_GROUND_STATE, 2512d522f475SmrgCASE_IGNORE, 2513d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 2514d522f475SmrgCASE_GROUND_STATE, 2515d522f475SmrgCASE_GROUND_STATE, 2516d522f475SmrgCASE_GROUND_STATE, 2517d522f475SmrgCASE_GROUND_STATE, 2518d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 2519d522f475SmrgCASE_IND, 2520d522f475SmrgCASE_NEL, 2521d522f475SmrgCASE_GROUND_STATE, 2522d522f475SmrgCASE_GROUND_STATE, 2523d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 2524d522f475SmrgCASE_HTS, 2525d522f475SmrgCASE_GROUND_STATE, 2526d522f475SmrgCASE_GROUND_STATE, 2527d522f475SmrgCASE_GROUND_STATE, 2528d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 2529d522f475SmrgCASE_GROUND_STATE, 2530d522f475SmrgCASE_RI, 2531d522f475SmrgCASE_SS2, 2532d522f475SmrgCASE_SS3, 2533d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 2534d522f475SmrgCASE_DCS, 2535d522f475SmrgCASE_GROUND_STATE, 2536d522f475SmrgCASE_GROUND_STATE, 2537d522f475SmrgCASE_GROUND_STATE, 2538d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 2539d522f475SmrgCASE_GROUND_STATE, 2540d522f475SmrgCASE_GROUND_STATE, 2541d522f475SmrgCASE_SPA, 2542d522f475SmrgCASE_EPA, 2543d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 2544d522f475SmrgCASE_SOS, 2545d522f475SmrgCASE_GROUND_STATE, 2546d522f475SmrgCASE_DECID, 2547d522f475SmrgCASE_CSI_STATE, 2548d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 2549d522f475SmrgCASE_ST, 2550d522f475SmrgCASE_OSC, 2551d522f475SmrgCASE_PM, 2552d522f475SmrgCASE_APC, 2553d522f475Smrg/* nobreakspace exclamdown cent sterling */ 2554d522f475SmrgCASE_CSI_IGNORE, 2555d522f475SmrgCASE_CSI_IGNORE, 2556d522f475SmrgCASE_CSI_IGNORE, 2557d522f475SmrgCASE_CSI_IGNORE, 2558d522f475Smrg/* currency yen brokenbar section */ 2559d522f475SmrgCASE_CSI_IGNORE, 2560d522f475SmrgCASE_CSI_IGNORE, 2561d522f475SmrgCASE_CSI_IGNORE, 2562d522f475SmrgCASE_CSI_IGNORE, 2563d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 2564d522f475SmrgCASE_CSI_IGNORE, 2565d522f475SmrgCASE_CSI_IGNORE, 2566d522f475SmrgCASE_CSI_IGNORE, 2567d522f475SmrgCASE_CSI_IGNORE, 2568d522f475Smrg/* notsign hyphen registered macron */ 2569d522f475SmrgCASE_CSI_IGNORE, 2570d522f475SmrgCASE_CSI_IGNORE, 2571d522f475SmrgCASE_CSI_IGNORE, 2572d522f475SmrgCASE_CSI_IGNORE, 2573d522f475Smrg/* degree plusminus twosuperior threesuperior */ 2574d522f475SmrgCASE_CSI_IGNORE, 2575d522f475SmrgCASE_CSI_IGNORE, 2576d522f475SmrgCASE_CSI_IGNORE, 2577d522f475SmrgCASE_CSI_IGNORE, 2578d522f475Smrg/* acute mu paragraph periodcentered */ 2579d522f475SmrgCASE_CSI_IGNORE, 2580d522f475SmrgCASE_CSI_IGNORE, 2581d522f475SmrgCASE_CSI_IGNORE, 2582d522f475SmrgCASE_CSI_IGNORE, 2583d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 2584d522f475SmrgCASE_CSI_IGNORE, 2585d522f475SmrgCASE_CSI_IGNORE, 2586d522f475SmrgCASE_CSI_IGNORE, 2587d522f475SmrgCASE_CSI_IGNORE, 2588d522f475Smrg/* onequarter onehalf threequarters questiondown */ 2589d522f475SmrgCASE_CSI_IGNORE, 2590d522f475SmrgCASE_CSI_IGNORE, 2591d522f475SmrgCASE_CSI_IGNORE, 2592d522f475SmrgCASE_CSI_IGNORE, 2593d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 2594d522f475SmrgCASE_GROUND_STATE, 2595d522f475SmrgCASE_GROUND_STATE, 2596d522f475SmrgCASE_GROUND_STATE, 2597d522f475SmrgCASE_GROUND_STATE, 2598d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 2599d522f475SmrgCASE_GROUND_STATE, 2600d522f475SmrgCASE_GROUND_STATE, 2601d522f475SmrgCASE_GROUND_STATE, 2602d522f475SmrgCASE_GROUND_STATE, 2603d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 2604d522f475SmrgCASE_GROUND_STATE, 2605d522f475SmrgCASE_GROUND_STATE, 2606d522f475SmrgCASE_GROUND_STATE, 2607d522f475SmrgCASE_GROUND_STATE, 2608d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 2609d522f475SmrgCASE_GROUND_STATE, 2610d522f475SmrgCASE_GROUND_STATE, 2611d522f475SmrgCASE_GROUND_STATE, 2612d522f475SmrgCASE_GROUND_STATE, 2613d522f475Smrg/* Eth Ntilde Ograve Oacute */ 2614d522f475SmrgCASE_GROUND_STATE, 2615d522f475SmrgCASE_GROUND_STATE, 2616d522f475SmrgCASE_GROUND_STATE, 2617d522f475SmrgCASE_GROUND_STATE, 2618d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 2619d522f475SmrgCASE_GROUND_STATE, 2620d522f475SmrgCASE_GROUND_STATE, 2621d522f475SmrgCASE_GROUND_STATE, 2622d522f475SmrgCASE_GROUND_STATE, 2623d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 2624d522f475SmrgCASE_GROUND_STATE, 2625d522f475SmrgCASE_GROUND_STATE, 2626d522f475SmrgCASE_GROUND_STATE, 2627d522f475SmrgCASE_GROUND_STATE, 2628d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 2629d522f475SmrgCASE_GROUND_STATE, 2630d522f475SmrgCASE_GROUND_STATE, 2631d522f475SmrgCASE_GROUND_STATE, 2632d522f475SmrgCASE_GROUND_STATE, 2633d522f475Smrg/* agrave aacute acircumflex atilde */ 2634d522f475SmrgCASE_GROUND_STATE, 2635d522f475SmrgCASE_GROUND_STATE, 2636d522f475SmrgCASE_GROUND_STATE, 2637d522f475SmrgCASE_GROUND_STATE, 2638d522f475Smrg/* adiaeresis aring ae ccedilla */ 2639d522f475SmrgCASE_GROUND_STATE, 2640d522f475SmrgCASE_GROUND_STATE, 2641d522f475SmrgCASE_GROUND_STATE, 2642d522f475SmrgCASE_GROUND_STATE, 2643d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 2644d522f475SmrgCASE_GROUND_STATE, 2645d522f475SmrgCASE_GROUND_STATE, 2646d522f475SmrgCASE_GROUND_STATE, 2647d522f475SmrgCASE_GROUND_STATE, 2648d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 2649d522f475SmrgCASE_GROUND_STATE, 2650d522f475SmrgCASE_GROUND_STATE, 2651d522f475SmrgCASE_GROUND_STATE, 2652d522f475SmrgCASE_GROUND_STATE, 2653d522f475Smrg/* eth ntilde ograve oacute */ 2654d522f475SmrgCASE_GROUND_STATE, 2655d522f475SmrgCASE_GROUND_STATE, 2656d522f475SmrgCASE_GROUND_STATE, 2657d522f475SmrgCASE_GROUND_STATE, 2658d522f475Smrg/* ocircumflex otilde odiaeresis division */ 2659d522f475SmrgCASE_GROUND_STATE, 2660d522f475SmrgCASE_GROUND_STATE, 2661d522f475SmrgCASE_GROUND_STATE, 2662d522f475SmrgCASE_GROUND_STATE, 2663d522f475Smrg/* oslash ugrave uacute ucircumflex */ 2664d522f475SmrgCASE_DECSACE, 2665d522f475SmrgCASE_GROUND_STATE, 2666d522f475SmrgCASE_GROUND_STATE, 2667d522f475SmrgCASE_GROUND_STATE, 2668d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 2669d522f475SmrgCASE_GROUND_STATE, 2670d522f475SmrgCASE_GROUND_STATE, 2671d522f475SmrgCASE_GROUND_STATE, 2672d522f475SmrgCASE_GROUND_STATE, 2673d522f475Smrg}; 2674d522f475Smrg#endif /* OPT_DEC_RECTOPS */ 2675d522f475Smrg 2676d522f475SmrgConst PARSE_T dec_table[] = /* CSI ? */ 2677d522f475Smrg{ 2678d522f475Smrg/* NUL SOH STX ETX */ 2679d522f475SmrgCASE_IGNORE, 2680d522f475SmrgCASE_IGNORE, 2681d522f475SmrgCASE_IGNORE, 2682d522f475SmrgCASE_IGNORE, 2683d522f475Smrg/* EOT ENQ ACK BEL */ 2684d522f475SmrgCASE_IGNORE, 2685d522f475SmrgCASE_ENQ, 2686d522f475SmrgCASE_IGNORE, 2687d522f475SmrgCASE_BELL, 2688d522f475Smrg/* BS HT NL VT */ 2689d522f475SmrgCASE_BS, 2690d522f475SmrgCASE_TAB, 2691d522f475SmrgCASE_VMOT, 2692d522f475SmrgCASE_VMOT, 2693d522f475Smrg/* NP CR SO SI */ 2694d522f475SmrgCASE_VMOT, 2695d522f475SmrgCASE_CR, 2696d522f475SmrgCASE_SO, 2697d522f475SmrgCASE_SI, 2698d522f475Smrg/* DLE DC1 DC2 DC3 */ 2699d522f475SmrgCASE_IGNORE, 2700d522f475SmrgCASE_IGNORE, 2701d522f475SmrgCASE_IGNORE, 2702d522f475SmrgCASE_IGNORE, 2703d522f475Smrg/* DC4 NAK SYN ETB */ 2704d522f475SmrgCASE_IGNORE, 2705d522f475SmrgCASE_IGNORE, 2706d522f475SmrgCASE_IGNORE, 2707d522f475SmrgCASE_IGNORE, 2708d522f475Smrg/* CAN EM SUB ESC */ 2709d522f475SmrgCASE_GROUND_STATE, 2710d522f475SmrgCASE_IGNORE, 2711d522f475SmrgCASE_GROUND_STATE, 2712d522f475SmrgCASE_ESC, 2713d522f475Smrg/* FS GS RS US */ 2714d522f475SmrgCASE_IGNORE, 2715d522f475SmrgCASE_IGNORE, 2716d522f475SmrgCASE_IGNORE, 2717d522f475SmrgCASE_IGNORE, 2718d522f475Smrg/* SP ! " # */ 2719d522f475SmrgCASE_CSI_IGNORE, 2720d522f475SmrgCASE_CSI_IGNORE, 2721d522f475SmrgCASE_CSI_IGNORE, 2722d522f475SmrgCASE_CSI_IGNORE, 2723d522f475Smrg/* $ % & ' */ 2724d522f475SmrgCASE_CSI_IGNORE, 2725d522f475SmrgCASE_CSI_IGNORE, 2726d522f475SmrgCASE_CSI_IGNORE, 2727d522f475SmrgCASE_CSI_IGNORE, 2728d522f475Smrg/* ( ) * + */ 2729d522f475SmrgCASE_CSI_IGNORE, 2730d522f475SmrgCASE_CSI_IGNORE, 2731d522f475SmrgCASE_CSI_IGNORE, 2732d522f475SmrgCASE_CSI_IGNORE, 2733d522f475Smrg/* , - . / */ 2734d522f475SmrgCASE_CSI_IGNORE, 2735d522f475SmrgCASE_CSI_IGNORE, 2736d522f475SmrgCASE_CSI_IGNORE, 2737d522f475SmrgCASE_CSI_IGNORE, 2738d522f475Smrg/* 0 1 2 3 */ 2739d522f475SmrgCASE_ESC_DIGIT, 2740d522f475SmrgCASE_ESC_DIGIT, 2741d522f475SmrgCASE_ESC_DIGIT, 2742d522f475SmrgCASE_ESC_DIGIT, 2743d522f475Smrg/* 4 5 6 7 */ 2744d522f475SmrgCASE_ESC_DIGIT, 2745d522f475SmrgCASE_ESC_DIGIT, 2746d522f475SmrgCASE_ESC_DIGIT, 2747d522f475SmrgCASE_ESC_DIGIT, 2748d522f475Smrg/* 8 9 : ; */ 2749d522f475SmrgCASE_ESC_DIGIT, 2750d522f475SmrgCASE_ESC_DIGIT, 2751d522f475SmrgCASE_CSI_IGNORE, 2752d522f475SmrgCASE_ESC_SEMI, 2753d522f475Smrg/* < = > ? */ 2754d522f475SmrgCASE_CSI_IGNORE, 2755d522f475SmrgCASE_CSI_IGNORE, 2756d522f475SmrgCASE_CSI_IGNORE, 2757d522f475SmrgCASE_CSI_IGNORE, 2758d522f475Smrg/* @ A B C */ 2759d522f475SmrgCASE_GROUND_STATE, 2760d522f475SmrgCASE_GROUND_STATE, 2761d522f475SmrgCASE_GROUND_STATE, 2762d522f475SmrgCASE_GROUND_STATE, 2763d522f475Smrg/* D E F G */ 2764d522f475SmrgCASE_GROUND_STATE, 2765d522f475SmrgCASE_GROUND_STATE, 2766d522f475SmrgCASE_GROUND_STATE, 2767d522f475SmrgCASE_GROUND_STATE, 2768d522f475Smrg/* H I J K */ 2769d522f475SmrgCASE_GROUND_STATE, 2770d522f475SmrgCASE_GROUND_STATE, 2771d522f475SmrgCASE_DECSED, 2772d522f475SmrgCASE_DECSEL, 2773d522f475Smrg/* L M N O */ 2774d522f475SmrgCASE_GROUND_STATE, 2775d522f475SmrgCASE_GROUND_STATE, 2776d522f475SmrgCASE_GROUND_STATE, 2777d522f475SmrgCASE_GROUND_STATE, 2778d522f475Smrg/* P Q R S */ 2779d522f475SmrgCASE_GROUND_STATE, 2780d522f475SmrgCASE_GROUND_STATE, 2781d522f475SmrgCASE_GROUND_STATE, 2782d522f475SmrgCASE_GROUND_STATE, 2783d522f475Smrg/* T U V W */ 2784d522f475SmrgCASE_GROUND_STATE, 2785d522f475SmrgCASE_GROUND_STATE, 2786d522f475SmrgCASE_GROUND_STATE, 2787d522f475SmrgCASE_GROUND_STATE, 2788d522f475Smrg/* X Y Z [ */ 2789d522f475SmrgCASE_GROUND_STATE, 2790d522f475SmrgCASE_GROUND_STATE, 2791d522f475SmrgCASE_GROUND_STATE, 2792d522f475SmrgCASE_GROUND_STATE, 2793d522f475Smrg/* \ ] ^ _ */ 2794d522f475SmrgCASE_GROUND_STATE, 2795d522f475SmrgCASE_GROUND_STATE, 2796d522f475SmrgCASE_GROUND_STATE, 2797d522f475SmrgCASE_GROUND_STATE, 2798d522f475Smrg/* ` a b c */ 2799d522f475SmrgCASE_GROUND_STATE, 2800d522f475SmrgCASE_GROUND_STATE, 2801d522f475SmrgCASE_GROUND_STATE, 2802d522f475SmrgCASE_GROUND_STATE, 2803d522f475Smrg/* d e f g */ 2804d522f475SmrgCASE_GROUND_STATE, 2805d522f475SmrgCASE_GROUND_STATE, 2806d522f475SmrgCASE_GROUND_STATE, 2807d522f475SmrgCASE_GROUND_STATE, 2808d522f475Smrg/* h i j k */ 2809d522f475SmrgCASE_DECSET, 2810d522f475SmrgCASE_DEC_MC, 2811d522f475SmrgCASE_GROUND_STATE, 2812d522f475SmrgCASE_GROUND_STATE, 2813d522f475Smrg/* l m n o */ 2814d522f475SmrgCASE_DECRST, 2815d522f475SmrgCASE_GROUND_STATE, 2816d522f475SmrgCASE_DSR, 2817d522f475SmrgCASE_GROUND_STATE, 2818d522f475Smrg/* p q r s */ 2819d522f475SmrgCASE_GROUND_STATE, 2820d522f475SmrgCASE_GROUND_STATE, 2821d522f475SmrgCASE_XTERM_RESTORE, 2822d522f475SmrgCASE_XTERM_SAVE, 2823d522f475Smrg/* t u v w */ 2824d522f475SmrgCASE_GROUND_STATE, 2825d522f475SmrgCASE_GROUND_STATE, 2826d522f475SmrgCASE_GROUND_STATE, 2827d522f475SmrgCASE_GROUND_STATE, 2828d522f475Smrg/* x y z { */ 2829d522f475SmrgCASE_GROUND_STATE, 2830d522f475SmrgCASE_GROUND_STATE, 2831d522f475SmrgCASE_GROUND_STATE, 2832d522f475SmrgCASE_GROUND_STATE, 2833d522f475Smrg/* | } ~ DEL */ 2834d522f475SmrgCASE_GROUND_STATE, 2835d522f475SmrgCASE_GROUND_STATE, 2836d522f475SmrgCASE_GROUND_STATE, 2837d522f475SmrgCASE_IGNORE, 2838d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 2839d522f475SmrgCASE_GROUND_STATE, 2840d522f475SmrgCASE_GROUND_STATE, 2841d522f475SmrgCASE_GROUND_STATE, 2842d522f475SmrgCASE_GROUND_STATE, 2843d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 2844d522f475SmrgCASE_IND, 2845d522f475SmrgCASE_NEL, 2846d522f475SmrgCASE_GROUND_STATE, 2847d522f475SmrgCASE_GROUND_STATE, 2848d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 2849d522f475SmrgCASE_HTS, 2850d522f475SmrgCASE_GROUND_STATE, 2851d522f475SmrgCASE_GROUND_STATE, 2852d522f475SmrgCASE_GROUND_STATE, 2853d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 2854d522f475SmrgCASE_GROUND_STATE, 2855d522f475SmrgCASE_RI, 2856d522f475SmrgCASE_SS2, 2857d522f475SmrgCASE_SS3, 2858d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 2859d522f475SmrgCASE_DCS, 2860d522f475SmrgCASE_GROUND_STATE, 2861d522f475SmrgCASE_GROUND_STATE, 2862d522f475SmrgCASE_GROUND_STATE, 2863d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 2864d522f475SmrgCASE_GROUND_STATE, 2865d522f475SmrgCASE_GROUND_STATE, 2866d522f475SmrgCASE_SPA, 2867d522f475SmrgCASE_EPA, 2868d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 2869d522f475SmrgCASE_SOS, 2870d522f475SmrgCASE_GROUND_STATE, 2871d522f475SmrgCASE_DECID, 2872d522f475SmrgCASE_CSI_STATE, 2873d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 2874d522f475SmrgCASE_ST, 2875d522f475SmrgCASE_OSC, 2876d522f475SmrgCASE_PM, 2877d522f475SmrgCASE_APC, 2878d522f475Smrg/* nobreakspace exclamdown cent sterling */ 2879d522f475SmrgCASE_CSI_IGNORE, 2880d522f475SmrgCASE_CSI_IGNORE, 2881d522f475SmrgCASE_CSI_IGNORE, 2882d522f475SmrgCASE_CSI_IGNORE, 2883d522f475Smrg/* currency yen brokenbar section */ 2884d522f475SmrgCASE_CSI_IGNORE, 2885d522f475SmrgCASE_CSI_IGNORE, 2886d522f475SmrgCASE_CSI_IGNORE, 2887d522f475SmrgCASE_CSI_IGNORE, 2888d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 2889d522f475SmrgCASE_CSI_IGNORE, 2890d522f475SmrgCASE_CSI_IGNORE, 2891d522f475SmrgCASE_CSI_IGNORE, 2892d522f475SmrgCASE_CSI_IGNORE, 2893d522f475Smrg/* notsign hyphen registered macron */ 2894d522f475SmrgCASE_CSI_IGNORE, 2895d522f475SmrgCASE_CSI_IGNORE, 2896d522f475SmrgCASE_CSI_IGNORE, 2897d522f475SmrgCASE_CSI_IGNORE, 2898d522f475Smrg/* degree plusminus twosuperior threesuperior */ 2899d522f475SmrgCASE_ESC_DIGIT, 2900d522f475SmrgCASE_ESC_DIGIT, 2901d522f475SmrgCASE_ESC_DIGIT, 2902d522f475SmrgCASE_ESC_DIGIT, 2903d522f475Smrg/* acute mu paragraph periodcentered */ 2904d522f475SmrgCASE_ESC_DIGIT, 2905d522f475SmrgCASE_ESC_DIGIT, 2906d522f475SmrgCASE_ESC_DIGIT, 2907d522f475SmrgCASE_ESC_DIGIT, 2908d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 2909d522f475SmrgCASE_ESC_DIGIT, 2910d522f475SmrgCASE_ESC_DIGIT, 2911d522f475SmrgCASE_CSI_IGNORE, 2912d522f475SmrgCASE_ESC_SEMI, 2913d522f475Smrg/* onequarter onehalf threequarters questiondown */ 2914d522f475SmrgCASE_CSI_IGNORE, 2915d522f475SmrgCASE_CSI_IGNORE, 2916d522f475SmrgCASE_CSI_IGNORE, 2917d522f475SmrgCASE_CSI_IGNORE, 2918d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 2919d522f475SmrgCASE_GROUND_STATE, 2920d522f475SmrgCASE_GROUND_STATE, 2921d522f475SmrgCASE_GROUND_STATE, 2922d522f475SmrgCASE_GROUND_STATE, 2923d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 2924d522f475SmrgCASE_GROUND_STATE, 2925d522f475SmrgCASE_GROUND_STATE, 2926d522f475SmrgCASE_GROUND_STATE, 2927d522f475SmrgCASE_GROUND_STATE, 2928d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 2929d522f475SmrgCASE_GROUND_STATE, 2930d522f475SmrgCASE_GROUND_STATE, 2931d522f475SmrgCASE_DECSED, 2932d522f475SmrgCASE_DECSEL, 2933d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 2934d522f475SmrgCASE_GROUND_STATE, 2935d522f475SmrgCASE_GROUND_STATE, 2936d522f475SmrgCASE_GROUND_STATE, 2937d522f475SmrgCASE_GROUND_STATE, 2938d522f475Smrg/* Eth Ntilde Ograve Oacute */ 2939d522f475SmrgCASE_GROUND_STATE, 2940d522f475SmrgCASE_GROUND_STATE, 2941d522f475SmrgCASE_GROUND_STATE, 2942d522f475SmrgCASE_GROUND_STATE, 2943d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 2944d522f475SmrgCASE_GROUND_STATE, 2945d522f475SmrgCASE_GROUND_STATE, 2946d522f475SmrgCASE_GROUND_STATE, 2947d522f475SmrgCASE_GROUND_STATE, 2948d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 2949d522f475SmrgCASE_GROUND_STATE, 2950d522f475SmrgCASE_GROUND_STATE, 2951d522f475SmrgCASE_GROUND_STATE, 2952d522f475SmrgCASE_GROUND_STATE, 2953d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 2954d522f475SmrgCASE_GROUND_STATE, 2955d522f475SmrgCASE_GROUND_STATE, 2956d522f475SmrgCASE_GROUND_STATE, 2957d522f475SmrgCASE_GROUND_STATE, 2958d522f475Smrg/* agrave aacute acircumflex atilde */ 2959d522f475SmrgCASE_GROUND_STATE, 2960d522f475SmrgCASE_GROUND_STATE, 2961d522f475SmrgCASE_GROUND_STATE, 2962d522f475SmrgCASE_GROUND_STATE, 2963d522f475Smrg/* adiaeresis aring ae ccedilla */ 2964d522f475SmrgCASE_GROUND_STATE, 2965d522f475SmrgCASE_GROUND_STATE, 2966d522f475SmrgCASE_GROUND_STATE, 2967d522f475SmrgCASE_GROUND_STATE, 2968d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 2969d522f475SmrgCASE_DECSET, 2970d522f475SmrgCASE_DEC_MC, 2971d522f475SmrgCASE_GROUND_STATE, 2972d522f475SmrgCASE_GROUND_STATE, 2973d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 2974d522f475SmrgCASE_DECRST, 2975d522f475SmrgCASE_GROUND_STATE, 2976d522f475SmrgCASE_DSR, 2977d522f475SmrgCASE_GROUND_STATE, 2978d522f475Smrg/* eth ntilde ograve oacute */ 2979d522f475SmrgCASE_GROUND_STATE, 2980d522f475SmrgCASE_GROUND_STATE, 2981d522f475SmrgCASE_XTERM_RESTORE, 2982d522f475SmrgCASE_XTERM_SAVE, 2983d522f475Smrg/* ocircumflex otilde odiaeresis division */ 2984d522f475SmrgCASE_GROUND_STATE, 2985d522f475SmrgCASE_GROUND_STATE, 2986d522f475SmrgCASE_GROUND_STATE, 2987d522f475SmrgCASE_GROUND_STATE, 2988d522f475Smrg/* oslash ugrave uacute ucircumflex */ 2989d522f475SmrgCASE_GROUND_STATE, 2990d522f475SmrgCASE_GROUND_STATE, 2991d522f475SmrgCASE_GROUND_STATE, 2992d522f475SmrgCASE_GROUND_STATE, 2993d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 2994d522f475SmrgCASE_GROUND_STATE, 2995d522f475SmrgCASE_GROUND_STATE, 2996d522f475SmrgCASE_GROUND_STATE, 2997d522f475SmrgCASE_IGNORE, 2998d522f475Smrg}; 2999d522f475Smrg 3000d522f475SmrgConst PARSE_T dec2_table[] = /* CSI > */ 3001d522f475Smrg{ 3002d522f475Smrg/* NUL SOH STX ETX */ 3003d522f475SmrgCASE_IGNORE, 3004d522f475SmrgCASE_IGNORE, 3005d522f475SmrgCASE_IGNORE, 3006d522f475SmrgCASE_IGNORE, 3007d522f475Smrg/* EOT ENQ ACK BEL */ 3008d522f475SmrgCASE_IGNORE, 3009d522f475SmrgCASE_ENQ, 3010d522f475SmrgCASE_IGNORE, 3011d522f475SmrgCASE_BELL, 3012d522f475Smrg/* BS HT NL VT */ 3013d522f475SmrgCASE_BS, 3014d522f475SmrgCASE_TAB, 3015d522f475SmrgCASE_VMOT, 3016d522f475SmrgCASE_VMOT, 3017d522f475Smrg/* NP CR SO SI */ 3018d522f475SmrgCASE_VMOT, 3019d522f475SmrgCASE_CR, 3020d522f475SmrgCASE_SO, 3021d522f475SmrgCASE_SI, 3022d522f475Smrg/* DLE DC1 DC2 DC3 */ 3023d522f475SmrgCASE_IGNORE, 3024d522f475SmrgCASE_IGNORE, 3025d522f475SmrgCASE_IGNORE, 3026d522f475SmrgCASE_IGNORE, 3027d522f475Smrg/* DC4 NAK SYN ETB */ 3028d522f475SmrgCASE_IGNORE, 3029d522f475SmrgCASE_IGNORE, 3030d522f475SmrgCASE_IGNORE, 3031d522f475SmrgCASE_IGNORE, 3032d522f475Smrg/* CAN EM SUB ESC */ 3033d522f475SmrgCASE_GROUND_STATE, 3034d522f475SmrgCASE_IGNORE, 3035d522f475SmrgCASE_GROUND_STATE, 3036d522f475SmrgCASE_ESC, 3037d522f475Smrg/* FS GS RS US */ 3038d522f475SmrgCASE_IGNORE, 3039d522f475SmrgCASE_IGNORE, 3040d522f475SmrgCASE_IGNORE, 3041d522f475SmrgCASE_IGNORE, 3042d522f475Smrg/* SP ! " # */ 3043d522f475SmrgCASE_CSI_IGNORE, 3044d522f475SmrgCASE_CSI_IGNORE, 3045d522f475SmrgCASE_CSI_IGNORE, 3046d522f475SmrgCASE_CSI_IGNORE, 3047d522f475Smrg/* $ % & ' */ 3048d522f475SmrgCASE_CSI_IGNORE, 3049d522f475SmrgCASE_CSI_IGNORE, 3050d522f475SmrgCASE_CSI_IGNORE, 3051d522f475SmrgCASE_CSI_IGNORE, 3052d522f475Smrg/* ( ) * + */ 3053d522f475SmrgCASE_CSI_IGNORE, 3054d522f475SmrgCASE_CSI_IGNORE, 3055d522f475SmrgCASE_CSI_IGNORE, 3056d522f475SmrgCASE_CSI_IGNORE, 3057d522f475Smrg/* , - . / */ 3058d522f475SmrgCASE_CSI_IGNORE, 3059d522f475SmrgCASE_CSI_IGNORE, 3060d522f475SmrgCASE_CSI_IGNORE, 3061d522f475SmrgCASE_CSI_IGNORE, 3062d522f475Smrg/* 0 1 2 3 */ 3063d522f475SmrgCASE_ESC_DIGIT, 3064d522f475SmrgCASE_ESC_DIGIT, 3065d522f475SmrgCASE_ESC_DIGIT, 3066d522f475SmrgCASE_ESC_DIGIT, 3067d522f475Smrg/* 4 5 6 7 */ 3068d522f475SmrgCASE_ESC_DIGIT, 3069d522f475SmrgCASE_ESC_DIGIT, 3070d522f475SmrgCASE_ESC_DIGIT, 3071d522f475SmrgCASE_ESC_DIGIT, 3072d522f475Smrg/* 8 9 : ; */ 3073d522f475SmrgCASE_ESC_DIGIT, 3074d522f475SmrgCASE_ESC_DIGIT, 3075d522f475SmrgCASE_CSI_IGNORE, 3076d522f475SmrgCASE_ESC_SEMI, 3077d522f475Smrg/* < = > ? */ 3078d522f475SmrgCASE_CSI_IGNORE, 3079d522f475SmrgCASE_CSI_IGNORE, 3080d522f475SmrgCASE_CSI_IGNORE, 3081d522f475SmrgCASE_CSI_IGNORE, 3082d522f475Smrg/* @ A B C */ 3083d522f475SmrgCASE_GROUND_STATE, 3084d522f475SmrgCASE_GROUND_STATE, 3085d522f475SmrgCASE_GROUND_STATE, 3086d522f475SmrgCASE_GROUND_STATE, 3087d522f475Smrg/* D E F G */ 3088d522f475SmrgCASE_GROUND_STATE, 3089d522f475SmrgCASE_GROUND_STATE, 3090d522f475SmrgCASE_GROUND_STATE, 3091d522f475SmrgCASE_GROUND_STATE, 3092d522f475Smrg/* H I J K */ 3093d522f475SmrgCASE_GROUND_STATE, 3094d522f475SmrgCASE_GROUND_STATE, 3095d522f475SmrgCASE_GROUND_STATE, 3096d522f475SmrgCASE_GROUND_STATE, 3097d522f475Smrg/* L M N O */ 3098d522f475SmrgCASE_GROUND_STATE, 3099d522f475SmrgCASE_GROUND_STATE, 3100d522f475SmrgCASE_GROUND_STATE, 3101d522f475SmrgCASE_GROUND_STATE, 3102d522f475Smrg/* P Q R S */ 3103d522f475SmrgCASE_GROUND_STATE, 3104d522f475SmrgCASE_GROUND_STATE, 3105d522f475SmrgCASE_GROUND_STATE, 3106d522f475SmrgCASE_GROUND_STATE, 3107d522f475Smrg/* T U V W */ 3108d522f475SmrgCASE_GROUND_STATE, 3109d522f475SmrgCASE_GROUND_STATE, 3110d522f475SmrgCASE_GROUND_STATE, 3111d522f475SmrgCASE_GROUND_STATE, 3112d522f475Smrg/* X Y Z [ */ 3113d522f475SmrgCASE_GROUND_STATE, 3114d522f475SmrgCASE_GROUND_STATE, 3115d522f475SmrgCASE_GROUND_STATE, 3116d522f475SmrgCASE_GROUND_STATE, 3117d522f475Smrg/* \ ] ^ _ */ 3118d522f475SmrgCASE_GROUND_STATE, 3119d522f475SmrgCASE_GROUND_STATE, 3120d522f475SmrgCASE_GROUND_STATE, 3121d522f475SmrgCASE_GROUND_STATE, 3122d522f475Smrg/* ` a b c */ 3123d522f475SmrgCASE_GROUND_STATE, 3124d522f475SmrgCASE_GROUND_STATE, 3125d522f475SmrgCASE_GROUND_STATE, 3126d522f475SmrgCASE_DA2, 3127d522f475Smrg/* d e f g */ 3128d522f475SmrgCASE_GROUND_STATE, 3129d522f475SmrgCASE_GROUND_STATE, 3130d522f475SmrgCASE_GROUND_STATE, 3131d522f475SmrgCASE_GROUND_STATE, 3132d522f475Smrg/* h i j k */ 3133d522f475SmrgCASE_GROUND_STATE, 3134d522f475SmrgCASE_GROUND_STATE, 3135d522f475SmrgCASE_GROUND_STATE, 3136d522f475SmrgCASE_GROUND_STATE, 3137d522f475Smrg/* l m n o */ 3138d522f475SmrgCASE_GROUND_STATE, 3139d522f475SmrgCASE_SET_MOD_FKEYS, 3140d522f475SmrgCASE_SET_MOD_FKEYS0, 3141d522f475SmrgCASE_GROUND_STATE, 3142d522f475Smrg/* p q r s */ 3143d522f475SmrgCASE_HIDE_POINTER, 3144d522f475SmrgCASE_GROUND_STATE, 3145d522f475SmrgCASE_GROUND_STATE, 3146d522f475SmrgCASE_GROUND_STATE, 3147d522f475Smrg/* t u v w */ 3148d522f475SmrgCASE_GROUND_STATE, 3149d522f475SmrgCASE_GROUND_STATE, 3150d522f475SmrgCASE_GROUND_STATE, 3151d522f475SmrgCASE_GROUND_STATE, 3152d522f475Smrg/* x y z { */ 3153d522f475SmrgCASE_GROUND_STATE, 3154d522f475SmrgCASE_GROUND_STATE, 3155d522f475SmrgCASE_GROUND_STATE, 3156d522f475SmrgCASE_GROUND_STATE, 3157d522f475Smrg/* | } ~ DEL */ 3158d522f475SmrgCASE_GROUND_STATE, 3159d522f475SmrgCASE_GROUND_STATE, 3160d522f475SmrgCASE_GROUND_STATE, 3161d522f475SmrgCASE_IGNORE, 3162d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 3163d522f475SmrgCASE_GROUND_STATE, 3164d522f475SmrgCASE_GROUND_STATE, 3165d522f475SmrgCASE_GROUND_STATE, 3166d522f475SmrgCASE_GROUND_STATE, 3167d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 3168d522f475SmrgCASE_IND, 3169d522f475SmrgCASE_NEL, 3170d522f475SmrgCASE_GROUND_STATE, 3171d522f475SmrgCASE_GROUND_STATE, 3172d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 3173d522f475SmrgCASE_HTS, 3174d522f475SmrgCASE_GROUND_STATE, 3175d522f475SmrgCASE_GROUND_STATE, 3176d522f475SmrgCASE_GROUND_STATE, 3177d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 3178d522f475SmrgCASE_GROUND_STATE, 3179d522f475SmrgCASE_RI, 3180d522f475SmrgCASE_SS2, 3181d522f475SmrgCASE_SS3, 3182d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 3183d522f475SmrgCASE_DCS, 3184d522f475SmrgCASE_GROUND_STATE, 3185d522f475SmrgCASE_GROUND_STATE, 3186d522f475SmrgCASE_GROUND_STATE, 3187d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 3188d522f475SmrgCASE_GROUND_STATE, 3189d522f475SmrgCASE_GROUND_STATE, 3190d522f475SmrgCASE_SPA, 3191d522f475SmrgCASE_EPA, 3192d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 3193d522f475SmrgCASE_SOS, 3194d522f475SmrgCASE_GROUND_STATE, 3195d522f475SmrgCASE_DECID, 3196d522f475SmrgCASE_CSI_STATE, 3197d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 3198d522f475SmrgCASE_ST, 3199d522f475SmrgCASE_OSC, 3200d522f475SmrgCASE_PM, 3201d522f475SmrgCASE_APC, 3202d522f475Smrg/* nobreakspace exclamdown cent sterling */ 3203d522f475SmrgCASE_CSI_IGNORE, 3204d522f475SmrgCASE_CSI_IGNORE, 3205d522f475SmrgCASE_CSI_IGNORE, 3206d522f475SmrgCASE_CSI_IGNORE, 3207d522f475Smrg/* currency yen brokenbar section */ 3208d522f475SmrgCASE_CSI_IGNORE, 3209d522f475SmrgCASE_CSI_IGNORE, 3210d522f475SmrgCASE_CSI_IGNORE, 3211d522f475SmrgCASE_CSI_IGNORE, 3212d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 3213d522f475SmrgCASE_CSI_IGNORE, 3214d522f475SmrgCASE_CSI_IGNORE, 3215d522f475SmrgCASE_CSI_IGNORE, 3216d522f475SmrgCASE_CSI_IGNORE, 3217d522f475Smrg/* notsign hyphen registered macron */ 3218d522f475SmrgCASE_CSI_IGNORE, 3219d522f475SmrgCASE_CSI_IGNORE, 3220d522f475SmrgCASE_CSI_IGNORE, 3221d522f475SmrgCASE_CSI_IGNORE, 3222d522f475Smrg/* degree plusminus twosuperior threesuperior */ 3223d522f475SmrgCASE_ESC_DIGIT, 3224d522f475SmrgCASE_ESC_DIGIT, 3225d522f475SmrgCASE_ESC_DIGIT, 3226d522f475SmrgCASE_ESC_DIGIT, 3227d522f475Smrg/* acute mu paragraph periodcentered */ 3228d522f475SmrgCASE_ESC_DIGIT, 3229d522f475SmrgCASE_ESC_DIGIT, 3230d522f475SmrgCASE_ESC_DIGIT, 3231d522f475SmrgCASE_ESC_DIGIT, 3232d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 3233d522f475SmrgCASE_ESC_DIGIT, 3234d522f475SmrgCASE_ESC_DIGIT, 3235d522f475SmrgCASE_CSI_IGNORE, 3236d522f475SmrgCASE_ESC_SEMI, 3237d522f475Smrg/* onequarter onehalf threequarters questiondown */ 3238d522f475SmrgCASE_CSI_IGNORE, 3239d522f475SmrgCASE_CSI_IGNORE, 3240d522f475SmrgCASE_CSI_IGNORE, 3241d522f475SmrgCASE_CSI_IGNORE, 3242d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 3243d522f475SmrgCASE_GROUND_STATE, 3244d522f475SmrgCASE_GROUND_STATE, 3245d522f475SmrgCASE_GROUND_STATE, 3246d522f475SmrgCASE_GROUND_STATE, 3247d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 3248d522f475SmrgCASE_GROUND_STATE, 3249d522f475SmrgCASE_GROUND_STATE, 3250d522f475SmrgCASE_GROUND_STATE, 3251d522f475SmrgCASE_GROUND_STATE, 3252d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 3253d522f475SmrgCASE_GROUND_STATE, 3254d522f475SmrgCASE_GROUND_STATE, 3255d522f475SmrgCASE_GROUND_STATE, 3256d522f475SmrgCASE_GROUND_STATE, 3257d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 3258d522f475SmrgCASE_GROUND_STATE, 3259d522f475SmrgCASE_GROUND_STATE, 3260d522f475SmrgCASE_GROUND_STATE, 3261d522f475SmrgCASE_GROUND_STATE, 3262d522f475Smrg/* Eth Ntilde Ograve Oacute */ 3263d522f475SmrgCASE_GROUND_STATE, 3264d522f475SmrgCASE_GROUND_STATE, 3265d522f475SmrgCASE_GROUND_STATE, 3266d522f475SmrgCASE_GROUND_STATE, 3267d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 3268d522f475SmrgCASE_GROUND_STATE, 3269d522f475SmrgCASE_GROUND_STATE, 3270d522f475SmrgCASE_GROUND_STATE, 3271d522f475SmrgCASE_GROUND_STATE, 3272d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 3273d522f475SmrgCASE_GROUND_STATE, 3274d522f475SmrgCASE_GROUND_STATE, 3275d522f475SmrgCASE_GROUND_STATE, 3276d522f475SmrgCASE_GROUND_STATE, 3277d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 3278d522f475SmrgCASE_GROUND_STATE, 3279d522f475SmrgCASE_GROUND_STATE, 3280d522f475SmrgCASE_GROUND_STATE, 3281d522f475SmrgCASE_GROUND_STATE, 3282d522f475Smrg/* agrave aacute acircumflex atilde */ 3283d522f475SmrgCASE_GROUND_STATE, 3284d522f475SmrgCASE_GROUND_STATE, 3285d522f475SmrgCASE_GROUND_STATE, 3286d522f475SmrgCASE_DA2, 3287d522f475Smrg/* adiaeresis aring ae ccedilla */ 3288d522f475SmrgCASE_GROUND_STATE, 3289d522f475SmrgCASE_GROUND_STATE, 3290d522f475SmrgCASE_GROUND_STATE, 3291d522f475SmrgCASE_GROUND_STATE, 3292d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 3293d522f475SmrgCASE_GROUND_STATE, 3294d522f475SmrgCASE_GROUND_STATE, 3295d522f475SmrgCASE_GROUND_STATE, 3296d522f475SmrgCASE_GROUND_STATE, 3297d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 3298d522f475SmrgCASE_GROUND_STATE, 3299d522f475SmrgCASE_GROUND_STATE, 3300d522f475SmrgCASE_GROUND_STATE, 3301d522f475SmrgCASE_GROUND_STATE, 3302d522f475Smrg/* eth ntilde ograve oacute */ 3303d522f475SmrgCASE_GROUND_STATE, 3304d522f475SmrgCASE_GROUND_STATE, 3305d522f475SmrgCASE_GROUND_STATE, 3306d522f475SmrgCASE_GROUND_STATE, 3307d522f475Smrg/* ocircumflex otilde odiaeresis division */ 3308d522f475SmrgCASE_GROUND_STATE, 3309d522f475SmrgCASE_GROUND_STATE, 3310d522f475SmrgCASE_GROUND_STATE, 3311d522f475SmrgCASE_GROUND_STATE, 3312d522f475Smrg/* oslash ugrave uacute ucircumflex */ 3313d522f475SmrgCASE_GROUND_STATE, 3314d522f475SmrgCASE_GROUND_STATE, 3315d522f475SmrgCASE_GROUND_STATE, 3316d522f475SmrgCASE_GROUND_STATE, 3317d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 3318d522f475SmrgCASE_GROUND_STATE, 3319d522f475SmrgCASE_GROUND_STATE, 3320d522f475SmrgCASE_GROUND_STATE, 3321d522f475SmrgCASE_IGNORE, 3322d522f475Smrg}; 3323d522f475Smrg 3324d522f475SmrgConst PARSE_T dec3_table[] = /* CSI = */ 3325d522f475Smrg{ 3326d522f475Smrg/* NUL SOH STX ETX */ 3327d522f475SmrgCASE_IGNORE, 3328d522f475SmrgCASE_IGNORE, 3329d522f475SmrgCASE_IGNORE, 3330d522f475SmrgCASE_IGNORE, 3331d522f475Smrg/* EOT ENQ ACK BEL */ 3332d522f475SmrgCASE_IGNORE, 3333d522f475SmrgCASE_ENQ, 3334d522f475SmrgCASE_IGNORE, 3335d522f475SmrgCASE_BELL, 3336d522f475Smrg/* BS HT NL VT */ 3337d522f475SmrgCASE_BS, 3338d522f475SmrgCASE_TAB, 3339d522f475SmrgCASE_VMOT, 3340d522f475SmrgCASE_VMOT, 3341d522f475Smrg/* NP CR SO SI */ 3342d522f475SmrgCASE_VMOT, 3343d522f475SmrgCASE_CR, 3344d522f475SmrgCASE_SO, 3345d522f475SmrgCASE_SI, 3346d522f475Smrg/* DLE DC1 DC2 DC3 */ 3347d522f475SmrgCASE_IGNORE, 3348d522f475SmrgCASE_IGNORE, 3349d522f475SmrgCASE_IGNORE, 3350d522f475SmrgCASE_IGNORE, 3351d522f475Smrg/* DC4 NAK SYN ETB */ 3352d522f475SmrgCASE_IGNORE, 3353d522f475SmrgCASE_IGNORE, 3354d522f475SmrgCASE_IGNORE, 3355d522f475SmrgCASE_IGNORE, 3356d522f475Smrg/* CAN EM SUB ESC */ 3357d522f475SmrgCASE_GROUND_STATE, 3358d522f475SmrgCASE_IGNORE, 3359d522f475SmrgCASE_GROUND_STATE, 3360d522f475SmrgCASE_ESC, 3361d522f475Smrg/* FS GS RS US */ 3362d522f475SmrgCASE_IGNORE, 3363d522f475SmrgCASE_IGNORE, 3364d522f475SmrgCASE_IGNORE, 3365d522f475SmrgCASE_IGNORE, 3366d522f475Smrg/* SP ! " # */ 3367d522f475SmrgCASE_CSI_IGNORE, 3368d522f475SmrgCASE_CSI_IGNORE, 3369d522f475SmrgCASE_CSI_IGNORE, 3370d522f475SmrgCASE_CSI_IGNORE, 3371d522f475Smrg/* $ % & ' */ 3372d522f475SmrgCASE_CSI_IGNORE, 3373d522f475SmrgCASE_CSI_IGNORE, 3374d522f475SmrgCASE_CSI_IGNORE, 3375d522f475SmrgCASE_CSI_IGNORE, 3376d522f475Smrg/* ( ) * + */ 3377d522f475SmrgCASE_CSI_IGNORE, 3378d522f475SmrgCASE_CSI_IGNORE, 3379d522f475SmrgCASE_CSI_IGNORE, 3380d522f475SmrgCASE_CSI_IGNORE, 3381d522f475Smrg/* , - . / */ 3382d522f475SmrgCASE_CSI_IGNORE, 3383d522f475SmrgCASE_CSI_IGNORE, 3384d522f475SmrgCASE_CSI_IGNORE, 3385d522f475SmrgCASE_CSI_IGNORE, 3386d522f475Smrg/* 0 1 2 3 */ 3387d522f475SmrgCASE_ESC_DIGIT, 3388d522f475SmrgCASE_ESC_DIGIT, 3389d522f475SmrgCASE_ESC_DIGIT, 3390d522f475SmrgCASE_ESC_DIGIT, 3391d522f475Smrg/* 4 5 6 7 */ 3392d522f475SmrgCASE_ESC_DIGIT, 3393d522f475SmrgCASE_ESC_DIGIT, 3394d522f475SmrgCASE_ESC_DIGIT, 3395d522f475SmrgCASE_ESC_DIGIT, 3396d522f475Smrg/* 8 9 : ; */ 3397d522f475SmrgCASE_ESC_DIGIT, 3398d522f475SmrgCASE_ESC_DIGIT, 3399d522f475SmrgCASE_CSI_IGNORE, 3400d522f475SmrgCASE_ESC_SEMI, 3401d522f475Smrg/* < = > ? */ 3402d522f475SmrgCASE_CSI_IGNORE, 3403d522f475SmrgCASE_CSI_IGNORE, 3404d522f475SmrgCASE_CSI_IGNORE, 3405d522f475SmrgCASE_CSI_IGNORE, 3406d522f475Smrg/* @ A B C */ 3407d522f475SmrgCASE_GROUND_STATE, 3408d522f475SmrgCASE_GROUND_STATE, 3409d522f475SmrgCASE_GROUND_STATE, 3410d522f475SmrgCASE_GROUND_STATE, 3411d522f475Smrg/* D E F G */ 3412d522f475SmrgCASE_GROUND_STATE, 3413d522f475SmrgCASE_GROUND_STATE, 3414d522f475SmrgCASE_GROUND_STATE, 3415d522f475SmrgCASE_GROUND_STATE, 3416d522f475Smrg/* H I J K */ 3417d522f475SmrgCASE_GROUND_STATE, 3418d522f475SmrgCASE_GROUND_STATE, 3419d522f475SmrgCASE_GROUND_STATE, 3420d522f475SmrgCASE_GROUND_STATE, 3421d522f475Smrg/* L M N O */ 3422d522f475SmrgCASE_GROUND_STATE, 3423d522f475SmrgCASE_GROUND_STATE, 3424d522f475SmrgCASE_GROUND_STATE, 3425d522f475SmrgCASE_GROUND_STATE, 3426d522f475Smrg/* P Q R S */ 3427d522f475SmrgCASE_GROUND_STATE, 3428d522f475SmrgCASE_GROUND_STATE, 3429d522f475SmrgCASE_GROUND_STATE, 3430d522f475SmrgCASE_GROUND_STATE, 3431d522f475Smrg/* T U V W */ 3432d522f475SmrgCASE_GROUND_STATE, 3433d522f475SmrgCASE_GROUND_STATE, 3434d522f475SmrgCASE_GROUND_STATE, 3435d522f475SmrgCASE_GROUND_STATE, 3436d522f475Smrg/* X Y Z [ */ 3437d522f475SmrgCASE_GROUND_STATE, 3438d522f475SmrgCASE_GROUND_STATE, 3439d522f475SmrgCASE_GROUND_STATE, 3440d522f475SmrgCASE_GROUND_STATE, 3441d522f475Smrg/* \ ] ^ _ */ 3442d522f475SmrgCASE_GROUND_STATE, 3443d522f475SmrgCASE_GROUND_STATE, 3444d522f475SmrgCASE_GROUND_STATE, 3445d522f475SmrgCASE_GROUND_STATE, 3446d522f475Smrg/* ` a b c */ 3447d522f475SmrgCASE_GROUND_STATE, 3448d522f475SmrgCASE_GROUND_STATE, 3449d522f475SmrgCASE_GROUND_STATE, 3450d522f475SmrgCASE_DECRPTUI, 3451d522f475Smrg/* d e f g */ 3452d522f475SmrgCASE_GROUND_STATE, 3453d522f475SmrgCASE_GROUND_STATE, 3454d522f475SmrgCASE_GROUND_STATE, 3455d522f475SmrgCASE_GROUND_STATE, 3456d522f475Smrg/* h i j k */ 3457d522f475SmrgCASE_GROUND_STATE, 3458d522f475SmrgCASE_GROUND_STATE, 3459d522f475SmrgCASE_GROUND_STATE, 3460d522f475SmrgCASE_GROUND_STATE, 3461d522f475Smrg/* l m n o */ 3462d522f475SmrgCASE_GROUND_STATE, 3463d522f475SmrgCASE_GROUND_STATE, 3464d522f475SmrgCASE_GROUND_STATE, 3465d522f475SmrgCASE_GROUND_STATE, 3466d522f475Smrg/* p q r s */ 3467d522f475SmrgCASE_GROUND_STATE, 3468d522f475SmrgCASE_GROUND_STATE, 3469d522f475SmrgCASE_GROUND_STATE, 3470d522f475SmrgCASE_GROUND_STATE, 3471d522f475Smrg/* t u v w */ 3472d522f475SmrgCASE_GROUND_STATE, 3473d522f475SmrgCASE_GROUND_STATE, 3474d522f475SmrgCASE_GROUND_STATE, 3475d522f475SmrgCASE_GROUND_STATE, 3476d522f475Smrg/* x y z { */ 3477d522f475SmrgCASE_GROUND_STATE, 3478d522f475SmrgCASE_GROUND_STATE, 3479d522f475SmrgCASE_GROUND_STATE, 3480d522f475SmrgCASE_GROUND_STATE, 3481d522f475Smrg/* | } ~ DEL */ 3482d522f475SmrgCASE_GROUND_STATE, 3483d522f475SmrgCASE_GROUND_STATE, 3484d522f475SmrgCASE_GROUND_STATE, 3485d522f475SmrgCASE_IGNORE, 3486d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 3487d522f475SmrgCASE_GROUND_STATE, 3488d522f475SmrgCASE_GROUND_STATE, 3489d522f475SmrgCASE_GROUND_STATE, 3490d522f475SmrgCASE_GROUND_STATE, 3491d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 3492d522f475SmrgCASE_IND, 3493d522f475SmrgCASE_NEL, 3494d522f475SmrgCASE_GROUND_STATE, 3495d522f475SmrgCASE_GROUND_STATE, 3496d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 3497d522f475SmrgCASE_HTS, 3498d522f475SmrgCASE_GROUND_STATE, 3499d522f475SmrgCASE_GROUND_STATE, 3500d522f475SmrgCASE_GROUND_STATE, 3501d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 3502d522f475SmrgCASE_GROUND_STATE, 3503d522f475SmrgCASE_RI, 3504d522f475SmrgCASE_SS2, 3505d522f475SmrgCASE_SS3, 3506d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 3507d522f475SmrgCASE_DCS, 3508d522f475SmrgCASE_GROUND_STATE, 3509d522f475SmrgCASE_GROUND_STATE, 3510d522f475SmrgCASE_GROUND_STATE, 3511d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 3512d522f475SmrgCASE_GROUND_STATE, 3513d522f475SmrgCASE_GROUND_STATE, 3514d522f475SmrgCASE_SPA, 3515d522f475SmrgCASE_EPA, 3516d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 3517d522f475SmrgCASE_SOS, 3518d522f475SmrgCASE_GROUND_STATE, 3519d522f475SmrgCASE_DECID, 3520d522f475SmrgCASE_CSI_STATE, 3521d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 3522d522f475SmrgCASE_ST, 3523d522f475SmrgCASE_OSC, 3524d522f475SmrgCASE_PM, 3525d522f475SmrgCASE_APC, 3526d522f475Smrg/* nobreakspace exclamdown cent sterling */ 3527d522f475SmrgCASE_CSI_IGNORE, 3528d522f475SmrgCASE_CSI_IGNORE, 3529d522f475SmrgCASE_CSI_IGNORE, 3530d522f475SmrgCASE_CSI_IGNORE, 3531d522f475Smrg/* currency yen brokenbar section */ 3532d522f475SmrgCASE_CSI_IGNORE, 3533d522f475SmrgCASE_CSI_IGNORE, 3534d522f475SmrgCASE_CSI_IGNORE, 3535d522f475SmrgCASE_CSI_IGNORE, 3536d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 3537d522f475SmrgCASE_CSI_IGNORE, 3538d522f475SmrgCASE_CSI_IGNORE, 3539d522f475SmrgCASE_CSI_IGNORE, 3540d522f475SmrgCASE_CSI_IGNORE, 3541d522f475Smrg/* notsign hyphen registered macron */ 3542d522f475SmrgCASE_CSI_IGNORE, 3543d522f475SmrgCASE_CSI_IGNORE, 3544d522f475SmrgCASE_CSI_IGNORE, 3545d522f475SmrgCASE_CSI_IGNORE, 3546d522f475Smrg/* degree plusminus twosuperior threesuperior */ 3547d522f475SmrgCASE_ESC_DIGIT, 3548d522f475SmrgCASE_ESC_DIGIT, 3549d522f475SmrgCASE_ESC_DIGIT, 3550d522f475SmrgCASE_ESC_DIGIT, 3551d522f475Smrg/* acute mu paragraph periodcentered */ 3552d522f475SmrgCASE_ESC_DIGIT, 3553d522f475SmrgCASE_ESC_DIGIT, 3554d522f475SmrgCASE_ESC_DIGIT, 3555d522f475SmrgCASE_ESC_DIGIT, 3556d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 3557d522f475SmrgCASE_ESC_DIGIT, 3558d522f475SmrgCASE_ESC_DIGIT, 3559d522f475SmrgCASE_CSI_IGNORE, 3560d522f475SmrgCASE_ESC_SEMI, 3561d522f475Smrg/* onequarter onehalf threequarters questiondown */ 3562d522f475SmrgCASE_CSI_IGNORE, 3563d522f475SmrgCASE_CSI_IGNORE, 3564d522f475SmrgCASE_CSI_IGNORE, 3565d522f475SmrgCASE_CSI_IGNORE, 3566d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 3567d522f475SmrgCASE_GROUND_STATE, 3568d522f475SmrgCASE_GROUND_STATE, 3569d522f475SmrgCASE_GROUND_STATE, 3570d522f475SmrgCASE_GROUND_STATE, 3571d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 3572d522f475SmrgCASE_GROUND_STATE, 3573d522f475SmrgCASE_GROUND_STATE, 3574d522f475SmrgCASE_GROUND_STATE, 3575d522f475SmrgCASE_GROUND_STATE, 3576d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 3577d522f475SmrgCASE_GROUND_STATE, 3578d522f475SmrgCASE_GROUND_STATE, 3579d522f475SmrgCASE_GROUND_STATE, 3580d522f475SmrgCASE_GROUND_STATE, 3581d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 3582d522f475SmrgCASE_GROUND_STATE, 3583d522f475SmrgCASE_GROUND_STATE, 3584d522f475SmrgCASE_GROUND_STATE, 3585d522f475SmrgCASE_GROUND_STATE, 3586d522f475Smrg/* Eth Ntilde Ograve Oacute */ 3587d522f475SmrgCASE_GROUND_STATE, 3588d522f475SmrgCASE_GROUND_STATE, 3589d522f475SmrgCASE_GROUND_STATE, 3590d522f475SmrgCASE_GROUND_STATE, 3591d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 3592d522f475SmrgCASE_GROUND_STATE, 3593d522f475SmrgCASE_GROUND_STATE, 3594d522f475SmrgCASE_GROUND_STATE, 3595d522f475SmrgCASE_GROUND_STATE, 3596d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 3597d522f475SmrgCASE_GROUND_STATE, 3598d522f475SmrgCASE_GROUND_STATE, 3599d522f475SmrgCASE_GROUND_STATE, 3600d522f475SmrgCASE_GROUND_STATE, 3601d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 3602d522f475SmrgCASE_GROUND_STATE, 3603d522f475SmrgCASE_GROUND_STATE, 3604d522f475SmrgCASE_GROUND_STATE, 3605d522f475SmrgCASE_GROUND_STATE, 3606d522f475Smrg/* agrave aacute acircumflex atilde */ 3607d522f475SmrgCASE_GROUND_STATE, 3608d522f475SmrgCASE_GROUND_STATE, 3609d522f475SmrgCASE_GROUND_STATE, 3610d522f475SmrgCASE_DECRPTUI, 3611d522f475Smrg/* adiaeresis aring ae ccedilla */ 3612d522f475SmrgCASE_GROUND_STATE, 3613d522f475SmrgCASE_GROUND_STATE, 3614d522f475SmrgCASE_GROUND_STATE, 3615d522f475SmrgCASE_GROUND_STATE, 3616d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 3617d522f475SmrgCASE_GROUND_STATE, 3618d522f475SmrgCASE_GROUND_STATE, 3619d522f475SmrgCASE_GROUND_STATE, 3620d522f475SmrgCASE_GROUND_STATE, 3621d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 3622d522f475SmrgCASE_GROUND_STATE, 3623d522f475SmrgCASE_GROUND_STATE, 3624d522f475SmrgCASE_GROUND_STATE, 3625d522f475SmrgCASE_GROUND_STATE, 3626d522f475Smrg/* eth ntilde ograve oacute */ 3627d522f475SmrgCASE_GROUND_STATE, 3628d522f475SmrgCASE_GROUND_STATE, 3629d522f475SmrgCASE_GROUND_STATE, 3630d522f475SmrgCASE_GROUND_STATE, 3631d522f475Smrg/* ocircumflex otilde odiaeresis division */ 3632d522f475SmrgCASE_GROUND_STATE, 3633d522f475SmrgCASE_GROUND_STATE, 3634d522f475SmrgCASE_GROUND_STATE, 3635d522f475SmrgCASE_GROUND_STATE, 3636d522f475Smrg/* oslash ugrave uacute ucircumflex */ 3637d522f475SmrgCASE_GROUND_STATE, 3638d522f475SmrgCASE_GROUND_STATE, 3639d522f475SmrgCASE_GROUND_STATE, 3640d522f475SmrgCASE_GROUND_STATE, 3641d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 3642d522f475SmrgCASE_GROUND_STATE, 3643d522f475SmrgCASE_GROUND_STATE, 3644d522f475SmrgCASE_GROUND_STATE, 3645d522f475SmrgCASE_IGNORE, 3646d522f475Smrg}; 3647d522f475Smrg 3648d522f475SmrgConst PARSE_T cigtable[] = /* CASE_CSI_IGNORE */ 3649d522f475Smrg{ 3650d522f475Smrg/* NUL SOH STX ETX */ 3651d522f475SmrgCASE_IGNORE, 3652d522f475SmrgCASE_IGNORE, 3653d522f475SmrgCASE_IGNORE, 3654d522f475SmrgCASE_IGNORE, 3655d522f475Smrg/* EOT ENQ ACK BEL */ 3656d522f475SmrgCASE_IGNORE, 3657d522f475SmrgCASE_ENQ, 3658d522f475SmrgCASE_IGNORE, 3659d522f475SmrgCASE_BELL, 3660d522f475Smrg/* BS HT NL VT */ 3661d522f475SmrgCASE_BS, 3662d522f475SmrgCASE_TAB, 3663d522f475SmrgCASE_VMOT, 3664d522f475SmrgCASE_VMOT, 3665d522f475Smrg/* NP CR SO SI */ 3666d522f475SmrgCASE_VMOT, 3667d522f475SmrgCASE_CR, 3668d522f475SmrgCASE_SO, 3669d522f475SmrgCASE_SI, 3670d522f475Smrg/* DLE DC1 DC2 DC3 */ 3671d522f475SmrgCASE_IGNORE, 3672d522f475SmrgCASE_IGNORE, 3673d522f475SmrgCASE_IGNORE, 3674d522f475SmrgCASE_IGNORE, 3675d522f475Smrg/* DC4 NAK SYN ETB */ 3676d522f475SmrgCASE_IGNORE, 3677d522f475SmrgCASE_IGNORE, 3678d522f475SmrgCASE_IGNORE, 3679d522f475SmrgCASE_IGNORE, 3680d522f475Smrg/* CAN EM SUB ESC */ 3681d522f475SmrgCASE_GROUND_STATE, 3682d522f475SmrgCASE_IGNORE, 3683d522f475SmrgCASE_GROUND_STATE, 3684d522f475SmrgCASE_ESC, 3685d522f475Smrg/* FS GS RS US */ 3686d522f475SmrgCASE_IGNORE, 3687d522f475SmrgCASE_IGNORE, 3688d522f475SmrgCASE_IGNORE, 3689d522f475SmrgCASE_IGNORE, 3690d522f475Smrg/* SP ! " # */ 3691d522f475SmrgCASE_IGNORE, 3692d522f475SmrgCASE_IGNORE, 3693d522f475SmrgCASE_IGNORE, 3694d522f475SmrgCASE_IGNORE, 3695d522f475Smrg/* $ % & ' */ 3696d522f475SmrgCASE_IGNORE, 3697d522f475SmrgCASE_IGNORE, 3698d522f475SmrgCASE_IGNORE, 3699d522f475SmrgCASE_IGNORE, 3700d522f475Smrg/* ( ) * + */ 3701d522f475SmrgCASE_IGNORE, 3702d522f475SmrgCASE_IGNORE, 3703d522f475SmrgCASE_IGNORE, 3704d522f475SmrgCASE_IGNORE, 3705d522f475Smrg/* , - . / */ 3706d522f475SmrgCASE_IGNORE, 3707d522f475SmrgCASE_IGNORE, 3708d522f475SmrgCASE_IGNORE, 3709d522f475SmrgCASE_IGNORE, 3710d522f475Smrg/* 0 1 2 3 */ 3711d522f475SmrgCASE_IGNORE, 3712d522f475SmrgCASE_IGNORE, 3713d522f475SmrgCASE_IGNORE, 3714d522f475SmrgCASE_IGNORE, 3715d522f475Smrg/* 4 5 6 7 */ 3716d522f475SmrgCASE_IGNORE, 3717d522f475SmrgCASE_IGNORE, 3718d522f475SmrgCASE_IGNORE, 3719d522f475SmrgCASE_IGNORE, 3720d522f475Smrg/* 8 9 : ; */ 3721d522f475SmrgCASE_IGNORE, 3722d522f475SmrgCASE_IGNORE, 3723d522f475SmrgCASE_IGNORE, 3724d522f475SmrgCASE_IGNORE, 3725d522f475Smrg/* < = > ? */ 3726d522f475SmrgCASE_IGNORE, 3727d522f475SmrgCASE_IGNORE, 3728d522f475SmrgCASE_IGNORE, 3729d522f475SmrgCASE_IGNORE, 3730d522f475Smrg/* @ A B C */ 3731d522f475SmrgCASE_GROUND_STATE, 3732d522f475SmrgCASE_GROUND_STATE, 3733d522f475SmrgCASE_GROUND_STATE, 3734d522f475SmrgCASE_GROUND_STATE, 3735d522f475Smrg/* D E F G */ 3736d522f475SmrgCASE_GROUND_STATE, 3737d522f475SmrgCASE_GROUND_STATE, 3738d522f475SmrgCASE_GROUND_STATE, 3739d522f475SmrgCASE_GROUND_STATE, 3740d522f475Smrg/* H I J K */ 3741d522f475SmrgCASE_GROUND_STATE, 3742d522f475SmrgCASE_GROUND_STATE, 3743d522f475SmrgCASE_GROUND_STATE, 3744d522f475SmrgCASE_GROUND_STATE, 3745d522f475Smrg/* L M N O */ 3746d522f475SmrgCASE_GROUND_STATE, 3747d522f475SmrgCASE_GROUND_STATE, 3748d522f475SmrgCASE_GROUND_STATE, 3749d522f475SmrgCASE_GROUND_STATE, 3750d522f475Smrg/* P Q R S */ 3751d522f475SmrgCASE_GROUND_STATE, 3752d522f475SmrgCASE_GROUND_STATE, 3753d522f475SmrgCASE_GROUND_STATE, 3754d522f475SmrgCASE_GROUND_STATE, 3755d522f475Smrg/* T U V W */ 3756d522f475SmrgCASE_GROUND_STATE, 3757d522f475SmrgCASE_GROUND_STATE, 3758d522f475SmrgCASE_GROUND_STATE, 3759d522f475SmrgCASE_GROUND_STATE, 3760d522f475Smrg/* X Y Z [ */ 3761d522f475SmrgCASE_GROUND_STATE, 3762d522f475SmrgCASE_GROUND_STATE, 3763d522f475SmrgCASE_GROUND_STATE, 3764d522f475SmrgCASE_GROUND_STATE, 3765d522f475Smrg/* \ ] ^ _ */ 3766d522f475SmrgCASE_GROUND_STATE, 3767d522f475SmrgCASE_GROUND_STATE, 3768d522f475SmrgCASE_GROUND_STATE, 3769d522f475SmrgCASE_GROUND_STATE, 3770d522f475Smrg/* ` a b c */ 3771d522f475SmrgCASE_GROUND_STATE, 3772d522f475SmrgCASE_GROUND_STATE, 3773d522f475SmrgCASE_GROUND_STATE, 3774d522f475SmrgCASE_GROUND_STATE, 3775d522f475Smrg/* d e f g */ 3776d522f475SmrgCASE_GROUND_STATE, 3777d522f475SmrgCASE_GROUND_STATE, 3778d522f475SmrgCASE_GROUND_STATE, 3779d522f475SmrgCASE_GROUND_STATE, 3780d522f475Smrg/* h i j k */ 3781d522f475SmrgCASE_GROUND_STATE, 3782d522f475SmrgCASE_GROUND_STATE, 3783d522f475SmrgCASE_GROUND_STATE, 3784d522f475SmrgCASE_GROUND_STATE, 3785d522f475Smrg/* l m n o */ 3786d522f475SmrgCASE_GROUND_STATE, 3787d522f475SmrgCASE_GROUND_STATE, 3788d522f475SmrgCASE_GROUND_STATE, 3789d522f475SmrgCASE_GROUND_STATE, 3790d522f475Smrg/* p q r s */ 3791d522f475SmrgCASE_GROUND_STATE, 3792d522f475SmrgCASE_GROUND_STATE, 3793d522f475SmrgCASE_GROUND_STATE, 3794d522f475SmrgCASE_GROUND_STATE, 3795d522f475Smrg/* t u v w */ 3796d522f475SmrgCASE_GROUND_STATE, 3797d522f475SmrgCASE_GROUND_STATE, 3798d522f475SmrgCASE_GROUND_STATE, 3799d522f475SmrgCASE_GROUND_STATE, 3800d522f475Smrg/* x y z { */ 3801d522f475SmrgCASE_GROUND_STATE, 3802d522f475SmrgCASE_GROUND_STATE, 3803d522f475SmrgCASE_GROUND_STATE, 3804d522f475SmrgCASE_GROUND_STATE, 3805d522f475Smrg/* | } ~ DEL */ 3806d522f475SmrgCASE_GROUND_STATE, 3807d522f475SmrgCASE_GROUND_STATE, 3808d522f475SmrgCASE_GROUND_STATE, 3809d522f475SmrgCASE_IGNORE, 3810d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 3811d522f475SmrgCASE_GROUND_STATE, 3812d522f475SmrgCASE_GROUND_STATE, 3813d522f475SmrgCASE_GROUND_STATE, 3814d522f475SmrgCASE_GROUND_STATE, 3815d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 3816d522f475SmrgCASE_IND, 3817d522f475SmrgCASE_NEL, 3818d522f475SmrgCASE_GROUND_STATE, 3819d522f475SmrgCASE_GROUND_STATE, 3820d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 3821d522f475SmrgCASE_HTS, 3822d522f475SmrgCASE_GROUND_STATE, 3823d522f475SmrgCASE_GROUND_STATE, 3824d522f475SmrgCASE_GROUND_STATE, 3825d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 3826d522f475SmrgCASE_GROUND_STATE, 3827d522f475SmrgCASE_RI, 3828d522f475SmrgCASE_SS2, 3829d522f475SmrgCASE_SS3, 3830d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 3831d522f475SmrgCASE_DCS, 3832d522f475SmrgCASE_GROUND_STATE, 3833d522f475SmrgCASE_GROUND_STATE, 3834d522f475SmrgCASE_GROUND_STATE, 3835d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 3836d522f475SmrgCASE_GROUND_STATE, 3837d522f475SmrgCASE_GROUND_STATE, 3838d522f475SmrgCASE_SPA, 3839d522f475SmrgCASE_EPA, 3840d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 3841d522f475SmrgCASE_SOS, 3842d522f475SmrgCASE_GROUND_STATE, 3843d522f475SmrgCASE_DECID, 3844d522f475SmrgCASE_CSI_STATE, 3845d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 3846d522f475SmrgCASE_ST, 3847d522f475SmrgCASE_OSC, 3848d522f475SmrgCASE_PM, 3849d522f475SmrgCASE_APC, 3850d522f475Smrg/* nobreakspace exclamdown cent sterling */ 3851d522f475SmrgCASE_IGNORE, 3852d522f475SmrgCASE_IGNORE, 3853d522f475SmrgCASE_IGNORE, 3854d522f475SmrgCASE_IGNORE, 3855d522f475Smrg/* currency yen brokenbar section */ 3856d522f475SmrgCASE_IGNORE, 3857d522f475SmrgCASE_IGNORE, 3858d522f475SmrgCASE_IGNORE, 3859d522f475SmrgCASE_IGNORE, 3860d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 3861d522f475SmrgCASE_IGNORE, 3862d522f475SmrgCASE_IGNORE, 3863d522f475SmrgCASE_IGNORE, 3864d522f475SmrgCASE_IGNORE, 3865d522f475Smrg/* notsign hyphen registered macron */ 3866d522f475SmrgCASE_IGNORE, 3867d522f475SmrgCASE_IGNORE, 3868d522f475SmrgCASE_IGNORE, 3869d522f475SmrgCASE_IGNORE, 3870d522f475Smrg/* degree plusminus twosuperior threesuperior */ 3871d522f475SmrgCASE_IGNORE, 3872d522f475SmrgCASE_IGNORE, 3873d522f475SmrgCASE_IGNORE, 3874d522f475SmrgCASE_IGNORE, 3875d522f475Smrg/* acute mu paragraph periodcentered */ 3876d522f475SmrgCASE_IGNORE, 3877d522f475SmrgCASE_IGNORE, 3878d522f475SmrgCASE_IGNORE, 3879d522f475SmrgCASE_IGNORE, 3880d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 3881d522f475SmrgCASE_IGNORE, 3882d522f475SmrgCASE_IGNORE, 3883d522f475SmrgCASE_IGNORE, 3884d522f475SmrgCASE_IGNORE, 3885d522f475Smrg/* onequarter onehalf threequarters questiondown */ 3886d522f475SmrgCASE_IGNORE, 3887d522f475SmrgCASE_IGNORE, 3888d522f475SmrgCASE_IGNORE, 3889d522f475SmrgCASE_IGNORE, 3890d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 3891d522f475SmrgCASE_GROUND_STATE, 3892d522f475SmrgCASE_GROUND_STATE, 3893d522f475SmrgCASE_GROUND_STATE, 3894d522f475SmrgCASE_GROUND_STATE, 3895d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 3896d522f475SmrgCASE_GROUND_STATE, 3897d522f475SmrgCASE_GROUND_STATE, 3898d522f475SmrgCASE_GROUND_STATE, 3899d522f475SmrgCASE_GROUND_STATE, 3900d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 3901d522f475SmrgCASE_GROUND_STATE, 3902d522f475SmrgCASE_GROUND_STATE, 3903d522f475SmrgCASE_GROUND_STATE, 3904d522f475SmrgCASE_GROUND_STATE, 3905d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 3906d522f475SmrgCASE_GROUND_STATE, 3907d522f475SmrgCASE_GROUND_STATE, 3908d522f475SmrgCASE_GROUND_STATE, 3909d522f475SmrgCASE_GROUND_STATE, 3910d522f475Smrg/* Eth Ntilde Ograve Oacute */ 3911d522f475SmrgCASE_GROUND_STATE, 3912d522f475SmrgCASE_GROUND_STATE, 3913d522f475SmrgCASE_GROUND_STATE, 3914d522f475SmrgCASE_GROUND_STATE, 3915d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 3916d522f475SmrgCASE_GROUND_STATE, 3917d522f475SmrgCASE_GROUND_STATE, 3918d522f475SmrgCASE_GROUND_STATE, 3919d522f475SmrgCASE_GROUND_STATE, 3920d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 3921d522f475SmrgCASE_GROUND_STATE, 3922d522f475SmrgCASE_GROUND_STATE, 3923d522f475SmrgCASE_GROUND_STATE, 3924d522f475SmrgCASE_GROUND_STATE, 3925d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 3926d522f475SmrgCASE_GROUND_STATE, 3927d522f475SmrgCASE_GROUND_STATE, 3928d522f475SmrgCASE_GROUND_STATE, 3929d522f475SmrgCASE_GROUND_STATE, 3930d522f475Smrg/* agrave aacute acircumflex atilde */ 3931d522f475SmrgCASE_GROUND_STATE, 3932d522f475SmrgCASE_GROUND_STATE, 3933d522f475SmrgCASE_GROUND_STATE, 3934d522f475SmrgCASE_GROUND_STATE, 3935d522f475Smrg/* adiaeresis aring ae ccedilla */ 3936d522f475SmrgCASE_GROUND_STATE, 3937d522f475SmrgCASE_GROUND_STATE, 3938d522f475SmrgCASE_GROUND_STATE, 3939d522f475SmrgCASE_GROUND_STATE, 3940d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 3941d522f475SmrgCASE_GROUND_STATE, 3942d522f475SmrgCASE_GROUND_STATE, 3943d522f475SmrgCASE_GROUND_STATE, 3944d522f475SmrgCASE_GROUND_STATE, 3945d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 3946d522f475SmrgCASE_GROUND_STATE, 3947d522f475SmrgCASE_GROUND_STATE, 3948d522f475SmrgCASE_GROUND_STATE, 3949d522f475SmrgCASE_GROUND_STATE, 3950d522f475Smrg/* eth ntilde ograve oacute */ 3951d522f475SmrgCASE_GROUND_STATE, 3952d522f475SmrgCASE_GROUND_STATE, 3953d522f475SmrgCASE_GROUND_STATE, 3954d522f475SmrgCASE_GROUND_STATE, 3955d522f475Smrg/* ocircumflex otilde odiaeresis division */ 3956d522f475SmrgCASE_GROUND_STATE, 3957d522f475SmrgCASE_GROUND_STATE, 3958d522f475SmrgCASE_GROUND_STATE, 3959d522f475SmrgCASE_GROUND_STATE, 3960d522f475Smrg/* oslash ugrave uacute ucircumflex */ 3961d522f475SmrgCASE_GROUND_STATE, 3962d522f475SmrgCASE_GROUND_STATE, 3963d522f475SmrgCASE_GROUND_STATE, 3964d522f475SmrgCASE_GROUND_STATE, 3965d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 3966d522f475SmrgCASE_GROUND_STATE, 3967d522f475SmrgCASE_GROUND_STATE, 3968d522f475SmrgCASE_GROUND_STATE, 3969d522f475SmrgCASE_IGNORE, 3970d522f475Smrg}; 3971d522f475Smrg 3972d522f475SmrgConst PARSE_T eigtable[] = /* CASE_ESC_IGNORE */ 3973d522f475Smrg{ 3974d522f475Smrg/* NUL SOH STX ETX */ 3975d522f475SmrgCASE_IGNORE, 3976d522f475SmrgCASE_IGNORE, 3977d522f475SmrgCASE_IGNORE, 3978d522f475SmrgCASE_IGNORE, 3979d522f475Smrg/* EOT ENQ ACK BEL */ 3980d522f475SmrgCASE_IGNORE, 3981d522f475SmrgCASE_ENQ, 3982d522f475SmrgCASE_IGNORE, 3983d522f475SmrgCASE_BELL, 3984d522f475Smrg/* BS HT NL VT */ 3985d522f475SmrgCASE_BS, 3986d522f475SmrgCASE_TAB, 3987d522f475SmrgCASE_VMOT, 3988d522f475SmrgCASE_VMOT, 3989d522f475Smrg/* NP CR SO SI */ 3990d522f475SmrgCASE_VMOT, 3991d522f475SmrgCASE_CR, 3992d522f475SmrgCASE_SO, 3993d522f475SmrgCASE_SI, 3994d522f475Smrg/* DLE DC1 DC2 DC3 */ 3995d522f475SmrgCASE_IGNORE, 3996d522f475SmrgCASE_IGNORE, 3997d522f475SmrgCASE_IGNORE, 3998d522f475SmrgCASE_IGNORE, 3999d522f475Smrg/* DC4 NAK SYN ETB */ 4000d522f475SmrgCASE_IGNORE, 4001d522f475SmrgCASE_IGNORE, 4002d522f475SmrgCASE_IGNORE, 4003d522f475SmrgCASE_IGNORE, 4004d522f475Smrg/* CAN EM SUB ESC */ 4005d522f475SmrgCASE_GROUND_STATE, 4006d522f475SmrgCASE_IGNORE, 4007d522f475SmrgCASE_GROUND_STATE, 4008d522f475SmrgCASE_ESC, 4009d522f475Smrg/* FS GS RS US */ 4010d522f475SmrgCASE_IGNORE, 4011d522f475SmrgCASE_IGNORE, 4012d522f475SmrgCASE_IGNORE, 4013d522f475SmrgCASE_IGNORE, 4014d522f475Smrg/* SP ! " # */ 4015d522f475SmrgCASE_IGNORE, 4016d522f475SmrgCASE_IGNORE, 4017d522f475SmrgCASE_IGNORE, 4018d522f475SmrgCASE_IGNORE, 4019d522f475Smrg/* $ % & ' */ 4020d522f475SmrgCASE_IGNORE, 4021d522f475SmrgCASE_IGNORE, 4022d522f475SmrgCASE_IGNORE, 4023d522f475SmrgCASE_IGNORE, 4024d522f475Smrg/* ( ) * + */ 4025d522f475SmrgCASE_IGNORE, 4026d522f475SmrgCASE_IGNORE, 4027d522f475SmrgCASE_IGNORE, 4028d522f475SmrgCASE_IGNORE, 4029d522f475Smrg/* , - . / */ 4030d522f475SmrgCASE_IGNORE, 4031d522f475SmrgCASE_IGNORE, 4032d522f475SmrgCASE_IGNORE, 4033d522f475SmrgCASE_IGNORE, 4034d522f475Smrg/* 0 1 2 3 */ 4035d522f475SmrgCASE_GROUND_STATE, 4036d522f475SmrgCASE_GROUND_STATE, 4037d522f475SmrgCASE_GROUND_STATE, 4038d522f475SmrgCASE_GROUND_STATE, 4039d522f475Smrg/* 4 5 6 7 */ 4040d522f475SmrgCASE_GROUND_STATE, 4041d522f475SmrgCASE_GROUND_STATE, 4042d522f475SmrgCASE_GROUND_STATE, 4043d522f475SmrgCASE_GROUND_STATE, 4044d522f475Smrg/* 8 9 : ; */ 4045d522f475SmrgCASE_GROUND_STATE, 4046d522f475SmrgCASE_GROUND_STATE, 4047d522f475SmrgCASE_GROUND_STATE, 4048d522f475SmrgCASE_GROUND_STATE, 4049d522f475Smrg/* < = > ? */ 4050d522f475SmrgCASE_GROUND_STATE, 4051d522f475SmrgCASE_GROUND_STATE, 4052d522f475SmrgCASE_GROUND_STATE, 4053d522f475SmrgCASE_GROUND_STATE, 4054d522f475Smrg/* @ A B C */ 4055d522f475SmrgCASE_GROUND_STATE, 4056d522f475SmrgCASE_GROUND_STATE, 4057d522f475SmrgCASE_GROUND_STATE, 4058d522f475SmrgCASE_GROUND_STATE, 4059d522f475Smrg/* D E F G */ 4060d522f475SmrgCASE_GROUND_STATE, 4061d522f475SmrgCASE_GROUND_STATE, 4062d522f475SmrgCASE_GROUND_STATE, 4063d522f475SmrgCASE_GROUND_STATE, 4064d522f475Smrg/* H I J K */ 4065d522f475SmrgCASE_GROUND_STATE, 4066d522f475SmrgCASE_GROUND_STATE, 4067d522f475SmrgCASE_GROUND_STATE, 4068d522f475SmrgCASE_GROUND_STATE, 4069d522f475Smrg/* L M N O */ 4070d522f475SmrgCASE_GROUND_STATE, 4071d522f475SmrgCASE_GROUND_STATE, 4072d522f475SmrgCASE_GROUND_STATE, 4073d522f475SmrgCASE_GROUND_STATE, 4074d522f475Smrg/* P Q R S */ 4075d522f475SmrgCASE_GROUND_STATE, 4076d522f475SmrgCASE_GROUND_STATE, 4077d522f475SmrgCASE_GROUND_STATE, 4078d522f475SmrgCASE_GROUND_STATE, 4079d522f475Smrg/* T U V W */ 4080d522f475SmrgCASE_GROUND_STATE, 4081d522f475SmrgCASE_GROUND_STATE, 4082d522f475SmrgCASE_GROUND_STATE, 4083d522f475SmrgCASE_GROUND_STATE, 4084d522f475Smrg/* X Y Z [ */ 4085d522f475SmrgCASE_GROUND_STATE, 4086d522f475SmrgCASE_GROUND_STATE, 4087d522f475SmrgCASE_GROUND_STATE, 4088d522f475SmrgCASE_GROUND_STATE, 4089d522f475Smrg/* \ ] ^ _ */ 4090d522f475SmrgCASE_GROUND_STATE, 4091d522f475SmrgCASE_GROUND_STATE, 4092d522f475SmrgCASE_GROUND_STATE, 4093d522f475SmrgCASE_GROUND_STATE, 4094d522f475Smrg/* ` a b c */ 4095d522f475SmrgCASE_GROUND_STATE, 4096d522f475SmrgCASE_GROUND_STATE, 4097d522f475SmrgCASE_GROUND_STATE, 4098d522f475SmrgCASE_GROUND_STATE, 4099d522f475Smrg/* d e f g */ 4100d522f475SmrgCASE_GROUND_STATE, 4101d522f475SmrgCASE_GROUND_STATE, 4102d522f475SmrgCASE_GROUND_STATE, 4103d522f475SmrgCASE_GROUND_STATE, 4104d522f475Smrg/* h i j k */ 4105d522f475SmrgCASE_GROUND_STATE, 4106d522f475SmrgCASE_GROUND_STATE, 4107d522f475SmrgCASE_GROUND_STATE, 4108d522f475SmrgCASE_GROUND_STATE, 4109d522f475Smrg/* l m n o */ 4110d522f475SmrgCASE_GROUND_STATE, 4111d522f475SmrgCASE_GROUND_STATE, 4112d522f475SmrgCASE_GROUND_STATE, 4113d522f475SmrgCASE_GROUND_STATE, 4114d522f475Smrg/* p q r s */ 4115d522f475SmrgCASE_GROUND_STATE, 4116d522f475SmrgCASE_GROUND_STATE, 4117d522f475SmrgCASE_GROUND_STATE, 4118d522f475SmrgCASE_GROUND_STATE, 4119d522f475Smrg/* t u v w */ 4120d522f475SmrgCASE_GROUND_STATE, 4121d522f475SmrgCASE_GROUND_STATE, 4122d522f475SmrgCASE_GROUND_STATE, 4123d522f475SmrgCASE_GROUND_STATE, 4124d522f475Smrg/* x y z { */ 4125d522f475SmrgCASE_GROUND_STATE, 4126d522f475SmrgCASE_GROUND_STATE, 4127d522f475SmrgCASE_GROUND_STATE, 4128d522f475SmrgCASE_GROUND_STATE, 4129d522f475Smrg/* | } ~ DEL */ 4130d522f475SmrgCASE_GROUND_STATE, 4131d522f475SmrgCASE_GROUND_STATE, 4132d522f475SmrgCASE_GROUND_STATE, 4133d522f475SmrgCASE_IGNORE, 4134d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 4135d522f475SmrgCASE_GROUND_STATE, 4136d522f475SmrgCASE_GROUND_STATE, 4137d522f475SmrgCASE_GROUND_STATE, 4138d522f475SmrgCASE_GROUND_STATE, 4139d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 4140d522f475SmrgCASE_IND, 4141d522f475SmrgCASE_NEL, 4142d522f475SmrgCASE_GROUND_STATE, 4143d522f475SmrgCASE_GROUND_STATE, 4144d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 4145d522f475SmrgCASE_HTS, 4146d522f475SmrgCASE_GROUND_STATE, 4147d522f475SmrgCASE_GROUND_STATE, 4148d522f475SmrgCASE_GROUND_STATE, 4149d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 4150d522f475SmrgCASE_GROUND_STATE, 4151d522f475SmrgCASE_RI, 4152d522f475SmrgCASE_SS2, 4153d522f475SmrgCASE_SS3, 4154d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 4155d522f475SmrgCASE_DCS, 4156d522f475SmrgCASE_GROUND_STATE, 4157d522f475SmrgCASE_GROUND_STATE, 4158d522f475SmrgCASE_GROUND_STATE, 4159d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 4160d522f475SmrgCASE_GROUND_STATE, 4161d522f475SmrgCASE_GROUND_STATE, 4162d522f475SmrgCASE_SPA, 4163d522f475SmrgCASE_EPA, 4164d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 4165d522f475SmrgCASE_SOS, 4166d522f475SmrgCASE_GROUND_STATE, 4167d522f475SmrgCASE_DECID, 4168d522f475SmrgCASE_CSI_STATE, 4169d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 4170d522f475SmrgCASE_ST, 4171d522f475SmrgCASE_OSC, 4172d522f475SmrgCASE_PM, 4173d522f475SmrgCASE_APC, 4174d522f475Smrg/* nobreakspace exclamdown cent sterling */ 4175d522f475SmrgCASE_IGNORE, 4176d522f475SmrgCASE_IGNORE, 4177d522f475SmrgCASE_IGNORE, 4178d522f475SmrgCASE_IGNORE, 4179d522f475Smrg/* currency yen brokenbar section */ 4180d522f475SmrgCASE_IGNORE, 4181d522f475SmrgCASE_IGNORE, 4182d522f475SmrgCASE_IGNORE, 4183d522f475SmrgCASE_IGNORE, 4184d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 4185d522f475SmrgCASE_IGNORE, 4186d522f475SmrgCASE_IGNORE, 4187d522f475SmrgCASE_IGNORE, 4188d522f475SmrgCASE_IGNORE, 4189d522f475Smrg/* notsign hyphen registered macron */ 4190d522f475SmrgCASE_IGNORE, 4191d522f475SmrgCASE_IGNORE, 4192d522f475SmrgCASE_IGNORE, 4193d522f475SmrgCASE_IGNORE, 4194d522f475Smrg/* degree plusminus twosuperior threesuperior */ 4195d522f475SmrgCASE_GROUND_STATE, 4196d522f475SmrgCASE_GROUND_STATE, 4197d522f475SmrgCASE_GROUND_STATE, 4198d522f475SmrgCASE_GROUND_STATE, 4199d522f475Smrg/* acute mu paragraph periodcentered */ 4200d522f475SmrgCASE_GROUND_STATE, 4201d522f475SmrgCASE_GROUND_STATE, 4202d522f475SmrgCASE_GROUND_STATE, 4203d522f475SmrgCASE_GROUND_STATE, 4204d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 4205d522f475SmrgCASE_GROUND_STATE, 4206d522f475SmrgCASE_GROUND_STATE, 4207d522f475SmrgCASE_GROUND_STATE, 4208d522f475SmrgCASE_GROUND_STATE, 4209d522f475Smrg/* onequarter onehalf threequarters questiondown */ 4210d522f475SmrgCASE_GROUND_STATE, 4211d522f475SmrgCASE_GROUND_STATE, 4212d522f475SmrgCASE_GROUND_STATE, 4213d522f475SmrgCASE_GROUND_STATE, 4214d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 4215d522f475SmrgCASE_GROUND_STATE, 4216d522f475SmrgCASE_GROUND_STATE, 4217d522f475SmrgCASE_GROUND_STATE, 4218d522f475SmrgCASE_GROUND_STATE, 4219d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 4220d522f475SmrgCASE_GROUND_STATE, 4221d522f475SmrgCASE_GROUND_STATE, 4222d522f475SmrgCASE_GROUND_STATE, 4223d522f475SmrgCASE_GROUND_STATE, 4224d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 4225d522f475SmrgCASE_GROUND_STATE, 4226d522f475SmrgCASE_GROUND_STATE, 4227d522f475SmrgCASE_GROUND_STATE, 4228d522f475SmrgCASE_GROUND_STATE, 4229d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 4230d522f475SmrgCASE_GROUND_STATE, 4231d522f475SmrgCASE_GROUND_STATE, 4232d522f475SmrgCASE_GROUND_STATE, 4233d522f475SmrgCASE_GROUND_STATE, 4234d522f475Smrg/* Eth Ntilde Ograve Oacute */ 4235d522f475SmrgCASE_GROUND_STATE, 4236d522f475SmrgCASE_GROUND_STATE, 4237d522f475SmrgCASE_GROUND_STATE, 4238d522f475SmrgCASE_GROUND_STATE, 4239d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 4240d522f475SmrgCASE_GROUND_STATE, 4241d522f475SmrgCASE_GROUND_STATE, 4242d522f475SmrgCASE_GROUND_STATE, 4243d522f475SmrgCASE_GROUND_STATE, 4244d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 4245d522f475SmrgCASE_GROUND_STATE, 4246d522f475SmrgCASE_GROUND_STATE, 4247d522f475SmrgCASE_GROUND_STATE, 4248d522f475SmrgCASE_GROUND_STATE, 4249d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 4250d522f475SmrgCASE_GROUND_STATE, 4251d522f475SmrgCASE_GROUND_STATE, 4252d522f475SmrgCASE_GROUND_STATE, 4253d522f475SmrgCASE_GROUND_STATE, 4254d522f475Smrg/* agrave aacute acircumflex atilde */ 4255d522f475SmrgCASE_GROUND_STATE, 4256d522f475SmrgCASE_GROUND_STATE, 4257d522f475SmrgCASE_GROUND_STATE, 4258d522f475SmrgCASE_GROUND_STATE, 4259d522f475Smrg/* adiaeresis aring ae ccedilla */ 4260d522f475SmrgCASE_GROUND_STATE, 4261d522f475SmrgCASE_GROUND_STATE, 4262d522f475SmrgCASE_GROUND_STATE, 4263d522f475SmrgCASE_GROUND_STATE, 4264d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 4265d522f475SmrgCASE_GROUND_STATE, 4266d522f475SmrgCASE_GROUND_STATE, 4267d522f475SmrgCASE_GROUND_STATE, 4268d522f475SmrgCASE_GROUND_STATE, 4269d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 4270d522f475SmrgCASE_GROUND_STATE, 4271d522f475SmrgCASE_GROUND_STATE, 4272d522f475SmrgCASE_GROUND_STATE, 4273d522f475SmrgCASE_GROUND_STATE, 4274d522f475Smrg/* eth ntilde ograve oacute */ 4275d522f475SmrgCASE_GROUND_STATE, 4276d522f475SmrgCASE_GROUND_STATE, 4277d522f475SmrgCASE_GROUND_STATE, 4278d522f475SmrgCASE_GROUND_STATE, 4279d522f475Smrg/* ocircumflex otilde odiaeresis division */ 4280d522f475SmrgCASE_GROUND_STATE, 4281d522f475SmrgCASE_GROUND_STATE, 4282d522f475SmrgCASE_GROUND_STATE, 4283d522f475SmrgCASE_GROUND_STATE, 4284d522f475Smrg/* oslash ugrave uacute ucircumflex */ 4285d522f475SmrgCASE_GROUND_STATE, 4286d522f475SmrgCASE_GROUND_STATE, 4287d522f475SmrgCASE_GROUND_STATE, 4288d522f475SmrgCASE_GROUND_STATE, 4289d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 4290d522f475SmrgCASE_GROUND_STATE, 4291d522f475SmrgCASE_GROUND_STATE, 4292d522f475SmrgCASE_GROUND_STATE, 4293d522f475SmrgCASE_IGNORE, 4294d522f475Smrg}; 4295d522f475Smrg 4296d522f475SmrgConst PARSE_T esc_table[] = /* ESC */ 4297d522f475Smrg{ 4298d522f475Smrg/* NUL SOH STX ETX */ 4299d522f475SmrgCASE_IGNORE, 4300d522f475SmrgCASE_IGNORE, 4301d522f475SmrgCASE_IGNORE, 4302d522f475SmrgCASE_IGNORE, 4303d522f475Smrg/* EOT ENQ ACK BEL */ 4304d522f475SmrgCASE_IGNORE, 4305d522f475SmrgCASE_ENQ, 4306d522f475SmrgCASE_IGNORE, 4307d522f475SmrgCASE_BELL, 4308d522f475Smrg/* BS HT NL VT */ 4309d522f475SmrgCASE_BS, 4310d522f475SmrgCASE_TAB, 4311d522f475SmrgCASE_VMOT, 4312d522f475SmrgCASE_VMOT, 4313d522f475Smrg/* NP CR SO SI */ 4314d522f475SmrgCASE_VMOT, 4315d522f475SmrgCASE_CR, 4316d522f475SmrgCASE_SO, 4317d522f475SmrgCASE_SI, 4318d522f475Smrg/* DLE DC1 DC2 DC3 */ 4319d522f475SmrgCASE_IGNORE, 4320d522f475SmrgCASE_IGNORE, 4321d522f475SmrgCASE_IGNORE, 4322d522f475SmrgCASE_IGNORE, 4323d522f475Smrg/* DC4 NAK SYN ETB */ 4324d522f475SmrgCASE_IGNORE, 4325d522f475SmrgCASE_IGNORE, 4326d522f475SmrgCASE_IGNORE, 4327d522f475SmrgCASE_IGNORE, 4328d522f475Smrg/* CAN EM SUB ESC */ 4329d522f475SmrgCASE_GROUND_STATE, 4330d522f475SmrgCASE_IGNORE, 4331d522f475SmrgCASE_GROUND_STATE, 4332d522f475SmrgCASE_ESC, 4333d522f475Smrg/* FS GS RS US */ 4334d522f475SmrgCASE_IGNORE, 4335d522f475SmrgCASE_IGNORE, 4336d522f475SmrgCASE_IGNORE, 4337d522f475SmrgCASE_IGNORE, 4338d522f475Smrg/* SP ! " # */ 4339d522f475SmrgCASE_ESC_SP_STATE, 4340d522f475SmrgCASE_ESC_IGNORE, 4341d522f475SmrgCASE_ESC_IGNORE, 4342d522f475SmrgCASE_SCR_STATE, 4343d522f475Smrg/* $ % & ' */ 4344d522f475SmrgCASE_ESC_IGNORE, 4345d522f475SmrgCASE_ESC_PERCENT, 4346d522f475SmrgCASE_ESC_IGNORE, 4347d522f475SmrgCASE_ESC_IGNORE, 4348d522f475Smrg/* ( ) * + */ 4349d522f475SmrgCASE_SCS0_STATE, 4350d522f475SmrgCASE_SCS1_STATE, 4351d522f475SmrgCASE_SCS2_STATE, 4352d522f475SmrgCASE_SCS3_STATE, 4353d522f475Smrg/* , - . / */ 4354d522f475SmrgCASE_ESC_IGNORE, 43552eaa94a1SchristosCASE_SCS1A_STATE, 43562eaa94a1SchristosCASE_SCS2A_STATE, 43572eaa94a1SchristosCASE_SCS3A_STATE, 4358d522f475Smrg/* 0 1 2 3 */ 4359d522f475SmrgCASE_GROUND_STATE, 4360d522f475SmrgCASE_GROUND_STATE, 4361d522f475SmrgCASE_GROUND_STATE, 4362d522f475SmrgCASE_GROUND_STATE, 4363d522f475Smrg/* 4 5 6 7 */ 4364d522f475SmrgCASE_GROUND_STATE, 4365d522f475SmrgCASE_GROUND_STATE, 4366d522f475SmrgCASE_GROUND_STATE, 4367d522f475SmrgCASE_DECSC, 4368d522f475Smrg/* 8 9 : ; */ 4369d522f475SmrgCASE_DECRC, 4370d522f475SmrgCASE_GROUND_STATE, 4371d522f475SmrgCASE_GROUND_STATE, 4372d522f475SmrgCASE_GROUND_STATE, 4373d522f475Smrg/* < = > ? */ 4374d522f475SmrgCASE_GROUND_STATE, 4375d522f475SmrgCASE_DECKPAM, 4376d522f475SmrgCASE_DECKPNM, 4377d522f475SmrgCASE_GROUND_STATE, 4378d522f475Smrg/* @ A B C */ 4379d522f475SmrgCASE_GROUND_STATE, 4380d522f475SmrgCASE_GROUND_STATE, 4381d522f475SmrgCASE_GROUND_STATE, 4382d522f475SmrgCASE_GROUND_STATE, 4383d522f475Smrg/* D E F G */ 4384d522f475SmrgCASE_IND, 4385d522f475SmrgCASE_NEL, 4386d522f475SmrgCASE_HP_BUGGY_LL, 4387d522f475SmrgCASE_GROUND_STATE, 4388d522f475Smrg/* H I J K */ 4389d522f475SmrgCASE_HTS, 4390d522f475SmrgCASE_GROUND_STATE, 4391d522f475SmrgCASE_GROUND_STATE, 4392d522f475SmrgCASE_GROUND_STATE, 4393d522f475Smrg/* L M N O */ 4394d522f475SmrgCASE_GROUND_STATE, 4395d522f475SmrgCASE_RI, 4396d522f475SmrgCASE_SS2, 4397d522f475SmrgCASE_SS3, 4398d522f475Smrg/* P Q R S */ 4399d522f475SmrgCASE_DCS, 4400d522f475SmrgCASE_GROUND_STATE, 4401d522f475SmrgCASE_GROUND_STATE, 4402d522f475SmrgCASE_GROUND_STATE, 4403d522f475Smrg/* T U V W */ 4404d522f475SmrgCASE_XTERM_TITLE, 4405d522f475SmrgCASE_GROUND_STATE, 4406d522f475SmrgCASE_SPA, 4407d522f475SmrgCASE_EPA, 4408d522f475Smrg/* X Y Z [ */ 4409d522f475SmrgCASE_SOS, 4410d522f475SmrgCASE_GROUND_STATE, 4411d522f475SmrgCASE_DECID, 4412d522f475SmrgCASE_CSI_STATE, 4413d522f475Smrg/* \ ] ^ _ */ 4414d522f475SmrgCASE_ST, 4415d522f475SmrgCASE_OSC, 4416d522f475SmrgCASE_PM, 4417d522f475SmrgCASE_APC, 4418d522f475Smrg/* ` a b c */ 4419d522f475SmrgCASE_GROUND_STATE, 4420d522f475SmrgCASE_GROUND_STATE, 4421d522f475SmrgCASE_GROUND_STATE, 4422d522f475SmrgCASE_RIS, 4423d522f475Smrg/* d e f g */ 4424d522f475SmrgCASE_GROUND_STATE, 4425d522f475SmrgCASE_GROUND_STATE, 4426d522f475SmrgCASE_GROUND_STATE, 4427d522f475SmrgCASE_GROUND_STATE, 4428d522f475Smrg/* h i j k */ 4429d522f475SmrgCASE_GROUND_STATE, 4430d522f475SmrgCASE_GROUND_STATE, 4431d522f475SmrgCASE_GROUND_STATE, 4432d522f475SmrgCASE_GROUND_STATE, 4433d522f475Smrg/* l m n o */ 4434d522f475SmrgCASE_HP_MEM_LOCK, 4435d522f475SmrgCASE_HP_MEM_UNLOCK, 4436d522f475SmrgCASE_LS2, 4437d522f475SmrgCASE_LS3, 4438d522f475Smrg/* p q r s */ 4439d522f475SmrgCASE_GROUND_STATE, 4440d522f475SmrgCASE_GROUND_STATE, 4441d522f475SmrgCASE_GROUND_STATE, 4442d522f475SmrgCASE_GROUND_STATE, 4443d522f475Smrg/* t u v w */ 4444d522f475SmrgCASE_GROUND_STATE, 4445d522f475SmrgCASE_GROUND_STATE, 4446d522f475SmrgCASE_GROUND_STATE, 4447d522f475SmrgCASE_GROUND_STATE, 4448d522f475Smrg/* x y z { */ 4449d522f475SmrgCASE_GROUND_STATE, 4450d522f475SmrgCASE_GROUND_STATE, 4451d522f475SmrgCASE_GROUND_STATE, 4452d522f475SmrgCASE_GROUND_STATE, 4453d522f475Smrg/* | } ~ DEL */ 4454d522f475SmrgCASE_LS3R, 4455d522f475SmrgCASE_LS2R, 4456d522f475SmrgCASE_LS1R, 4457d522f475SmrgCASE_IGNORE, 4458d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 4459d522f475SmrgCASE_GROUND_STATE, 4460d522f475SmrgCASE_GROUND_STATE, 4461d522f475SmrgCASE_GROUND_STATE, 4462d522f475SmrgCASE_GROUND_STATE, 4463d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 4464d522f475SmrgCASE_IND, 4465d522f475SmrgCASE_NEL, 4466d522f475SmrgCASE_GROUND_STATE, 4467d522f475SmrgCASE_GROUND_STATE, 4468d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 4469d522f475SmrgCASE_HTS, 4470d522f475SmrgCASE_GROUND_STATE, 4471d522f475SmrgCASE_GROUND_STATE, 4472d522f475SmrgCASE_GROUND_STATE, 4473d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 4474d522f475SmrgCASE_GROUND_STATE, 4475d522f475SmrgCASE_RI, 4476d522f475SmrgCASE_SS2, 4477d522f475SmrgCASE_SS3, 4478d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 4479d522f475SmrgCASE_DCS, 4480d522f475SmrgCASE_GROUND_STATE, 4481d522f475SmrgCASE_GROUND_STATE, 4482d522f475SmrgCASE_GROUND_STATE, 4483d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 4484d522f475SmrgCASE_GROUND_STATE, 4485d522f475SmrgCASE_GROUND_STATE, 4486d522f475SmrgCASE_SPA, 4487d522f475SmrgCASE_EPA, 4488d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 4489d522f475SmrgCASE_SOS, 4490d522f475SmrgCASE_GROUND_STATE, 4491d522f475SmrgCASE_DECID, 4492d522f475SmrgCASE_CSI_STATE, 4493d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 4494d522f475SmrgCASE_ST, 4495d522f475SmrgCASE_OSC, 4496d522f475SmrgCASE_PM, 4497d522f475SmrgCASE_APC, 4498d522f475Smrg/* nobreakspace exclamdown cent sterling */ 4499d522f475SmrgCASE_ESC_SP_STATE, 4500d522f475SmrgCASE_ESC_IGNORE, 4501d522f475SmrgCASE_ESC_IGNORE, 4502d522f475SmrgCASE_SCR_STATE, 4503d522f475Smrg/* currency yen brokenbar section */ 4504d522f475SmrgCASE_ESC_IGNORE, 4505d522f475SmrgCASE_ESC_PERCENT, 4506d522f475SmrgCASE_ESC_IGNORE, 4507d522f475SmrgCASE_ESC_IGNORE, 4508d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 4509d522f475SmrgCASE_SCS0_STATE, 4510d522f475SmrgCASE_SCS1_STATE, 4511d522f475SmrgCASE_SCS2_STATE, 4512d522f475SmrgCASE_SCS3_STATE, 4513d522f475Smrg/* notsign hyphen registered macron */ 4514d522f475SmrgCASE_ESC_IGNORE, 45152eaa94a1SchristosCASE_SCS1A_STATE, 45162eaa94a1SchristosCASE_SCS2A_STATE, 45172eaa94a1SchristosCASE_SCS3A_STATE, 4518d522f475Smrg/* degree plusminus twosuperior threesuperior */ 4519d522f475SmrgCASE_GROUND_STATE, 4520d522f475SmrgCASE_GROUND_STATE, 4521d522f475SmrgCASE_GROUND_STATE, 4522d522f475SmrgCASE_GROUND_STATE, 4523d522f475Smrg/* acute mu paragraph periodcentered */ 4524d522f475SmrgCASE_GROUND_STATE, 4525d522f475SmrgCASE_GROUND_STATE, 4526d522f475SmrgCASE_GROUND_STATE, 4527d522f475SmrgCASE_DECSC, 4528d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 4529d522f475SmrgCASE_DECRC, 4530d522f475SmrgCASE_GROUND_STATE, 4531d522f475SmrgCASE_GROUND_STATE, 4532d522f475SmrgCASE_GROUND_STATE, 4533d522f475Smrg/* onequarter onehalf threequarters questiondown */ 4534d522f475SmrgCASE_GROUND_STATE, 4535d522f475SmrgCASE_DECKPAM, 4536d522f475SmrgCASE_DECKPNM, 4537d522f475SmrgCASE_GROUND_STATE, 4538d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 4539d522f475SmrgCASE_GROUND_STATE, 4540d522f475SmrgCASE_GROUND_STATE, 4541d522f475SmrgCASE_GROUND_STATE, 4542d522f475SmrgCASE_GROUND_STATE, 4543d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 4544d522f475SmrgCASE_IND, 4545d522f475SmrgCASE_NEL, 4546d522f475SmrgCASE_HP_BUGGY_LL, 4547d522f475SmrgCASE_GROUND_STATE, 4548d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 4549d522f475SmrgCASE_HTS, 4550d522f475SmrgCASE_GROUND_STATE, 4551d522f475SmrgCASE_GROUND_STATE, 4552d522f475SmrgCASE_GROUND_STATE, 4553d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 4554d522f475SmrgCASE_GROUND_STATE, 4555d522f475SmrgCASE_RI, 4556d522f475SmrgCASE_SS2, 4557d522f475SmrgCASE_SS3, 4558d522f475Smrg/* Eth Ntilde Ograve Oacute */ 4559d522f475SmrgCASE_DCS, 4560d522f475SmrgCASE_GROUND_STATE, 4561d522f475SmrgCASE_GROUND_STATE, 4562d522f475SmrgCASE_GROUND_STATE, 4563d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 4564d522f475SmrgCASE_XTERM_TITLE, 4565d522f475SmrgCASE_GROUND_STATE, 4566d522f475SmrgCASE_SPA, 4567d522f475SmrgCASE_EPA, 4568d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 4569d522f475SmrgCASE_SOS, 4570d522f475SmrgCASE_GROUND_STATE, 4571d522f475SmrgCASE_DECID, 4572d522f475SmrgCASE_CSI_STATE, 4573d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 4574d522f475SmrgCASE_ST, 4575d522f475SmrgCASE_OSC, 4576d522f475SmrgCASE_PM, 4577d522f475SmrgCASE_APC, 4578d522f475Smrg/* agrave aacute acircumflex atilde */ 4579d522f475SmrgCASE_GROUND_STATE, 4580d522f475SmrgCASE_GROUND_STATE, 4581d522f475SmrgCASE_GROUND_STATE, 4582d522f475SmrgCASE_RIS, 4583d522f475Smrg/* adiaeresis aring ae ccedilla */ 4584d522f475SmrgCASE_GROUND_STATE, 4585d522f475SmrgCASE_GROUND_STATE, 4586d522f475SmrgCASE_GROUND_STATE, 4587d522f475SmrgCASE_GROUND_STATE, 4588d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 4589d522f475SmrgCASE_GROUND_STATE, 4590d522f475SmrgCASE_GROUND_STATE, 4591d522f475SmrgCASE_GROUND_STATE, 4592d522f475SmrgCASE_GROUND_STATE, 4593d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 4594d522f475SmrgCASE_HP_MEM_LOCK, 4595d522f475SmrgCASE_HP_MEM_UNLOCK, 4596d522f475SmrgCASE_LS2, 4597d522f475SmrgCASE_LS3, 4598d522f475Smrg/* eth ntilde ograve oacute */ 4599d522f475SmrgCASE_GROUND_STATE, 4600d522f475SmrgCASE_GROUND_STATE, 4601d522f475SmrgCASE_GROUND_STATE, 4602d522f475SmrgCASE_GROUND_STATE, 4603d522f475Smrg/* ocircumflex otilde odiaeresis division */ 4604d522f475SmrgCASE_GROUND_STATE, 4605d522f475SmrgCASE_GROUND_STATE, 4606d522f475SmrgCASE_GROUND_STATE, 4607d522f475SmrgCASE_GROUND_STATE, 4608d522f475Smrg/* oslash ugrave uacute ucircumflex */ 4609d522f475SmrgCASE_GROUND_STATE, 4610d522f475SmrgCASE_GROUND_STATE, 4611d522f475SmrgCASE_GROUND_STATE, 4612d522f475SmrgCASE_GROUND_STATE, 4613d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 4614d522f475SmrgCASE_LS3R, 4615d522f475SmrgCASE_LS2R, 4616d522f475SmrgCASE_LS1R, 4617d522f475SmrgCASE_IGNORE, 4618d522f475Smrg}; 4619d522f475Smrg 4620d522f475SmrgConst PARSE_T esc_sp_table[] = /* ESC SP */ 4621d522f475Smrg{ 4622d522f475Smrg/* NUL SOH STX ETX */ 4623d522f475SmrgCASE_IGNORE, 4624d522f475SmrgCASE_IGNORE, 4625d522f475SmrgCASE_IGNORE, 4626d522f475SmrgCASE_IGNORE, 4627d522f475Smrg/* EOT ENQ ACK BEL */ 4628d522f475SmrgCASE_IGNORE, 4629d522f475SmrgCASE_ENQ, 4630d522f475SmrgCASE_IGNORE, 4631d522f475SmrgCASE_BELL, 4632d522f475Smrg/* BS HT NL VT */ 4633d522f475SmrgCASE_BS, 4634d522f475SmrgCASE_TAB, 4635d522f475SmrgCASE_VMOT, 4636d522f475SmrgCASE_VMOT, 4637d522f475Smrg/* NP CR SO SI */ 4638d522f475SmrgCASE_VMOT, 4639d522f475SmrgCASE_CR, 4640d522f475SmrgCASE_SO, 4641d522f475SmrgCASE_SI, 4642d522f475Smrg/* DLE DC1 DC2 DC3 */ 4643d522f475SmrgCASE_IGNORE, 4644d522f475SmrgCASE_IGNORE, 4645d522f475SmrgCASE_IGNORE, 4646d522f475SmrgCASE_IGNORE, 4647d522f475Smrg/* DC4 NAK SYN ETB */ 4648d522f475SmrgCASE_IGNORE, 4649d522f475SmrgCASE_IGNORE, 4650d522f475SmrgCASE_IGNORE, 4651d522f475SmrgCASE_IGNORE, 4652d522f475Smrg/* CAN EM SUB ESC */ 4653d522f475SmrgCASE_GROUND_STATE, 4654d522f475SmrgCASE_IGNORE, 4655d522f475SmrgCASE_GROUND_STATE, 4656d522f475SmrgCASE_ESC, 4657d522f475Smrg/* FS GS RS US */ 4658d522f475SmrgCASE_IGNORE, 4659d522f475SmrgCASE_IGNORE, 4660d522f475SmrgCASE_IGNORE, 4661d522f475SmrgCASE_IGNORE, 4662d522f475Smrg/* SP ! " # */ 4663d522f475SmrgCASE_ESC_IGNORE, 4664d522f475SmrgCASE_ESC_IGNORE, 4665d522f475SmrgCASE_ESC_IGNORE, 4666d522f475SmrgCASE_ESC_IGNORE, 4667d522f475Smrg/* $ % & ' */ 4668d522f475SmrgCASE_ESC_IGNORE, 4669d522f475SmrgCASE_ESC_IGNORE, 4670d522f475SmrgCASE_ESC_IGNORE, 4671d522f475SmrgCASE_ESC_IGNORE, 4672d522f475Smrg/* ( ) * + */ 4673d522f475SmrgCASE_ESC_IGNORE, 4674d522f475SmrgCASE_ESC_IGNORE, 4675d522f475SmrgCASE_ESC_IGNORE, 4676d522f475SmrgCASE_ESC_IGNORE, 4677d522f475Smrg/* , - . / */ 4678d522f475SmrgCASE_ESC_IGNORE, 4679d522f475SmrgCASE_ESC_IGNORE, 4680d522f475SmrgCASE_ESC_IGNORE, 4681d522f475SmrgCASE_ESC_IGNORE, 4682d522f475Smrg/* 0 1 2 3 */ 4683d522f475SmrgCASE_GROUND_STATE, 4684d522f475SmrgCASE_GROUND_STATE, 4685d522f475SmrgCASE_GROUND_STATE, 4686d522f475SmrgCASE_GROUND_STATE, 4687d522f475Smrg/* 4 5 6 7 */ 4688d522f475SmrgCASE_GROUND_STATE, 4689d522f475SmrgCASE_GROUND_STATE, 4690d522f475SmrgCASE_GROUND_STATE, 4691d522f475SmrgCASE_GROUND_STATE, 4692d522f475Smrg/* 8 9 : ; */ 4693d522f475SmrgCASE_GROUND_STATE, 4694d522f475SmrgCASE_GROUND_STATE, 4695d522f475SmrgCASE_GROUND_STATE, 4696d522f475SmrgCASE_GROUND_STATE, 4697d522f475Smrg/* < = > ? */ 4698d522f475SmrgCASE_GROUND_STATE, 4699d522f475SmrgCASE_GROUND_STATE, 4700d522f475SmrgCASE_GROUND_STATE, 4701d522f475SmrgCASE_GROUND_STATE, 4702d522f475Smrg/* @ A B C */ 4703d522f475SmrgCASE_GROUND_STATE, 4704d522f475SmrgCASE_GROUND_STATE, 4705d522f475SmrgCASE_GROUND_STATE, 4706d522f475SmrgCASE_GROUND_STATE, 4707d522f475Smrg/* D E F G */ 4708d522f475SmrgCASE_GROUND_STATE, 4709d522f475SmrgCASE_GROUND_STATE, 4710d522f475SmrgCASE_S7C1T, 4711d522f475SmrgCASE_S8C1T, 4712d522f475Smrg/* H I J K */ 4713d522f475SmrgCASE_GROUND_STATE, 4714d522f475SmrgCASE_GROUND_STATE, 4715d522f475SmrgCASE_GROUND_STATE, 4716d522f475SmrgCASE_GROUND_STATE, 4717d522f475Smrg/* L M N O */ 4718d522f475SmrgCASE_ANSI_LEVEL_1, 4719d522f475SmrgCASE_ANSI_LEVEL_2, 4720d522f475SmrgCASE_ANSI_LEVEL_3, 4721d522f475SmrgCASE_GROUND_STATE, 4722d522f475Smrg/* P Q R S */ 4723d522f475SmrgCASE_GROUND_STATE, 4724d522f475SmrgCASE_GROUND_STATE, 4725d522f475SmrgCASE_GROUND_STATE, 4726d522f475SmrgCASE_GROUND_STATE, 4727d522f475Smrg/* T U V W */ 4728d522f475SmrgCASE_GROUND_STATE, 4729d522f475SmrgCASE_GROUND_STATE, 4730d522f475SmrgCASE_GROUND_STATE, 4731d522f475SmrgCASE_GROUND_STATE, 4732d522f475Smrg/* X Y Z [ */ 4733d522f475SmrgCASE_GROUND_STATE, 4734d522f475SmrgCASE_GROUND_STATE, 4735d522f475SmrgCASE_GROUND_STATE, 4736d522f475SmrgCASE_GROUND_STATE, 4737d522f475Smrg/* \ ] ^ _ */ 4738d522f475SmrgCASE_GROUND_STATE, 4739d522f475SmrgCASE_GROUND_STATE, 4740d522f475SmrgCASE_GROUND_STATE, 4741d522f475SmrgCASE_GROUND_STATE, 4742d522f475Smrg/* ` a b c */ 4743d522f475SmrgCASE_GROUND_STATE, 4744d522f475SmrgCASE_GROUND_STATE, 4745d522f475SmrgCASE_GROUND_STATE, 4746d522f475SmrgCASE_GROUND_STATE, 4747d522f475Smrg/* d e f g */ 4748d522f475SmrgCASE_GROUND_STATE, 4749d522f475SmrgCASE_GROUND_STATE, 4750d522f475SmrgCASE_GROUND_STATE, 4751d522f475SmrgCASE_GROUND_STATE, 4752d522f475Smrg/* h i j k */ 4753d522f475SmrgCASE_GROUND_STATE, 4754d522f475SmrgCASE_GROUND_STATE, 4755d522f475SmrgCASE_GROUND_STATE, 4756d522f475SmrgCASE_GROUND_STATE, 4757d522f475Smrg/* l m n o */ 4758d522f475SmrgCASE_GROUND_STATE, 4759d522f475SmrgCASE_GROUND_STATE, 4760d522f475SmrgCASE_GROUND_STATE, 4761d522f475SmrgCASE_GROUND_STATE, 4762d522f475Smrg/* p q r s */ 4763d522f475SmrgCASE_GROUND_STATE, 4764d522f475SmrgCASE_GROUND_STATE, 4765d522f475SmrgCASE_GROUND_STATE, 4766d522f475SmrgCASE_GROUND_STATE, 4767d522f475Smrg/* t u v w */ 4768d522f475SmrgCASE_GROUND_STATE, 4769d522f475SmrgCASE_GROUND_STATE, 4770d522f475SmrgCASE_GROUND_STATE, 4771d522f475SmrgCASE_GROUND_STATE, 4772d522f475Smrg/* x y z { */ 4773d522f475SmrgCASE_GROUND_STATE, 4774d522f475SmrgCASE_GROUND_STATE, 4775d522f475SmrgCASE_GROUND_STATE, 4776d522f475SmrgCASE_GROUND_STATE, 4777d522f475Smrg/* | } ~ DEL */ 4778d522f475SmrgCASE_GROUND_STATE, 4779d522f475SmrgCASE_GROUND_STATE, 4780d522f475SmrgCASE_GROUND_STATE, 4781d522f475SmrgCASE_IGNORE, 4782d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 4783d522f475SmrgCASE_GROUND_STATE, 4784d522f475SmrgCASE_GROUND_STATE, 4785d522f475SmrgCASE_GROUND_STATE, 4786d522f475SmrgCASE_GROUND_STATE, 4787d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 4788d522f475SmrgCASE_IND, 4789d522f475SmrgCASE_NEL, 4790d522f475SmrgCASE_GROUND_STATE, 4791d522f475SmrgCASE_GROUND_STATE, 4792d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 4793d522f475SmrgCASE_HTS, 4794d522f475SmrgCASE_GROUND_STATE, 4795d522f475SmrgCASE_GROUND_STATE, 4796d522f475SmrgCASE_GROUND_STATE, 4797d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 4798d522f475SmrgCASE_GROUND_STATE, 4799d522f475SmrgCASE_RI, 4800d522f475SmrgCASE_SS2, 4801d522f475SmrgCASE_SS3, 4802d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 4803d522f475SmrgCASE_DCS, 4804d522f475SmrgCASE_GROUND_STATE, 4805d522f475SmrgCASE_GROUND_STATE, 4806d522f475SmrgCASE_GROUND_STATE, 4807d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 4808d522f475SmrgCASE_GROUND_STATE, 4809d522f475SmrgCASE_GROUND_STATE, 4810d522f475SmrgCASE_SPA, 4811d522f475SmrgCASE_EPA, 4812d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 4813d522f475SmrgCASE_SOS, 4814d522f475SmrgCASE_GROUND_STATE, 4815d522f475SmrgCASE_DECID, 4816d522f475SmrgCASE_CSI_STATE, 4817d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 4818d522f475SmrgCASE_ST, 4819d522f475SmrgCASE_OSC, 4820d522f475SmrgCASE_PM, 4821d522f475SmrgCASE_APC, 4822d522f475Smrg/* nobreakspace exclamdown cent sterling */ 4823d522f475SmrgCASE_ESC_IGNORE, 4824d522f475SmrgCASE_ESC_IGNORE, 4825d522f475SmrgCASE_ESC_IGNORE, 4826d522f475SmrgCASE_ESC_IGNORE, 4827d522f475Smrg/* currency yen brokenbar section */ 4828d522f475SmrgCASE_ESC_IGNORE, 4829d522f475SmrgCASE_ESC_IGNORE, 4830d522f475SmrgCASE_ESC_IGNORE, 4831d522f475SmrgCASE_ESC_IGNORE, 4832d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 4833d522f475SmrgCASE_ESC_IGNORE, 4834d522f475SmrgCASE_ESC_IGNORE, 4835d522f475SmrgCASE_ESC_IGNORE, 4836d522f475SmrgCASE_ESC_IGNORE, 4837d522f475Smrg/* notsign hyphen registered macron */ 4838d522f475SmrgCASE_ESC_IGNORE, 4839d522f475SmrgCASE_ESC_IGNORE, 4840d522f475SmrgCASE_ESC_IGNORE, 4841d522f475SmrgCASE_ESC_IGNORE, 4842d522f475Smrg/* degree plusminus twosuperior threesuperior */ 4843d522f475SmrgCASE_GROUND_STATE, 4844d522f475SmrgCASE_GROUND_STATE, 4845d522f475SmrgCASE_GROUND_STATE, 4846d522f475SmrgCASE_GROUND_STATE, 4847d522f475Smrg/* acute mu paragraph periodcentered */ 4848d522f475SmrgCASE_GROUND_STATE, 4849d522f475SmrgCASE_GROUND_STATE, 4850d522f475SmrgCASE_GROUND_STATE, 4851d522f475SmrgCASE_GROUND_STATE, 4852d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 4853d522f475SmrgCASE_GROUND_STATE, 4854d522f475SmrgCASE_GROUND_STATE, 4855d522f475SmrgCASE_GROUND_STATE, 4856d522f475SmrgCASE_GROUND_STATE, 4857d522f475Smrg/* onequarter onehalf threequarters questiondown */ 4858d522f475SmrgCASE_GROUND_STATE, 4859d522f475SmrgCASE_GROUND_STATE, 4860d522f475SmrgCASE_GROUND_STATE, 4861d522f475SmrgCASE_GROUND_STATE, 4862d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 4863d522f475SmrgCASE_GROUND_STATE, 4864d522f475SmrgCASE_GROUND_STATE, 4865d522f475SmrgCASE_GROUND_STATE, 4866d522f475SmrgCASE_GROUND_STATE, 4867d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 4868d522f475SmrgCASE_GROUND_STATE, 4869d522f475SmrgCASE_GROUND_STATE, 4870d522f475SmrgCASE_S7C1T, 4871d522f475SmrgCASE_S8C1T, 4872d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 4873d522f475SmrgCASE_GROUND_STATE, 4874d522f475SmrgCASE_GROUND_STATE, 4875d522f475SmrgCASE_GROUND_STATE, 4876d522f475SmrgCASE_GROUND_STATE, 4877d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 4878d522f475SmrgCASE_ANSI_LEVEL_1, 4879d522f475SmrgCASE_ANSI_LEVEL_2, 4880d522f475SmrgCASE_ANSI_LEVEL_3, 4881d522f475SmrgCASE_GROUND_STATE, 4882d522f475Smrg/* Eth Ntilde Ograve Oacute */ 4883d522f475SmrgCASE_GROUND_STATE, 4884d522f475SmrgCASE_GROUND_STATE, 4885d522f475SmrgCASE_GROUND_STATE, 4886d522f475SmrgCASE_GROUND_STATE, 4887d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 4888d522f475SmrgCASE_GROUND_STATE, 4889d522f475SmrgCASE_GROUND_STATE, 4890d522f475SmrgCASE_GROUND_STATE, 4891d522f475SmrgCASE_GROUND_STATE, 4892d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 4893d522f475SmrgCASE_GROUND_STATE, 4894d522f475SmrgCASE_GROUND_STATE, 4895d522f475SmrgCASE_GROUND_STATE, 4896d522f475SmrgCASE_GROUND_STATE, 4897d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 4898d522f475SmrgCASE_GROUND_STATE, 4899d522f475SmrgCASE_GROUND_STATE, 4900d522f475SmrgCASE_GROUND_STATE, 4901d522f475SmrgCASE_GROUND_STATE, 4902d522f475Smrg/* agrave aacute acircumflex atilde */ 4903d522f475SmrgCASE_GROUND_STATE, 4904d522f475SmrgCASE_GROUND_STATE, 4905d522f475SmrgCASE_GROUND_STATE, 4906d522f475SmrgCASE_GROUND_STATE, 4907d522f475Smrg/* adiaeresis aring ae ccedilla */ 4908d522f475SmrgCASE_GROUND_STATE, 4909d522f475SmrgCASE_GROUND_STATE, 4910d522f475SmrgCASE_GROUND_STATE, 4911d522f475SmrgCASE_GROUND_STATE, 4912d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 4913d522f475SmrgCASE_GROUND_STATE, 4914d522f475SmrgCASE_GROUND_STATE, 4915d522f475SmrgCASE_GROUND_STATE, 4916d522f475SmrgCASE_GROUND_STATE, 4917d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 4918d522f475SmrgCASE_GROUND_STATE, 4919d522f475SmrgCASE_GROUND_STATE, 4920d522f475SmrgCASE_GROUND_STATE, 4921d522f475SmrgCASE_GROUND_STATE, 4922d522f475Smrg/* eth ntilde ograve oacute */ 4923d522f475SmrgCASE_GROUND_STATE, 4924d522f475SmrgCASE_GROUND_STATE, 4925d522f475SmrgCASE_GROUND_STATE, 4926d522f475SmrgCASE_GROUND_STATE, 4927d522f475Smrg/* ocircumflex otilde odiaeresis division */ 4928d522f475SmrgCASE_GROUND_STATE, 4929d522f475SmrgCASE_GROUND_STATE, 4930d522f475SmrgCASE_GROUND_STATE, 4931d522f475SmrgCASE_GROUND_STATE, 4932d522f475Smrg/* oslash ugrave uacute ucircumflex */ 4933d522f475SmrgCASE_GROUND_STATE, 4934d522f475SmrgCASE_GROUND_STATE, 4935d522f475SmrgCASE_GROUND_STATE, 4936d522f475SmrgCASE_GROUND_STATE, 4937d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 4938d522f475SmrgCASE_GROUND_STATE, 4939d522f475SmrgCASE_GROUND_STATE, 4940d522f475SmrgCASE_GROUND_STATE, 4941d522f475SmrgCASE_IGNORE, 4942d522f475Smrg}; 4943d522f475Smrg 4944d522f475SmrgConst PARSE_T scrtable[] = /* ESC # */ 4945d522f475Smrg{ 4946d522f475Smrg/* NUL SOH STX ETX */ 4947d522f475SmrgCASE_IGNORE, 4948d522f475SmrgCASE_IGNORE, 4949d522f475SmrgCASE_IGNORE, 4950d522f475SmrgCASE_IGNORE, 4951d522f475Smrg/* EOT ENQ ACK BEL */ 4952d522f475SmrgCASE_IGNORE, 4953d522f475SmrgCASE_ENQ, 4954d522f475SmrgCASE_IGNORE, 4955d522f475SmrgCASE_BELL, 4956d522f475Smrg/* BS HT NL VT */ 4957d522f475SmrgCASE_BS, 4958d522f475SmrgCASE_TAB, 4959d522f475SmrgCASE_VMOT, 4960d522f475SmrgCASE_VMOT, 4961d522f475Smrg/* NP CR SO SI */ 4962d522f475SmrgCASE_VMOT, 4963d522f475SmrgCASE_CR, 4964d522f475SmrgCASE_SO, 4965d522f475SmrgCASE_SI, 4966d522f475Smrg/* DLE DC1 DC2 DC3 */ 4967d522f475SmrgCASE_IGNORE, 4968d522f475SmrgCASE_IGNORE, 4969d522f475SmrgCASE_IGNORE, 4970d522f475SmrgCASE_IGNORE, 4971d522f475Smrg/* DC4 NAK SYN ETB */ 4972d522f475SmrgCASE_IGNORE, 4973d522f475SmrgCASE_IGNORE, 4974d522f475SmrgCASE_IGNORE, 4975d522f475SmrgCASE_IGNORE, 4976d522f475Smrg/* CAN EM SUB ESC */ 4977d522f475SmrgCASE_GROUND_STATE, 4978d522f475SmrgCASE_IGNORE, 4979d522f475SmrgCASE_GROUND_STATE, 4980d522f475SmrgCASE_ESC, 4981d522f475Smrg/* FS GS RS US */ 4982d522f475SmrgCASE_IGNORE, 4983d522f475SmrgCASE_IGNORE, 4984d522f475SmrgCASE_IGNORE, 4985d522f475SmrgCASE_IGNORE, 4986d522f475Smrg/* SP ! " # */ 4987d522f475SmrgCASE_ESC_IGNORE, 4988d522f475SmrgCASE_ESC_IGNORE, 4989d522f475SmrgCASE_ESC_IGNORE, 4990d522f475SmrgCASE_ESC_IGNORE, 4991d522f475Smrg/* $ % & ' */ 4992d522f475SmrgCASE_ESC_IGNORE, 4993d522f475SmrgCASE_ESC_IGNORE, 4994d522f475SmrgCASE_ESC_IGNORE, 4995d522f475SmrgCASE_ESC_IGNORE, 4996d522f475Smrg/* ( ) * + */ 4997d522f475SmrgCASE_ESC_IGNORE, 4998d522f475SmrgCASE_ESC_IGNORE, 4999d522f475SmrgCASE_ESC_IGNORE, 5000d522f475SmrgCASE_ESC_IGNORE, 5001d522f475Smrg/* , - . / */ 5002d522f475SmrgCASE_ESC_IGNORE, 5003d522f475SmrgCASE_ESC_IGNORE, 5004d522f475SmrgCASE_ESC_IGNORE, 5005d522f475SmrgCASE_ESC_IGNORE, 5006d522f475Smrg/* 0 1 2 3 */ 5007d522f475SmrgCASE_GROUND_STATE, 5008d522f475SmrgCASE_GROUND_STATE, 5009d522f475SmrgCASE_GROUND_STATE, 5010d522f475SmrgCASE_DECDHL, 5011d522f475Smrg/* 4 5 6 7 */ 5012d522f475SmrgCASE_DECDHL, 5013d522f475SmrgCASE_DECSWL, 5014d522f475SmrgCASE_DECDWL, 5015d522f475SmrgCASE_GROUND_STATE, 5016d522f475Smrg/* 8 9 : ; */ 5017d522f475SmrgCASE_DECALN, 5018d522f475SmrgCASE_GROUND_STATE, 5019d522f475SmrgCASE_GROUND_STATE, 5020d522f475SmrgCASE_GROUND_STATE, 5021d522f475Smrg/* < = > ? */ 5022d522f475SmrgCASE_GROUND_STATE, 5023d522f475SmrgCASE_GROUND_STATE, 5024d522f475SmrgCASE_GROUND_STATE, 5025d522f475SmrgCASE_GROUND_STATE, 5026d522f475Smrg/* @ A B C */ 5027d522f475SmrgCASE_GROUND_STATE, 5028d522f475SmrgCASE_GROUND_STATE, 5029d522f475SmrgCASE_GROUND_STATE, 5030d522f475SmrgCASE_GROUND_STATE, 5031d522f475Smrg/* D E F G */ 5032d522f475SmrgCASE_GROUND_STATE, 5033d522f475SmrgCASE_GROUND_STATE, 5034d522f475SmrgCASE_GROUND_STATE, 5035d522f475SmrgCASE_GROUND_STATE, 5036d522f475Smrg/* H I J K */ 5037d522f475SmrgCASE_GROUND_STATE, 5038d522f475SmrgCASE_GROUND_STATE, 5039d522f475SmrgCASE_GROUND_STATE, 5040d522f475SmrgCASE_GROUND_STATE, 5041d522f475Smrg/* L M N O */ 5042d522f475SmrgCASE_GROUND_STATE, 5043d522f475SmrgCASE_GROUND_STATE, 5044d522f475SmrgCASE_GROUND_STATE, 5045d522f475SmrgCASE_GROUND_STATE, 5046d522f475Smrg/* P Q R S */ 5047d522f475SmrgCASE_GROUND_STATE, 5048d522f475SmrgCASE_GROUND_STATE, 5049d522f475SmrgCASE_GROUND_STATE, 5050d522f475SmrgCASE_GROUND_STATE, 5051d522f475Smrg/* T U V W */ 5052d522f475SmrgCASE_GROUND_STATE, 5053d522f475SmrgCASE_GROUND_STATE, 5054d522f475SmrgCASE_GROUND_STATE, 5055d522f475SmrgCASE_GROUND_STATE, 5056d522f475Smrg/* X Y Z [ */ 5057d522f475SmrgCASE_GROUND_STATE, 5058d522f475SmrgCASE_GROUND_STATE, 5059d522f475SmrgCASE_GROUND_STATE, 5060d522f475SmrgCASE_GROUND_STATE, 5061d522f475Smrg/* \ ] ^ _ */ 5062d522f475SmrgCASE_GROUND_STATE, 5063d522f475SmrgCASE_GROUND_STATE, 5064d522f475SmrgCASE_GROUND_STATE, 5065d522f475SmrgCASE_GROUND_STATE, 5066d522f475Smrg/* ` a b c */ 5067d522f475SmrgCASE_GROUND_STATE, 5068d522f475SmrgCASE_GROUND_STATE, 5069d522f475SmrgCASE_GROUND_STATE, 5070d522f475SmrgCASE_GROUND_STATE, 5071d522f475Smrg/* d e f g */ 5072d522f475SmrgCASE_GROUND_STATE, 5073d522f475SmrgCASE_GROUND_STATE, 5074d522f475SmrgCASE_GROUND_STATE, 5075d522f475SmrgCASE_GROUND_STATE, 5076d522f475Smrg/* h i j k */ 5077d522f475SmrgCASE_GROUND_STATE, 5078d522f475SmrgCASE_GROUND_STATE, 5079d522f475SmrgCASE_GROUND_STATE, 5080d522f475SmrgCASE_GROUND_STATE, 5081d522f475Smrg/* l m n o */ 5082d522f475SmrgCASE_GROUND_STATE, 5083d522f475SmrgCASE_GROUND_STATE, 5084d522f475SmrgCASE_GROUND_STATE, 5085d522f475SmrgCASE_GROUND_STATE, 5086d522f475Smrg/* p q r s */ 5087d522f475SmrgCASE_GROUND_STATE, 5088d522f475SmrgCASE_GROUND_STATE, 5089d522f475SmrgCASE_GROUND_STATE, 5090d522f475SmrgCASE_GROUND_STATE, 5091d522f475Smrg/* t u v w */ 5092d522f475SmrgCASE_GROUND_STATE, 5093d522f475SmrgCASE_GROUND_STATE, 5094d522f475SmrgCASE_GROUND_STATE, 5095d522f475SmrgCASE_GROUND_STATE, 5096d522f475Smrg/* x y z { */ 5097d522f475SmrgCASE_GROUND_STATE, 5098d522f475SmrgCASE_GROUND_STATE, 5099d522f475SmrgCASE_GROUND_STATE, 5100d522f475SmrgCASE_GROUND_STATE, 5101d522f475Smrg/* | } ~ DEL */ 5102d522f475SmrgCASE_GROUND_STATE, 5103d522f475SmrgCASE_GROUND_STATE, 5104d522f475SmrgCASE_GROUND_STATE, 5105d522f475SmrgCASE_IGNORE, 5106d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 5107d522f475SmrgCASE_GROUND_STATE, 5108d522f475SmrgCASE_GROUND_STATE, 5109d522f475SmrgCASE_GROUND_STATE, 5110d522f475SmrgCASE_GROUND_STATE, 5111d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 5112d522f475SmrgCASE_IND, 5113d522f475SmrgCASE_NEL, 5114d522f475SmrgCASE_GROUND_STATE, 5115d522f475SmrgCASE_GROUND_STATE, 5116d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 5117d522f475SmrgCASE_HTS, 5118d522f475SmrgCASE_GROUND_STATE, 5119d522f475SmrgCASE_GROUND_STATE, 5120d522f475SmrgCASE_GROUND_STATE, 5121d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 5122d522f475SmrgCASE_GROUND_STATE, 5123d522f475SmrgCASE_RI, 5124d522f475SmrgCASE_SS2, 5125d522f475SmrgCASE_SS3, 5126d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 5127d522f475SmrgCASE_DCS, 5128d522f475SmrgCASE_GROUND_STATE, 5129d522f475SmrgCASE_GROUND_STATE, 5130d522f475SmrgCASE_GROUND_STATE, 5131d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 5132d522f475SmrgCASE_GROUND_STATE, 5133d522f475SmrgCASE_GROUND_STATE, 5134d522f475SmrgCASE_SPA, 5135d522f475SmrgCASE_EPA, 5136d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 5137d522f475SmrgCASE_SOS, 5138d522f475SmrgCASE_GROUND_STATE, 5139d522f475SmrgCASE_DECID, 5140d522f475SmrgCASE_CSI_STATE, 5141d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 5142d522f475SmrgCASE_ST, 5143d522f475SmrgCASE_OSC, 5144d522f475SmrgCASE_PM, 5145d522f475SmrgCASE_APC, 5146d522f475Smrg/* nobreakspace exclamdown cent sterling */ 5147d522f475SmrgCASE_ESC_IGNORE, 5148d522f475SmrgCASE_ESC_IGNORE, 5149d522f475SmrgCASE_ESC_IGNORE, 5150d522f475SmrgCASE_ESC_IGNORE, 5151d522f475Smrg/* currency yen brokenbar section */ 5152d522f475SmrgCASE_ESC_IGNORE, 5153d522f475SmrgCASE_ESC_IGNORE, 5154d522f475SmrgCASE_ESC_IGNORE, 5155d522f475SmrgCASE_ESC_IGNORE, 5156d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 5157d522f475SmrgCASE_ESC_IGNORE, 5158d522f475SmrgCASE_ESC_IGNORE, 5159d522f475SmrgCASE_ESC_IGNORE, 5160d522f475SmrgCASE_ESC_IGNORE, 5161d522f475Smrg/* notsign hyphen registered macron */ 5162d522f475SmrgCASE_ESC_IGNORE, 5163d522f475SmrgCASE_ESC_IGNORE, 5164d522f475SmrgCASE_ESC_IGNORE, 5165d522f475SmrgCASE_ESC_IGNORE, 5166d522f475Smrg/* degree plusminus twosuperior threesuperior */ 5167d522f475SmrgCASE_GROUND_STATE, 5168d522f475SmrgCASE_GROUND_STATE, 5169d522f475SmrgCASE_GROUND_STATE, 5170d522f475SmrgCASE_DECDHL, 5171d522f475Smrg/* acute mu paragraph periodcentered */ 5172d522f475SmrgCASE_DECDHL, 5173d522f475SmrgCASE_DECSWL, 5174d522f475SmrgCASE_DECDWL, 5175d522f475SmrgCASE_GROUND_STATE, 5176d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 5177d522f475SmrgCASE_DECALN, 5178d522f475SmrgCASE_GROUND_STATE, 5179d522f475SmrgCASE_GROUND_STATE, 5180d522f475SmrgCASE_GROUND_STATE, 5181d522f475Smrg/* onequarter onehalf threequarters questiondown */ 5182d522f475SmrgCASE_GROUND_STATE, 5183d522f475SmrgCASE_GROUND_STATE, 5184d522f475SmrgCASE_GROUND_STATE, 5185d522f475SmrgCASE_GROUND_STATE, 5186d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 5187d522f475SmrgCASE_GROUND_STATE, 5188d522f475SmrgCASE_GROUND_STATE, 5189d522f475SmrgCASE_GROUND_STATE, 5190d522f475SmrgCASE_GROUND_STATE, 5191d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 5192d522f475SmrgCASE_GROUND_STATE, 5193d522f475SmrgCASE_GROUND_STATE, 5194d522f475SmrgCASE_GROUND_STATE, 5195d522f475SmrgCASE_GROUND_STATE, 5196d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 5197d522f475SmrgCASE_GROUND_STATE, 5198d522f475SmrgCASE_GROUND_STATE, 5199d522f475SmrgCASE_GROUND_STATE, 5200d522f475SmrgCASE_GROUND_STATE, 5201d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 5202d522f475SmrgCASE_GROUND_STATE, 5203d522f475SmrgCASE_GROUND_STATE, 5204d522f475SmrgCASE_GROUND_STATE, 5205d522f475SmrgCASE_GROUND_STATE, 5206d522f475Smrg/* Eth Ntilde Ograve Oacute */ 5207d522f475SmrgCASE_GROUND_STATE, 5208d522f475SmrgCASE_GROUND_STATE, 5209d522f475SmrgCASE_GROUND_STATE, 5210d522f475SmrgCASE_GROUND_STATE, 5211d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 5212d522f475SmrgCASE_GROUND_STATE, 5213d522f475SmrgCASE_GROUND_STATE, 5214d522f475SmrgCASE_GROUND_STATE, 5215d522f475SmrgCASE_GROUND_STATE, 5216d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 5217d522f475SmrgCASE_GROUND_STATE, 5218d522f475SmrgCASE_GROUND_STATE, 5219d522f475SmrgCASE_GROUND_STATE, 5220d522f475SmrgCASE_GROUND_STATE, 5221d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 5222d522f475SmrgCASE_GROUND_STATE, 5223d522f475SmrgCASE_GROUND_STATE, 5224d522f475SmrgCASE_GROUND_STATE, 5225d522f475SmrgCASE_GROUND_STATE, 5226d522f475Smrg/* agrave aacute acircumflex atilde */ 5227d522f475SmrgCASE_GROUND_STATE, 5228d522f475SmrgCASE_GROUND_STATE, 5229d522f475SmrgCASE_GROUND_STATE, 5230d522f475SmrgCASE_GROUND_STATE, 5231d522f475Smrg/* adiaeresis aring ae ccedilla */ 5232d522f475SmrgCASE_GROUND_STATE, 5233d522f475SmrgCASE_GROUND_STATE, 5234d522f475SmrgCASE_GROUND_STATE, 5235d522f475SmrgCASE_GROUND_STATE, 5236d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 5237d522f475SmrgCASE_GROUND_STATE, 5238d522f475SmrgCASE_GROUND_STATE, 5239d522f475SmrgCASE_GROUND_STATE, 5240d522f475SmrgCASE_GROUND_STATE, 5241d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 5242d522f475SmrgCASE_GROUND_STATE, 5243d522f475SmrgCASE_GROUND_STATE, 5244d522f475SmrgCASE_GROUND_STATE, 5245d522f475SmrgCASE_GROUND_STATE, 5246d522f475Smrg/* eth ntilde ograve oacute */ 5247d522f475SmrgCASE_GROUND_STATE, 5248d522f475SmrgCASE_GROUND_STATE, 5249d522f475SmrgCASE_GROUND_STATE, 5250d522f475SmrgCASE_GROUND_STATE, 5251d522f475Smrg/* ocircumflex otilde odiaeresis division */ 5252d522f475SmrgCASE_GROUND_STATE, 5253d522f475SmrgCASE_GROUND_STATE, 5254d522f475SmrgCASE_GROUND_STATE, 5255d522f475SmrgCASE_GROUND_STATE, 5256d522f475Smrg/* oslash ugrave uacute ucircumflex */ 5257d522f475SmrgCASE_GROUND_STATE, 5258d522f475SmrgCASE_GROUND_STATE, 5259d522f475SmrgCASE_GROUND_STATE, 5260d522f475SmrgCASE_GROUND_STATE, 5261d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 5262d522f475SmrgCASE_GROUND_STATE, 5263d522f475SmrgCASE_GROUND_STATE, 5264d522f475SmrgCASE_GROUND_STATE, 5265d522f475SmrgCASE_IGNORE, 5266d522f475Smrg}; 5267d522f475Smrg 5268d522f475SmrgConst PARSE_T scstable[] = /* ESC ( etc. */ 5269d522f475Smrg{ 5270d522f475Smrg/* NUL SOH STX ETX */ 5271d522f475SmrgCASE_IGNORE, 5272d522f475SmrgCASE_IGNORE, 5273d522f475SmrgCASE_IGNORE, 5274d522f475SmrgCASE_IGNORE, 5275d522f475Smrg/* EOT ENQ ACK BEL */ 5276d522f475SmrgCASE_IGNORE, 5277d522f475SmrgCASE_ENQ, 5278d522f475SmrgCASE_IGNORE, 5279d522f475SmrgCASE_BELL, 5280d522f475Smrg/* BS HT NL VT */ 5281d522f475SmrgCASE_BS, 5282d522f475SmrgCASE_TAB, 5283d522f475SmrgCASE_VMOT, 5284d522f475SmrgCASE_VMOT, 5285d522f475Smrg/* NP CR SO SI */ 5286d522f475SmrgCASE_VMOT, 5287d522f475SmrgCASE_CR, 5288d522f475SmrgCASE_SO, 5289d522f475SmrgCASE_SI, 5290d522f475Smrg/* DLE DC1 DC2 DC3 */ 5291d522f475SmrgCASE_IGNORE, 5292d522f475SmrgCASE_IGNORE, 5293d522f475SmrgCASE_IGNORE, 5294d522f475SmrgCASE_IGNORE, 5295d522f475Smrg/* DC4 NAK SYN ETB */ 5296d522f475SmrgCASE_IGNORE, 5297d522f475SmrgCASE_IGNORE, 5298d522f475SmrgCASE_IGNORE, 5299d522f475SmrgCASE_IGNORE, 5300d522f475Smrg/* CAN EM SUB ESC */ 5301d522f475SmrgCASE_GROUND_STATE, 5302d522f475SmrgCASE_IGNORE, 5303d522f475SmrgCASE_GROUND_STATE, 5304d522f475SmrgCASE_ESC, 5305d522f475Smrg/* FS GS RS US */ 5306d522f475SmrgCASE_IGNORE, 5307d522f475SmrgCASE_IGNORE, 5308d522f475SmrgCASE_IGNORE, 5309d522f475SmrgCASE_IGNORE, 5310d522f475Smrg/* SP ! " # */ 5311d522f475SmrgCASE_ESC_IGNORE, 5312d522f475SmrgCASE_ESC_IGNORE, 5313d522f475SmrgCASE_ESC_IGNORE, 5314d522f475SmrgCASE_ESC_IGNORE, 5315d522f475Smrg/* $ % & ' */ 5316d522f475SmrgCASE_ESC_IGNORE, 5317d522f475SmrgCASE_ESC_IGNORE, 5318d522f475SmrgCASE_ESC_IGNORE, 5319d522f475SmrgCASE_ESC_IGNORE, 5320d522f475Smrg/* ( ) * + */ 5321d522f475SmrgCASE_ESC_IGNORE, 5322d522f475SmrgCASE_ESC_IGNORE, 5323d522f475SmrgCASE_ESC_IGNORE, 5324d522f475SmrgCASE_ESC_IGNORE, 5325d522f475Smrg/* , - . / */ 5326d522f475SmrgCASE_ESC_IGNORE, 5327d522f475SmrgCASE_ESC_IGNORE, 5328d522f475SmrgCASE_ESC_IGNORE, 5329d522f475SmrgCASE_ESC_IGNORE, 5330d522f475Smrg/* 0 1 2 3 */ 5331d522f475SmrgCASE_GSETS, 5332d522f475SmrgCASE_GSETS, 5333d522f475SmrgCASE_GSETS, 5334d522f475SmrgCASE_GROUND_STATE, 5335d522f475Smrg/* 4 5 6 7 */ 5336d522f475SmrgCASE_GSETS, 5337d522f475SmrgCASE_GSETS, 5338d522f475SmrgCASE_GSETS, 5339d522f475SmrgCASE_GSETS, 5340d522f475Smrg/* 8 9 : ; */ 5341d522f475SmrgCASE_GROUND_STATE, 5342d522f475SmrgCASE_GROUND_STATE, 5343d522f475SmrgCASE_GROUND_STATE, 5344d522f475SmrgCASE_GROUND_STATE, 5345d522f475Smrg/* < = > ? */ 5346d522f475SmrgCASE_GROUND_STATE, 5347d522f475SmrgCASE_GSETS, 5348d522f475SmrgCASE_GROUND_STATE, 5349d522f475SmrgCASE_GROUND_STATE, 5350d522f475Smrg/* @ A B C */ 5351d522f475SmrgCASE_GROUND_STATE, 5352d522f475SmrgCASE_GSETS, 5353d522f475SmrgCASE_GSETS, 5354d522f475SmrgCASE_GSETS, 5355d522f475Smrg/* D E F G */ 5356d522f475SmrgCASE_GROUND_STATE, 5357d522f475SmrgCASE_GSETS, 5358d522f475SmrgCASE_GROUND_STATE, 5359d522f475SmrgCASE_GROUND_STATE, 5360d522f475Smrg/* H I J K */ 5361d522f475SmrgCASE_GSETS, 5362d522f475SmrgCASE_GROUND_STATE, 5363d522f475SmrgCASE_GROUND_STATE, 5364d522f475SmrgCASE_GSETS, 5365d522f475Smrg/* L M N O */ 5366d522f475SmrgCASE_GROUND_STATE, 5367d522f475SmrgCASE_GROUND_STATE, 5368d522f475SmrgCASE_GROUND_STATE, 5369d522f475SmrgCASE_GROUND_STATE, 5370d522f475Smrg/* P Q R S */ 5371d522f475SmrgCASE_GROUND_STATE, 5372d522f475SmrgCASE_GSETS, 5373d522f475SmrgCASE_GSETS, 5374d522f475SmrgCASE_GROUND_STATE, 5375d522f475Smrg/* T U V W */ 5376d522f475SmrgCASE_GROUND_STATE, 5377d522f475SmrgCASE_GROUND_STATE, 5378d522f475SmrgCASE_GROUND_STATE, 5379d522f475SmrgCASE_GROUND_STATE, 5380d522f475Smrg/* X Y Z [ */ 5381d522f475SmrgCASE_GROUND_STATE, 5382d522f475SmrgCASE_GSETS, 5383d522f475SmrgCASE_GSETS, 5384d522f475SmrgCASE_GROUND_STATE, 5385d522f475Smrg/* \ ] ^ _ */ 5386d522f475SmrgCASE_GROUND_STATE, 5387d522f475SmrgCASE_GROUND_STATE, 5388d522f475SmrgCASE_GROUND_STATE, 5389d522f475SmrgCASE_GROUND_STATE, 5390d522f475Smrg/* ` a b c */ 5391d522f475SmrgCASE_GROUND_STATE, 5392d522f475SmrgCASE_GROUND_STATE, 5393d522f475SmrgCASE_GROUND_STATE, 5394d522f475SmrgCASE_GROUND_STATE, 5395d522f475Smrg/* d e f g */ 5396d522f475SmrgCASE_GROUND_STATE, 5397d522f475SmrgCASE_GROUND_STATE, 5398d522f475SmrgCASE_GROUND_STATE, 5399d522f475SmrgCASE_GROUND_STATE, 5400d522f475Smrg/* h i j k */ 5401d522f475SmrgCASE_GROUND_STATE, 5402d522f475SmrgCASE_GROUND_STATE, 5403d522f475SmrgCASE_GROUND_STATE, 5404d522f475SmrgCASE_GROUND_STATE, 5405d522f475Smrg/* l m n o */ 5406d522f475SmrgCASE_GROUND_STATE, 5407d522f475SmrgCASE_GROUND_STATE, 5408d522f475SmrgCASE_GROUND_STATE, 5409d522f475SmrgCASE_GROUND_STATE, 5410d522f475Smrg/* p q r s */ 5411d522f475SmrgCASE_GROUND_STATE, 5412d522f475SmrgCASE_GROUND_STATE, 5413d522f475SmrgCASE_GROUND_STATE, 5414d522f475SmrgCASE_GROUND_STATE, 5415d522f475Smrg/* t u v w */ 5416d522f475SmrgCASE_GROUND_STATE, 5417d522f475SmrgCASE_GROUND_STATE, 5418d522f475SmrgCASE_GROUND_STATE, 5419d522f475SmrgCASE_GROUND_STATE, 5420d522f475Smrg/* x y z { */ 5421d522f475SmrgCASE_GROUND_STATE, 5422d522f475SmrgCASE_GROUND_STATE, 5423d522f475SmrgCASE_GROUND_STATE, 5424d522f475SmrgCASE_GROUND_STATE, 5425d522f475Smrg/* | } ~ DEL */ 5426d522f475SmrgCASE_GROUND_STATE, 5427d522f475SmrgCASE_GROUND_STATE, 5428d522f475SmrgCASE_GROUND_STATE, 5429d522f475SmrgCASE_IGNORE, 5430d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 5431d522f475SmrgCASE_GROUND_STATE, 5432d522f475SmrgCASE_GROUND_STATE, 5433d522f475SmrgCASE_GROUND_STATE, 5434d522f475SmrgCASE_GROUND_STATE, 5435d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 5436d522f475SmrgCASE_IND, 5437d522f475SmrgCASE_NEL, 5438d522f475SmrgCASE_GROUND_STATE, 5439d522f475SmrgCASE_GROUND_STATE, 5440d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 5441d522f475SmrgCASE_HTS, 5442d522f475SmrgCASE_GROUND_STATE, 5443d522f475SmrgCASE_GROUND_STATE, 5444d522f475SmrgCASE_GROUND_STATE, 5445d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 5446d522f475SmrgCASE_GROUND_STATE, 5447d522f475SmrgCASE_RI, 5448d522f475SmrgCASE_SS2, 5449d522f475SmrgCASE_SS3, 5450d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 5451d522f475SmrgCASE_DCS, 5452d522f475SmrgCASE_GROUND_STATE, 5453d522f475SmrgCASE_GROUND_STATE, 5454d522f475SmrgCASE_GROUND_STATE, 5455d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 5456d522f475SmrgCASE_GROUND_STATE, 5457d522f475SmrgCASE_GROUND_STATE, 5458d522f475SmrgCASE_SPA, 5459d522f475SmrgCASE_EPA, 5460d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 5461d522f475SmrgCASE_SOS, 5462d522f475SmrgCASE_GROUND_STATE, 5463d522f475SmrgCASE_DECID, 5464d522f475SmrgCASE_CSI_STATE, 5465d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 5466d522f475SmrgCASE_ST, 5467d522f475SmrgCASE_OSC, 5468d522f475SmrgCASE_PM, 5469d522f475SmrgCASE_APC, 5470d522f475Smrg/* nobreakspace exclamdown cent sterling */ 5471d522f475SmrgCASE_ESC_IGNORE, 5472d522f475SmrgCASE_ESC_IGNORE, 5473d522f475SmrgCASE_ESC_IGNORE, 5474d522f475SmrgCASE_ESC_IGNORE, 5475d522f475Smrg/* currency yen brokenbar section */ 5476d522f475SmrgCASE_ESC_IGNORE, 5477d522f475SmrgCASE_ESC_IGNORE, 5478d522f475SmrgCASE_ESC_IGNORE, 5479d522f475SmrgCASE_ESC_IGNORE, 5480d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 5481d522f475SmrgCASE_ESC_IGNORE, 5482d522f475SmrgCASE_ESC_IGNORE, 5483d522f475SmrgCASE_ESC_IGNORE, 5484d522f475SmrgCASE_ESC_IGNORE, 5485d522f475Smrg/* notsign hyphen registered macron */ 5486d522f475SmrgCASE_ESC_IGNORE, 5487d522f475SmrgCASE_ESC_IGNORE, 5488d522f475SmrgCASE_ESC_IGNORE, 5489d522f475SmrgCASE_ESC_IGNORE, 5490d522f475Smrg/* degree plusminus twosuperior threesuperior */ 5491d522f475SmrgCASE_GSETS, 5492d522f475SmrgCASE_GSETS, 5493d522f475SmrgCASE_GSETS, 5494d522f475SmrgCASE_GROUND_STATE, 5495d522f475Smrg/* acute mu paragraph periodcentered */ 5496d522f475SmrgCASE_GSETS, 5497d522f475SmrgCASE_GSETS, 5498d522f475SmrgCASE_GSETS, 5499d522f475SmrgCASE_GSETS, 5500d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 5501d522f475SmrgCASE_GROUND_STATE, 5502d522f475SmrgCASE_GROUND_STATE, 5503d522f475SmrgCASE_GROUND_STATE, 5504d522f475SmrgCASE_GROUND_STATE, 5505d522f475Smrg/* onequarter onehalf threequarters questiondown */ 5506d522f475SmrgCASE_GROUND_STATE, 5507d522f475SmrgCASE_GSETS, 5508d522f475SmrgCASE_GROUND_STATE, 5509d522f475SmrgCASE_GROUND_STATE, 5510d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 5511d522f475SmrgCASE_GROUND_STATE, 5512d522f475SmrgCASE_GSETS, 5513d522f475SmrgCASE_GSETS, 5514d522f475SmrgCASE_GSETS, 5515d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 5516d522f475SmrgCASE_GROUND_STATE, 5517d522f475SmrgCASE_GSETS, 5518d522f475SmrgCASE_GROUND_STATE, 5519d522f475SmrgCASE_GROUND_STATE, 5520d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 5521d522f475SmrgCASE_GSETS, 5522d522f475SmrgCASE_GROUND_STATE, 5523d522f475SmrgCASE_GROUND_STATE, 5524d522f475SmrgCASE_GSETS, 5525d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 5526d522f475SmrgCASE_GROUND_STATE, 5527d522f475SmrgCASE_GROUND_STATE, 5528d522f475SmrgCASE_GROUND_STATE, 5529d522f475SmrgCASE_GROUND_STATE, 5530d522f475Smrg/* Eth Ntilde Ograve Oacute */ 5531d522f475SmrgCASE_GROUND_STATE, 5532d522f475SmrgCASE_GSETS, 5533d522f475SmrgCASE_GSETS, 5534d522f475SmrgCASE_GROUND_STATE, 5535d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 5536d522f475SmrgCASE_GROUND_STATE, 5537d522f475SmrgCASE_GROUND_STATE, 5538d522f475SmrgCASE_GROUND_STATE, 5539d522f475SmrgCASE_GROUND_STATE, 5540d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 5541d522f475SmrgCASE_GROUND_STATE, 5542d522f475SmrgCASE_GSETS, 5543d522f475SmrgCASE_GSETS, 5544d522f475SmrgCASE_GROUND_STATE, 5545d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 5546d522f475SmrgCASE_GROUND_STATE, 5547d522f475SmrgCASE_GROUND_STATE, 5548d522f475SmrgCASE_GROUND_STATE, 5549d522f475SmrgCASE_GROUND_STATE, 5550d522f475Smrg/* agrave aacute acircumflex atilde */ 5551d522f475SmrgCASE_GROUND_STATE, 55522eaa94a1SchristosCASE_GROUND_STATE, 55532eaa94a1SchristosCASE_GROUND_STATE, 55542eaa94a1SchristosCASE_GROUND_STATE, 55552eaa94a1Schristos/* adiaeresis aring ae ccedilla */ 55562eaa94a1SchristosCASE_GROUND_STATE, 55572eaa94a1SchristosCASE_GROUND_STATE, 55582eaa94a1SchristosCASE_GROUND_STATE, 55592eaa94a1SchristosCASE_GROUND_STATE, 55602eaa94a1Schristos/* egrave eacute ecircumflex ediaeresis */ 55612eaa94a1SchristosCASE_GROUND_STATE, 55622eaa94a1SchristosCASE_GROUND_STATE, 55632eaa94a1SchristosCASE_GROUND_STATE, 55642eaa94a1SchristosCASE_GROUND_STATE, 55652eaa94a1Schristos/* igrave iacute icircumflex idiaeresis */ 55662eaa94a1SchristosCASE_GROUND_STATE, 55672eaa94a1SchristosCASE_GROUND_STATE, 55682eaa94a1SchristosCASE_GROUND_STATE, 55692eaa94a1SchristosCASE_GROUND_STATE, 55702eaa94a1Schristos/* eth ntilde ograve oacute */ 55712eaa94a1SchristosCASE_GROUND_STATE, 55722eaa94a1SchristosCASE_GROUND_STATE, 55732eaa94a1SchristosCASE_GROUND_STATE, 55742eaa94a1SchristosCASE_GROUND_STATE, 55752eaa94a1Schristos/* ocircumflex otilde odiaeresis division */ 55762eaa94a1SchristosCASE_GROUND_STATE, 55772eaa94a1SchristosCASE_GROUND_STATE, 55782eaa94a1SchristosCASE_GROUND_STATE, 55792eaa94a1SchristosCASE_GROUND_STATE, 55802eaa94a1Schristos/* oslash ugrave uacute ucircumflex */ 55812eaa94a1SchristosCASE_GROUND_STATE, 55822eaa94a1SchristosCASE_GROUND_STATE, 55832eaa94a1SchristosCASE_GROUND_STATE, 55842eaa94a1SchristosCASE_GROUND_STATE, 55852eaa94a1Schristos/* udiaeresis yacute thorn ydiaeresis */ 55862eaa94a1SchristosCASE_GROUND_STATE, 55872eaa94a1SchristosCASE_GROUND_STATE, 55882eaa94a1SchristosCASE_GROUND_STATE, 55892eaa94a1SchristosCASE_IGNORE, 55902eaa94a1Schristos}; 55912eaa94a1Schristos 55922eaa94a1SchristosConst PARSE_T scs96table[] = /* ESC - etc. */ 55932eaa94a1Schristos{ 55942eaa94a1Schristos/* NUL SOH STX ETX */ 55952eaa94a1SchristosCASE_IGNORE, 55962eaa94a1SchristosCASE_IGNORE, 55972eaa94a1SchristosCASE_IGNORE, 55982eaa94a1SchristosCASE_IGNORE, 55992eaa94a1Schristos/* EOT ENQ ACK BEL */ 56002eaa94a1SchristosCASE_IGNORE, 56012eaa94a1SchristosCASE_ENQ, 56022eaa94a1SchristosCASE_IGNORE, 56032eaa94a1SchristosCASE_BELL, 56042eaa94a1Schristos/* BS HT NL VT */ 56052eaa94a1SchristosCASE_BS, 56062eaa94a1SchristosCASE_TAB, 56072eaa94a1SchristosCASE_VMOT, 56082eaa94a1SchristosCASE_VMOT, 56092eaa94a1Schristos/* NP CR SO SI */ 56102eaa94a1SchristosCASE_VMOT, 56112eaa94a1SchristosCASE_CR, 56122eaa94a1SchristosCASE_SO, 56132eaa94a1SchristosCASE_SI, 56142eaa94a1Schristos/* DLE DC1 DC2 DC3 */ 56152eaa94a1SchristosCASE_IGNORE, 56162eaa94a1SchristosCASE_IGNORE, 56172eaa94a1SchristosCASE_IGNORE, 56182eaa94a1SchristosCASE_IGNORE, 56192eaa94a1Schristos/* DC4 NAK SYN ETB */ 56202eaa94a1SchristosCASE_IGNORE, 56212eaa94a1SchristosCASE_IGNORE, 56222eaa94a1SchristosCASE_IGNORE, 56232eaa94a1SchristosCASE_IGNORE, 56242eaa94a1Schristos/* CAN EM SUB ESC */ 56252eaa94a1SchristosCASE_GROUND_STATE, 56262eaa94a1SchristosCASE_IGNORE, 56272eaa94a1SchristosCASE_GROUND_STATE, 56282eaa94a1SchristosCASE_ESC, 56292eaa94a1Schristos/* FS GS RS US */ 56302eaa94a1SchristosCASE_IGNORE, 56312eaa94a1SchristosCASE_IGNORE, 56322eaa94a1SchristosCASE_IGNORE, 56332eaa94a1SchristosCASE_IGNORE, 56342eaa94a1Schristos/* SP ! " # */ 56352eaa94a1SchristosCASE_ESC_IGNORE, 56362eaa94a1SchristosCASE_ESC_IGNORE, 56372eaa94a1SchristosCASE_ESC_IGNORE, 56382eaa94a1SchristosCASE_ESC_IGNORE, 56392eaa94a1Schristos/* $ % & ' */ 56402eaa94a1SchristosCASE_ESC_IGNORE, 56412eaa94a1SchristosCASE_ESC_IGNORE, 56422eaa94a1SchristosCASE_ESC_IGNORE, 56432eaa94a1SchristosCASE_ESC_IGNORE, 56442eaa94a1Schristos/* ( ) * + */ 56452eaa94a1SchristosCASE_ESC_IGNORE, 56462eaa94a1SchristosCASE_ESC_IGNORE, 56472eaa94a1SchristosCASE_ESC_IGNORE, 56482eaa94a1SchristosCASE_ESC_IGNORE, 56492eaa94a1Schristos/* , - . / */ 56502eaa94a1SchristosCASE_ESC_IGNORE, 56512eaa94a1SchristosCASE_ESC_IGNORE, 56522eaa94a1SchristosCASE_ESC_IGNORE, 56532eaa94a1SchristosCASE_ESC_IGNORE, 56542eaa94a1Schristos/* 0 1 2 3 */ 56552eaa94a1SchristosCASE_GROUND_STATE, 56562eaa94a1SchristosCASE_GROUND_STATE, 56572eaa94a1SchristosCASE_GROUND_STATE, 56582eaa94a1SchristosCASE_GROUND_STATE, 56592eaa94a1Schristos/* 4 5 6 7 */ 56602eaa94a1SchristosCASE_GROUND_STATE, 56612eaa94a1SchristosCASE_GROUND_STATE, 56622eaa94a1SchristosCASE_GROUND_STATE, 56632eaa94a1SchristosCASE_GROUND_STATE, 56642eaa94a1Schristos/* 8 9 : ; */ 56652eaa94a1SchristosCASE_GROUND_STATE, 56662eaa94a1SchristosCASE_GROUND_STATE, 56672eaa94a1SchristosCASE_GROUND_STATE, 56682eaa94a1SchristosCASE_GROUND_STATE, 56692eaa94a1Schristos/* < = > ? */ 56702eaa94a1SchristosCASE_GROUND_STATE, 56712eaa94a1SchristosCASE_GROUND_STATE, 56722eaa94a1SchristosCASE_GROUND_STATE, 56732eaa94a1SchristosCASE_GROUND_STATE, 56742eaa94a1Schristos/* @ A B C */ 56752eaa94a1SchristosCASE_GROUND_STATE, 56762eaa94a1SchristosCASE_GSETS, 56772eaa94a1SchristosCASE_GROUND_STATE, 56782eaa94a1SchristosCASE_GROUND_STATE, 56792eaa94a1Schristos/* D E F G */ 56802eaa94a1SchristosCASE_GROUND_STATE, 56812eaa94a1SchristosCASE_GROUND_STATE, 56822eaa94a1SchristosCASE_GROUND_STATE, 56832eaa94a1SchristosCASE_GROUND_STATE, 56842eaa94a1Schristos/* H I J K */ 56852eaa94a1SchristosCASE_GROUND_STATE, 56862eaa94a1SchristosCASE_GROUND_STATE, 56872eaa94a1SchristosCASE_GROUND_STATE, 56882eaa94a1SchristosCASE_GROUND_STATE, 56892eaa94a1Schristos/* L M N O */ 56902eaa94a1SchristosCASE_GROUND_STATE, 56912eaa94a1SchristosCASE_GROUND_STATE, 56922eaa94a1SchristosCASE_GROUND_STATE, 56932eaa94a1SchristosCASE_GROUND_STATE, 56942eaa94a1Schristos/* P Q R S */ 56952eaa94a1SchristosCASE_GROUND_STATE, 56962eaa94a1SchristosCASE_GROUND_STATE, 56972eaa94a1SchristosCASE_GROUND_STATE, 56982eaa94a1SchristosCASE_GROUND_STATE, 56992eaa94a1Schristos/* T U V W */ 57002eaa94a1SchristosCASE_GROUND_STATE, 57012eaa94a1SchristosCASE_GROUND_STATE, 57022eaa94a1SchristosCASE_GROUND_STATE, 57032eaa94a1SchristosCASE_GROUND_STATE, 57042eaa94a1Schristos/* X Y Z [ */ 57052eaa94a1SchristosCASE_GROUND_STATE, 57062eaa94a1SchristosCASE_GROUND_STATE, 57072eaa94a1SchristosCASE_GROUND_STATE, 57082eaa94a1SchristosCASE_GROUND_STATE, 57092eaa94a1Schristos/* \ ] ^ _ */ 57102eaa94a1SchristosCASE_GROUND_STATE, 57112eaa94a1SchristosCASE_GROUND_STATE, 57122eaa94a1SchristosCASE_GROUND_STATE, 57132eaa94a1SchristosCASE_GROUND_STATE, 57142eaa94a1Schristos/* ` a b c */ 57152eaa94a1SchristosCASE_GROUND_STATE, 57162eaa94a1SchristosCASE_GROUND_STATE, 57172eaa94a1SchristosCASE_GROUND_STATE, 57182eaa94a1SchristosCASE_GROUND_STATE, 57192eaa94a1Schristos/* d e f g */ 57202eaa94a1SchristosCASE_GROUND_STATE, 57212eaa94a1SchristosCASE_GROUND_STATE, 57222eaa94a1SchristosCASE_GROUND_STATE, 57232eaa94a1SchristosCASE_GROUND_STATE, 57242eaa94a1Schristos/* h i j k */ 57252eaa94a1SchristosCASE_GROUND_STATE, 57262eaa94a1SchristosCASE_GROUND_STATE, 57272eaa94a1SchristosCASE_GROUND_STATE, 57282eaa94a1SchristosCASE_GROUND_STATE, 57292eaa94a1Schristos/* l m n o */ 57302eaa94a1SchristosCASE_GROUND_STATE, 57312eaa94a1SchristosCASE_GROUND_STATE, 57322eaa94a1SchristosCASE_GROUND_STATE, 57332eaa94a1SchristosCASE_GROUND_STATE, 57342eaa94a1Schristos/* p q r s */ 57352eaa94a1SchristosCASE_GROUND_STATE, 57362eaa94a1SchristosCASE_GROUND_STATE, 57372eaa94a1SchristosCASE_GROUND_STATE, 57382eaa94a1SchristosCASE_GROUND_STATE, 57392eaa94a1Schristos/* t u v w */ 57402eaa94a1SchristosCASE_GROUND_STATE, 57412eaa94a1SchristosCASE_GROUND_STATE, 57422eaa94a1SchristosCASE_GROUND_STATE, 57432eaa94a1SchristosCASE_GROUND_STATE, 57442eaa94a1Schristos/* x y z { */ 57452eaa94a1SchristosCASE_GROUND_STATE, 57462eaa94a1SchristosCASE_GROUND_STATE, 57472eaa94a1SchristosCASE_GROUND_STATE, 57482eaa94a1SchristosCASE_GROUND_STATE, 57492eaa94a1Schristos/* | } ~ DEL */ 57502eaa94a1SchristosCASE_GROUND_STATE, 57512eaa94a1SchristosCASE_GROUND_STATE, 57522eaa94a1SchristosCASE_GROUND_STATE, 57532eaa94a1SchristosCASE_IGNORE, 57542eaa94a1Schristos/* 0x80 0x81 0x82 0x83 */ 57552eaa94a1SchristosCASE_GROUND_STATE, 57562eaa94a1SchristosCASE_GROUND_STATE, 57572eaa94a1SchristosCASE_GROUND_STATE, 57582eaa94a1SchristosCASE_GROUND_STATE, 57592eaa94a1Schristos/* 0x84 0x85 0x86 0x87 */ 57602eaa94a1SchristosCASE_IND, 57612eaa94a1SchristosCASE_NEL, 57622eaa94a1SchristosCASE_GROUND_STATE, 57632eaa94a1SchristosCASE_GROUND_STATE, 57642eaa94a1Schristos/* 0x88 0x89 0x8a 0x8b */ 57652eaa94a1SchristosCASE_HTS, 57662eaa94a1SchristosCASE_GROUND_STATE, 57672eaa94a1SchristosCASE_GROUND_STATE, 57682eaa94a1SchristosCASE_GROUND_STATE, 57692eaa94a1Schristos/* 0x8c 0x8d 0x8e 0x8f */ 57702eaa94a1SchristosCASE_GROUND_STATE, 57712eaa94a1SchristosCASE_RI, 57722eaa94a1SchristosCASE_SS2, 57732eaa94a1SchristosCASE_SS3, 57742eaa94a1Schristos/* 0x90 0x91 0x92 0x93 */ 57752eaa94a1SchristosCASE_DCS, 57762eaa94a1SchristosCASE_GROUND_STATE, 57772eaa94a1SchristosCASE_GROUND_STATE, 57782eaa94a1SchristosCASE_GROUND_STATE, 57792eaa94a1Schristos/* 0x94 0x95 0x96 0x97 */ 57802eaa94a1SchristosCASE_GROUND_STATE, 57812eaa94a1SchristosCASE_GROUND_STATE, 57822eaa94a1SchristosCASE_SPA, 57832eaa94a1SchristosCASE_EPA, 57842eaa94a1Schristos/* 0x98 0x99 0x9a 0x9b */ 57852eaa94a1SchristosCASE_SOS, 57862eaa94a1SchristosCASE_GROUND_STATE, 57872eaa94a1SchristosCASE_DECID, 57882eaa94a1SchristosCASE_CSI_STATE, 57892eaa94a1Schristos/* 0x9c 0x9d 0x9e 0x9f */ 57902eaa94a1SchristosCASE_ST, 57912eaa94a1SchristosCASE_OSC, 57922eaa94a1SchristosCASE_PM, 57932eaa94a1SchristosCASE_APC, 57942eaa94a1Schristos/* nobreakspace exclamdown cent sterling */ 57952eaa94a1SchristosCASE_ESC_IGNORE, 57962eaa94a1SchristosCASE_ESC_IGNORE, 57972eaa94a1SchristosCASE_ESC_IGNORE, 57982eaa94a1SchristosCASE_ESC_IGNORE, 57992eaa94a1Schristos/* currency yen brokenbar section */ 58002eaa94a1SchristosCASE_ESC_IGNORE, 58012eaa94a1SchristosCASE_ESC_IGNORE, 58022eaa94a1SchristosCASE_ESC_IGNORE, 58032eaa94a1SchristosCASE_ESC_IGNORE, 58042eaa94a1Schristos/* diaeresis copyright ordfeminine guillemotleft */ 58052eaa94a1SchristosCASE_ESC_IGNORE, 58062eaa94a1SchristosCASE_ESC_IGNORE, 58072eaa94a1SchristosCASE_ESC_IGNORE, 58082eaa94a1SchristosCASE_ESC_IGNORE, 58092eaa94a1Schristos/* notsign hyphen registered macron */ 58102eaa94a1SchristosCASE_ESC_IGNORE, 58112eaa94a1SchristosCASE_ESC_IGNORE, 58122eaa94a1SchristosCASE_ESC_IGNORE, 58132eaa94a1SchristosCASE_ESC_IGNORE, 58142eaa94a1Schristos/* degree plusminus twosuperior threesuperior */ 58152eaa94a1SchristosCASE_GROUND_STATE, 58162eaa94a1SchristosCASE_GROUND_STATE, 58172eaa94a1SchristosCASE_GROUND_STATE, 58182eaa94a1SchristosCASE_GROUND_STATE, 58192eaa94a1Schristos/* acute mu paragraph periodcentered */ 58202eaa94a1SchristosCASE_GROUND_STATE, 58212eaa94a1SchristosCASE_GROUND_STATE, 58222eaa94a1SchristosCASE_GROUND_STATE, 58232eaa94a1SchristosCASE_GROUND_STATE, 58242eaa94a1Schristos/* cedilla onesuperior masculine guillemotright */ 58252eaa94a1SchristosCASE_GROUND_STATE, 58262eaa94a1SchristosCASE_GROUND_STATE, 58272eaa94a1SchristosCASE_GROUND_STATE, 58282eaa94a1SchristosCASE_GROUND_STATE, 58292eaa94a1Schristos/* onequarter onehalf threequarters questiondown */ 58302eaa94a1SchristosCASE_GROUND_STATE, 58312eaa94a1SchristosCASE_GROUND_STATE, 58322eaa94a1SchristosCASE_GROUND_STATE, 58332eaa94a1SchristosCASE_GROUND_STATE, 58342eaa94a1Schristos/* Agrave Aacute Acircumflex Atilde */ 58352eaa94a1SchristosCASE_GROUND_STATE, 58362eaa94a1SchristosCASE_GSETS, 58372eaa94a1SchristosCASE_GROUND_STATE, 58382eaa94a1SchristosCASE_GROUND_STATE, 58392eaa94a1Schristos/* Adiaeresis Aring AE Ccedilla */ 58402eaa94a1SchristosCASE_GROUND_STATE, 58412eaa94a1SchristosCASE_GROUND_STATE, 58422eaa94a1SchristosCASE_GROUND_STATE, 58432eaa94a1SchristosCASE_GROUND_STATE, 58442eaa94a1Schristos/* Egrave Eacute Ecircumflex Ediaeresis */ 58452eaa94a1SchristosCASE_GROUND_STATE, 58462eaa94a1SchristosCASE_GROUND_STATE, 58472eaa94a1SchristosCASE_GROUND_STATE, 58482eaa94a1SchristosCASE_GROUND_STATE, 58492eaa94a1Schristos/* Igrave Iacute Icircumflex Idiaeresis */ 58502eaa94a1SchristosCASE_GROUND_STATE, 58512eaa94a1SchristosCASE_GROUND_STATE, 58522eaa94a1SchristosCASE_GROUND_STATE, 58532eaa94a1SchristosCASE_GROUND_STATE, 58542eaa94a1Schristos/* Eth Ntilde Ograve Oacute */ 58552eaa94a1SchristosCASE_GROUND_STATE, 58562eaa94a1SchristosCASE_GROUND_STATE, 58572eaa94a1SchristosCASE_GROUND_STATE, 58582eaa94a1SchristosCASE_GROUND_STATE, 58592eaa94a1Schristos/* Ocircumflex Otilde Odiaeresis multiply */ 58602eaa94a1SchristosCASE_GROUND_STATE, 58612eaa94a1SchristosCASE_GROUND_STATE, 58622eaa94a1SchristosCASE_GROUND_STATE, 58632eaa94a1SchristosCASE_GROUND_STATE, 58642eaa94a1Schristos/* Ooblique Ugrave Uacute Ucircumflex */ 58652eaa94a1SchristosCASE_GROUND_STATE, 58662eaa94a1SchristosCASE_GROUND_STATE, 58672eaa94a1SchristosCASE_GROUND_STATE, 58682eaa94a1SchristosCASE_GROUND_STATE, 58692eaa94a1Schristos/* Udiaeresis Yacute Thorn ssharp */ 58702eaa94a1SchristosCASE_GROUND_STATE, 58712eaa94a1SchristosCASE_GROUND_STATE, 58722eaa94a1SchristosCASE_GROUND_STATE, 58732eaa94a1SchristosCASE_GROUND_STATE, 58742eaa94a1Schristos/* agrave aacute acircumflex atilde */ 58752eaa94a1SchristosCASE_GROUND_STATE, 5876d522f475SmrgCASE_GROUND_STATE, 5877d522f475SmrgCASE_GROUND_STATE, 5878d522f475SmrgCASE_GROUND_STATE, 5879d522f475Smrg/* adiaeresis aring ae ccedilla */ 5880d522f475SmrgCASE_GROUND_STATE, 5881d522f475SmrgCASE_GROUND_STATE, 5882d522f475SmrgCASE_GROUND_STATE, 5883d522f475SmrgCASE_GROUND_STATE, 5884d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 5885d522f475SmrgCASE_GROUND_STATE, 5886d522f475SmrgCASE_GROUND_STATE, 5887d522f475SmrgCASE_GROUND_STATE, 5888d522f475SmrgCASE_GROUND_STATE, 5889d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 5890d522f475SmrgCASE_GROUND_STATE, 5891d522f475SmrgCASE_GROUND_STATE, 5892d522f475SmrgCASE_GROUND_STATE, 5893d522f475SmrgCASE_GROUND_STATE, 5894d522f475Smrg/* eth ntilde ograve oacute */ 5895d522f475SmrgCASE_GROUND_STATE, 5896d522f475SmrgCASE_GROUND_STATE, 5897d522f475SmrgCASE_GROUND_STATE, 5898d522f475SmrgCASE_GROUND_STATE, 5899d522f475Smrg/* ocircumflex otilde odiaeresis division */ 5900d522f475SmrgCASE_GROUND_STATE, 5901d522f475SmrgCASE_GROUND_STATE, 5902d522f475SmrgCASE_GROUND_STATE, 5903d522f475SmrgCASE_GROUND_STATE, 5904d522f475Smrg/* oslash ugrave uacute ucircumflex */ 5905d522f475SmrgCASE_GROUND_STATE, 5906d522f475SmrgCASE_GROUND_STATE, 5907d522f475SmrgCASE_GROUND_STATE, 5908d522f475SmrgCASE_GROUND_STATE, 5909d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 5910d522f475SmrgCASE_GROUND_STATE, 5911d522f475SmrgCASE_GROUND_STATE, 5912d522f475SmrgCASE_GROUND_STATE, 5913d522f475SmrgCASE_IGNORE, 5914d522f475Smrg}; 5915d522f475Smrg 5916d522f475Smrg/* 5917d522f475Smrg * This table is treated specially. The CASE_IGNORE entries correspond to the 5918d522f475Smrg * characters that can be accumulated for the string function (e.g., OSC). 5919d522f475Smrg */ 5920d522f475SmrgConst PARSE_T sos_table[] = /* OSC, DCS, etc. */ 5921d522f475Smrg{ 5922d522f475Smrg/* NUL SOH STX ETX */ 5923d522f475SmrgCASE_IGNORE, 5924d522f475SmrgCASE_IGNORE, 5925d522f475SmrgCASE_IGNORE, 5926d522f475SmrgCASE_IGNORE, 5927d522f475Smrg/* EOT ENQ ACK BEL */ 5928d522f475SmrgCASE_IGNORE, 5929d522f475SmrgCASE_IGNORE, 5930d522f475SmrgCASE_IGNORE, 5931d522f475SmrgCASE_BELL, 5932d522f475Smrg/* BS HT NL VT */ 5933d522f475SmrgCASE_IGNORE, 5934d522f475SmrgCASE_IGNORE, 5935d522f475SmrgCASE_IGNORE, 5936d522f475SmrgCASE_IGNORE, 5937d522f475Smrg/* NP CR SO SI */ 5938d522f475SmrgCASE_IGNORE, 5939d522f475SmrgCASE_IGNORE, 5940d522f475SmrgCASE_IGNORE, 5941d522f475SmrgCASE_IGNORE, 5942d522f475Smrg/* DLE DC1 DC2 DC3 */ 5943d522f475SmrgCASE_IGNORE, 5944d522f475SmrgCASE_IGNORE, 5945d522f475SmrgCASE_IGNORE, 5946d522f475SmrgCASE_IGNORE, 5947d522f475Smrg/* DC4 NAK SYN ETB */ 5948d522f475SmrgCASE_IGNORE, 5949d522f475SmrgCASE_IGNORE, 5950d522f475SmrgCASE_IGNORE, 5951d522f475SmrgCASE_IGNORE, 5952d522f475Smrg/* CAN EM SUB ESC */ 5953d522f475SmrgCASE_GROUND_STATE, 5954d522f475SmrgCASE_IGNORE, 5955d522f475SmrgCASE_GROUND_STATE, 5956d522f475SmrgCASE_ESC, 5957d522f475Smrg/* FS GS RS US */ 5958d522f475SmrgCASE_IGNORE, 5959d522f475SmrgCASE_IGNORE, 5960d522f475SmrgCASE_IGNORE, 5961d522f475SmrgCASE_IGNORE, 5962d522f475Smrg/* SP ! " # */ 5963d522f475SmrgCASE_IGNORE, 5964d522f475SmrgCASE_IGNORE, 5965d522f475SmrgCASE_IGNORE, 5966d522f475SmrgCASE_IGNORE, 5967d522f475Smrg/* $ % & ' */ 5968d522f475SmrgCASE_IGNORE, 5969d522f475SmrgCASE_IGNORE, 5970d522f475SmrgCASE_IGNORE, 5971d522f475SmrgCASE_IGNORE, 5972d522f475Smrg/* ( ) * + */ 5973d522f475SmrgCASE_IGNORE, 5974d522f475SmrgCASE_IGNORE, 5975d522f475SmrgCASE_IGNORE, 5976d522f475SmrgCASE_IGNORE, 5977d522f475Smrg/* , - . / */ 5978d522f475SmrgCASE_IGNORE, 5979d522f475SmrgCASE_IGNORE, 5980d522f475SmrgCASE_IGNORE, 5981d522f475SmrgCASE_IGNORE, 5982d522f475Smrg/* 0 1 2 3 */ 5983d522f475SmrgCASE_IGNORE, 5984d522f475SmrgCASE_IGNORE, 5985d522f475SmrgCASE_IGNORE, 5986d522f475SmrgCASE_IGNORE, 5987d522f475Smrg/* 4 5 6 7 */ 5988d522f475SmrgCASE_IGNORE, 5989d522f475SmrgCASE_IGNORE, 5990d522f475SmrgCASE_IGNORE, 5991d522f475SmrgCASE_IGNORE, 5992d522f475Smrg/* 8 9 : ; */ 5993d522f475SmrgCASE_IGNORE, 5994d522f475SmrgCASE_IGNORE, 5995d522f475SmrgCASE_IGNORE, 5996d522f475SmrgCASE_IGNORE, 5997d522f475Smrg/* < = > ? */ 5998d522f475SmrgCASE_IGNORE, 5999d522f475SmrgCASE_IGNORE, 6000d522f475SmrgCASE_IGNORE, 6001d522f475SmrgCASE_IGNORE, 6002d522f475Smrg/* @ A B C */ 6003d522f475SmrgCASE_IGNORE, 6004d522f475SmrgCASE_IGNORE, 6005d522f475SmrgCASE_IGNORE, 6006d522f475SmrgCASE_IGNORE, 6007d522f475Smrg/* D E F G */ 6008d522f475SmrgCASE_IGNORE, 6009d522f475SmrgCASE_IGNORE, 6010d522f475SmrgCASE_IGNORE, 6011d522f475SmrgCASE_IGNORE, 6012d522f475Smrg/* H I J K */ 6013d522f475SmrgCASE_IGNORE, 6014d522f475SmrgCASE_IGNORE, 6015d522f475SmrgCASE_IGNORE, 6016d522f475SmrgCASE_IGNORE, 6017d522f475Smrg/* L M N O */ 6018d522f475SmrgCASE_IGNORE, 6019d522f475SmrgCASE_IGNORE, 6020d522f475SmrgCASE_IGNORE, 6021d522f475SmrgCASE_IGNORE, 6022d522f475Smrg/* P Q R S */ 6023d522f475SmrgCASE_IGNORE, 6024d522f475SmrgCASE_IGNORE, 6025d522f475SmrgCASE_IGNORE, 6026d522f475SmrgCASE_IGNORE, 6027d522f475Smrg/* T U V W */ 6028d522f475SmrgCASE_IGNORE, 6029d522f475SmrgCASE_IGNORE, 6030d522f475SmrgCASE_IGNORE, 6031d522f475SmrgCASE_IGNORE, 6032d522f475Smrg/* X Y Z [ */ 6033d522f475SmrgCASE_IGNORE, 6034d522f475SmrgCASE_IGNORE, 6035d522f475SmrgCASE_IGNORE, 6036d522f475SmrgCASE_IGNORE, 6037d522f475Smrg/* \ ] ^ _ */ 6038d522f475SmrgCASE_IGNORE, 6039d522f475SmrgCASE_IGNORE, 6040d522f475SmrgCASE_IGNORE, 6041d522f475SmrgCASE_IGNORE, 6042d522f475Smrg/* ` a b c */ 6043d522f475SmrgCASE_IGNORE, 6044d522f475SmrgCASE_IGNORE, 6045d522f475SmrgCASE_IGNORE, 6046d522f475SmrgCASE_IGNORE, 6047d522f475Smrg/* d e f g */ 6048d522f475SmrgCASE_IGNORE, 6049d522f475SmrgCASE_IGNORE, 6050d522f475SmrgCASE_IGNORE, 6051d522f475SmrgCASE_IGNORE, 6052d522f475Smrg/* h i j k */ 6053d522f475SmrgCASE_IGNORE, 6054d522f475SmrgCASE_IGNORE, 6055d522f475SmrgCASE_IGNORE, 6056d522f475SmrgCASE_IGNORE, 6057d522f475Smrg/* l m n o */ 6058d522f475SmrgCASE_IGNORE, 6059d522f475SmrgCASE_IGNORE, 6060d522f475SmrgCASE_IGNORE, 6061d522f475SmrgCASE_IGNORE, 6062d522f475Smrg/* p q r s */ 6063d522f475SmrgCASE_IGNORE, 6064d522f475SmrgCASE_IGNORE, 6065d522f475SmrgCASE_IGNORE, 6066d522f475SmrgCASE_IGNORE, 6067d522f475Smrg/* t u v w */ 6068d522f475SmrgCASE_IGNORE, 6069d522f475SmrgCASE_IGNORE, 6070d522f475SmrgCASE_IGNORE, 6071d522f475SmrgCASE_IGNORE, 6072d522f475Smrg/* x y z { */ 6073d522f475SmrgCASE_IGNORE, 6074d522f475SmrgCASE_IGNORE, 6075d522f475SmrgCASE_IGNORE, 6076d522f475SmrgCASE_IGNORE, 6077d522f475Smrg/* | } ~ DEL */ 6078d522f475SmrgCASE_IGNORE, 6079d522f475SmrgCASE_IGNORE, 6080d522f475SmrgCASE_IGNORE, 6081d522f475SmrgCASE_IGNORE, 6082d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 6083d522f475SmrgCASE_GROUND_STATE, 6084d522f475SmrgCASE_GROUND_STATE, 6085d522f475SmrgCASE_GROUND_STATE, 6086d522f475SmrgCASE_GROUND_STATE, 6087d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 6088d522f475SmrgCASE_IND, 6089d522f475SmrgCASE_NEL, 6090d522f475SmrgCASE_GROUND_STATE, 6091d522f475SmrgCASE_GROUND_STATE, 6092d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 6093d522f475SmrgCASE_HTS, 6094d522f475SmrgCASE_GROUND_STATE, 6095d522f475SmrgCASE_GROUND_STATE, 6096d522f475SmrgCASE_GROUND_STATE, 6097d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 6098d522f475SmrgCASE_GROUND_STATE, 6099d522f475SmrgCASE_RI, 6100d522f475SmrgCASE_SS2, 6101d522f475SmrgCASE_SS3, 6102d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 6103d522f475SmrgCASE_DCS, 6104d522f475SmrgCASE_GROUND_STATE, 6105d522f475SmrgCASE_GROUND_STATE, 6106d522f475SmrgCASE_GROUND_STATE, 6107d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 6108d522f475SmrgCASE_GROUND_STATE, 6109d522f475SmrgCASE_GROUND_STATE, 6110d522f475SmrgCASE_SPA, 6111d522f475SmrgCASE_EPA, 6112d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 6113d522f475SmrgCASE_SOS, 6114d522f475SmrgCASE_GROUND_STATE, 6115d522f475SmrgCASE_DECID, 6116d522f475SmrgCASE_CSI_STATE, 6117d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 6118d522f475SmrgCASE_ST, 6119d522f475SmrgCASE_OSC, 6120d522f475SmrgCASE_PM, 6121d522f475SmrgCASE_APC, 6122d522f475Smrg/* nobreakspace exclamdown cent sterling */ 6123d522f475SmrgCASE_IGNORE, 6124d522f475SmrgCASE_IGNORE, 6125d522f475SmrgCASE_IGNORE, 6126d522f475SmrgCASE_IGNORE, 6127d522f475Smrg/* currency yen brokenbar section */ 6128d522f475SmrgCASE_IGNORE, 6129d522f475SmrgCASE_IGNORE, 6130d522f475SmrgCASE_IGNORE, 6131d522f475SmrgCASE_IGNORE, 6132d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 6133d522f475SmrgCASE_IGNORE, 6134d522f475SmrgCASE_IGNORE, 6135d522f475SmrgCASE_IGNORE, 6136d522f475SmrgCASE_IGNORE, 6137d522f475Smrg/* notsign hyphen registered macron */ 6138d522f475SmrgCASE_IGNORE, 6139d522f475SmrgCASE_IGNORE, 6140d522f475SmrgCASE_IGNORE, 6141d522f475SmrgCASE_IGNORE, 6142d522f475Smrg/* degree plusminus twosuperior threesuperior */ 6143d522f475SmrgCASE_IGNORE, 6144d522f475SmrgCASE_IGNORE, 6145d522f475SmrgCASE_IGNORE, 6146d522f475SmrgCASE_IGNORE, 6147d522f475Smrg/* acute mu paragraph periodcentered */ 6148d522f475SmrgCASE_IGNORE, 6149d522f475SmrgCASE_IGNORE, 6150d522f475SmrgCASE_IGNORE, 6151d522f475SmrgCASE_IGNORE, 6152d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 6153d522f475SmrgCASE_IGNORE, 6154d522f475SmrgCASE_IGNORE, 6155d522f475SmrgCASE_IGNORE, 6156d522f475SmrgCASE_IGNORE, 6157d522f475Smrg/* onequarter onehalf threequarters questiondown */ 6158d522f475SmrgCASE_IGNORE, 6159d522f475SmrgCASE_IGNORE, 6160d522f475SmrgCASE_IGNORE, 6161d522f475SmrgCASE_IGNORE, 6162d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 6163d522f475SmrgCASE_IGNORE, 6164d522f475SmrgCASE_IGNORE, 6165d522f475SmrgCASE_IGNORE, 6166d522f475SmrgCASE_IGNORE, 6167d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 6168d522f475SmrgCASE_IGNORE, 6169d522f475SmrgCASE_IGNORE, 6170d522f475SmrgCASE_IGNORE, 6171d522f475SmrgCASE_IGNORE, 6172d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 6173d522f475SmrgCASE_IGNORE, 6174d522f475SmrgCASE_IGNORE, 6175d522f475SmrgCASE_IGNORE, 6176d522f475SmrgCASE_IGNORE, 6177d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 6178d522f475SmrgCASE_IGNORE, 6179d522f475SmrgCASE_IGNORE, 6180d522f475SmrgCASE_IGNORE, 6181d522f475SmrgCASE_IGNORE, 6182d522f475Smrg/* Eth Ntilde Ograve Oacute */ 6183d522f475SmrgCASE_IGNORE, 6184d522f475SmrgCASE_IGNORE, 6185d522f475SmrgCASE_IGNORE, 6186d522f475SmrgCASE_IGNORE, 6187d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 6188d522f475SmrgCASE_IGNORE, 6189d522f475SmrgCASE_IGNORE, 6190d522f475SmrgCASE_IGNORE, 6191d522f475SmrgCASE_IGNORE, 6192d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 6193d522f475SmrgCASE_IGNORE, 6194d522f475SmrgCASE_IGNORE, 6195d522f475SmrgCASE_IGNORE, 6196d522f475SmrgCASE_IGNORE, 6197d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 6198d522f475SmrgCASE_IGNORE, 6199d522f475SmrgCASE_IGNORE, 6200d522f475SmrgCASE_IGNORE, 6201d522f475SmrgCASE_IGNORE, 6202d522f475Smrg/* agrave aacute acircumflex atilde */ 6203d522f475SmrgCASE_IGNORE, 6204d522f475SmrgCASE_IGNORE, 6205d522f475SmrgCASE_IGNORE, 6206d522f475SmrgCASE_IGNORE, 6207d522f475Smrg/* adiaeresis aring ae ccedilla */ 6208d522f475SmrgCASE_IGNORE, 6209d522f475SmrgCASE_IGNORE, 6210d522f475SmrgCASE_IGNORE, 6211d522f475SmrgCASE_IGNORE, 6212d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 6213d522f475SmrgCASE_IGNORE, 6214d522f475SmrgCASE_IGNORE, 6215d522f475SmrgCASE_IGNORE, 6216d522f475SmrgCASE_IGNORE, 6217d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 6218d522f475SmrgCASE_IGNORE, 6219d522f475SmrgCASE_IGNORE, 6220d522f475SmrgCASE_IGNORE, 6221d522f475SmrgCASE_IGNORE, 6222d522f475Smrg/* eth ntilde ograve oacute */ 6223d522f475SmrgCASE_IGNORE, 6224d522f475SmrgCASE_IGNORE, 6225d522f475SmrgCASE_IGNORE, 6226d522f475SmrgCASE_IGNORE, 6227d522f475Smrg/* ocircumflex otilde odiaeresis division */ 6228d522f475SmrgCASE_IGNORE, 6229d522f475SmrgCASE_IGNORE, 6230d522f475SmrgCASE_IGNORE, 6231d522f475SmrgCASE_IGNORE, 6232d522f475Smrg/* oslash ugrave uacute ucircumflex */ 6233d522f475SmrgCASE_IGNORE, 6234d522f475SmrgCASE_IGNORE, 6235d522f475SmrgCASE_IGNORE, 6236d522f475SmrgCASE_IGNORE, 6237d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 6238d522f475SmrgCASE_IGNORE, 6239d522f475SmrgCASE_IGNORE, 6240d522f475SmrgCASE_IGNORE, 6241d522f475SmrgCASE_IGNORE, 6242d522f475Smrg}; 6243d522f475Smrg 6244d522f475Smrg#if OPT_WIDE_CHARS 6245d522f475SmrgConst PARSE_T esc_pct_table[] = /* ESC % */ 6246d522f475Smrg{ 6247d522f475Smrg/* NUL SOH STX ETX */ 6248d522f475SmrgCASE_IGNORE, 6249d522f475SmrgCASE_IGNORE, 6250d522f475SmrgCASE_IGNORE, 6251d522f475SmrgCASE_IGNORE, 6252d522f475Smrg/* EOT ENQ ACK BEL */ 6253d522f475SmrgCASE_IGNORE, 6254d522f475SmrgCASE_ENQ, 6255d522f475SmrgCASE_IGNORE, 6256d522f475SmrgCASE_BELL, 6257d522f475Smrg/* BS HT NL VT */ 6258d522f475SmrgCASE_BS, 6259d522f475SmrgCASE_TAB, 6260d522f475SmrgCASE_VMOT, 6261d522f475SmrgCASE_VMOT, 6262d522f475Smrg/* NP CR SO SI */ 6263d522f475SmrgCASE_VMOT, 6264d522f475SmrgCASE_CR, 6265d522f475SmrgCASE_SO, 6266d522f475SmrgCASE_SI, 6267d522f475Smrg/* DLE DC1 DC2 DC3 */ 6268d522f475SmrgCASE_IGNORE, 6269d522f475SmrgCASE_IGNORE, 6270d522f475SmrgCASE_IGNORE, 6271d522f475SmrgCASE_IGNORE, 6272d522f475Smrg/* DC4 NAK SYN ETB */ 6273d522f475SmrgCASE_IGNORE, 6274d522f475SmrgCASE_IGNORE, 6275d522f475SmrgCASE_IGNORE, 6276d522f475SmrgCASE_IGNORE, 6277d522f475Smrg/* CAN EM SUB ESC */ 6278d522f475SmrgCASE_GROUND_STATE, 6279d522f475SmrgCASE_IGNORE, 6280d522f475SmrgCASE_GROUND_STATE, 6281d522f475SmrgCASE_ESC, 6282d522f475Smrg/* FS GS RS US */ 6283d522f475SmrgCASE_IGNORE, 6284d522f475SmrgCASE_IGNORE, 6285d522f475SmrgCASE_IGNORE, 6286d522f475SmrgCASE_IGNORE, 6287d522f475Smrg/* SP ! " # */ 6288d522f475SmrgCASE_ESC_IGNORE, 6289d522f475SmrgCASE_ESC_IGNORE, 6290d522f475SmrgCASE_ESC_IGNORE, 6291d522f475SmrgCASE_ESC_IGNORE, 6292d522f475Smrg/* $ % & ' */ 6293d522f475SmrgCASE_ESC_IGNORE, 6294d522f475SmrgCASE_ESC_IGNORE, 6295d522f475SmrgCASE_ESC_IGNORE, 6296d522f475SmrgCASE_ESC_IGNORE, 6297d522f475Smrg/* ( ) * + */ 6298d522f475SmrgCASE_ESC_IGNORE, 6299d522f475SmrgCASE_ESC_IGNORE, 6300d522f475SmrgCASE_ESC_IGNORE, 6301d522f475SmrgCASE_ESC_IGNORE, 6302d522f475Smrg/* , - . / */ 6303d522f475SmrgCASE_ESC_IGNORE, 6304d522f475SmrgCASE_ESC_IGNORE, 6305d522f475SmrgCASE_ESC_IGNORE, 6306d522f475SmrgCASE_ESC_IGNORE, 6307d522f475Smrg/* 0 1 2 3 */ 6308d522f475SmrgCASE_GROUND_STATE, 6309d522f475SmrgCASE_GROUND_STATE, 6310d522f475SmrgCASE_GROUND_STATE, 6311d522f475SmrgCASE_GROUND_STATE, 6312d522f475Smrg/* 4 5 6 7 */ 6313d522f475SmrgCASE_GROUND_STATE, 6314d522f475SmrgCASE_GROUND_STATE, 6315d522f475SmrgCASE_GROUND_STATE, 6316d522f475SmrgCASE_GROUND_STATE, 6317d522f475Smrg/* 8 9 : ; */ 6318d522f475SmrgCASE_GROUND_STATE, 6319d522f475SmrgCASE_GROUND_STATE, 6320d522f475SmrgCASE_GROUND_STATE, 6321d522f475SmrgCASE_GROUND_STATE, 6322d522f475Smrg/* < = > ? */ 6323d522f475SmrgCASE_GROUND_STATE, 6324d522f475SmrgCASE_GROUND_STATE, 6325d522f475SmrgCASE_GROUND_STATE, 6326d522f475SmrgCASE_GROUND_STATE, 6327d522f475Smrg/* @ A B C */ 6328d522f475SmrgCASE_UTF8, 6329d522f475SmrgCASE_GROUND_STATE, 6330d522f475SmrgCASE_GROUND_STATE, 6331d522f475SmrgCASE_GROUND_STATE, 6332d522f475Smrg/* D E F G */ 6333d522f475SmrgCASE_GROUND_STATE, 6334d522f475SmrgCASE_GROUND_STATE, 6335d522f475SmrgCASE_GROUND_STATE, 6336d522f475SmrgCASE_UTF8, 6337d522f475Smrg/* H I J K */ 6338d522f475SmrgCASE_GROUND_STATE, 6339d522f475SmrgCASE_GROUND_STATE, 6340d522f475SmrgCASE_GROUND_STATE, 6341d522f475SmrgCASE_GROUND_STATE, 6342d522f475Smrg/* L M N O */ 6343d522f475SmrgCASE_GROUND_STATE, 6344d522f475SmrgCASE_GROUND_STATE, 6345d522f475SmrgCASE_GROUND_STATE, 6346d522f475SmrgCASE_GROUND_STATE, 6347d522f475Smrg/* P Q R S */ 6348d522f475SmrgCASE_GROUND_STATE, 6349d522f475SmrgCASE_GROUND_STATE, 6350d522f475SmrgCASE_GROUND_STATE, 6351d522f475SmrgCASE_GROUND_STATE, 6352d522f475Smrg/* T U V W */ 6353d522f475SmrgCASE_GROUND_STATE, 6354d522f475SmrgCASE_GROUND_STATE, 6355d522f475SmrgCASE_GROUND_STATE, 6356d522f475SmrgCASE_GROUND_STATE, 6357d522f475Smrg/* X Y Z [ */ 6358d522f475SmrgCASE_GROUND_STATE, 6359d522f475SmrgCASE_GROUND_STATE, 6360d522f475SmrgCASE_GROUND_STATE, 6361d522f475SmrgCASE_GROUND_STATE, 6362d522f475Smrg/* \ ] ^ _ */ 6363d522f475SmrgCASE_GROUND_STATE, 6364d522f475SmrgCASE_GROUND_STATE, 6365d522f475SmrgCASE_GROUND_STATE, 6366d522f475SmrgCASE_GROUND_STATE, 6367d522f475Smrg/* ` a b c */ 6368d522f475SmrgCASE_GROUND_STATE, 6369d522f475SmrgCASE_GROUND_STATE, 6370d522f475SmrgCASE_GROUND_STATE, 6371d522f475SmrgCASE_GROUND_STATE, 6372d522f475Smrg/* d e f g */ 6373d522f475SmrgCASE_GROUND_STATE, 6374d522f475SmrgCASE_GROUND_STATE, 6375d522f475SmrgCASE_GROUND_STATE, 6376d522f475SmrgCASE_GROUND_STATE, 6377d522f475Smrg/* h i j k */ 6378d522f475SmrgCASE_GROUND_STATE, 6379d522f475SmrgCASE_GROUND_STATE, 6380d522f475SmrgCASE_GROUND_STATE, 6381d522f475SmrgCASE_GROUND_STATE, 6382d522f475Smrg/* l m n o */ 6383d522f475SmrgCASE_GROUND_STATE, 6384d522f475SmrgCASE_GROUND_STATE, 6385d522f475SmrgCASE_GROUND_STATE, 6386d522f475SmrgCASE_GROUND_STATE, 6387d522f475Smrg/* p q r s */ 6388d522f475SmrgCASE_GROUND_STATE, 6389d522f475SmrgCASE_GROUND_STATE, 6390d522f475SmrgCASE_GROUND_STATE, 6391d522f475SmrgCASE_GROUND_STATE, 6392d522f475Smrg/* t u v w */ 6393d522f475SmrgCASE_GROUND_STATE, 6394d522f475SmrgCASE_GROUND_STATE, 6395d522f475SmrgCASE_GROUND_STATE, 6396d522f475SmrgCASE_GROUND_STATE, 6397d522f475Smrg/* x y z { */ 6398d522f475SmrgCASE_GROUND_STATE, 6399d522f475SmrgCASE_GROUND_STATE, 6400d522f475SmrgCASE_GROUND_STATE, 6401d522f475SmrgCASE_GROUND_STATE, 6402d522f475Smrg/* | } ~ DEL */ 6403d522f475SmrgCASE_GROUND_STATE, 6404d522f475SmrgCASE_GROUND_STATE, 6405d522f475SmrgCASE_GROUND_STATE, 6406d522f475SmrgCASE_IGNORE, 6407d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 6408d522f475SmrgCASE_GROUND_STATE, 6409d522f475SmrgCASE_GROUND_STATE, 6410d522f475SmrgCASE_GROUND_STATE, 6411d522f475SmrgCASE_GROUND_STATE, 6412d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 6413d522f475SmrgCASE_IND, 6414d522f475SmrgCASE_NEL, 6415d522f475SmrgCASE_GROUND_STATE, 6416d522f475SmrgCASE_GROUND_STATE, 6417d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 6418d522f475SmrgCASE_HTS, 6419d522f475SmrgCASE_GROUND_STATE, 6420d522f475SmrgCASE_GROUND_STATE, 6421d522f475SmrgCASE_GROUND_STATE, 6422d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 6423d522f475SmrgCASE_GROUND_STATE, 6424d522f475SmrgCASE_RI, 6425d522f475SmrgCASE_SS2, 6426d522f475SmrgCASE_SS3, 6427d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 6428d522f475SmrgCASE_DCS, 6429d522f475SmrgCASE_GROUND_STATE, 6430d522f475SmrgCASE_GROUND_STATE, 6431d522f475SmrgCASE_GROUND_STATE, 6432d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 6433d522f475SmrgCASE_GROUND_STATE, 6434d522f475SmrgCASE_GROUND_STATE, 6435d522f475SmrgCASE_SPA, 6436d522f475SmrgCASE_EPA, 6437d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 6438d522f475SmrgCASE_SOS, 6439d522f475SmrgCASE_GROUND_STATE, 6440d522f475SmrgCASE_DECID, 6441d522f475SmrgCASE_CSI_STATE, 6442d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 6443d522f475SmrgCASE_ST, 6444d522f475SmrgCASE_OSC, 6445d522f475SmrgCASE_PM, 6446d522f475SmrgCASE_APC, 6447d522f475Smrg/* nobreakspace exclamdown cent sterling */ 6448d522f475SmrgCASE_ESC_IGNORE, 6449d522f475SmrgCASE_ESC_IGNORE, 6450d522f475SmrgCASE_ESC_IGNORE, 6451d522f475SmrgCASE_ESC_IGNORE, 6452d522f475Smrg/* currency yen brokenbar section */ 6453d522f475SmrgCASE_ESC_IGNORE, 6454d522f475SmrgCASE_ESC_IGNORE, 6455d522f475SmrgCASE_ESC_IGNORE, 6456d522f475SmrgCASE_ESC_IGNORE, 6457d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 6458d522f475SmrgCASE_ESC_IGNORE, 6459d522f475SmrgCASE_ESC_IGNORE, 6460d522f475SmrgCASE_ESC_IGNORE, 6461d522f475SmrgCASE_ESC_IGNORE, 6462d522f475Smrg/* notsign hyphen registered macron */ 6463d522f475SmrgCASE_ESC_IGNORE, 6464d522f475SmrgCASE_ESC_IGNORE, 6465d522f475SmrgCASE_ESC_IGNORE, 6466d522f475SmrgCASE_ESC_IGNORE, 6467d522f475Smrg/* degree plusminus twosuperior threesuperior */ 6468d522f475SmrgCASE_GROUND_STATE, 6469d522f475SmrgCASE_GROUND_STATE, 6470d522f475SmrgCASE_GROUND_STATE, 6471d522f475SmrgCASE_GROUND_STATE, 6472d522f475Smrg/* acute mu paragraph periodcentered */ 6473d522f475SmrgCASE_GROUND_STATE, 6474d522f475SmrgCASE_GROUND_STATE, 6475d522f475SmrgCASE_GROUND_STATE, 6476d522f475SmrgCASE_GROUND_STATE, 6477d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 6478d522f475SmrgCASE_GROUND_STATE, 6479d522f475SmrgCASE_GROUND_STATE, 6480d522f475SmrgCASE_GROUND_STATE, 6481d522f475SmrgCASE_GROUND_STATE, 6482d522f475Smrg/* onequarter onehalf threequarters questiondown */ 6483d522f475SmrgCASE_GROUND_STATE, 6484d522f475SmrgCASE_GROUND_STATE, 6485d522f475SmrgCASE_GROUND_STATE, 6486d522f475SmrgCASE_GROUND_STATE, 6487d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 6488d522f475SmrgCASE_UTF8, 6489d522f475SmrgCASE_GROUND_STATE, 6490d522f475SmrgCASE_GROUND_STATE, 6491d522f475SmrgCASE_GROUND_STATE, 6492d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 6493d522f475SmrgCASE_GROUND_STATE, 6494d522f475SmrgCASE_GROUND_STATE, 6495d522f475SmrgCASE_GROUND_STATE, 6496d522f475SmrgCASE_UTF8, 6497d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 6498d522f475SmrgCASE_GROUND_STATE, 6499d522f475SmrgCASE_GROUND_STATE, 6500d522f475SmrgCASE_GROUND_STATE, 6501d522f475SmrgCASE_GROUND_STATE, 6502d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 6503d522f475SmrgCASE_GROUND_STATE, 6504d522f475SmrgCASE_GROUND_STATE, 6505d522f475SmrgCASE_GROUND_STATE, 6506d522f475SmrgCASE_GROUND_STATE, 6507d522f475Smrg/* Eth Ntilde Ograve Oacute */ 6508d522f475SmrgCASE_GROUND_STATE, 6509d522f475SmrgCASE_GROUND_STATE, 6510d522f475SmrgCASE_GROUND_STATE, 6511d522f475SmrgCASE_GROUND_STATE, 6512d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 6513d522f475SmrgCASE_GROUND_STATE, 6514d522f475SmrgCASE_GROUND_STATE, 6515d522f475SmrgCASE_GROUND_STATE, 6516d522f475SmrgCASE_GROUND_STATE, 6517d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 6518d522f475SmrgCASE_GROUND_STATE, 6519d522f475SmrgCASE_GROUND_STATE, 6520d522f475SmrgCASE_GROUND_STATE, 6521d522f475SmrgCASE_GROUND_STATE, 6522d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 6523d522f475SmrgCASE_GROUND_STATE, 6524d522f475SmrgCASE_GROUND_STATE, 6525d522f475SmrgCASE_GROUND_STATE, 6526d522f475SmrgCASE_GROUND_STATE, 6527d522f475Smrg/* agrave aacute acircumflex atilde */ 6528d522f475SmrgCASE_GROUND_STATE, 6529d522f475SmrgCASE_GROUND_STATE, 6530d522f475SmrgCASE_GROUND_STATE, 6531d522f475SmrgCASE_GROUND_STATE, 6532d522f475Smrg/* adiaeresis aring ae ccedilla */ 6533d522f475SmrgCASE_GROUND_STATE, 6534d522f475SmrgCASE_GROUND_STATE, 6535d522f475SmrgCASE_GROUND_STATE, 6536d522f475SmrgCASE_GROUND_STATE, 6537d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 6538d522f475SmrgCASE_GROUND_STATE, 6539d522f475SmrgCASE_GROUND_STATE, 6540d522f475SmrgCASE_GROUND_STATE, 6541d522f475SmrgCASE_GROUND_STATE, 6542d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 6543d522f475SmrgCASE_GROUND_STATE, 6544d522f475SmrgCASE_GROUND_STATE, 6545d522f475SmrgCASE_GROUND_STATE, 6546d522f475SmrgCASE_GROUND_STATE, 6547d522f475Smrg/* eth ntilde ograve oacute */ 6548d522f475SmrgCASE_GROUND_STATE, 6549d522f475SmrgCASE_GROUND_STATE, 6550d522f475SmrgCASE_GROUND_STATE, 6551d522f475SmrgCASE_GROUND_STATE, 6552d522f475Smrg/* ocircumflex otilde odiaeresis division */ 6553d522f475SmrgCASE_GROUND_STATE, 6554d522f475SmrgCASE_GROUND_STATE, 6555d522f475SmrgCASE_GROUND_STATE, 6556d522f475SmrgCASE_GROUND_STATE, 6557d522f475Smrg/* oslash ugrave uacute ucircumflex */ 6558d522f475SmrgCASE_GROUND_STATE, 6559d522f475SmrgCASE_GROUND_STATE, 6560d522f475SmrgCASE_GROUND_STATE, 6561d522f475SmrgCASE_GROUND_STATE, 6562d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 6563d522f475SmrgCASE_GROUND_STATE, 6564d522f475SmrgCASE_GROUND_STATE, 6565d522f475SmrgCASE_GROUND_STATE, 6566d522f475SmrgCASE_IGNORE, 6567d522f475Smrg}; 6568d522f475Smrg#endif /* OPT_WIDE_CHARS */ 6569d522f475Smrg 6570d522f475Smrg#if OPT_VT52_MODE 6571d522f475SmrgConst PARSE_T vt52_table[] = 6572d522f475Smrg{ 6573d522f475Smrg/* NUL SOH STX ETX */ 6574d522f475SmrgCASE_IGNORE, 6575d522f475SmrgCASE_IGNORE, 6576d522f475SmrgCASE_IGNORE, 6577d522f475SmrgCASE_IGNORE, 6578d522f475Smrg/* EOT ENQ ACK BEL */ 6579d522f475SmrgCASE_IGNORE, 6580d522f475SmrgCASE_ENQ, 6581d522f475SmrgCASE_IGNORE, 6582d522f475SmrgCASE_BELL, 6583d522f475Smrg/* BS HT NL VT */ 6584d522f475SmrgCASE_BS, 6585d522f475SmrgCASE_TAB, 6586d522f475SmrgCASE_VMOT, 6587d522f475SmrgCASE_VMOT, 6588d522f475Smrg/* NP CR SO SI */ 6589d522f475SmrgCASE_VMOT, 6590d522f475SmrgCASE_CR, 6591d522f475SmrgCASE_IGNORE, 6592d522f475SmrgCASE_IGNORE, 6593d522f475Smrg/* DLE DC1 DC2 DC3 */ 6594d522f475SmrgCASE_IGNORE, 6595d522f475SmrgCASE_IGNORE, 6596d522f475SmrgCASE_IGNORE, 6597d522f475SmrgCASE_IGNORE, 6598d522f475Smrg/* DC4 NAK SYN ETB */ 6599d522f475SmrgCASE_IGNORE, 6600d522f475SmrgCASE_IGNORE, 6601d522f475SmrgCASE_IGNORE, 6602d522f475SmrgCASE_IGNORE, 6603d522f475Smrg/* CAN EM SUB ESC */ 6604d522f475SmrgCASE_GROUND_STATE, 6605d522f475SmrgCASE_IGNORE, 6606d522f475SmrgCASE_GROUND_STATE, 6607d522f475SmrgCASE_ESC, 6608d522f475Smrg/* FS GS RS US */ 6609d522f475SmrgCASE_IGNORE, 6610d522f475SmrgCASE_IGNORE, 6611d522f475SmrgCASE_IGNORE, 6612d522f475SmrgCASE_IGNORE, 6613d522f475Smrg/* SP ! " # */ 6614d522f475SmrgCASE_PRINT, 6615d522f475SmrgCASE_PRINT, 6616d522f475SmrgCASE_PRINT, 6617d522f475SmrgCASE_PRINT, 6618d522f475Smrg/* $ % & ' */ 6619d522f475SmrgCASE_PRINT, 6620d522f475SmrgCASE_PRINT, 6621d522f475SmrgCASE_PRINT, 6622d522f475SmrgCASE_PRINT, 6623d522f475Smrg/* ( ) * + */ 6624d522f475SmrgCASE_PRINT, 6625d522f475SmrgCASE_PRINT, 6626d522f475SmrgCASE_PRINT, 6627d522f475SmrgCASE_PRINT, 6628d522f475Smrg/* , - . / */ 6629d522f475SmrgCASE_PRINT, 6630d522f475SmrgCASE_PRINT, 6631d522f475SmrgCASE_PRINT, 6632d522f475SmrgCASE_PRINT, 6633d522f475Smrg/* 0 1 2 3 */ 6634d522f475SmrgCASE_PRINT, 6635d522f475SmrgCASE_PRINT, 6636d522f475SmrgCASE_PRINT, 6637d522f475SmrgCASE_PRINT, 6638d522f475Smrg/* 4 5 6 7 */ 6639d522f475SmrgCASE_PRINT, 6640d522f475SmrgCASE_PRINT, 6641d522f475SmrgCASE_PRINT, 6642d522f475SmrgCASE_PRINT, 6643d522f475Smrg/* 8 9 : ; */ 6644d522f475SmrgCASE_PRINT, 6645d522f475SmrgCASE_PRINT, 6646d522f475SmrgCASE_PRINT, 6647d522f475SmrgCASE_PRINT, 6648d522f475Smrg/* < = > ? */ 6649d522f475SmrgCASE_PRINT, 6650d522f475SmrgCASE_PRINT, 6651d522f475SmrgCASE_PRINT, 6652d522f475SmrgCASE_PRINT, 6653d522f475Smrg/* @ A B C */ 6654d522f475SmrgCASE_PRINT, 6655d522f475SmrgCASE_PRINT, 6656d522f475SmrgCASE_PRINT, 6657d522f475SmrgCASE_PRINT, 6658d522f475Smrg/* D E F G */ 6659d522f475SmrgCASE_PRINT, 6660d522f475SmrgCASE_PRINT, 6661d522f475SmrgCASE_PRINT, 6662d522f475SmrgCASE_PRINT, 6663d522f475Smrg/* H I J K */ 6664d522f475SmrgCASE_PRINT, 6665d522f475SmrgCASE_PRINT, 6666d522f475SmrgCASE_PRINT, 6667d522f475SmrgCASE_PRINT, 6668d522f475Smrg/* L M N O */ 6669d522f475SmrgCASE_PRINT, 6670d522f475SmrgCASE_PRINT, 6671d522f475SmrgCASE_PRINT, 6672d522f475SmrgCASE_PRINT, 6673d522f475Smrg/* P Q R S */ 6674d522f475SmrgCASE_PRINT, 6675d522f475SmrgCASE_PRINT, 6676d522f475SmrgCASE_PRINT, 6677d522f475SmrgCASE_PRINT, 6678d522f475Smrg/* T U V W */ 6679d522f475SmrgCASE_PRINT, 6680d522f475SmrgCASE_PRINT, 6681d522f475SmrgCASE_PRINT, 6682d522f475SmrgCASE_PRINT, 6683d522f475Smrg/* X Y Z [ */ 6684d522f475SmrgCASE_PRINT, 6685d522f475SmrgCASE_PRINT, 6686d522f475SmrgCASE_PRINT, 6687d522f475SmrgCASE_PRINT, 6688d522f475Smrg/* \ ] ^ _ */ 6689d522f475SmrgCASE_PRINT, 6690d522f475SmrgCASE_PRINT, 6691d522f475SmrgCASE_PRINT, 6692d522f475SmrgCASE_PRINT, 6693d522f475Smrg/* ` a b c */ 6694d522f475SmrgCASE_PRINT, 6695d522f475SmrgCASE_PRINT, 6696d522f475SmrgCASE_PRINT, 6697d522f475SmrgCASE_PRINT, 6698d522f475Smrg/* d e f g */ 6699d522f475SmrgCASE_PRINT, 6700d522f475SmrgCASE_PRINT, 6701d522f475SmrgCASE_PRINT, 6702d522f475SmrgCASE_PRINT, 6703d522f475Smrg/* h i j k */ 6704d522f475SmrgCASE_PRINT, 6705d522f475SmrgCASE_PRINT, 6706d522f475SmrgCASE_PRINT, 6707d522f475SmrgCASE_PRINT, 6708d522f475Smrg/* l m n o */ 6709d522f475SmrgCASE_PRINT, 6710d522f475SmrgCASE_PRINT, 6711d522f475SmrgCASE_PRINT, 6712d522f475SmrgCASE_PRINT, 6713d522f475Smrg/* p q r s */ 6714d522f475SmrgCASE_PRINT, 6715d522f475SmrgCASE_PRINT, 6716d522f475SmrgCASE_PRINT, 6717d522f475SmrgCASE_PRINT, 6718d522f475Smrg/* t u v w */ 6719d522f475SmrgCASE_PRINT, 6720d522f475SmrgCASE_PRINT, 6721d522f475SmrgCASE_PRINT, 6722d522f475SmrgCASE_PRINT, 6723d522f475Smrg/* x y z { */ 6724d522f475SmrgCASE_PRINT, 6725d522f475SmrgCASE_PRINT, 6726d522f475SmrgCASE_PRINT, 6727d522f475SmrgCASE_PRINT, 6728d522f475Smrg/* | } ~ DEL */ 6729d522f475SmrgCASE_PRINT, 6730d522f475SmrgCASE_PRINT, 6731d522f475SmrgCASE_PRINT, 6732d522f475SmrgCASE_IGNORE, 6733d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 6734d522f475SmrgCASE_IGNORE, 6735d522f475SmrgCASE_IGNORE, 6736d522f475SmrgCASE_IGNORE, 6737d522f475SmrgCASE_IGNORE, 6738d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 6739d522f475SmrgCASE_IGNORE, 6740d522f475SmrgCASE_IGNORE, 6741d522f475SmrgCASE_IGNORE, 6742d522f475SmrgCASE_IGNORE, 6743d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 6744d522f475SmrgCASE_IGNORE, 6745d522f475SmrgCASE_IGNORE, 6746d522f475SmrgCASE_IGNORE, 6747d522f475SmrgCASE_IGNORE, 6748d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 6749d522f475SmrgCASE_IGNORE, 6750d522f475SmrgCASE_IGNORE, 6751d522f475SmrgCASE_IGNORE, 6752d522f475SmrgCASE_IGNORE, 6753d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 6754d522f475SmrgCASE_IGNORE, 6755d522f475SmrgCASE_IGNORE, 6756d522f475SmrgCASE_IGNORE, 6757d522f475SmrgCASE_IGNORE, 6758d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 6759d522f475SmrgCASE_IGNORE, 6760d522f475SmrgCASE_IGNORE, 6761d522f475SmrgCASE_IGNORE, 6762d522f475SmrgCASE_IGNORE, 6763d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 6764d522f475SmrgCASE_IGNORE, 6765d522f475SmrgCASE_IGNORE, 6766d522f475SmrgCASE_IGNORE, 6767d522f475SmrgCASE_IGNORE, 6768d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 6769d522f475SmrgCASE_IGNORE, 6770d522f475SmrgCASE_IGNORE, 6771d522f475SmrgCASE_IGNORE, 6772d522f475SmrgCASE_IGNORE, 6773d522f475Smrg/* nobreakspace exclamdown cent sterling */ 6774d522f475SmrgCASE_IGNORE, 6775d522f475SmrgCASE_IGNORE, 6776d522f475SmrgCASE_IGNORE, 6777d522f475SmrgCASE_IGNORE, 6778d522f475Smrg/* currency yen brokenbar section */ 6779d522f475SmrgCASE_IGNORE, 6780d522f475SmrgCASE_IGNORE, 6781d522f475SmrgCASE_IGNORE, 6782d522f475SmrgCASE_IGNORE, 6783d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 6784d522f475SmrgCASE_IGNORE, 6785d522f475SmrgCASE_IGNORE, 6786d522f475SmrgCASE_IGNORE, 6787d522f475SmrgCASE_IGNORE, 6788d522f475Smrg/* notsign hyphen registered macron */ 6789d522f475SmrgCASE_IGNORE, 6790d522f475SmrgCASE_IGNORE, 6791d522f475SmrgCASE_IGNORE, 6792d522f475SmrgCASE_IGNORE, 6793d522f475Smrg/* degree plusminus twosuperior threesuperior */ 6794d522f475SmrgCASE_IGNORE, 6795d522f475SmrgCASE_IGNORE, 6796d522f475SmrgCASE_IGNORE, 6797d522f475SmrgCASE_IGNORE, 6798d522f475Smrg/* acute mu paragraph periodcentered */ 6799d522f475SmrgCASE_IGNORE, 6800d522f475SmrgCASE_IGNORE, 6801d522f475SmrgCASE_IGNORE, 6802d522f475SmrgCASE_IGNORE, 6803d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 6804d522f475SmrgCASE_IGNORE, 6805d522f475SmrgCASE_IGNORE, 6806d522f475SmrgCASE_IGNORE, 6807d522f475SmrgCASE_IGNORE, 6808d522f475Smrg/* onequarter onehalf threequarters questiondown */ 6809d522f475SmrgCASE_IGNORE, 6810d522f475SmrgCASE_IGNORE, 6811d522f475SmrgCASE_IGNORE, 6812d522f475SmrgCASE_IGNORE, 6813d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 6814d522f475SmrgCASE_IGNORE, 6815d522f475SmrgCASE_IGNORE, 6816d522f475SmrgCASE_IGNORE, 6817d522f475SmrgCASE_IGNORE, 6818d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 6819d522f475SmrgCASE_IGNORE, 6820d522f475SmrgCASE_IGNORE, 6821d522f475SmrgCASE_IGNORE, 6822d522f475SmrgCASE_IGNORE, 6823d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 6824d522f475SmrgCASE_IGNORE, 6825d522f475SmrgCASE_IGNORE, 6826d522f475SmrgCASE_IGNORE, 6827d522f475SmrgCASE_IGNORE, 6828d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 6829d522f475SmrgCASE_IGNORE, 6830d522f475SmrgCASE_IGNORE, 6831d522f475SmrgCASE_IGNORE, 6832d522f475SmrgCASE_IGNORE, 6833d522f475Smrg/* Eth Ntilde Ograve Oacute */ 6834d522f475SmrgCASE_IGNORE, 6835d522f475SmrgCASE_IGNORE, 6836d522f475SmrgCASE_IGNORE, 6837d522f475SmrgCASE_IGNORE, 6838d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 6839d522f475SmrgCASE_IGNORE, 6840d522f475SmrgCASE_IGNORE, 6841d522f475SmrgCASE_IGNORE, 6842d522f475SmrgCASE_IGNORE, 6843d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 6844d522f475SmrgCASE_IGNORE, 6845d522f475SmrgCASE_IGNORE, 6846d522f475SmrgCASE_IGNORE, 6847d522f475SmrgCASE_IGNORE, 6848d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 6849d522f475SmrgCASE_IGNORE, 6850d522f475SmrgCASE_IGNORE, 6851d522f475SmrgCASE_IGNORE, 6852d522f475SmrgCASE_IGNORE, 6853d522f475Smrg/* agrave aacute acircumflex atilde */ 6854d522f475SmrgCASE_IGNORE, 6855d522f475SmrgCASE_IGNORE, 6856d522f475SmrgCASE_IGNORE, 6857d522f475SmrgCASE_IGNORE, 6858d522f475Smrg/* adiaeresis aring ae ccedilla */ 6859d522f475SmrgCASE_IGNORE, 6860d522f475SmrgCASE_IGNORE, 6861d522f475SmrgCASE_IGNORE, 6862d522f475SmrgCASE_IGNORE, 6863d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 6864d522f475SmrgCASE_IGNORE, 6865d522f475SmrgCASE_IGNORE, 6866d522f475SmrgCASE_IGNORE, 6867d522f475SmrgCASE_IGNORE, 6868d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 6869d522f475SmrgCASE_IGNORE, 6870d522f475SmrgCASE_IGNORE, 6871d522f475SmrgCASE_IGNORE, 6872d522f475SmrgCASE_IGNORE, 6873d522f475Smrg/* eth ntilde ograve oacute */ 6874d522f475SmrgCASE_IGNORE, 6875d522f475SmrgCASE_IGNORE, 6876d522f475SmrgCASE_IGNORE, 6877d522f475SmrgCASE_IGNORE, 6878d522f475Smrg/* ocircumflex otilde odiaeresis division */ 6879d522f475SmrgCASE_IGNORE, 6880d522f475SmrgCASE_IGNORE, 6881d522f475SmrgCASE_IGNORE, 6882d522f475SmrgCASE_IGNORE, 6883d522f475Smrg/* oslash ugrave uacute ucircumflex */ 6884d522f475SmrgCASE_IGNORE, 6885d522f475SmrgCASE_IGNORE, 6886d522f475SmrgCASE_IGNORE, 6887d522f475SmrgCASE_IGNORE, 6888d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 6889d522f475SmrgCASE_IGNORE, 6890d522f475SmrgCASE_IGNORE, 6891d522f475SmrgCASE_IGNORE, 6892d522f475SmrgCASE_IGNORE, 6893d522f475Smrg}; 6894d522f475Smrg 6895d522f475SmrgConst PARSE_T vt52_esc_table[] = 6896d522f475Smrg{ 6897d522f475Smrg/* NUL SOH STX ETX */ 6898d522f475SmrgCASE_IGNORE, 6899d522f475SmrgCASE_IGNORE, 6900d522f475SmrgCASE_IGNORE, 6901d522f475SmrgCASE_IGNORE, 6902d522f475Smrg/* EOT ENQ ACK BEL */ 6903d522f475SmrgCASE_IGNORE, 6904d522f475SmrgCASE_ENQ, 6905d522f475SmrgCASE_IGNORE, 6906d522f475SmrgCASE_BELL, 6907d522f475Smrg/* BS HT NL VT */ 6908d522f475SmrgCASE_BS, 6909d522f475SmrgCASE_TAB, 6910d522f475SmrgCASE_VMOT, 6911d522f475SmrgCASE_VMOT, 6912d522f475Smrg/* NP CR SO SI */ 6913d522f475SmrgCASE_VMOT, 6914d522f475SmrgCASE_CR, 6915d522f475SmrgCASE_IGNORE, 6916d522f475SmrgCASE_IGNORE, 6917d522f475Smrg/* DLE DC1 DC2 DC3 */ 6918d522f475SmrgCASE_IGNORE, 6919d522f475SmrgCASE_IGNORE, 6920d522f475SmrgCASE_IGNORE, 6921d522f475SmrgCASE_IGNORE, 6922d522f475Smrg/* DC4 NAK SYN ETB */ 6923d522f475SmrgCASE_IGNORE, 6924d522f475SmrgCASE_IGNORE, 6925d522f475SmrgCASE_IGNORE, 6926d522f475SmrgCASE_IGNORE, 6927d522f475Smrg/* CAN EM SUB ESC */ 6928d522f475SmrgCASE_GROUND_STATE, 6929d522f475SmrgCASE_IGNORE, 6930d522f475SmrgCASE_GROUND_STATE, 6931d522f475SmrgCASE_ESC, 6932d522f475Smrg/* FS GS RS US */ 6933d522f475SmrgCASE_IGNORE, 6934d522f475SmrgCASE_IGNORE, 6935d522f475SmrgCASE_IGNORE, 6936d522f475SmrgCASE_IGNORE, 6937d522f475Smrg/* SP ! " # */ 6938d522f475SmrgCASE_VT52_IGNORE, 6939d522f475SmrgCASE_VT52_IGNORE, 6940d522f475SmrgCASE_VT52_IGNORE, 6941d522f475SmrgCASE_VT52_IGNORE, 6942d522f475Smrg/* $ % & ' */ 6943d522f475SmrgCASE_VT52_IGNORE, 6944d522f475SmrgCASE_VT52_IGNORE, 6945d522f475SmrgCASE_VT52_IGNORE, 6946d522f475SmrgCASE_VT52_IGNORE, 6947d522f475Smrg/* ( ) * + */ 6948d522f475SmrgCASE_VT52_IGNORE, 6949d522f475SmrgCASE_VT52_IGNORE, 6950d522f475SmrgCASE_VT52_IGNORE, 6951d522f475SmrgCASE_VT52_IGNORE, 6952d522f475Smrg/* , - . / */ 6953d522f475SmrgCASE_VT52_IGNORE, 6954d522f475SmrgCASE_VT52_IGNORE, 6955d522f475SmrgCASE_VT52_IGNORE, 6956d522f475SmrgCASE_VT52_IGNORE, 6957d522f475Smrg/* 0 1 2 3 */ 6958d522f475SmrgCASE_GROUND_STATE, 6959d522f475SmrgCASE_GROUND_STATE, 6960d522f475SmrgCASE_GROUND_STATE, 6961d522f475SmrgCASE_GROUND_STATE, 6962d522f475Smrg/* 4 5 6 7 */ 6963d522f475SmrgCASE_GROUND_STATE, 6964d522f475SmrgCASE_GROUND_STATE, 6965d522f475SmrgCASE_GROUND_STATE, 6966d522f475SmrgCASE_GROUND_STATE, 6967d522f475Smrg/* 8 9 : ; */ 6968d522f475SmrgCASE_GROUND_STATE, 6969d522f475SmrgCASE_GROUND_STATE, 6970d522f475SmrgCASE_GROUND_STATE, 6971d522f475SmrgCASE_GROUND_STATE, 6972d522f475Smrg/* < = > ? */ 6973d522f475SmrgCASE_VT52_FINISH, 6974d522f475SmrgCASE_DECKPAM, 6975d522f475SmrgCASE_DECKPNM, 6976d522f475SmrgCASE_GROUND_STATE, 6977d522f475Smrg/* @ A B C */ 6978d522f475SmrgCASE_GROUND_STATE, 6979d522f475SmrgCASE_CUU, 6980d522f475SmrgCASE_CUD, 6981d522f475SmrgCASE_CUF, 6982d522f475Smrg/* D E F G */ 6983d522f475SmrgCASE_CUB, 6984d522f475SmrgCASE_GROUND_STATE, 6985d522f475SmrgCASE_SO, 6986d522f475SmrgCASE_SI, 6987d522f475Smrg/* H I J K */ 6988d522f475SmrgCASE_CUP, 6989d522f475SmrgCASE_RI, 6990d522f475SmrgCASE_ED, 6991d522f475SmrgCASE_EL, 6992d522f475Smrg/* L M N O */ 6993d522f475SmrgCASE_GROUND_STATE, 6994d522f475SmrgCASE_GROUND_STATE, 6995d522f475SmrgCASE_GROUND_STATE, 6996d522f475SmrgCASE_GROUND_STATE, 6997d522f475Smrg/* P Q R S */ 6998d522f475SmrgCASE_GROUND_STATE, 6999d522f475SmrgCASE_GROUND_STATE, 7000d522f475SmrgCASE_GROUND_STATE, 7001d522f475SmrgCASE_GROUND_STATE, 7002d522f475Smrg/* T U V W */ 7003d522f475SmrgCASE_GROUND_STATE, 7004d522f475SmrgCASE_GROUND_STATE, 7005d522f475SmrgCASE_GROUND_STATE, 7006d522f475SmrgCASE_GROUND_STATE, 7007d522f475Smrg/* X Y Z [ */ 7008d522f475SmrgCASE_GROUND_STATE, 7009d522f475SmrgCASE_VT52_CUP, 7010d522f475SmrgCASE_DECID, 7011d522f475SmrgCASE_GROUND_STATE, 7012d522f475Smrg/* \ ] ^ _ */ 7013d522f475SmrgCASE_GROUND_STATE, 7014d522f475SmrgCASE_GROUND_STATE, 7015d522f475SmrgCASE_GROUND_STATE, 7016d522f475SmrgCASE_GROUND_STATE, 7017d522f475Smrg/* ` a b c */ 7018d522f475SmrgCASE_GROUND_STATE, 7019d522f475SmrgCASE_GROUND_STATE, 7020d522f475SmrgCASE_GROUND_STATE, 7021d522f475SmrgCASE_GROUND_STATE, 7022d522f475Smrg/* d e f g */ 7023d522f475SmrgCASE_GROUND_STATE, 7024d522f475SmrgCASE_GROUND_STATE, 7025d522f475SmrgCASE_GROUND_STATE, 7026d522f475SmrgCASE_GROUND_STATE, 7027d522f475Smrg/* h i j k */ 7028d522f475SmrgCASE_GROUND_STATE, 7029d522f475SmrgCASE_GROUND_STATE, 7030d522f475SmrgCASE_GROUND_STATE, 7031d522f475SmrgCASE_GROUND_STATE, 7032d522f475Smrg/* l m n o */ 7033d522f475SmrgCASE_GROUND_STATE, 7034d522f475SmrgCASE_GROUND_STATE, 7035d522f475SmrgCASE_GROUND_STATE, 7036d522f475SmrgCASE_GROUND_STATE, 7037d522f475Smrg/* p q r s */ 7038d522f475SmrgCASE_GROUND_STATE, 7039d522f475SmrgCASE_GROUND_STATE, 7040d522f475SmrgCASE_GROUND_STATE, 7041d522f475SmrgCASE_GROUND_STATE, 7042d522f475Smrg/* t u v w */ 7043d522f475SmrgCASE_GROUND_STATE, 7044d522f475SmrgCASE_GROUND_STATE, 7045d522f475SmrgCASE_GROUND_STATE, 7046d522f475SmrgCASE_GROUND_STATE, 7047d522f475Smrg/* x y z { */ 7048d522f475SmrgCASE_GROUND_STATE, 7049d522f475SmrgCASE_GROUND_STATE, 7050d522f475SmrgCASE_GROUND_STATE, 7051d522f475SmrgCASE_GROUND_STATE, 7052d522f475Smrg/* | } ~ DEL */ 7053d522f475SmrgCASE_GROUND_STATE, 7054d522f475SmrgCASE_GROUND_STATE, 7055d522f475SmrgCASE_GROUND_STATE, 7056d522f475SmrgCASE_IGNORE, 7057d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 7058d522f475SmrgCASE_IGNORE, 7059d522f475SmrgCASE_IGNORE, 7060d522f475SmrgCASE_IGNORE, 7061d522f475SmrgCASE_IGNORE, 7062d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 7063d522f475SmrgCASE_IGNORE, 7064d522f475SmrgCASE_IGNORE, 7065d522f475SmrgCASE_IGNORE, 7066d522f475SmrgCASE_IGNORE, 7067d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 7068d522f475SmrgCASE_IGNORE, 7069d522f475SmrgCASE_IGNORE, 7070d522f475SmrgCASE_IGNORE, 7071d522f475SmrgCASE_IGNORE, 7072d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 7073d522f475SmrgCASE_IGNORE, 7074d522f475SmrgCASE_IGNORE, 7075d522f475SmrgCASE_IGNORE, 7076d522f475SmrgCASE_IGNORE, 7077d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 7078d522f475SmrgCASE_IGNORE, 7079d522f475SmrgCASE_IGNORE, 7080d522f475SmrgCASE_IGNORE, 7081d522f475SmrgCASE_IGNORE, 7082d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 7083d522f475SmrgCASE_IGNORE, 7084d522f475SmrgCASE_IGNORE, 7085d522f475SmrgCASE_IGNORE, 7086d522f475SmrgCASE_IGNORE, 7087d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 7088d522f475SmrgCASE_IGNORE, 7089d522f475SmrgCASE_IGNORE, 7090d522f475SmrgCASE_IGNORE, 7091d522f475SmrgCASE_IGNORE, 7092d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 7093d522f475SmrgCASE_IGNORE, 7094d522f475SmrgCASE_IGNORE, 7095d522f475SmrgCASE_IGNORE, 7096d522f475SmrgCASE_IGNORE, 7097d522f475Smrg/* nobreakspace exclamdown cent sterling */ 7098d522f475SmrgCASE_IGNORE, 7099d522f475SmrgCASE_IGNORE, 7100d522f475SmrgCASE_IGNORE, 7101d522f475SmrgCASE_IGNORE, 7102d522f475Smrg/* currency yen brokenbar section */ 7103d522f475SmrgCASE_IGNORE, 7104d522f475SmrgCASE_IGNORE, 7105d522f475SmrgCASE_IGNORE, 7106d522f475SmrgCASE_IGNORE, 7107d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 7108d522f475SmrgCASE_IGNORE, 7109d522f475SmrgCASE_IGNORE, 7110d522f475SmrgCASE_IGNORE, 7111d522f475SmrgCASE_IGNORE, 7112d522f475Smrg/* notsign hyphen registered macron */ 7113d522f475SmrgCASE_IGNORE, 7114d522f475SmrgCASE_IGNORE, 7115d522f475SmrgCASE_IGNORE, 7116d522f475SmrgCASE_IGNORE, 7117d522f475Smrg/* degree plusminus twosuperior threesuperior */ 7118d522f475SmrgCASE_IGNORE, 7119d522f475SmrgCASE_IGNORE, 7120d522f475SmrgCASE_IGNORE, 7121d522f475SmrgCASE_IGNORE, 7122d522f475Smrg/* acute mu paragraph periodcentered */ 7123d522f475SmrgCASE_IGNORE, 7124d522f475SmrgCASE_IGNORE, 7125d522f475SmrgCASE_IGNORE, 7126d522f475SmrgCASE_IGNORE, 7127d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 7128d522f475SmrgCASE_IGNORE, 7129d522f475SmrgCASE_IGNORE, 7130d522f475SmrgCASE_IGNORE, 7131d522f475SmrgCASE_IGNORE, 7132d522f475Smrg/* onequarter onehalf threequarters questiondown */ 7133d522f475SmrgCASE_IGNORE, 7134d522f475SmrgCASE_IGNORE, 7135d522f475SmrgCASE_IGNORE, 7136d522f475SmrgCASE_IGNORE, 7137d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 7138d522f475SmrgCASE_IGNORE, 7139d522f475SmrgCASE_IGNORE, 7140d522f475SmrgCASE_IGNORE, 7141d522f475SmrgCASE_IGNORE, 7142d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 7143d522f475SmrgCASE_IGNORE, 7144d522f475SmrgCASE_IGNORE, 7145d522f475SmrgCASE_IGNORE, 7146d522f475SmrgCASE_IGNORE, 7147d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 7148d522f475SmrgCASE_IGNORE, 7149d522f475SmrgCASE_IGNORE, 7150d522f475SmrgCASE_IGNORE, 7151d522f475SmrgCASE_IGNORE, 7152d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 7153d522f475SmrgCASE_IGNORE, 7154d522f475SmrgCASE_IGNORE, 7155d522f475SmrgCASE_IGNORE, 7156d522f475SmrgCASE_IGNORE, 7157d522f475Smrg/* Eth Ntilde Ograve Oacute */ 7158d522f475SmrgCASE_IGNORE, 7159d522f475SmrgCASE_IGNORE, 7160d522f475SmrgCASE_IGNORE, 7161d522f475SmrgCASE_IGNORE, 7162d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 7163d522f475SmrgCASE_IGNORE, 7164d522f475SmrgCASE_IGNORE, 7165d522f475SmrgCASE_IGNORE, 7166d522f475SmrgCASE_IGNORE, 7167d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 7168d522f475SmrgCASE_IGNORE, 7169d522f475SmrgCASE_IGNORE, 7170d522f475SmrgCASE_IGNORE, 7171d522f475SmrgCASE_IGNORE, 7172d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 7173d522f475SmrgCASE_IGNORE, 7174d522f475SmrgCASE_IGNORE, 7175d522f475SmrgCASE_IGNORE, 7176d522f475SmrgCASE_IGNORE, 7177d522f475Smrg/* agrave aacute acircumflex atilde */ 7178d522f475SmrgCASE_IGNORE, 7179d522f475SmrgCASE_IGNORE, 7180d522f475SmrgCASE_IGNORE, 7181d522f475SmrgCASE_IGNORE, 7182d522f475Smrg/* adiaeresis aring ae ccedilla */ 7183d522f475SmrgCASE_IGNORE, 7184d522f475SmrgCASE_IGNORE, 7185d522f475SmrgCASE_IGNORE, 7186d522f475SmrgCASE_IGNORE, 7187d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 7188d522f475SmrgCASE_IGNORE, 7189d522f475SmrgCASE_IGNORE, 7190d522f475SmrgCASE_IGNORE, 7191d522f475SmrgCASE_IGNORE, 7192d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 7193d522f475SmrgCASE_IGNORE, 7194d522f475SmrgCASE_IGNORE, 7195d522f475SmrgCASE_IGNORE, 7196d522f475SmrgCASE_IGNORE, 7197d522f475Smrg/* eth ntilde ograve oacute */ 7198d522f475SmrgCASE_IGNORE, 7199d522f475SmrgCASE_IGNORE, 7200d522f475SmrgCASE_IGNORE, 7201d522f475SmrgCASE_IGNORE, 7202d522f475Smrg/* ocircumflex otilde odiaeresis division */ 7203d522f475SmrgCASE_IGNORE, 7204d522f475SmrgCASE_IGNORE, 7205d522f475SmrgCASE_IGNORE, 7206d522f475SmrgCASE_IGNORE, 7207d522f475Smrg/* oslash ugrave uacute ucircumflex */ 7208d522f475SmrgCASE_IGNORE, 7209d522f475SmrgCASE_IGNORE, 7210d522f475SmrgCASE_IGNORE, 7211d522f475SmrgCASE_IGNORE, 7212d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 7213d522f475SmrgCASE_IGNORE, 7214d522f475SmrgCASE_IGNORE, 7215d522f475SmrgCASE_IGNORE, 7216d522f475SmrgCASE_IGNORE, 7217d522f475Smrg}; 7218d522f475Smrg 7219d522f475SmrgConst PARSE_T vt52_ignore_table[] = 7220d522f475Smrg{ 7221d522f475Smrg/* NUL SOH STX ETX */ 7222d522f475SmrgCASE_IGNORE, 7223d522f475SmrgCASE_IGNORE, 7224d522f475SmrgCASE_IGNORE, 7225d522f475SmrgCASE_IGNORE, 7226d522f475Smrg/* EOT ENQ ACK BEL */ 7227d522f475SmrgCASE_IGNORE, 7228d522f475SmrgCASE_ENQ, 7229d522f475SmrgCASE_IGNORE, 7230d522f475SmrgCASE_BELL, 7231d522f475Smrg/* BS HT NL VT */ 7232d522f475SmrgCASE_BS, 7233d522f475SmrgCASE_TAB, 7234d522f475SmrgCASE_VMOT, 7235d522f475SmrgCASE_VMOT, 7236d522f475Smrg/* NP CR SO SI */ 7237d522f475SmrgCASE_VMOT, 7238d522f475SmrgCASE_CR, 7239d522f475SmrgCASE_IGNORE, 7240d522f475SmrgCASE_IGNORE, 7241d522f475Smrg/* DLE DC1 DC2 DC3 */ 7242d522f475SmrgCASE_IGNORE, 7243d522f475SmrgCASE_IGNORE, 7244d522f475SmrgCASE_IGNORE, 7245d522f475SmrgCASE_IGNORE, 7246d522f475Smrg/* DC4 NAK SYN ETB */ 7247d522f475SmrgCASE_IGNORE, 7248d522f475SmrgCASE_IGNORE, 7249d522f475SmrgCASE_IGNORE, 7250d522f475SmrgCASE_IGNORE, 7251d522f475Smrg/* CAN EM SUB ESC */ 7252d522f475SmrgCASE_GROUND_STATE, 7253d522f475SmrgCASE_IGNORE, 7254d522f475SmrgCASE_GROUND_STATE, 7255d522f475SmrgCASE_ESC, 7256d522f475Smrg/* FS GS RS US */ 7257d522f475SmrgCASE_IGNORE, 7258d522f475SmrgCASE_IGNORE, 7259d522f475SmrgCASE_IGNORE, 7260d522f475SmrgCASE_IGNORE, 7261d522f475Smrg/* SP ! " # */ 7262d522f475SmrgCASE_IGNORE, 7263d522f475SmrgCASE_IGNORE, 7264d522f475SmrgCASE_IGNORE, 7265d522f475SmrgCASE_IGNORE, 7266d522f475Smrg/* $ % & ' */ 7267d522f475SmrgCASE_IGNORE, 7268d522f475SmrgCASE_IGNORE, 7269d522f475SmrgCASE_IGNORE, 7270d522f475SmrgCASE_IGNORE, 7271d522f475Smrg/* ( ) * + */ 7272d522f475SmrgCASE_IGNORE, 7273d522f475SmrgCASE_IGNORE, 7274d522f475SmrgCASE_IGNORE, 7275d522f475SmrgCASE_IGNORE, 7276d522f475Smrg/* , - . / */ 7277d522f475SmrgCASE_IGNORE, 7278d522f475SmrgCASE_IGNORE, 7279d522f475SmrgCASE_IGNORE, 7280d522f475SmrgCASE_IGNORE, 7281d522f475Smrg/* 0 1 2 3 */ 7282d522f475SmrgCASE_GROUND_STATE, 7283d522f475SmrgCASE_GROUND_STATE, 7284d522f475SmrgCASE_GROUND_STATE, 7285d522f475SmrgCASE_GROUND_STATE, 7286d522f475Smrg/* 4 5 6 7 */ 7287d522f475SmrgCASE_GROUND_STATE, 7288d522f475SmrgCASE_GROUND_STATE, 7289d522f475SmrgCASE_GROUND_STATE, 7290d522f475SmrgCASE_GROUND_STATE, 7291d522f475Smrg/* 8 9 : ; */ 7292d522f475SmrgCASE_GROUND_STATE, 7293d522f475SmrgCASE_GROUND_STATE, 7294d522f475SmrgCASE_GROUND_STATE, 7295d522f475SmrgCASE_GROUND_STATE, 7296d522f475Smrg/* < = > ? */ 7297d522f475SmrgCASE_GROUND_STATE, 7298d522f475SmrgCASE_GROUND_STATE, 7299d522f475SmrgCASE_GROUND_STATE, 7300d522f475SmrgCASE_GROUND_STATE, 7301d522f475Smrg/* @ A B C */ 7302d522f475SmrgCASE_GROUND_STATE, 7303d522f475SmrgCASE_GROUND_STATE, 7304d522f475SmrgCASE_GROUND_STATE, 7305d522f475SmrgCASE_GROUND_STATE, 7306d522f475Smrg/* D E F G */ 7307d522f475SmrgCASE_GROUND_STATE, 7308d522f475SmrgCASE_GROUND_STATE, 7309d522f475SmrgCASE_GROUND_STATE, 7310d522f475SmrgCASE_GROUND_STATE, 7311d522f475Smrg/* H I J K */ 7312d522f475SmrgCASE_GROUND_STATE, 7313d522f475SmrgCASE_GROUND_STATE, 7314d522f475SmrgCASE_GROUND_STATE, 7315d522f475SmrgCASE_GROUND_STATE, 7316d522f475Smrg/* L M N O */ 7317d522f475SmrgCASE_GROUND_STATE, 7318d522f475SmrgCASE_GROUND_STATE, 7319d522f475SmrgCASE_GROUND_STATE, 7320d522f475SmrgCASE_GROUND_STATE, 7321d522f475Smrg/* P Q R S */ 7322d522f475SmrgCASE_GROUND_STATE, 7323d522f475SmrgCASE_GROUND_STATE, 7324d522f475SmrgCASE_GROUND_STATE, 7325d522f475SmrgCASE_GROUND_STATE, 7326d522f475Smrg/* T U V W */ 7327d522f475SmrgCASE_GROUND_STATE, 7328d522f475SmrgCASE_GROUND_STATE, 7329d522f475SmrgCASE_GROUND_STATE, 7330d522f475SmrgCASE_GROUND_STATE, 7331d522f475Smrg/* X Y Z [ */ 7332d522f475SmrgCASE_GROUND_STATE, 7333d522f475SmrgCASE_GROUND_STATE, 7334d522f475SmrgCASE_GROUND_STATE, 7335d522f475SmrgCASE_GROUND_STATE, 7336d522f475Smrg/* \ ] ^ _ */ 7337d522f475SmrgCASE_GROUND_STATE, 7338d522f475SmrgCASE_GROUND_STATE, 7339d522f475SmrgCASE_GROUND_STATE, 7340d522f475SmrgCASE_GROUND_STATE, 7341d522f475Smrg/* ` a b c */ 7342d522f475SmrgCASE_GROUND_STATE, 7343d522f475SmrgCASE_GROUND_STATE, 7344d522f475SmrgCASE_GROUND_STATE, 7345d522f475SmrgCASE_GROUND_STATE, 7346d522f475Smrg/* d e f g */ 7347d522f475SmrgCASE_GROUND_STATE, 7348d522f475SmrgCASE_GROUND_STATE, 7349d522f475SmrgCASE_GROUND_STATE, 7350d522f475SmrgCASE_GROUND_STATE, 7351d522f475Smrg/* h i j k */ 7352d522f475SmrgCASE_GROUND_STATE, 7353d522f475SmrgCASE_GROUND_STATE, 7354d522f475SmrgCASE_GROUND_STATE, 7355d522f475SmrgCASE_GROUND_STATE, 7356d522f475Smrg/* l m n o */ 7357d522f475SmrgCASE_GROUND_STATE, 7358d522f475SmrgCASE_GROUND_STATE, 7359d522f475SmrgCASE_GROUND_STATE, 7360d522f475SmrgCASE_GROUND_STATE, 7361d522f475Smrg/* p q r s */ 7362d522f475SmrgCASE_GROUND_STATE, 7363d522f475SmrgCASE_GROUND_STATE, 7364d522f475SmrgCASE_GROUND_STATE, 7365d522f475SmrgCASE_GROUND_STATE, 7366d522f475Smrg/* t u v w */ 7367d522f475SmrgCASE_GROUND_STATE, 7368d522f475SmrgCASE_GROUND_STATE, 7369d522f475SmrgCASE_GROUND_STATE, 7370d522f475SmrgCASE_GROUND_STATE, 7371d522f475Smrg/* x y z { */ 7372d522f475SmrgCASE_GROUND_STATE, 7373d522f475SmrgCASE_GROUND_STATE, 7374d522f475SmrgCASE_GROUND_STATE, 7375d522f475SmrgCASE_GROUND_STATE, 7376d522f475Smrg/* | } ~ DEL */ 7377d522f475SmrgCASE_GROUND_STATE, 7378d522f475SmrgCASE_GROUND_STATE, 7379d522f475SmrgCASE_GROUND_STATE, 7380d522f475SmrgCASE_IGNORE, 7381d522f475Smrg/* 0x80 0x81 0x82 0x83 */ 7382d522f475SmrgCASE_IGNORE, 7383d522f475SmrgCASE_IGNORE, 7384d522f475SmrgCASE_IGNORE, 7385d522f475SmrgCASE_IGNORE, 7386d522f475Smrg/* 0x84 0x85 0x86 0x87 */ 7387d522f475SmrgCASE_IGNORE, 7388d522f475SmrgCASE_IGNORE, 7389d522f475SmrgCASE_IGNORE, 7390d522f475SmrgCASE_IGNORE, 7391d522f475Smrg/* 0x88 0x89 0x8a 0x8b */ 7392d522f475SmrgCASE_IGNORE, 7393d522f475SmrgCASE_IGNORE, 7394d522f475SmrgCASE_IGNORE, 7395d522f475SmrgCASE_IGNORE, 7396d522f475Smrg/* 0x8c 0x8d 0x8e 0x8f */ 7397d522f475SmrgCASE_IGNORE, 7398d522f475SmrgCASE_IGNORE, 7399d522f475SmrgCASE_IGNORE, 7400d522f475SmrgCASE_IGNORE, 7401d522f475Smrg/* 0x90 0x91 0x92 0x93 */ 7402d522f475SmrgCASE_IGNORE, 7403d522f475SmrgCASE_IGNORE, 7404d522f475SmrgCASE_IGNORE, 7405d522f475SmrgCASE_IGNORE, 7406d522f475Smrg/* 0x94 0x95 0x96 0x97 */ 7407d522f475SmrgCASE_IGNORE, 7408d522f475SmrgCASE_IGNORE, 7409d522f475SmrgCASE_IGNORE, 7410d522f475SmrgCASE_IGNORE, 7411d522f475Smrg/* 0x98 0x99 0x9a 0x9b */ 7412d522f475SmrgCASE_IGNORE, 7413d522f475SmrgCASE_IGNORE, 7414d522f475SmrgCASE_IGNORE, 7415d522f475SmrgCASE_IGNORE, 7416d522f475Smrg/* 0x9c 0x9d 0x9e 0x9f */ 7417d522f475SmrgCASE_IGNORE, 7418d522f475SmrgCASE_IGNORE, 7419d522f475SmrgCASE_IGNORE, 7420d522f475SmrgCASE_IGNORE, 7421d522f475Smrg/* nobreakspace exclamdown cent sterling */ 7422d522f475SmrgCASE_IGNORE, 7423d522f475SmrgCASE_IGNORE, 7424d522f475SmrgCASE_IGNORE, 7425d522f475SmrgCASE_IGNORE, 7426d522f475Smrg/* currency yen brokenbar section */ 7427d522f475SmrgCASE_IGNORE, 7428d522f475SmrgCASE_IGNORE, 7429d522f475SmrgCASE_IGNORE, 7430d522f475SmrgCASE_IGNORE, 7431d522f475Smrg/* diaeresis copyright ordfeminine guillemotleft */ 7432d522f475SmrgCASE_IGNORE, 7433d522f475SmrgCASE_IGNORE, 7434d522f475SmrgCASE_IGNORE, 7435d522f475SmrgCASE_IGNORE, 7436d522f475Smrg/* notsign hyphen registered macron */ 7437d522f475SmrgCASE_IGNORE, 7438d522f475SmrgCASE_IGNORE, 7439d522f475SmrgCASE_IGNORE, 7440d522f475SmrgCASE_IGNORE, 7441d522f475Smrg/* degree plusminus twosuperior threesuperior */ 7442d522f475SmrgCASE_IGNORE, 7443d522f475SmrgCASE_IGNORE, 7444d522f475SmrgCASE_IGNORE, 7445d522f475SmrgCASE_IGNORE, 7446d522f475Smrg/* acute mu paragraph periodcentered */ 7447d522f475SmrgCASE_IGNORE, 7448d522f475SmrgCASE_IGNORE, 7449d522f475SmrgCASE_IGNORE, 7450d522f475SmrgCASE_IGNORE, 7451d522f475Smrg/* cedilla onesuperior masculine guillemotright */ 7452d522f475SmrgCASE_IGNORE, 7453d522f475SmrgCASE_IGNORE, 7454d522f475SmrgCASE_IGNORE, 7455d522f475SmrgCASE_IGNORE, 7456d522f475Smrg/* onequarter onehalf threequarters questiondown */ 7457d522f475SmrgCASE_IGNORE, 7458d522f475SmrgCASE_IGNORE, 7459d522f475SmrgCASE_IGNORE, 7460d522f475SmrgCASE_IGNORE, 7461d522f475Smrg/* Agrave Aacute Acircumflex Atilde */ 7462d522f475SmrgCASE_IGNORE, 7463d522f475SmrgCASE_IGNORE, 7464d522f475SmrgCASE_IGNORE, 7465d522f475SmrgCASE_IGNORE, 7466d522f475Smrg/* Adiaeresis Aring AE Ccedilla */ 7467d522f475SmrgCASE_IGNORE, 7468d522f475SmrgCASE_IGNORE, 7469d522f475SmrgCASE_IGNORE, 7470d522f475SmrgCASE_IGNORE, 7471d522f475Smrg/* Egrave Eacute Ecircumflex Ediaeresis */ 7472d522f475SmrgCASE_IGNORE, 7473d522f475SmrgCASE_IGNORE, 7474d522f475SmrgCASE_IGNORE, 7475d522f475SmrgCASE_IGNORE, 7476d522f475Smrg/* Igrave Iacute Icircumflex Idiaeresis */ 7477d522f475SmrgCASE_IGNORE, 7478d522f475SmrgCASE_IGNORE, 7479d522f475SmrgCASE_IGNORE, 7480d522f475SmrgCASE_IGNORE, 7481d522f475Smrg/* Eth Ntilde Ograve Oacute */ 7482d522f475SmrgCASE_IGNORE, 7483d522f475SmrgCASE_IGNORE, 7484d522f475SmrgCASE_IGNORE, 7485d522f475SmrgCASE_IGNORE, 7486d522f475Smrg/* Ocircumflex Otilde Odiaeresis multiply */ 7487d522f475SmrgCASE_IGNORE, 7488d522f475SmrgCASE_IGNORE, 7489d522f475SmrgCASE_IGNORE, 7490d522f475SmrgCASE_IGNORE, 7491d522f475Smrg/* Ooblique Ugrave Uacute Ucircumflex */ 7492d522f475SmrgCASE_IGNORE, 7493d522f475SmrgCASE_IGNORE, 7494d522f475SmrgCASE_IGNORE, 7495d522f475SmrgCASE_IGNORE, 7496d522f475Smrg/* Udiaeresis Yacute Thorn ssharp */ 7497d522f475SmrgCASE_IGNORE, 7498d522f475SmrgCASE_IGNORE, 7499d522f475SmrgCASE_IGNORE, 7500d522f475SmrgCASE_IGNORE, 7501d522f475Smrg/* agrave aacute acircumflex atilde */ 7502d522f475SmrgCASE_IGNORE, 7503d522f475SmrgCASE_IGNORE, 7504d522f475SmrgCASE_IGNORE, 7505d522f475SmrgCASE_IGNORE, 7506d522f475Smrg/* adiaeresis aring ae ccedilla */ 7507d522f475SmrgCASE_IGNORE, 7508d522f475SmrgCASE_IGNORE, 7509d522f475SmrgCASE_IGNORE, 7510d522f475SmrgCASE_IGNORE, 7511d522f475Smrg/* egrave eacute ecircumflex ediaeresis */ 7512d522f475SmrgCASE_IGNORE, 7513d522f475SmrgCASE_IGNORE, 7514d522f475SmrgCASE_IGNORE, 7515d522f475SmrgCASE_IGNORE, 7516d522f475Smrg/* igrave iacute icircumflex idiaeresis */ 7517d522f475SmrgCASE_IGNORE, 7518d522f475SmrgCASE_IGNORE, 7519d522f475SmrgCASE_IGNORE, 7520d522f475SmrgCASE_IGNORE, 7521d522f475Smrg/* eth ntilde ograve oacute */ 7522d522f475SmrgCASE_IGNORE, 7523d522f475SmrgCASE_IGNORE, 7524d522f475SmrgCASE_IGNORE, 7525d522f475SmrgCASE_IGNORE, 7526d522f475Smrg/* ocircumflex otilde odiaeresis division */ 7527d522f475SmrgCASE_IGNORE, 7528d522f475SmrgCASE_IGNORE, 7529d522f475SmrgCASE_IGNORE, 7530d522f475SmrgCASE_IGNORE, 7531d522f475Smrg/* oslash ugrave uacute ucircumflex */ 7532d522f475SmrgCASE_IGNORE, 7533d522f475SmrgCASE_IGNORE, 7534d522f475SmrgCASE_IGNORE, 7535d522f475SmrgCASE_IGNORE, 7536d522f475Smrg/* udiaeresis yacute thorn ydiaeresis */ 7537d522f475SmrgCASE_IGNORE, 7538d522f475SmrgCASE_IGNORE, 7539d522f475SmrgCASE_IGNORE, 7540d522f475SmrgCASE_IGNORE, 7541d522f475Smrg}; 7542d522f475Smrg#endif /* OPT_VT52_MODE */ 7543