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

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

#define U_ID_START           0x1
#define U_ID_CONTINUE        0x2
#define U_UPPERCASE          0x4
#define U_SEPARATOR          0x8
#define U_SYMBOL            0x10
#define U_OTHER             0x20
#define U_CONTROL           0x40


static const char ucp0x00[256] =
{ 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x8, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 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, 0x10, 0x10, 0x10, 0x10, 0x12,
  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, 0x10, 0x10, 0x10, 0x10, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x8, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x3, 0x10, 0x10, 0x40, 0x10, 0x10,
  0x10, 0x10, 0x20, 0x20, 0x10, 0x3, 0x10, 0x12,
  0x10, 0x20, 0x3, 0x10, 0x20, 0x20, 0x20, 0x10,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x10,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x10,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3
};

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

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

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, 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,
  0x7, 0x3, 0x7, 0x3, 0x3, 0x10, 0x7, 0x3,
  0x0, 0x0, 0x3, 0x3, 0x3, 0x3, 0x10, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x10, 0x10, 0x7, 0x12,
  0x7, 0x7, 0x7, 0x0, 0x7, 0x0, 0x7, 0x7,
  0x3, 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, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x7,
  0x3, 0x3, 0x7, 0x7, 0x7, 0x3, 0x3, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x7, 0x3, 0x10, 0x7,
  0x3, 0x7, 0x7, 0x3, 0x3, 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,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x10, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x20, 0x20, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7,
  0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3
};

