/*  Generated file.  Do not edit!
    Generated by Unicode/prolog_syntax_map.pl
*/

#define UNICODE_MAP_SIZE 256
#define F(c) (const char*)(c)

#define U_ID_START           0x1
#define U_ID_CONTINUE        0x2
#define U_UPPERCASE          0x4
#define U_LOWERCASE          0x8
#define U_SEPARATOR         0x10


static const char ucp0x00[256] =
{ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x0, 0x0, 0x0, 0x0, 0x2,
  0x0, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0xb, 0x0, 0x0,
  0x0, 0x0, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x0,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0x0,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb
};

static const char ucp0x01[256] =
{ 0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7,
  0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7,
  0xb, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0xb,
  0xb, 0x7, 0x7, 0xb, 0x7, 0xb, 0x7, 0x7,
  0xb, 0x7, 0x7, 0x7, 0xb, 0xb, 0x7, 0x7,
  0x7, 0x7, 0xb, 0x7, 0x7, 0xb, 0x7, 0x7,
  0x7, 0xb, 0xb, 0xb, 0x7, 0x7, 0xb, 0x7,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0x7,
  0xb, 0x7, 0xb, 0xb, 0x7, 0xb, 0x7, 0x7,
  0xb, 0x7, 0x7, 0x7, 0xb, 0x7, 0xb, 0x7,
  0x7, 0xb, 0xb, 0x3, 0x7, 0xb, 0xb, 0xb,
  0x3, 0x3, 0x3, 0x3, 0x7, 0x3, 0xb, 0x7,
  0x3, 0xb, 0x7, 0x3, 0xb, 0x7, 0xb, 0x7,
  0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7,
  0xb, 0x7, 0xb, 0x7, 0xb, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0xb, 0x7, 0x3, 0xb, 0x7, 0xb, 0x7, 0x7,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb
};

