/* ex: set ro ft=c: -*- mode: c; buffer-read-only: t -*- */
// Copyright (C) 2023,2024 Free Software Foundation, Inc.
// This file is part of LibreDWG.
// Created from scratch by Reini Urban
// Generated by txt2h.pl.

#include <stdint.h>

/* unsorted rhs values */
static const uint16_t cptbl_cp437[] = {
  /*[0x0] = */255,	// size of vector
  /*[0x1] = */1,
  /*[0x2] = */2,
  /*[0x3] = */3,
  /*[0x4] = */4,
  /*[0x5] = */5,
  /*[0x6] = */6,
  /*[0x7] = */7,
  /*[0x8] = */8,
  /*[0x9] = */9,
  /*[0xa] = */10,
  /*[0xb] = */11,
  /*[0xc] = */12,
  /*[0xd] = */13,
  /*[0xe] = */14,
  /*[0xf] = */15,
  /*[0x10] = */16,
  /*[0x11] = */17,
  /*[0x12] = */18,
  /*[0x13] = */19,
  /*[0x14] = */20,
  /*[0x15] = */21,
  /*[0x16] = */22,
  /*[0x17] = */23,
  /*[0x18] = */24,
  /*[0x19] = */25,
  /*[0x1a] = */26,
  /*[0x1b] = */27,
  /*[0x1c] = */28,
  /*[0x1d] = */29,
  /*[0x1e] = */30,
  /*[0x1f] = */31,
  /*[0x20] = */32,
  /*[0x21] = */33,
  /*[0x22] = */34,
  /*[0x23] = */35,
  /*[0x24] = */36,
  /*[0x25] = */37,
  /*[0x26] = */38,
  /*[0x27] = */39,
  /*[0x28] = */40,
  /*[0x29] = */41,
  /*[0x2a] = */42,
  /*[0x2b] = */43,
  /*[0x2c] = */44,
  /*[0x2d] = */45,
  /*[0x2e] = */46,
  /*[0x2f] = */47,
  /*[0x30] = */48,
  /*[0x31] = */49,
  /*[0x32] = */50,
  /*[0x33] = */51,
  /*[0x34] = */52,
  /*[0x35] = */53,
  /*[0x36] = */54,
  /*[0x37] = */55,
  /*[0x38] = */56,
  /*[0x39] = */57,
  /*[0x3a] = */58,
  /*[0x3b] = */59,
  /*[0x3c] = */60,
  /*[0x3d] = */61,
  /*[0x3e] = */62,
  /*[0x3f] = */63,
  /*[0x40] = */64,
  /*[0x41] = */65,
  /*[0x42] = */66,
  /*[0x43] = */67,
  /*[0x44] = */68,
  /*[0x45] = */69,
  /*[0x46] = */70,
  /*[0x47] = */71,
  /*[0x48] = */72,
  /*[0x49] = */73,
  /*[0x4a] = */74,
  /*[0x4b] = */75,
  /*[0x4c] = */76,
  /*[0x4d] = */77,
  /*[0x4e] = */78,
  /*[0x4f] = */79,
  /*[0x50] = */80,
  /*[0x51] = */81,
  /*[0x52] = */82,
  /*[0x53] = */83,
  /*[0x54] = */84,
  /*[0x55] = */85,
  /*[0x56] = */86,
  /*[0x57] = */87,
  /*[0x58] = */88,
  /*[0x59] = */89,
  /*[0x5a] = */90,
  /*[0x5b] = */91,
  /*[0x5c] = */92,
  /*[0x5d] = */93,
  /*[0x5e] = */94,
  /*[0x5f] = */95,
  /*[0x60] = */96,
  /*[0x61] = */97,
  /*[0x62] = */98,
  /*[0x63] = */99,
  /*[0x64] = */100,
  /*[0x65] = */101,
  /*[0x66] = */102,
  /*[0x67] = */103,
  /*[0x68] = */104,
  /*[0x69] = */105,
  /*[0x6a] = */106,
  /*[0x6b] = */107,
  /*[0x6c] = */108,
  /*[0x6d] = */109,
  /*[0x6e] = */110,
  /*[0x6f] = */111,
  /*[0x70] = */112,
  /*[0x71] = */113,
  /*[0x72] = */114,
  /*[0x73] = */115,
  /*[0x74] = */116,
  /*[0x75] = */117,
  /*[0x76] = */118,
  /*[0x77] = */119,
  /*[0x78] = */120,
  /*[0x79] = */121,
  /*[0x7a] = */122,
  /*[0x7b] = */123,
  /*[0x7c] = */124,
  /*[0x7d] = */125,
  /*[0x7e] = */126,
  /*[0x7f] = */0,
  /*[0x80] = */0x00c7,	// LATIN CAPITAL LETTER C WITH CEDILLA
  /*[0x81] = */0x00fc,	// LATIN SMALL LETTER U WITH DIAERESIS
  /*[0x82] = */0x00e9,	// LATIN SMALL LETTER E WITH ACUTE
  /*[0x83] = */0x00e2,	// LATIN SMALL LETTER A WITH CIRCUMFLEX
  /*[0x84] = */0x00e4,	// LATIN SMALL LETTER A WITH DIAERESIS
  /*[0x85] = */0x00e0,	// LATIN SMALL LETTER A WITH GRAVE
  /*[0x86] = */0x00e5,	// LATIN SMALL LETTER A WITH RING ABOVE
  /*[0x87] = */0x00e7,	// LATIN SMALL LETTER C WITH CEDILLA
  /*[0x88] = */0x00ea,	// LATIN SMALL LETTER E WITH CIRCUMFLEX
  /*[0x89] = */0x00eb,	// LATIN SMALL LETTER E WITH DIAERESIS
  /*[0x8a] = */0x00e8,	// LATIN SMALL LETTER E WITH GRAVE
  /*[0x8b] = */0x00ef,	// LATIN SMALL LETTER I WITH DIAERESIS
  /*[0x8c] = */0x00ee,	// LATIN SMALL LETTER I WITH CIRCUMFLEX
  /*[0x8d] = */0x00ec,	// LATIN SMALL LETTER I WITH GRAVE
  /*[0x8e] = */0x00c4,	// LATIN CAPITAL LETTER A WITH DIAERESIS
  /*[0x8f] = */0x00c5,	// LATIN CAPITAL LETTER A WITH RING ABOVE
  /*[0x90] = */0x00c9,	// LATIN CAPITAL LETTER E WITH ACUTE
  /*[0x91] = */0x00e6,	// LATIN SMALL LIGATURE AE
  /*[0x92] = */0x00c6,	// LATIN CAPITAL LIGATURE AE
  /*[0x93] = */0x00f4,	// LATIN SMALL LETTER O WITH CIRCUMFLEX
  /*[0x94] = */0x00f6,	// LATIN SMALL LETTER O WITH DIAERESIS
  /*[0x95] = */0x00f2,	// LATIN SMALL LETTER O WITH GRAVE
  /*[0x96] = */0x00fb,	// LATIN SMALL LETTER U WITH CIRCUMFLEX
  /*[0x97] = */0x00f9,	// LATIN SMALL LETTER U WITH GRAVE
  /*[0x98] = */0x00ff,	// LATIN SMALL LETTER Y WITH DIAERESIS
  /*[0x99] = */0x00d6,	// LATIN CAPITAL LETTER O WITH DIAERESIS
  /*[0x9a] = */0x00dc,	// LATIN CAPITAL LETTER U WITH DIAERESIS
  /*[0x9b] = */0x00a2,	// CENT SIGN
  /*[0x9c] = */0x00a3,	// POUND SIGN
  /*[0x9d] = */0x00a5,	// YEN SIGN
  /*[0x9e] = */0x20a7,	// PESETA SIGN
  /*[0x9f] = */0x0192,	// LATIN SMALL LETTER F WITH HOOK
  /*[0xa0] = */0x00e1,	// LATIN SMALL LETTER A WITH ACUTE
  /*[0xa1] = */0x00ed,	// LATIN SMALL LETTER I WITH ACUTE
  /*[0xa2] = */0x00f3,	// LATIN SMALL LETTER O WITH ACUTE
  /*[0xa3] = */0x00fa,	// LATIN SMALL LETTER U WITH ACUTE
  /*[0xa4] = */0x00f1,	// LATIN SMALL LETTER N WITH TILDE
  /*[0xa5] = */0x00d1,	// LATIN CAPITAL LETTER N WITH TILDE
  /*[0xa6] = */0x00aa,	// FEMININE ORDINAL INDICATOR
  /*[0xa7] = */0x00ba,	// MASCULINE ORDINAL INDICATOR
  /*[0xa8] = */0x00bf,	// INVERTED QUESTION MARK
  /*[0xa9] = */0x2310,	// REVERSED NOT SIGN
  /*[0xaa] = */0x00ac,	// NOT SIGN
  /*[0xab] = */0x00bd,	// VULGAR FRACTION ONE HALF
  /*[0xac] = */0x00bc,	// VULGAR FRACTION ONE QUARTER
  /*[0xad] = */0x00a1,	// INVERTED EXCLAMATION MARK
  /*[0xae] = */0x00ab,	// LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
  /*[0xaf] = */0x00bb,	// RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
  /*[0xb0] = */0x2591,	// LIGHT SHADE
  /*[0xb1] = */0x2592,	// MEDIUM SHADE
  /*[0xb2] = */0x2593,	// DARK SHADE
  /*[0xb3] = */0x2502,	// BOX DRAWINGS LIGHT VERTICAL
  /*[0xb4] = */0x2524,	// BOX DRAWINGS LIGHT VERTICAL AND LEFT
  /*[0xb5] = */0x2561,	// BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
  /*[0xb6] = */0x2562,	// BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
  /*[0xb7] = */0x2556,	// BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
  /*[0xb8] = */0x2555,	// BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
  /*[0xb9] = */0x2563,	// BOX DRAWINGS DOUBLE VERTICAL AND LEFT
  /*[0xba] = */0x2551,	// BOX DRAWINGS DOUBLE VERTICAL
  /*[0xbb] = */0x2557,	// BOX DRAWINGS DOUBLE DOWN AND LEFT
  /*[0xbc] = */0x255d,	// BOX DRAWINGS DOUBLE UP AND LEFT
  /*[0xbd] = */0x255c,	// BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
  /*[0xbe] = */0x255b,	// BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
  /*[0xbf] = */0x2510,	// BOX DRAWINGS LIGHT DOWN AND LEFT
  /*[0xc0] = */0x2514,	// BOX DRAWINGS LIGHT UP AND RIGHT
  /*[0xc1] = */0x2534,	// BOX DRAWINGS LIGHT UP AND HORIZONTAL
  /*[0xc2] = */0x252c,	// BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
  /*[0xc3] = */0x251c,	// BOX DRAWINGS LIGHT VERTICAL AND RIGHT
  /*[0xc4] = */0x2500,	// BOX DRAWINGS LIGHT HORIZONTAL
  /*[0xc5] = */0x253c,	// BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
  /*[0xc6] = */0x255e,	// BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
  /*[0xc7] = */0x255f,	// BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
  /*[0xc8] = */0x255a,	// BOX DRAWINGS DOUBLE UP AND RIGHT
  /*[0xc9] = */0x2554,	// BOX DRAWINGS DOUBLE DOWN AND RIGHT
  /*[0xca] = */0x2569,	// BOX DRAWINGS DOUBLE UP AND HORIZONTAL
  /*[0xcb] = */0x2566,	// BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
  /*[0xcc] = */0x2560,	// BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
  /*[0xcd] = */0x2550,	// BOX DRAWINGS DOUBLE HORIZONTAL
  /*[0xce] = */0x256c,	// BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
  /*[0xcf] = */0x2567,	// BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
  /*[0xd0] = */0x2568,	// BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
  /*[0xd1] = */0x2564,	// BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
  /*[0xd2] = */0x2565,	// BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
  /*[0xd3] = */0x2559,	// BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
  /*[0xd4] = */0x2558,	// BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
  /*[0xd5] = */0x2552,	// BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
  /*[0xd6] = */0x2553,	// BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
  /*[0xd7] = */0x256b,	// BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
  /*[0xd8] = */0x256a,	// BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
  /*[0xd9] = */0x2518,	// BOX DRAWINGS LIGHT UP AND LEFT
  /*[0xda] = */0x250c,	// BOX DRAWINGS LIGHT DOWN AND RIGHT
  /*[0xdb] = */0x2588,	// FULL BLOCK
  /*[0xdc] = */0x2584,	// LOWER HALF BLOCK
  /*[0xdd] = */0x258c,	// LEFT HALF BLOCK
  /*[0xde] = */0x2590,	// RIGHT HALF BLOCK
  /*[0xdf] = */0x2580,	// UPPER HALF BLOCK
  /*[0xe0] = */0x03b1,	// GREEK SMALL LETTER ALPHA
  /*[0xe1] = */0x00df,	// LATIN SMALL LETTER SHARP S
  /*[0xe2] = */0x0393,	// GREEK CAPITAL LETTER GAMMA
  /*[0xe3] = */0x03c0,	// GREEK SMALL LETTER PI
  /*[0xe4] = */0x03a3,	// GREEK CAPITAL LETTER SIGMA
  /*[0xe5] = */0x03c3,	// GREEK SMALL LETTER SIGMA
  /*[0xe6] = */0x00b5,	// MICRO SIGN
  /*[0xe7] = */0x03c4,	// GREEK SMALL LETTER TAU
  /*[0xe8] = */0x03a6,	// GREEK CAPITAL LETTER PHI
  /*[0xe9] = */0x0398,	// GREEK CAPITAL LETTER THETA
  /*[0xea] = */0x03a9,	// GREEK CAPITAL LETTER OMEGA
  /*[0xeb] = */0x03b4,	// GREEK SMALL LETTER DELTA
  /*[0xec] = */0x221e,	// INFINITY
  /*[0xed] = */0x03c6,	// GREEK SMALL LETTER PHI
  /*[0xee] = */0x03b5,	// GREEK SMALL LETTER EPSILON
  /*[0xef] = */0x2229,	// INTERSECTION
  /*[0xf0] = */0x2261,	// IDENTICAL TO
  /*[0xf1] = */0x00b1,	// PLUS-MINUS SIGN
  /*[0xf2] = */0x2265,	// GREATER-THAN OR EQUAL TO
  /*[0xf3] = */0x2264,	// LESS-THAN OR EQUAL TO
  /*[0xf4] = */0x2320,	// TOP HALF INTEGRAL
  /*[0xf5] = */0x2321,	// BOTTOM HALF INTEGRAL
  /*[0xf6] = */0x00f7,	// DIVISION SIGN
  /*[0xf7] = */0x2248,	// ALMOST EQUAL TO
  /*[0xf8] = */0x00b0,	// DEGREE SIGN
  /*[0xf9] = */0x2219,	// BULLET OPERATOR
  /*[0xfa] = */0x00b7,	// MIDDLE DOT
  /*[0xfb] = */0x221a,	// SQUARE ROOT
  /*[0xfc] = */0x207f,	// SUPERSCRIPT LATIN SMALL LETTER N
  /*[0xfd] = */0x00b2,	// SUPERSCRIPT TWO
  /*[0xfe] = */0x25a0,	// BLACK SQUARE
  /*[0xff] = */0x00a0,	// NO-BREAK SPACE
};
/* sorted, without the first 127 characters */
static const uint8_t cptbl_alnum_cp437[] = {
  46,		// size of vector
  0x80,	// LATIN CAPITAL LETTER C WITH CEDILLA
  0x81,	// LATIN SMALL LETTER U WITH DIAERESIS
  0x82,	// LATIN SMALL LETTER E WITH ACUTE
  0x83,	// LATIN SMALL LETTER A WITH CIRCUMFLEX
  0x84,	// LATIN SMALL LETTER A WITH DIAERESIS
  0x85,	// LATIN SMALL LETTER A WITH GRAVE
  0x86,	// LATIN SMALL LETTER A WITH RING ABOVE
  0x87,	// LATIN SMALL LETTER C WITH CEDILLA
  0x88,	// LATIN SMALL LETTER E WITH CIRCUMFLEX
  0x89,	// LATIN SMALL LETTER E WITH DIAERESIS
  0x8a,	// LATIN SMALL LETTER E WITH GRAVE
  0x8b,	// LATIN SMALL LETTER I WITH DIAERESIS
  0x8c,	// LATIN SMALL LETTER I WITH CIRCUMFLEX
  0x8d,	// LATIN SMALL LETTER I WITH GRAVE
  0x8e,	// LATIN CAPITAL LETTER A WITH DIAERESIS
  0x8f,	// LATIN CAPITAL LETTER A WITH RING ABOVE
  0x90,	// LATIN CAPITAL LETTER E WITH ACUTE
  0x93,	// LATIN SMALL LETTER O WITH CIRCUMFLEX
  0x94,	// LATIN SMALL LETTER O WITH DIAERESIS
  0x95,	// LATIN SMALL LETTER O WITH GRAVE
  0x96,	// LATIN SMALL LETTER U WITH CIRCUMFLEX
  0x97,	// LATIN SMALL LETTER U WITH GRAVE
  0x98,	// LATIN SMALL LETTER Y WITH DIAERESIS
  0x99,	// LATIN CAPITAL LETTER O WITH DIAERESIS
  0x9a,	// LATIN CAPITAL LETTER U WITH DIAERESIS
  0x9f,	// LATIN SMALL LETTER F WITH HOOK
  0xa0,	// LATIN SMALL LETTER A WITH ACUTE
  0xa1,	// LATIN SMALL LETTER I WITH ACUTE
  0xa2,	// LATIN SMALL LETTER O WITH ACUTE
  0xa3,	// LATIN SMALL LETTER U WITH ACUTE
  0xa4,	// LATIN SMALL LETTER N WITH TILDE
  0xa5,	// LATIN CAPITAL LETTER N WITH TILDE
  0xe0,	// GREEK SMALL LETTER ALPHA
  0xe1,	// LATIN SMALL LETTER SHARP S
  0xe2,	// GREEK CAPITAL LETTER GAMMA
  0xe3,	// GREEK SMALL LETTER PI
  0xe4,	// GREEK CAPITAL LETTER SIGMA
  0xe5,	// GREEK SMALL LETTER SIGMA
  0xe7,	// GREEK SMALL LETTER TAU
  0xe8,	// GREEK CAPITAL LETTER PHI
  0xe9,	// GREEK CAPITAL LETTER THETA
  0xea,	// GREEK CAPITAL LETTER OMEGA
  0xeb,	// GREEK SMALL LETTER DELTA
  0xed,	// GREEK SMALL LETTER PHI
  0xee,	// GREEK SMALL LETTER EPSILON
  0xfc,	// SUPERSCRIPT LATIN SMALL LETTER N
};
#define MIN_CP437	0
#define MAX_CP437	255
#define MIN_CP437_UC	0
#define MAX_CP437_UC	9632