static const char ucp0x05[256] =
{ 0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  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, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  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,
  0x0, 0x10, 0x10, 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, 0x10, 0x2,
  0x10, 0x2, 0x2, 0x10, 0x2, 0x2, 0x10, 0x2,
  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, 0x10, 0x10, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x06[256] =
{ 0x40, 0x40, 0x40, 0x40, 0x0, 0x0, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x10, 0x0, 0x0, 0x10, 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, 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, 0x2, 0x2,
  0x2, 0x2, 0x10, 0x10, 0x10, 0x10, 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, 0x10, 0x3, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x40, 0x10, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3, 0x2,
  0x2, 0x10, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x3, 0x3, 0x3, 0x10, 0x10, 0x3
};

static const char ucp0x07[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0, 0x40,
  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, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 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,
  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,
  0x3, 0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x3, 0x3, 0x10, 0x10,
  0x10, 0x10, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x08[256] =
{ 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, 0x3, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x3, 0x2, 0x2, 0x2,
  0x3, 0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 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, 0x2, 0x2, 0x2, 0x0, 0x0, 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, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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] =
{ 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, 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, 0x3, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x3, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x2, 0x2, 0x10, 0x10, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x10, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  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, 0x10, 0x10, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x10, 0x10, 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, 0x2, 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, 0x2, 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, 0x10, 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, 0x2, 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, 0x2, 0x2, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x10, 0x3, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  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,
  0x3, 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,
  0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 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, 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,
  0x3, 0x3, 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,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x10,
  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, 0x2, 0x2, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x3, 0x3, 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, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x0, 0x3, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x0, 0x2, 0x2,
  0x2, 0x0, 0x2, 0x2, 0x2, 0x2, 0x3, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x2, 0x2, 0x0, 0x0, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0, 0x0,
  0x0, 0x10, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  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, 0x10, 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, 0x10,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x10,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 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, 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, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x2, 0x2, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x10, 0x2, 0x10, 0x2,
  0x10, 0x2, 0x10, 0x10, 0x10, 0x10, 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, 0x3, 0x3, 0x0, 0x0, 0x0,
  0x0, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x10, 0x2, 0x2,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x2, 0x2, 0x2,
  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, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x2, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x0, 0x10, 0x10,
  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,
  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, 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, 0x3,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x2, 0x2,
  0x2, 0x2, 0x3, 0x3, 0x3, 0x3, 0x2, 0x2,
  0x2, 0x3, 0x2, 0x2, 0x2, 0x3, 0x3, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x3, 0x3,
  0x3, 0x2, 0x2, 0x2, 0x2, 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, 0x3, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x10, 0x10,
  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, 0x10, 0x3, 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, 0x2, 0x2, 0x2,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22,
  0x22, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 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] =
{ 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, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  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, 0x10, 0x10, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x8, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x10, 0x10, 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, 0x10, 0x10, 0x10, 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, 0x10, 0x10, 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, 0x40, 0x40, 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, 0x10, 0x10, 0x10, 0x3,
  0x10, 0x10, 0x10, 0x10, 0x3, 0x2, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x18[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x2, 0x2, 0x2, 0x8, 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, 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, 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,
  0x10, 0x0, 0x0, 0x0, 0x10, 0x10, 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, 0x3, 0x3, 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, 0x22, 0x0, 0x0, 0x0, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10
};

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, 0x10, 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, 0x3, 0x3, 0x3, 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, 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, 0x0, 0x0, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 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,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x3,
  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, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x1b[256] =
{ 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, 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, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x0, 0x0, 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, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x3, 0x3,
  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, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x10, 0x10, 0x10, 0x10
};

static const char ucp0x1c[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, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x0, 0x0, 0x0, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x3, 0x3, 0x3,
  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,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 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, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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, 0x10, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x3, 0x3, 0x3, 0x3, 0x2, 0x3, 0x3,
  0x3, 0x3, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x1d[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, 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, 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, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x2, 0x2, 0x2, 0x2
};

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

static const char ucp0x1f[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x7, 0x0, 0x7, 0x0, 0x7, 0x0, 0x7,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  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, 0x0, 0x3, 0x3,
  0x7, 0x7, 0x7, 0x7, 0x3, 0x10, 0x3, 0x10,
  0x10, 0x10, 0x3, 0x3, 0x3, 0x0, 0x3, 0x3,
  0x7, 0x7, 0x7, 0x7, 0x3, 0x10, 0x10, 0x10,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x3, 0x3,
  0x7, 0x7, 0x7, 0x7, 0x0, 0x10, 0x10, 0x10,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x10, 0x10, 0x10,
  0x0, 0x0, 0x3, 0x3, 0x3, 0x0, 0x3, 0x3,
  0x7, 0x7, 0x7, 0x7, 0x3, 0x10, 0x10, 0x0
};

static const char ucp0x20[256] =
{ 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8, 0x8,
  0x8, 0x8, 0x8, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x8, 0x8, 0x40, 0x40, 0x40, 0x40, 0x40, 0x8,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x12,
  0x12, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x12, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x8,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x20, 0x3, 0x0, 0x0, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x10, 0x3,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 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,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x20, 0x20, 0x20,
  0x20, 0x2, 0x20, 0x20, 0x20, 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
};

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

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

static const char ucp0x24[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 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,
  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,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x14, 0x14,
  0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14,
  0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14,
  0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20
};

static const char ucp0x27[256] =
{ 0x0, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x0, 0x10, 0x0, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10
};

static const char ucp0x2b[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x0, 0x0, 0x0,
  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, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 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,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 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,
  0x7, 0x3, 0x7, 0x7, 0x7, 0x3, 0x3, 0x7,
  0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x7, 0x7,
  0x7, 0x3, 0x7, 0x3, 0x3, 0x7, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x7, 0x7,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x3, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x7, 0x3, 0x7, 0x3, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x10, 0x10, 0x10, 0x10, 0x20, 0x10, 0x10
};

static const char ucp0x2d[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, 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,
  0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2,
  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,
  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
};

static const char ucp0x2e[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0,
  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, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x0, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x2f[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 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,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x30[256] =
{ 0x8, 0x10, 0x10, 0x10, 0x10, 0x3, 0x3, 0x3,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x10, 0x3, 0x3, 0x3, 0x3, 0x3, 0x10, 0x10,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x10, 0x10, 0x10,
  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, 0x13, 0x13, 0x3, 0x3, 0x3,
  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, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x10, 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, 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, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 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,
  0x10, 0x10, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 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, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 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 ucp0x32[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0
};

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,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10
};

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, 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
};

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,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 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, 0x10, 0x10
};

static const char ucp0xa6[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x10, 0x10, 0x10,
  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, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x3, 0x2,
  0x20, 0x20, 0x20, 0x10, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x2, 0x2, 0x10, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 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, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  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, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0xa7[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x10, 0x10, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x3, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x7, 0x3,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x3, 0x10, 0x10, 0x7, 0x3, 0x7, 0x3, 0x0,
  0x7, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x7, 0x3, 0x7, 0x3, 0x7, 0x3, 0x7, 0x3,
  0x7, 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, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3
};

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,
  0x10, 0x10, 0x10, 0x10, 0x0, 0x0, 0x0, 0x0,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x10, 0x10,
  0x10, 0x10, 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, 0x10, 0x10, 0x10, 0x10,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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, 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, 0x10, 0x10,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x10, 0x10, 0x10, 0x3, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0xa9[256] =
{ 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, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x10, 0x10,
  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, 0x0, 0x0, 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, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0,
  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, 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, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0, 0x3,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 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, 0x0, 0x0, 0x0
};

static const char ucp0xaa[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, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x2, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x2, 0x2, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x0, 0x0, 0x10, 0x10, 0x10, 0x10,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x10,
  0x10, 0x10, 0x3, 0x2, 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,
  0x2, 0x3, 0x2, 0x2, 0x2, 0x3, 0x3, 0x2,
  0x2, 0x3, 0x3, 0x3, 0x3, 0x3, 0x2, 0x2,
  0x3, 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, 0x3, 0x3, 0x3, 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, 0x0, 0x0, 0x0
};

static const char ucp0xab[256] =
{ 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, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x10, 0x2, 0x2, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 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,
  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, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0xd8[256] =
{ 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0xdb[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, 0x40,
  0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40
};

static const char ucp0xdc[256] =
{ 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0xdf[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, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40
};

static const char ucp0xe0[256] =
{ 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0xf8[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, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x40
};

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, 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, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 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] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0x2, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x10, 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, 0x10, 0x10, 0x10, 0x10, 0x10, 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, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  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, 0x10, 0x10,
  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, 0x10, 0x10, 0x0, 0x0
};

static const char ucp0xfe[256] =
{ 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x12, 0x12, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x12, 0x12, 0x12,
  0x10, 0x10, 0x10, 0x0, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0,
  0x10, 0x10, 0x10, 0x10, 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, 0x40
};

static const char ucp0xff[256] =
{ 0x0, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 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, 0x10, 0x10, 0x10, 0x10, 0x12,
  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, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 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,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 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,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x40, 0x40, 0x40, 0x10, 0x10, 0x0, 0x0
};

static const char ucp0x100[256] =
{ 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, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x3, 0x3, 0x0, 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, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 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
};

static const char ucp0x101[256] =
{ 0x10, 0x10, 0x10, 0x0, 0x0, 0x0, 0x0, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 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, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x20, 0x20, 0x20,
  0x20, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 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, 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, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x2, 0x0, 0x0
};

static const char ucp0x102[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,
  0x3, 0x3, 0x3, 0x3, 0x3, 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, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 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
};

static const char ucp0x103[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, 0x0,
  0x20, 0x20, 0x20, 0x20, 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, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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, 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, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x10, 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
};

static const char ucp0x104[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,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 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, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x108[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  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, 0x0, 0x3,
  0x3, 0x0, 0x0, 0x0, 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, 0x0, 0x10,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x109[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 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, 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, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x10a[256] =
{ 0x3, 0x2, 0x2, 0x2, 0x0, 0x2, 0x2, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x2, 0x2, 0x2, 0x2,
  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,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0,
  0x2, 0x2, 0x2, 0x0, 0x0, 0x0, 0x0, 0x2,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 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, 0x20, 0x20, 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, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x10b[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, 0x0, 0x0,
  0x0, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x10c[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, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x10e[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,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x110[256] =
{ 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,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0, 0x0,
  0x0, 0x0, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 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, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  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, 0x10, 0x10, 0x40, 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, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x123[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, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x124[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, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x134[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, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x16a[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, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x1b0[256] =
{ 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, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x1d0[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x1d1[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0,
  0x0, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x10, 0x10, 0x10, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x10, 0x10, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x2, 0x2, 0x2, 0x2, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 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, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0x1d2[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x2, 0x2, 0x2, 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, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x1d3[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x1d4[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, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 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, 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,
  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, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x7, 0x0, 0x7, 0x7,
  0x0, 0x0, 0x7, 0x0, 0x0, 0x7, 0x7, 0x0,
  0x0, 0x7, 0x7, 0x7, 0x7, 0x0, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x7, 0x3, 0x3,
  0x3, 0x3, 0x0, 0x3, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x0, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  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, 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 ucp0x1d5[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x7, 0x7, 0x0, 0x7,
  0x7, 0x7, 0x7, 0x0, 0x0, 0x7, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x0, 0x7, 0x7,
  0x7, 0x7, 0x7, 0x7, 0x7, 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,
  0x7, 0x7, 0x0, 0x7, 0x7, 0x7, 0x7, 0x0,
  0x7, 0x7, 0x7, 0x7, 0x7, 0x0, 0x7, 0x0,
  0x0, 0x0, 0x7, 0x7, 0x7, 0x7, 0x7, 0x7,
  0x7, 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, 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, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  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, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 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, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3
};

static const char ucp0x1d6[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  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, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 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, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  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, 0x3, 0x3, 0x3, 0x3, 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,
  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, 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, 0x10, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 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, 0x10, 0x3, 0x3, 0x3, 0x3
};

static const char ucp0x1d7[256] =
{ 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x10, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 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, 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, 0x10,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 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, 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, 0x10, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  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, 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, 0x10, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x7, 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, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2,
  0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2, 0x2
};

static const char ucp0x1f0[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0,
  0x0, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0,
  0x0, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x0, 0x10, 0x10, 0x10, 0x10, 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, 0x0, 0x0, 0x0
};

static const char ucp0x1f1[256] =
{ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  0x20, 0x20, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  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,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 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,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10
};

static const char ucp0x1f2[256] =
{ 0x10, 0x10, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x1f3[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 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,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x0, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x0, 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,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 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
};

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

static const char ucp0x1f5[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 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,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 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, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 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, 0x10, 0x10, 0x10
};

static const char ucp0x1f6[256] =
{ 0x0, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x0, 0x10, 0x10, 0x10, 0x0, 0x10, 0x0,
  0x10, 0x0, 0x10, 0x0, 0x10, 0x10, 0x10, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x0, 0x10, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x0, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x0, 0x0, 0x0, 0x0, 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, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 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, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x1f7[256] =
{ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
  0x10, 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, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x2a6[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, 0x3, 0x3, 0x3, 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
};

static const char ucp0x2b7[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, 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, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3, 0x3,
  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 ucp0x2b8[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, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x2fa[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, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0xe00[256] =
{ 0x0, 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0xe01[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, 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, 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, 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, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
};

static const char ucp0xf00[256] =
{ 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0xfff[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, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0
};

static const char ucp0x1000[256] =
{ 0x40, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  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 ucp0x10ff[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, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
  0x0, 0x0, 0x0, 0x0, 0x0, 0x40, 0x0, 0x0
};

static const char* const uflags_map[UNICODE_MAP_SIZE] =
{ ucp0x00, ucp0x01, ucp0x02, ucp0x03, ucp0x04, ucp0x05, ucp0x06, ucp0x07,
  ucp0x08, ucp0x09, ucp0x0a, ucp0x0b, ucp0x0c, ucp0x0d, ucp0x0e, ucp0x0f,
  ucp0x10,  F(0x3), ucp0x12, ucp0x13, ucp0x14,  F(0x3), ucp0x16, ucp0x17,
  ucp0x18, ucp0x19, ucp0x1a, ucp0x1b, ucp0x1c, ucp0x1d, ucp0x1e, ucp0x1f,
  ucp0x20, ucp0x21, F(0x10), ucp0x23, ucp0x24, F(0x10), F(0x10), ucp0x27,
  F(0x10), F(0x10), F(0x10), ucp0x2b, ucp0x2c, ucp0x2d, ucp0x2e, ucp0x2f,
  ucp0x30, ucp0x31, ucp0x32, F(0x10),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3), ucp0x4d,  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3), ucp0x9f,
   F(0x3),  F(0x3),  F(0x3),  F(0x3), ucp0xa4,  F(0x3), ucp0xa6, ucp0xa7,
  ucp0xa8, ucp0xa9, ucp0xaa, ucp0xab,  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3), ucp0xd7,
  ucp0xd8,  F(0x0),  F(0x0), ucp0xdb, ucp0xdc,  F(0x0),  F(0x0), ucp0xdf,
  ucp0xe0,  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
  ucp0xf8,  F(0x3), ucp0xfa, ucp0xfb,  F(0x3), ucp0xfd, ucp0xfe, ucp0xff,
  ucp0x100, ucp0x101, ucp0x102, ucp0x103, ucp0x104,  F(0x0),  F(0x0),  F(0x0),
  ucp0x108, ucp0x109, ucp0x10a, ucp0x10b, ucp0x10c,  F(0x0), ucp0x10e,  F(0x0),
  ucp0x110,  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x3),  F(0x3),  F(0x3), ucp0x123, ucp0x124,  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x3),  F(0x3),  F(0x3),  F(0x3), ucp0x134,  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x3),  F(0x3), ucp0x16a,  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
  ucp0x1b0,  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
  ucp0x1d0, ucp0x1d1, ucp0x1d2, ucp0x1d3, ucp0x1d4, ucp0x1d5, ucp0x1d6, ucp0x1d7,
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
  ucp0x1f0, ucp0x1f1, ucp0x1f2, ucp0x1f3, ucp0x1f4, ucp0x1f5, ucp0x1f6, ucp0x1f7,
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3), ucp0x2a6,  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),
   F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3),  F(0x3), ucp0x2b7,
  ucp0x2b8,  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x3),  F(0x3), ucp0x2fa,  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
  ucp0xe00, ucp0xe01,  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
  ucp0xf00,  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0), ucp0xfff,
  ucp0x1000,  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),
   F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0),  F(0x0), ucp0x10ff,
   F(0x0)
};

static 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;
}