static const char ucp0x02[256] =
{ 0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0x7, 0x7, 0xb, 0x7, 0x7, 0xb,
  0xb, 0x7, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0xb, 0xb, 0x0, 0x0, 0x0, 0x0, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0xb, 0xb, 0xb, 0xb, 0xb, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x03[256] =
{ 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0xa, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0x0,
  0x7, 0x7, 0x7, 0x0, 0x7, 0x0, 0x7, 0x7,
  0xb, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x0, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0x0,
  0xb, 0xb, 0x7, 0x7, 0x7, 0xb, 0xb, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0xb, 0xb, 0xb, 0xb, 0x7, 0xb, 0x0, 0x7,
  0xb, 0x7, 0x7, 0xb, 0xb, 0x7, 0x7, 0x7
};

static const char ucp0x04[256] =
{ 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x0, 0x2, 0x2, 0x2, 0x2, 0x0,
  0x0, 0x0, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7,
  0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x0,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x05[256] =
{ 0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x0,
  0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x2,
  0x0, 0x2, 0x2, 0x0, 0x2, 0x2, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x06[256] =
{ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x3, 0x3,
  0x2, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x3, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3, 0x2,
  0x2, 0x0, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x3, 0x3, 0x3, 0x0, 0x0, 0x3
};

static const char ucp0x07[256] =
{ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x2, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x0, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x09[256] =
{ 0x0, 0x2, 0x2, 0x2, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x2, 0x3, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x0,
  0x3, 0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x2, 0x2, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0, 0x0,
  0x0, 0x2, 0x2, 0x2, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x3,
  0x3, 0x0, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x0, 0x0, 0x0, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x2, 0x3, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x2,
  0x2, 0x0, 0x0, 0x2, 0x2, 0x2, 0x3, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x3, 0x3, 0x0, 0x3,
  0x3, 0x3, 0x2, 0x2, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x0a[256] =
{ 0x0, 0x2, 0x2, 0x2, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x3,
  0x3, 0x0, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x0, 0x3, 0x3, 0x0,
  0x3, 0x3, 0x0, 0x0, 0x2, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x2,
  0x2, 0x0, 0x0, 0x2, 0x2, 0x2, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x3, 0x3, 0x3, 0x3, 0x0, 0x3, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x2, 0x2, 0x2, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x3,
  0x3, 0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x2, 0x3, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x2,
  0x2, 0x2, 0x0, 0x2, 0x2, 0x2, 0x0, 0x0,
  0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x2, 0x2, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x0b[256] =
{ 0x0, 0x2, 0x2, 0x2, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x3,
  0x3, 0x0, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x2, 0x3, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x2,
  0x2, 0x0, 0x0, 0x2, 0x2, 0x2, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x3, 0x3, 0x0, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x2, 0x3, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x0, 0x3, 0x3, 0x0, 0x3, 0x0, 0x3, 0x3,
  0x0, 0x0, 0x0, 0x3, 0x3, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x0, 0x2, 0x2, 0x2, 0x2, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x0c[256] =
{ 0x0, 0x2, 0x2, 0x2, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x2, 0x2,
  0x2, 0x0, 0x2, 0x2, 0x2, 0x2, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x2, 0x2, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x2, 0x3, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x2, 0x2,
  0x2, 0x0, 0x2, 0x2, 0x2, 0x2, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x0,
  0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x0d[256] =
{ 0x0, 0x0, 0x2, 0x2, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x0, 0x2, 0x2, 0x2, 0x2, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x2, 0x2, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x0, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x3, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x2, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x0e[256] =
{ 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x2, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x3, 0x3, 0x0, 0x3, 0x0, 0x0, 0x3,
  0x3, 0x0, 0x3, 0x0, 0x0, 0x3, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x3, 0x3, 0x3, 0x0, 0x3, 0x0, 0x3,
  0x0, 0x0, 0x3, 0x3, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x2, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x2, 0x2, 0x3, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x3, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x3, 0x3, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x0f[256] =
{ 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x2,
  0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x2, 0x2,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x10[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x3, 0x3, 0x0, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x3, 0x0, 0x0, 0x0
};

static const char ucp0x11[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x12[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3
};

static const char ucp0x13[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x14[256] =
{ 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3
};

static const char ucp0x16[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x3, 0x3,
  0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x17[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x3, 0x3,
  0x3, 0x3, 0x2, 0x2, 0x2, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x2, 0x2, 0x2, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x3, 0x3,
  0x3, 0x0, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x3,
  0x0, 0x0, 0x0, 0x0, 0x3, 0x2, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x18[256] =
{ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x2, 0x2, 0x2, 0x10, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x19[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x1a[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x1d[256] =
{ 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x1e[256] =
{ 0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0x0, 0x0, 0x0, 0x0,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x1f[256] =
{ 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0x0, 0x0,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x0, 0x0,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0x0, 0x0,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x0, 0x0,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0x0, 0x7, 0x0, 0x7, 0x0, 0x7, 0x0, 0x7,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0x0, 0x0,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0xb, 0xb, 0xb, 0xb, 0xb, 0x0, 0xb, 0xb,
  0x7, 0x7, 0x7, 0x7, 0x3, 0x0, 0xb, 0x0,
  0x0, 0x0, 0xb, 0xb, 0xb, 0x0, 0xb, 0xb,
  0x7, 0x7, 0x7, 0x7, 0x3, 0x0, 0x0, 0x0,
  0xb, 0xb, 0xb, 0xb, 0x0, 0x0, 0xb, 0xb,
  0x7, 0x7, 0x7, 0x7, 0x0, 0x0, 0x0, 0x0,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x0, 0x0, 0x0,
  0x0, 0x0, 0xb, 0xb, 0xb, 0x0, 0xb, 0xb,
  0x7, 0x7, 0x7, 0x7, 0x3, 0x0, 0x0, 0x0
};

static const char ucp0x20[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x10,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2,
  0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x10,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xb,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0xb, 0xb, 0xb, 0xb, 0xb, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x0,
  0x0, 0x2, 0x0, 0x0, 0x0, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x21[256] =
{ 0x0, 0x0, 0x7, 0x0, 0x0, 0x0, 0x0, 0x7,
  0x0, 0x0, 0xb, 0x7, 0x7, 0x7, 0xb, 0xb,
  0x7, 0x7, 0x7, 0xb, 0x0, 0x7, 0x0, 0x0,
  0x3, 0x7, 0x7, 0x7, 0x7, 0x7, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x7, 0x0, 0x7, 0x0,
  0x7, 0x0, 0x7, 0x7, 0x7, 0x7, 0x3, 0xb,
  0x7, 0x7, 0x0, 0x7, 0xb, 0x3, 0x3, 0x3,
  0x3, 0xb, 0x0, 0x0, 0xb, 0xb, 0x7, 0x7,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x7, 0xb, 0xb,
  0xb, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x24[256] =
{ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4, 0x4,
  0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4,
  0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4,
  0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4,
  0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8,
  0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8,
  0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8,
  0x8, 0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x2c[256] =
{ 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x0,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0x7, 0xb, 0x7, 0xb,
  0x7, 0xb, 0x7, 0xb, 0xb, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x2d[256] =
{ 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x30[256] =
{ 0x10, 0x0, 0x0, 0x0, 0x0, 0x3, 0x3, 0x3,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0,
  0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x0, 0x2, 0x2, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x3, 0x3, 0x3, 0x3
};

static const char ucp0x31[256] =
{ 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0,
  0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3
};

static const char ucp0x4d[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x9f[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0xa4[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0xa8[256] =
{ 0x3, 0x3, 0x2, 0x3, 0x3, 0x3, 0x2, 0x3,
  0x3, 0x3, 0x3, 0x2, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0xd7[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0xfa[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0xfb[256] =
{ 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0xb, 0xb, 0xb, 0xb, 0xb,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x2, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x3, 0x0,
  0x3, 0x3, 0x0, 0x3, 0x3, 0x0, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3
};

static const char ucp0xfd[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0xfe[256] =
{ 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x2, 0x2, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x2, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0
};

static const char ucp0xff[256] =
{ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x0, 0x0, 0x0, 0x0, 0x2,
  0x0, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb, 0xb,
  0xb, 0xb, 0xb, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x0, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x0, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char* const uflags_map[UNICODE_MAP_SIZE] =
{ ucp0x00, ucp0x01, ucp0x02, ucp0x03, ucp0x04, ucp0x05, ucp0x06, ucp0x07,
     F(0), ucp0x09, ucp0x0a, ucp0x0b, ucp0x0c, ucp0x0d, ucp0x0e, ucp0x0f,
  ucp0x10, ucp0x11, ucp0x12, ucp0x13, ucp0x14,    F(3), ucp0x16, ucp0x17,
  ucp0x18, ucp0x19, ucp0x1a,    F(0),    F(0), ucp0x1d, ucp0x1e, ucp0x1f,
  ucp0x20, ucp0x21,    F(0),    F(0), ucp0x24,    F(0),    F(0),    F(0),
     F(0),    F(0),    F(0),    F(0), ucp0x2c, ucp0x2d,    F(0),    F(0),
  ucp0x30, ucp0x31,    F(0),    F(0),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3), ucp0x4d,    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3), ucp0x9f,
     F(3),    F(3),    F(3),    F(3), ucp0xa4,    F(0),    F(0),    F(0),
  ucp0xa8,    F(0),    F(0),    F(0),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3),
     F(3),    F(3),    F(3),    F(3),    F(3),    F(3),    F(3), ucp0xd7,
     F(0),    F(0),    F(0),    F(0),    F(0),    F(0),    F(0),    F(0),
     F(0),    F(0),    F(0),    F(0),    F(0),    F(0),    F(0),    F(0),
     F(0),    F(0),    F(0),    F(0),    F(0),    F(0),    F(0),    F(0),
     F(0),    F(0),    F(0),    F(0),    F(0),    F(0),    F(0),    F(0),
     F(0),    F(3), ucp0xfa, ucp0xfb,    F(3), ucp0xfd, ucp0xfe, ucp0xff
};

int
uflagsW(int code)
{ int cp = (unsigned)code / 256;

  if ( cp < UNICODE_MAP_SIZE )
  { const char *s = uflags_map[cp];
    if ( s < (const char *)256 )
      return (int)(intptr_t)s;
    return s[code&0xff];
  }
  return 0;
}