// SPDX-License-Identifier: Unlicense OR BSD-3-Clause

package unicodedata

// Code generated by typesettings-utils/generators/unicodedata/cmd/main.go DO NOT EDIT.

// Unicode version: 17.0.0

const (
	LB_AI  LineBreak = 1 << 0  // Ambiguous
	LB_AK  LineBreak = 1 << 1  // Aksara
	LB_AL  LineBreak = 1 << 2  // Alphabetic
	LB_AP  LineBreak = 1 << 3  // Aksara_Prebase
	LB_AS  LineBreak = 1 << 4  // Aksara_Start
	LB_B2  LineBreak = 1 << 5  // Break_Both
	LB_BA  LineBreak = 1 << 6  // Break_After
	LB_BB  LineBreak = 1 << 7  // Break_Before
	LB_BK  LineBreak = 1 << 8  // Mandatory_Break
	LB_CB  LineBreak = 1 << 9  // Contingent_Break
	LB_CJ  LineBreak = 1 << 10 // Conditional_Japanese_Starter
	LB_CL  LineBreak = 1 << 11 // Close_Punctuation
	LB_CM  LineBreak = 1 << 12 // Combining_Mark
	LB_CP  LineBreak = 1 << 13 // Close_Parenthesis
	LB_CR  LineBreak = 1 << 14 // Carriage_Return
	LB_EB  LineBreak = 1 << 15 // E_Base
	LB_EM  LineBreak = 1 << 16 // E_Modifier
	LB_EX  LineBreak = 1 << 17 // Exclamation
	LB_GL  LineBreak = 1 << 18 // Glue
	LB_H2  LineBreak = 1 << 19 // H2
	LB_H3  LineBreak = 1 << 20 // H3
	LB_HH  LineBreak = 1 << 21 // Unambiguous_Hyphen
	LB_HL  LineBreak = 1 << 22 // Hebrew_Letter
	LB_HY  LineBreak = 1 << 23 // Hyphen
	LB_ID  LineBreak = 1 << 24 // Ideographic
	LB_IN  LineBreak = 1 << 25 // Inseparable
	LB_IS  LineBreak = 1 << 26 // Infix_Numeric
	LB_JL  LineBreak = 1 << 27 // JL
	LB_JT  LineBreak = 1 << 28 // JT
	LB_JV  LineBreak = 1 << 29 // JV
	LB_LF  LineBreak = 1 << 30 // Line_Feed
	LB_NL  LineBreak = 1 << 31 // Next_Line
	LB_NS  LineBreak = 1 << 32 // Nonstarter
	LB_NU  LineBreak = 1 << 33 // Numeric
	LB_OP  LineBreak = 1 << 34 // Open_Punctuation
	LB_PO  LineBreak = 1 << 35 // Postfix_Numeric
	LB_PR  LineBreak = 1 << 36 // Prefix_Numeric
	LB_QU  LineBreak = 1 << 37 // Quotation
	LB_RI  LineBreak = 1 << 38 // Regional_Indicator
	LB_SA  LineBreak = 1 << 39 // Complex_Context
	LB_SG  LineBreak = 1 << 40 // Surrogate
	LB_SP  LineBreak = 1 << 41 // Space
	LB_SY  LineBreak = 1 << 42 // Break_Symbols
	LB_VF  LineBreak = 1 << 43 // Virama_Final
	LB_VI  LineBreak = 1 << 44 // Virama
	LB_WJ  LineBreak = 1 << 45 // Word_Joiner
	LB_ZW  LineBreak = 1 << 46 // ZWSpace
	LB_ZWJ LineBreak = 1 << 47 // ZWJ

)

var lbUint16 = [2040]uint16{
	0, 1, 2, 3, 4, 5, 4, 6, 7, 1, 8, 9, 4, 10, 4, 10, 4, 4, 4, 4,
	4, 4, 4, 4, 4, 4, 4, 4, 11, 12, 4, 4, 1, 1, 1, 1, 1, 13, 14, 15,
	16, 4, 17, 4, 4, 4, 4, 4, 18, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 19,
	4, 20, 4, 4, 21, 22, 1, 23, 24, 25, 26, 27, 28, 29, 4, 4, 30, 1, 31, 32,
	4, 4, 4, 4, 4, 33, 34, 35, 36, 37, 4, 1, 38, 4, 4, 4, 4, 4, 39, 40,
	35, 4, 30, 41, 4, 42, 43, 44, 4, 45, 46, 4, 4, 47, 4, 4, 48, 1, 49, 1,
	50, 4, 4, 51, 1, 52, 53, 4, 54, 55, 56, 57, 58, 59, 60, 61, 62, 55, 56, 63,
	64, 65, 66, 67, 68, 17, 56, 69, 70, 71, 60, 72, 73, 55, 56, 69, 74, 75, 60, 76,
	77, 78, 79, 80, 81, 82, 66, 83, 84, 85, 56, 86, 87, 88, 60, 89, 90, 85, 56, 91,
	87, 92, 60, 93, 94, 85, 4, 95, 96, 97, 60, 98, 99, 100, 4, 101, 102, 103, 66, 104,
	105, 106, 106, 107, 108, 109, 110, 110, 111, 106, 112, 113, 114, 115, 110, 110, 116, 117, 35, 118,
	119, 4, 120, 121, 122, 123, 1, 124, 125, 126, 110, 110, 106, 106, 106, 106, 127, 106, 106, 106,
	106, 128, 4, 4, 129, 4, 4, 4, 130, 130, 130, 130, 130, 130, 131, 131, 131, 131, 132, 133,
	133, 133, 133, 133, 4, 4, 4, 4, 134, 135, 4, 4, 134, 4, 4, 136, 137, 138, 4, 4,
	4, 137, 4, 4, 4, 139, 140, 120, 4, 141, 4, 4, 4, 4, 4, 142, 143, 4, 4, 4,
	4, 4, 4, 4, 144, 145, 4, 4, 4, 4, 146, 147, 4, 148, 4, 149, 4, 150, 151, 152,
	106, 106, 106, 106, 106, 153, 154, 141, 155, 154, 4, 4, 4, 4, 4, 147, 156, 4, 157, 4,
	4, 4, 4, 158, 4, 44, 159, 159, 160, 106, 113, 161, 106, 106, 162, 106, 163, 164, 4, 4,
	4, 165, 106, 106, 106, 166, 106, 167, 154, 154, 113, 1, 1, 168, 169, 110, 170, 171, 171, 172,
	173, 174, 175, 176, 177, 4, 178, 35, 179, 179, 180, 181, 4, 4, 182, 183, 184, 35, 4, 185,
	46, 4, 4, 186, 76, 187, 188, 189, 4, 4, 4, 4, 190, 1, 1, 191, 4, 142, 4, 4,
	142, 192, 4, 193, 4, 4, 4, 194, 194, 195, 4, 196, 197, 198, 199, 200, 201, 202, 203, 204,
	205, 120, 206, 207, 208, 1, 1, 209, 210, 211, 212, 4, 4, 213, 214, 215, 216, 215, 4, 4,
	4, 217, 4, 4, 218, 219, 220, 221, 222, 223, 224, 4, 225, 226, 227, 228, 4, 4, 229, 4,
	230, 231, 232, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 233, 4, 4, 141, 110,
	46, 110, 234, 234, 234, 234, 234, 234, 234, 234, 234, 213, 234, 234, 234, 234, 214, 234, 234, 235,
	234, 236, 237, 238, 239, 240, 241, 4, 242, 243, 4, 244, 245, 4, 246, 247, 4, 248, 4, 249,
	250, 251, 252, 253, 254, 4, 4, 4, 4, 255, 256, 257, 234, 258, 4, 4, 259, 4, 260, 4,
	144, 4, 4, 4, 4, 4, 4, 4, 261, 262, 4, 4, 4, 230, 4, 263, 4, 4, 4, 4,
	4, 264, 4, 265, 4, 4, 4, 4, 4, 4, 266, 267, 4, 4, 129, 4, 4, 4, 268, 269,
	4, 270, 271, 271, 271, 271, 1, 1, 272, 273, 274, 275, 276, 277, 110, 110, 278, 279, 278, 278,
	278, 278, 278, 280, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 278, 281, 110, 278,
	282, 283, 284, 285, 286, 278, 287, 278, 288, 289, 290, 278, 287, 278, 288, 291, 292, 278, 278, 293,
	278, 278, 278, 278, 294, 278, 278, 278, 278, 278, 295, 296, 278, 294, 278, 278, 297, 278, 278, 278,
	278, 278, 278, 278, 4, 4, 4, 4, 278, 298, 278, 278, 278, 278, 278, 278, 299, 278, 278, 278,
	300, 4, 4, 185, 301, 4, 302, 110, 4, 4, 266, 303, 4, 304, 4, 4, 4, 4, 4, 305,
	4, 4, 4, 4, 4, 120, 110, 19, 306, 4, 307, 308, 4, 4, 4, 309, 310, 4, 4, 182,
	311, 154, 1, 312, 35, 4, 313, 4, 314, 315, 130, 316, 317, 171, 171, 318, 319, 320, 106, 321,
	179, 179, 322, 323, 324, 325, 106, 106, 106, 106, 106, 106, 326, 327, 30, 328, 329, 330, 271, 4,
	4, 4, 331, 4, 4, 4, 4, 4, 4, 4, 332, 154, 333, 334, 335, 336, 335, 337, 335, 333,
	334, 335, 336, 335, 337, 335, 333, 334, 335, 336, 335, 337, 335, 333, 334, 335, 336, 335, 337, 335,
	333, 334, 335, 336, 335, 337, 335, 333, 334, 335, 336, 335, 337, 335, 333, 334, 335, 336, 335, 337,
	335, 333, 334, 335, 336, 335, 337, 335, 336, 335, 338, 131, 339, 133, 133, 340, 341, 341, 341, 341,
	341, 341, 341, 341, 110, 110, 110, 110, 110, 110, 110, 110, 270, 342, 343, 344, 345, 4, 4, 4,
	4, 4, 4, 346, 4, 4, 4, 4, 4, 4, 4, 4, 4, 110, 110, 347, 1, 348, 349, 350,
	351, 352, 353, 194, 4, 4, 4, 4, 4, 4, 4, 354, 355, 356, 278, 357, 278, 358, 359, 360,
	278, 361, 278, 294, 362, 363, 364, 365, 366, 4, 138, 367, 193, 193, 110, 110, 4, 4, 4, 4,
	4, 4, 4, 46, 368, 4, 4, 369, 4, 4, 4, 4, 44, 120, 71, 110, 110, 4, 4, 370,
	4, 120, 4, 4, 4, 71, 32, 331, 4, 4, 371, 4, 46, 4, 4, 372, 4, 373, 4, 4,
	374, 375, 110, 110, 4, 193, 154, 4, 4, 374, 4, 331, 4, 4, 76, 4, 4, 4, 376, 377,
	377, 378, 17, 379, 4, 4, 4, 380, 4, 4, 4, 270, 4, 158, 76, 110, 381, 4, 4, 382,
	110, 110, 110, 110, 383, 4, 4, 384, 4, 385, 4, 4, 4, 44, 386, 110, 110, 110, 4, 387,
	4, 388, 4, 389, 4, 141, 110, 110, 4, 4, 4, 390, 4, 391, 4, 4, 392, 393, 4, 394,
	147, 395, 4, 4, 4, 4, 110, 110, 4, 4, 396, 397, 4, 4, 4, 398, 4, 399, 4, 400,
	4, 401, 402, 110, 110, 110, 110, 110, 4, 4, 4, 4, 147, 110, 110, 110, 4, 4, 4, 403,
	4, 4, 4, 404, 4, 4, 405, 154, 35, 4, 406, 4, 407, 110, 110, 110, 110, 110, 110, 110,
	110, 110, 110, 110, 110, 110, 4, 44, 4, 4, 408, 409, 410, 411, 110, 412, 4, 4, 76, 4,
	39, 413, 110, 4, 414, 110, 110, 4, 331, 110, 4, 270, 415, 171, 171, 416, 417, 418, 419, 420,
	177, 4, 4, 421, 422, 4, 147, 154, 177, 4, 314, 423, 424, 4, 4, 425, 177, 4, 4, 426,
	427, 428, 19, 429, 4, 17, 430, 431, 432, 110, 110, 110, 433, 36, 434, 4, 4, 266, 435, 154,
	436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 171, 446, 447, 448, 449, 110, 4, 4, 4, 450,
	451, 452, 409, 110, 4, 4, 4, 1, 453, 154, 110, 110, 4, 4, 266, 454, 455, 456, 110, 110,
	4, 4, 4, 1, 457, 154, 458, 110, 4, 4, 30, 459, 154, 460, 461, 110, 106, 462, 162, 463,
	464, 110, 110, 110, 4, 4, 430, 465, 110, 110, 110, 110, 110, 110, 4, 4, 4, 4, 35, 466,
	467, 468, 171, 469, 470, 471, 110, 110, 110, 110, 472, 4, 4, 473, 474, 110, 475, 4, 4, 476,
	477, 478, 4, 4, 48, 479, 480, 4, 4, 4, 4, 147, 481, 110, 110, 110, 110, 110, 482, 110,
	110, 110, 110, 110, 4, 4, 409, 154, 56, 4, 266, 483, 484, 35, 120, 485, 4, 486, 123, 323,
	110, 110, 110, 110, 487, 4, 4, 488, 489, 154, 490, 4, 491, 492, 154, 4, 4, 331, 154, 110,
	110, 110, 110, 110, 110, 110, 179, 493, 494, 495, 171, 496, 497, 498, 110, 110, 110, 110, 110, 71,
	4, 499, 500, 501, 4, 141, 110, 110, 110, 110, 110, 110, 4, 4, 4, 4, 4, 4, 44, 502,
	4, 4, 4, 4, 380, 110, 110, 110, 110, 4, 4, 4, 4, 4, 4, 403, 4, 4, 4, 4,
	4, 503, 4, 4, 504, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 505,
	4, 4, 506, 507, 508, 509, 4, 4, 4, 4, 4, 4, 510, 4, 4, 4, 4, 4, 4, 4,
	270, 110, 110, 110, 179, 511, 1, 471, 110, 110, 110, 110, 4, 4, 4, 147, 4, 44, 512, 4,
	4, 4, 4, 44, 154, 4, 193, 513, 4, 4, 4, 514, 515, 516, 17, 517, 4, 110, 110, 110,
	110, 110, 110, 110, 110, 110, 110, 110, 4, 4, 185, 154, 110, 110, 110, 110, 4, 4, 4, 4,
	4, 518, 4, 519, 4, 380, 110, 110, 4, 4, 4, 4, 520, 521, 1, 1, 522, 177, 110, 110,
	110, 110, 523, 524, 4, 4, 4, 4, 4, 158, 110, 525, 278, 294, 110, 110, 110, 110, 110, 110,
	278, 278, 278, 278, 278, 278, 278, 526, 110, 110, 110, 110, 110, 110, 110, 527, 278, 278, 526, 528,
	110, 529, 530, 278, 278, 278, 278, 278, 278, 278, 278, 531, 4, 4, 4, 4, 4, 4, 46, 120,
	147, 532, 533, 110, 110, 110, 110, 110, 4, 4, 4, 4, 4, 4, 4, 534, 4, 4, 4, 535,
	4, 71, 4, 71, 1, 1, 168, 1, 323, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 158,
	4, 4, 20, 4, 4, 4, 536, 1, 537, 4, 538, 4, 4, 4, 46, 110, 4, 4, 4, 4,
	539, 110, 110, 110, 110, 110, 110, 110, 4, 380, 4, 380, 4, 4, 4, 4, 4, 270, 4, 147,
	4, 4, 4, 4, 4, 194, 4, 4, 4, 151, 540, 541, 542, 4, 4, 4, 543, 544, 4, 545,
	546, 85, 4, 4, 4, 4, 399, 4, 4, 4, 4, 4, 4, 4, 4, 4, 547, 460, 460, 460,
	1, 1, 1, 548, 1, 1, 549, 550, 551, 552, 22, 110, 110, 110, 110, 110, 4, 44, 553, 110,
	110, 110, 110, 110, 483, 554, 555, 4, 4, 4, 193, 110, 556, 110, 110, 110, 110, 110, 110, 110,
	4, 4, 120, 557, 558, 110, 110, 110, 110, 4, 559, 110, 4, 4, 430, 560, 110, 110, 110, 110,
	110, 4, 430, 154, 110, 110, 110, 110, 110, 4, 304, 561, 110, 110, 110, 110, 4, 44, 562, 563,
	110, 110, 110, 110, 110, 110, 564, 44, 4, 4, 4, 4, 565, 323, 110, 110, 4, 4, 4, 4,
	566, 567, 110, 110, 110, 110, 110, 110, 110, 110, 110, 19, 4, 4, 347, 568, 110, 110, 110, 110,
	19, 4, 4, 193, 110, 110, 110, 110, 542, 4, 569, 570, 571, 572, 573, 574, 575, 331, 576, 331,
	110, 110, 110, 409, 577, 234, 578, 234, 234, 234, 215, 234, 234, 234, 579, 278, 278, 278, 580, 581,
	582, 583, 278, 584, 585, 278, 278, 586, 278, 278, 278, 278, 587, 588, 589, 590, 591, 592, 593, 594,
	278, 278, 278, 278, 595, 596, 597, 598, 599, 278, 278, 600, 278, 601, 278, 278, 278, 602, 278, 603,
	278, 278, 278, 278, 604, 4, 4, 605, 278, 278, 606, 607, 608, 278, 278, 278, 4, 4, 4, 4,
	4, 4, 4, 609, 4, 4, 4, 4, 4, 597, 278, 278, 331, 4, 4, 4, 76, 141, 4, 4,
	76, 4, 193, 331, 409, 147, 110, 110, 610, 611, 612, 613, 278, 278, 278, 614, 278, 278, 278, 615,
	616, 617, 278, 278, 4, 4, 4, 4, 4, 618, 278, 278, 278, 278, 278, 278, 619, 278, 278, 620,
	4, 621, 4, 4, 4, 4, 4, 622, 278, 278, 278, 278, 278, 278, 278, 623, 624, 110, 1, 1,
	1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
}

var lbUint8 = [6486]uint8{
	0, 1, 2, 3, 4, 5, 5, 5, 5, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
	16, 10, 17, 5, 18, 10, 19, 20, 21, 22, 23, 24, 5, 5, 5, 5, 5, 5, 5, 5,
	5, 5, 5, 5, 5, 5, 5, 25, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
	5, 5, 5, 25, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
	10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
	10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
	10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
	10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
	10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
	10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
	10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
	10, 10, 10, 10, 26, 0, 0, 1, 2, 2, 2, 3, 4, 5, 2, 6, 7, 8, 9, 10,
	11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
	31, 32, 33, 34, 35, 36, 37, 2, 2, 2, 2, 38, 39, 40, 41, 42, 43, 44, 45, 46,
	47, 48, 49, 50, 2, 51, 2, 2, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
	64, 65, 66, 67, 68, 69, 70, 2, 2, 71, 2, 2, 72, 2, 2, 73, 74, 75, 76, 77,
	78, 79, 80, 81, 82, 83, 84, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
	78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
	78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
	78, 85, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
	78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 86, 78,
	78, 78, 78, 78, 78, 78, 78, 87, 2, 2, 88, 89, 2, 90, 91, 92, 93, 94, 95, 96,
	97, 98, 99, 100, 101, 102, 103, 104, 105, 99, 100, 101, 102, 103, 104, 105, 99, 100, 101, 102,
	103, 104, 105, 99, 100, 101, 102, 103, 104, 105, 99, 100, 101, 102, 103, 104, 105, 99, 100, 101,
	102, 103, 104, 105, 99, 100, 101, 102, 103, 104, 105, 99, 100, 101, 102, 103, 104, 105, 99, 100,
	101, 102, 103, 104, 105, 99, 100, 101, 102, 103, 104, 105, 99, 100, 101, 102, 103, 104, 105, 99,
	100, 101, 102, 103, 104, 105, 99, 100, 101, 106, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
	107, 107, 107, 107, 107, 107, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
	108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
	108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 78, 78, 78, 78,
	109, 2, 2, 2, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 108, 120, 121, 122, 2, 123,
	124, 125, 2, 2, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
	142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 108, 154, 155, 156, 157, 108, 158, 159,
	160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 108, 170, 171, 172, 2, 2, 2, 2, 2, 2,
	2, 173, 174, 2, 175, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
	108, 108, 108, 108, 108, 176, 2, 2, 2, 2, 177, 178, 179, 2, 180, 2, 2, 2, 2, 2,
	2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
	2, 2, 2, 2, 2, 117, 2, 2, 2, 181, 182, 108, 108, 108, 108, 108, 108, 108, 108, 108,
	108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 183, 108, 108, 108, 108, 108, 108, 108,
	108, 108, 108, 108, 108, 108, 2, 2, 2, 2, 184, 185, 186, 187, 108, 108, 188, 108, 189, 190,
	191, 192, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
	78, 78, 78, 78, 2, 2, 2, 193, 194, 195, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
	108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
	108, 108, 108, 108, 108, 196, 78, 78, 197, 78, 78, 198, 108, 108, 108, 108, 108, 108, 108, 108,
	108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 199, 200, 108, 108, 108, 108, 108, 108, 108, 108,
	108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108,
	108, 108, 2, 201, 2, 2, 2, 202, 203, 175, 2, 204, 205, 206, 207, 208, 209, 108, 210, 211,
	212, 2, 2, 213, 2, 214, 2, 2, 2, 2, 215, 216, 108, 108, 108, 108, 108, 108, 108, 108,
	217, 108, 218, 219, 220, 108, 108, 221, 108, 108, 108, 222, 108, 223, 108, 224, 108, 225, 2, 226,
	227, 108, 108, 108, 108, 108, 228, 229, 230, 108, 231, 232, 108, 108, 78, 78, 233, 234, 78, 78,
	78, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 2, 250, 78, 78,
	78, 78, 78, 78, 78, 251, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78,
	78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 251, 252, 108,
	253, 254, 0, 1, 2, 2, 0, 1, 2, 2, 2, 3, 4, 5, 0, 1, 2, 2, 2, 3,
	4, 5, 2, 6, 7, 8, 9, 10, 11, 12, 0, 0, 0, 0, 1, 2, 3, 0, 0, 0,
	0, 0, 0, 0, 0, 0, 4, 5, 6, 7, 8, 9, 10, 11, 12, 12, 12, 12, 12, 13,
	14, 15, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 17, 14, 14, 14,
	14, 14, 14, 16, 18, 19, 0, 0, 20, 0, 0, 0, 0, 0, 21, 22, 23, 24, 25, 26,
	27, 14, 22, 28, 29, 28, 28, 26, 28, 30, 14, 14, 14, 24, 14, 14, 14, 14, 14, 14,
	14, 24, 31, 28, 31, 14, 25, 14, 14, 14, 28, 28, 24, 32, 0, 0, 0, 0, 0, 0,
	33, 33, 33, 34, 0, 0, 0, 0, 0, 0, 14, 14, 14, 14, 35, 14, 14, 36, 35, 35,
	14, 14, 14, 37, 37, 14, 14, 38, 14, 14, 14, 14, 14, 14, 14, 19, 0, 0, 0, 14,
	14, 14, 38, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 37, 38, 14, 14, 14, 14, 14,
	14, 14, 39, 40, 38, 9, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
	0, 42, 19, 43, 0, 44, 35, 35, 35, 35, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
	45, 45, 45, 46, 35, 47, 45, 48, 37, 35, 35, 35, 35, 35, 12, 12, 12, 14, 49, 50,
	13, 14, 0, 0, 0, 0, 0, 51, 51, 52, 14, 14, 14, 14, 14, 19, 0, 0, 12, 12,
	12, 12, 12, 53, 54, 14, 43, 14, 14, 14, 14, 14, 14, 14, 14, 14, 55, 0, 0, 0,
	56, 19, 0, 0, 43, 19, 43, 0, 0, 14, 12, 12, 12, 12, 12, 14, 14, 14, 14, 14,
	14, 14, 14, 14, 14, 38, 19, 14, 14, 14, 14, 14, 14, 14, 0, 0, 0, 0, 0, 57,
	38, 14, 14, 14, 14, 0, 0, 0, 0, 0, 43, 35, 35, 35, 35, 35, 35, 35, 0, 0,
	14, 14, 58, 37, 41, 23, 14, 14, 14, 0, 0, 19, 0, 0, 0, 0, 19, 0, 19, 0,
	0, 35, 14, 14, 14, 14, 14, 14, 14, 37, 14, 14, 14, 14, 19, 0, 35, 37, 14, 14,
	14, 14, 14, 37, 35, 35, 12, 35, 35, 41, 0, 0, 0, 0, 14, 14, 14, 14, 14, 0,
	0, 0, 0, 59, 0, 0, 0, 0, 0, 0, 0, 0, 14, 14, 14, 14, 14, 14, 14, 14,
	14, 14, 14, 0, 43, 0, 19, 0, 0, 0, 14, 14, 14, 14, 14, 0, 60, 12, 12, 12,
	12, 12, 19, 0, 38, 14, 14, 14, 37, 38, 37, 38, 14, 14, 14, 14, 14, 14, 14, 14,
	14, 14, 37, 14, 14, 14, 37, 37, 35, 14, 14, 35, 43, 0, 0, 0, 57, 41, 57, 41,
	0, 37, 35, 35, 35, 41, 35, 35, 14, 38, 14, 0, 35, 12, 12, 12, 12, 12, 14, 50,
	14, 14, 49, 9, 14, 57, 41, 0, 38, 14, 14, 37, 35, 38, 37, 14, 38, 37, 14, 35,
	57, 0, 0, 57, 35, 41, 57, 41, 0, 35, 41, 35, 35, 35, 38, 14, 37, 37, 35, 35,
	35, 12, 12, 12, 12, 12, 0, 14, 19, 37, 35, 35, 35, 35, 41, 0, 38, 14, 14, 14,
	14, 38, 37, 14, 38, 14, 14, 35, 43, 0, 0, 0, 0, 41, 0, 41, 0, 35, 37, 35,
	35, 35, 35, 35, 35, 35, 9, 35, 35, 35, 38, 0, 0, 0, 41, 0, 38, 14, 14, 14,
	37, 38, 0, 0, 57, 41, 57, 41, 0, 35, 35, 35, 41, 0, 35, 35, 14, 38, 14, 14,
	14, 14, 35, 35, 35, 35, 35, 43, 38, 14, 14, 37, 35, 14, 37, 14, 14, 35, 38, 37,
	37, 14, 35, 38, 37, 35, 14, 37, 35, 14, 14, 14, 14, 14, 14, 35, 35, 0, 0, 57,
	35, 0, 57, 0, 0, 35, 37, 35, 35, 41, 35, 35, 35, 35, 14, 14, 14, 14, 9, 37,
	35, 35, 0, 0, 43, 14, 14, 14, 37, 14, 37, 14, 14, 14, 14, 14, 14, 14, 14, 14,
	14, 14, 14, 35, 43, 0, 0, 0, 57, 0, 57, 0, 0, 35, 35, 35, 41, 57, 14, 37,
	14, 35, 35, 35, 35, 61, 14, 14, 14, 14, 19, 0, 29, 14, 14, 14, 37, 14, 14, 14,
	38, 14, 14, 35, 43, 0, 35, 35, 41, 57, 35, 35, 14, 37, 38, 19, 35, 35, 35, 35,
	35, 35, 0, 0, 14, 14, 14, 14, 37, 14, 14, 14, 14, 14, 14, 19, 43, 0, 0, 0,
	57, 0, 57, 0, 0, 14, 35, 35, 14, 19, 14, 14, 14, 14, 14, 14, 14, 14, 49, 14,
	14, 14, 41, 0, 38, 14, 14, 14, 14, 14, 14, 14, 14, 37, 35, 14, 14, 14, 14, 38,
	14, 14, 14, 14, 38, 35, 14, 14, 14, 37, 35, 57, 35, 41, 0, 0, 57, 57, 0, 0,
	0, 0, 35, 0, 37, 35, 35, 35, 35, 35, 62, 63, 63, 63, 63, 63, 63, 63, 63, 63,
	63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 64, 35, 65, 63, 63, 63, 63, 63, 63,
	63, 66, 12, 12, 12, 12, 12, 60, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 62, 64,
	64, 63, 63, 64, 63, 63, 63, 63, 62, 62, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63,
	63, 35, 63, 63, 64, 64, 63, 63, 63, 64, 12, 12, 12, 12, 12, 35, 63, 63, 32, 67,
	29, 67, 68, 69, 70, 52, 52, 71, 55, 14, 0, 14, 14, 14, 14, 14, 72, 19, 19, 73,
	73, 0, 14, 14, 14, 14, 38, 14, 14, 14, 14, 14, 14, 14, 14, 14, 37, 35, 41, 0,
	0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 14, 14, 19, 0, 0, 0, 0, 0, 41, 0,
	0, 0, 0, 0, 0, 0, 0, 0, 57, 60, 14, 14, 14, 43, 14, 14, 37, 14, 67, 74,
	14, 14, 75, 76, 35, 35, 12, 12, 12, 12, 12, 60, 14, 14, 12, 12, 12, 12, 12, 63,
	63, 63, 14, 14, 14, 38, 35, 35, 38, 35, 77, 77, 77, 77, 77, 77, 77, 77, 78, 78,
	78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
	79, 79, 14, 14, 14, 14, 37, 14, 14, 35, 14, 14, 14, 37, 37, 14, 14, 35, 37, 14,
	14, 35, 14, 14, 14, 37, 37, 14, 14, 35, 14, 14, 14, 14, 14, 14, 14, 37, 14, 14,
	14, 14, 14, 14, 14, 14, 14, 37, 41, 0, 27, 14, 14, 14, 14, 14, 14, 14, 14, 14,
	14, 14, 14, 35, 35, 35, 14, 14, 14, 35, 14, 14, 14, 35, 80, 14, 14, 14, 14, 14,
	14, 14, 81, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 16, 82, 35, 14, 14,
	14, 14, 14, 27, 60, 14, 14, 14, 14, 14, 37, 35, 35, 35, 14, 0, 0, 35, 35, 35,
	35, 38, 14, 0, 1, 83, 35, 35, 35, 35, 14, 0, 35, 35, 35, 35, 35, 35, 14, 14,
	14, 14, 14, 14, 37, 14, 37, 0, 35, 35, 35, 35, 35, 35, 63, 63, 60, 84, 81, 85,
	63, 35, 12, 12, 12, 12, 12, 35, 35, 35, 14, 52, 60, 29, 52, 19, 0, 34, 14, 14,
	19, 43, 14, 14, 14, 14, 14, 14, 14, 14, 19, 37, 35, 35, 14, 14, 14, 35, 35, 35,
	35, 35, 0, 0, 0, 0, 0, 0, 35, 35, 37, 35, 52, 12, 12, 12, 12, 12, 63, 63,
	64, 35, 35, 35, 35, 35, 63, 63, 63, 63, 63, 63, 35, 35, 63, 63, 63, 63, 63, 35,
	35, 35, 12, 12, 12, 12, 12, 86, 35, 63, 14, 14, 14, 19, 0, 0, 35, 14, 63, 63,
	63, 63, 63, 63, 63, 64, 63, 63, 63, 63, 63, 63, 64, 41, 0, 0, 0, 0, 0, 0,
	0, 35, 0, 0, 0, 0, 0, 87, 35, 35, 0, 0, 88, 89, 89, 89, 89, 89, 89, 89,
	89, 89, 89, 89, 89, 89, 89, 89, 0, 0, 0, 0, 0, 0, 0, 0, 90, 89, 89, 89,
	91, 60, 92, 92, 92, 92, 92, 60, 93, 60, 94, 95, 95, 95, 95, 96, 0, 0, 0, 0,
	95, 95, 95, 95, 93, 60, 0, 43, 14, 14, 14, 14, 14, 14, 19, 0, 0, 0, 0, 0,
	0, 14, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 0, 0, 0, 0, 0, 0, 97,
	35, 35, 35, 35, 14, 14, 14, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 98,
	60, 60, 12, 12, 12, 12, 12, 35, 38, 14, 14, 14, 14, 14, 14, 14, 14, 60, 14, 14,
	14, 14, 14, 37, 38, 14, 0, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 14,
	19, 14, 14, 14, 43, 19, 0, 37, 35, 35, 0, 0, 0, 0, 0, 0, 87, 0, 0, 0,
	0, 0, 0, 0, 34, 0, 14, 14, 14, 14, 38, 38, 38, 38, 14, 14, 14, 14, 14, 14,
	14, 35, 14, 14, 37, 14, 14, 14, 14, 14, 14, 14, 35, 14, 14, 14, 38, 14, 35, 14,
	37, 14, 14, 14, 32, 37, 60, 60, 60, 99, 60, 100, 101, 0, 102, 103, 104, 25, 105, 106,
	105, 106, 28, 14, 107, 108, 109, 0, 0, 87, 50, 50, 50, 50, 7, 110, 111, 14, 14, 14,
	112, 113, 111, 14, 14, 14, 14, 14, 14, 114, 60, 60, 27, 60, 115, 14, 37, 0, 0, 0,
	0, 0, 14, 35, 25, 14, 14, 14, 16, 116, 24, 28, 25, 14, 14, 14, 16, 82, 23, 23,
	23, 6, 23, 23, 23, 23, 23, 23, 23, 22, 23, 6, 23, 22, 22, 23, 23, 23, 23, 23,
	23, 23, 57, 35, 35, 35, 35, 35, 35, 35, 14, 49, 24, 14, 49, 14, 14, 14, 14, 24,
	14, 117, 14, 14, 14, 14, 24, 25, 14, 14, 14, 24, 14, 14, 28, 28, 28, 28, 28, 28,
	28, 25, 28, 28, 28, 28, 28, 28, 14, 14, 28, 28, 28, 28, 28, 14, 14, 14, 14, 14,
	14, 14, 24, 14, 35, 35, 14, 25, 25, 14, 14, 14, 14, 14, 25, 28, 14, 24, 25, 24,
	14, 24, 24, 23, 24, 14, 14, 25, 24, 28, 25, 24, 24, 24, 28, 28, 25, 25, 14, 14,
	28, 28, 14, 14, 28, 14, 14, 14, 14, 14, 25, 14, 25, 14, 14, 25, 14, 14, 14, 14,
	14, 14, 28, 14, 28, 28, 14, 28, 14, 28, 14, 28, 14, 28, 14, 14, 14, 14, 14, 14,
	24, 14, 24, 14, 14, 14, 14, 14, 24, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
	14, 24, 14, 14, 14, 14, 14, 14, 14, 118, 14, 14, 14, 14, 73, 73, 14, 14, 14, 25,
	14, 14, 14, 95, 14, 14, 14, 14, 14, 14, 16, 119, 14, 14, 95, 95, 14, 14, 14, 14,
	14, 14, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 25, 14, 14, 14, 14, 14, 14, 28,
	28, 14, 14, 14, 14, 14, 28, 24, 28, 28, 28, 14, 14, 14, 14, 28, 14, 28, 14, 14,
	28, 14, 28, 14, 14, 28, 25, 24, 14, 28, 28, 14, 14, 14, 14, 14, 14, 14, 14, 28,
	28, 14, 14, 14, 14, 24, 95, 95, 24, 25, 24, 14, 14, 28, 14, 14, 95, 28, 120, 95,
	121, 95, 14, 14, 14, 14, 122, 95, 14, 14, 25, 25, 14, 14, 14, 14, 14, 14, 28, 24,
	28, 24, 123, 25, 28, 24, 14, 14, 14, 14, 14, 14, 14, 122, 14, 14, 14, 14, 14, 14,
	14, 28, 14, 14, 14, 14, 14, 14, 122, 95, 95, 95, 95, 95, 123, 28, 124, 122, 95, 124,
	123, 28, 95, 28, 123, 124, 95, 24, 14, 14, 28, 123, 28, 28, 124, 95, 95, 124, 121, 123,
	124, 95, 95, 95, 120, 14, 95, 125, 125, 14, 14, 14, 14, 24, 14, 7, 105, 105, 5, 52,
	120, 14, 73, 73, 73, 73, 73, 73, 73, 28, 28, 28, 28, 28, 28, 28, 14, 14, 14, 14,
	14, 14, 14, 14, 16, 119, 14, 14, 14, 14, 14, 14, 14, 73, 73, 73, 73, 73, 14, 16,
	126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 119, 14, 14, 14, 14, 14, 14, 14, 14, 14,
	73, 14, 14, 14, 24, 28, 28, 14, 14, 14, 14, 14, 35, 14, 14, 14, 14, 14, 14, 14,
	14, 14, 14, 14, 14, 19, 0, 14, 35, 35, 127, 60, 81, 128, 14, 14, 14, 14, 35, 35,
	35, 38, 83, 35, 35, 35, 35, 35, 35, 41, 14, 14, 14, 37, 35, 35, 35, 35, 14, 14,
	14, 37, 14, 14, 14, 37, 105, 105, 105, 105, 105, 105, 105, 60, 60, 60, 60, 129, 130, 14,
	105, 14, 105, 73, 73, 73, 73, 60, 60, 55, 60, 27, 81, 14, 14, 131, 60, 81, 132, 130,
	60, 60, 60, 81, 81, 60, 14, 15, 133, 134, 134, 134, 135, 35, 95, 95, 95, 95, 95, 95,
	95, 95, 95, 95, 95, 95, 95, 136, 95, 95, 95, 95, 35, 35, 35, 35, 35, 35, 95, 95,
	95, 35, 35, 35, 35, 35, 18, 137, 138, 95, 73, 73, 73, 73, 73, 95, 73, 73, 73, 73,
	139, 140, 95, 95, 95, 95, 95, 0, 0, 0, 95, 95, 96, 95, 95, 138, 141, 95, 142, 143,
	143, 143, 143, 95, 95, 95, 95, 143, 95, 95, 95, 95, 95, 95, 95, 143, 143, 143, 95, 95,
	95, 144, 95, 95, 143, 145, 41, 146, 111, 141, 147, 143, 143, 143, 143, 95, 95, 95, 95, 95,
	143, 144, 95, 138, 148, 141, 35, 35, 136, 95, 95, 95, 95, 95, 136, 95, 95, 95, 95, 95,
	95, 95, 95, 95, 95, 95, 95, 95, 95, 149, 95, 95, 95, 35, 35, 35, 35, 136, 150, 150,
	150, 150, 150, 150, 150, 150, 95, 95, 95, 95, 28, 28, 28, 28, 95, 95, 138, 95, 95, 95,
	95, 95, 95, 95, 95, 95, 95, 95, 149, 35, 95, 95, 95, 149, 35, 35, 35, 35, 14, 14,
	14, 14, 14, 14, 27, 128, 12, 12, 12, 12, 12, 14, 35, 35, 0, 43, 0, 0, 0, 0,
	0, 14, 14, 14, 14, 14, 14, 14, 14, 0, 0, 27, 60, 60, 35, 35, 35, 35, 14, 43,
	14, 43, 14, 19, 14, 14, 14, 19, 0, 0, 14, 14, 57, 35, 14, 14, 14, 14, 151, 35,
	35, 35, 14, 14, 67, 52, 35, 35, 35, 35, 0, 14, 14, 14, 14, 14, 14, 14, 0, 0,
	0, 35, 35, 35, 35, 60, 0, 14, 14, 14, 14, 14, 29, 19, 14, 14, 14, 0, 0, 0,
	0, 60, 14, 14, 14, 19, 0, 0, 0, 0, 0, 0, 35, 35, 35, 35, 35, 38, 77, 77,
	77, 77, 77, 77, 152, 35, 0, 0, 89, 89, 89, 89, 89, 89, 89, 153, 0, 0, 0, 0,
	0, 0, 154, 95, 95, 93, 60, 95, 95, 98, 92, 92, 92, 92, 92, 35, 35, 95, 12, 12,
	12, 12, 12, 63, 63, 64, 92, 92, 92, 92, 155, 0, 0, 0, 0, 0, 0, 57, 35, 35,
	35, 35, 60, 72, 60, 60, 60, 60, 0, 35, 92, 92, 92, 92, 92, 35, 93, 60, 63, 64,
	35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 62, 63, 63, 60, 14, 19, 57, 35, 35,
	35, 35, 38, 14, 14, 37, 38, 14, 14, 37, 38, 14, 14, 37, 35, 35, 35, 35, 14, 14,
	14, 14, 14, 14, 35, 35, 14, 19, 0, 0, 0, 1, 0, 35, 156, 157, 157, 157, 157, 157,
	157, 157, 157, 157, 157, 157, 157, 157, 156, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
	157, 157, 156, 157, 157, 157, 157, 157, 156, 157, 157, 157, 157, 157, 157, 157, 35, 35, 35, 35,
	35, 35, 78, 78, 78, 158, 35, 159, 79, 79, 79, 79, 79, 79, 79, 79, 35, 35, 160, 160,
	160, 160, 160, 160, 160, 160, 35, 38, 14, 14, 35, 35, 47, 161, 45, 45, 45, 45, 48, 45,
	45, 45, 45, 45, 45, 46, 45, 45, 46, 46, 45, 47, 46, 45, 45, 45, 45, 45, 14, 14,
	14, 14, 14, 14, 14, 126, 14, 14, 14, 14, 14, 14, 151, 14, 140, 113, 162, 133, 163, 35,
	35, 35, 34, 34, 34, 33, 87, 87, 87, 34, 95, 95, 164, 126, 126, 126, 126, 126, 126, 126,
	137, 164, 137, 95, 95, 95, 137, 82, 111, 52, 164, 126, 126, 137, 95, 95, 95, 149, 165, 166,
	35, 35, 14, 14, 14, 14, 14, 14, 37, 167, 127, 95, 6, 95, 73, 95, 137, 137, 95, 95,
	95, 95, 95, 111, 95, 168, 95, 95, 95, 95, 95, 164, 169, 95, 95, 95, 95, 95, 95, 164,
	169, 164, 140, 73, 113, 143, 150, 150, 150, 150, 144, 95, 95, 95, 95, 95, 95, 95, 95, 95,
	95, 95, 95, 95, 95, 111, 35, 95, 95, 95, 35, 95, 95, 95, 35, 95, 95, 95, 35, 95,
	149, 35, 22, 95, 165, 170, 14, 14, 14, 37, 35, 35, 35, 35, 41, 0, 171, 35, 14, 14,
	14, 14, 14, 14, 38, 14, 14, 14, 14, 14, 14, 37, 14, 38, 60, 83, 35, 38, 14, 14,
	14, 14, 14, 14, 35, 38, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 19, 35, 14, 14,
	35, 35, 35, 35, 38, 14, 14, 14, 14, 0, 0, 57, 35, 35, 14, 14, 14, 14, 14, 14,
	14, 98, 14, 14, 35, 35, 14, 14, 14, 14, 81, 14, 14, 35, 35, 35, 35, 35, 14, 14,
	35, 35, 35, 35, 35, 38, 14, 14, 14, 14, 14, 37, 14, 14, 14, 37, 14, 38, 14, 14,
	14, 14, 14, 38, 14, 14, 14, 38, 37, 35, 14, 14, 35, 35, 35, 35, 35, 35, 14, 14,
	14, 38, 14, 14, 14, 14, 37, 14, 14, 14, 14, 37, 35, 35, 14, 14, 14, 35, 37, 14,
	14, 14, 14, 14, 14, 38, 37, 35, 37, 38, 14, 14, 14, 98, 14, 14, 14, 14, 35, 35,
	35, 38, 14, 14, 14, 14, 14, 37, 14, 35, 35, 38, 14, 14, 14, 14, 14, 14, 14, 14,
	35, 98, 14, 14, 14, 14, 14, 35, 35, 38, 14, 14, 14, 14, 35, 35, 14, 14, 35, 14,
	14, 14, 14, 14, 14, 14, 19, 0, 41, 57, 35, 35, 0, 0, 14, 14, 38, 14, 38, 14,
	14, 14, 14, 14, 14, 35, 0, 57, 35, 41, 60, 60, 60, 60, 37, 35, 35, 35, 14, 14,
	19, 57, 35, 38, 14, 14, 60, 60, 60, 172, 35, 35, 35, 35, 14, 14, 14, 35, 98, 60,
	60, 60, 14, 14, 14, 35, 14, 14, 14, 14, 14, 37, 35, 35, 14, 14, 14, 14, 14, 35,
	35, 35, 38, 14, 37, 35, 35, 35, 35, 35, 38, 14, 14, 14, 14, 37, 35, 35, 35, 35,
	35, 35, 14, 37, 35, 35, 35, 14, 14, 14, 14, 14, 0, 0, 35, 35, 35, 35, 14, 14,
	14, 35, 41, 0, 0, 80, 14, 14, 14, 35, 35, 35, 35, 14, 14, 14, 14, 14, 14, 41,
	173, 35, 14, 35, 35, 35, 35, 35, 35, 35, 35, 14, 14, 14, 35, 35, 35, 35, 81, 14,
	14, 14, 37, 35, 35, 35, 35, 35, 35, 35, 35, 0, 0, 0, 43, 14, 14, 14, 14, 35,
	35, 35, 14, 0, 0, 14, 14, 35, 35, 35, 0, 174, 175, 89, 89, 89, 89, 89, 89, 89,
	89, 89, 0, 0, 0, 0, 0, 0, 0, 176, 94, 95, 95, 35, 35, 95, 95, 95, 95, 95,
	95, 95, 95, 95, 95, 92, 92, 92, 92, 92, 88, 153, 88, 35, 35, 35, 35, 177, 0, 0,
	0, 0, 0, 43, 178, 60, 60, 57, 35, 35, 35, 35, 179, 35, 0, 0, 57, 12, 12, 12,
	12, 12, 60, 60, 19, 43, 35, 35, 35, 35, 14, 19, 32, 37, 35, 35, 35, 35, 14, 19,
	0, 0, 0, 0, 0, 0, 43, 14, 27, 81, 72, 0, 43, 0, 12, 12, 12, 12, 12, 32,
	27, 60, 14, 14, 37, 35, 35, 35, 35, 35, 14, 14, 14, 14, 14, 14, 0, 0, 0, 0,
	0, 0, 60, 27, 81, 43, 19, 35, 35, 35, 35, 35, 35, 35, 14, 14, 14, 37, 37, 14,
	14, 38, 14, 14, 14, 14, 27, 35, 35, 35, 0, 0, 0, 0, 0, 57, 35, 35, 0, 0,
	180, 89, 89, 89, 91, 180, 91, 180, 89, 89, 89, 89, 89, 89, 89, 89, 89, 89, 91, 89,
	89, 89, 91, 89, 180, 89, 89, 41, 1, 0, 0, 0, 57, 41, 57, 41, 181, 35, 182, 35,
	35, 41, 35, 35, 98, 92, 89, 0, 35, 0, 0, 0, 57, 35, 0, 0, 57, 35, 35, 35,
	35, 35, 92, 92, 92, 92, 92, 183, 35, 182, 92, 89, 89, 89, 89, 89, 89, 89, 89, 89,
	89, 136, 0, 0, 0, 0, 57, 57, 41, 41, 0, 57, 0, 0, 184, 185, 95, 136, 149, 35,
	35, 35, 41, 57, 35, 35, 35, 35, 35, 35, 14, 14, 19, 0, 0, 0, 0, 0, 0, 0,
	0, 43, 14, 27, 60, 81, 12, 12, 12, 12, 12, 60, 38, 43, 0, 0, 14, 14, 35, 35,
	35, 35, 0, 0, 0, 35, 0, 0, 0, 0, 186, 60, 52, 14, 27, 60, 60, 60, 60, 60,
	60, 60, 14, 14, 0, 35, 1, 81, 37, 35, 35, 35, 35, 35, 67, 67, 67, 67, 67, 67,
	187, 35, 0, 0, 0, 0, 14, 35, 35, 35, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
	35, 35, 35, 35, 35, 35, 63, 63, 63, 63, 63, 64, 62, 63, 12, 12, 12, 12, 12, 63,
	60, 188, 63, 63, 63, 64, 35, 35, 35, 35, 0, 0, 0, 0, 0, 43, 35, 35, 14, 37,
	35, 35, 35, 35, 35, 38, 89, 89, 89, 91, 180, 35, 89, 89, 89, 89, 180, 91, 89, 89,
	89, 89, 0, 0, 0, 41, 57, 41, 0, 184, 174, 0, 60, 83, 35, 35, 35, 35, 92, 92,
	92, 92, 92, 35, 35, 35, 14, 14, 14, 14, 35, 14, 14, 14, 19, 0, 0, 0, 35, 0,
	0, 0, 43, 29, 57, 35, 35, 35, 35, 35, 19, 0, 0, 0, 0, 43, 14, 14, 14, 19,
	0, 0, 0, 19, 0, 186, 27, 60, 74, 19, 35, 35, 35, 35, 19, 0, 0, 0, 0, 0,
	14, 14, 0, 0, 0, 0, 0, 60, 81, 67, 69, 83, 35, 35, 35, 35, 35, 35, 67, 67,
	67, 67, 67, 35, 35, 35, 0, 0, 0, 0, 35, 35, 35, 35, 0, 0, 0, 57, 0, 0,
	0, 0, 27, 60, 60, 35, 35, 35, 35, 35, 189, 14, 14, 14, 14, 14, 14, 14, 35, 0,
	0, 0, 0, 0, 0, 0, 14, 14, 14, 37, 14, 38, 14, 14, 19, 0, 0, 57, 35, 57,
	0, 41, 0, 0, 0, 19, 35, 35, 35, 35, 14, 14, 14, 38, 37, 14, 14, 14, 14, 14,
	14, 14, 14, 0, 0, 57, 0, 41, 0, 0, 37, 35, 35, 35, 92, 72, 0, 1, 83, 35,
	35, 35, 0, 190, 89, 89, 89, 89, 89, 89, 91, 89, 89, 89, 89, 89, 89, 89, 89, 89,
	0, 0, 0, 57, 35, 0, 0, 176, 94, 95, 95, 95, 95, 95, 92, 92, 92, 92, 92, 57,
	35, 35, 14, 14, 14, 14, 14, 14, 49, 50, 151, 14, 14, 14, 14, 14, 14, 14, 14, 35,
	35, 35, 35, 35, 35, 98, 60, 60, 83, 35, 35, 35, 35, 35, 14, 14, 14, 14, 191, 73,
	140, 14, 14, 119, 14, 73, 73, 14, 14, 14, 14, 14, 14, 14, 16, 140, 14, 14, 14, 14,
	14, 14, 14, 14, 14, 16, 33, 33, 33, 21, 192, 33, 73, 73, 43, 14, 14, 19, 0, 0,
	0, 0, 0, 0, 0, 35, 35, 35, 35, 35, 14, 14, 14, 14, 14, 14, 14, 73, 92, 92,
	92, 92, 92, 92, 92, 0, 12, 12, 12, 12, 12, 35, 35, 60, 0, 0, 1, 35, 35, 35,
	35, 35, 0, 0, 0, 1, 60, 14, 14, 14, 14, 14, 81, 35, 35, 35, 35, 35, 12, 12,
	12, 12, 12, 38, 14, 14, 14, 14, 14, 14, 35, 35, 38, 14, 14, 14, 14, 27, 81, 37,
	35, 35, 14, 14, 14, 14, 37, 38, 14, 14, 14, 14, 14, 14, 14, 37, 35, 41, 19, 0,
	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 35, 35, 41, 111, 111, 76, 35, 35, 35,
	35, 35, 0, 111, 95, 149, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 38, 95, 149,
	35, 35, 35, 35, 35, 35, 14, 14, 38, 14, 14, 14, 38, 37, 35, 145, 35, 35, 35, 35,
	35, 35, 150, 145, 142, 35, 35, 35, 35, 35, 35, 35, 150, 150, 35, 35, 35, 35, 95, 95,
	95, 95, 95, 95, 35, 35, 14, 14, 14, 14, 14, 35, 19, 1, 0, 0, 35, 35, 35, 35,
	35, 35, 12, 12, 12, 12, 12, 14, 37, 35, 14, 14, 35, 35, 35, 14, 14, 14, 14, 14,
	19, 0, 0, 14, 19, 0, 0, 43, 19, 0, 0, 0, 14, 14, 14, 14, 14, 14, 14, 0,
	0, 14, 14, 0, 43, 35, 35, 35, 35, 35, 35, 37, 38, 37, 38, 14, 37, 14, 14, 14,
	14, 14, 14, 38, 38, 14, 14, 14, 38, 14, 14, 14, 14, 14, 14, 14, 14, 38, 14, 37,
	38, 14, 14, 14, 37, 14, 14, 14, 37, 14, 14, 14, 14, 14, 14, 38, 14, 37, 14, 14,
	37, 37, 35, 14, 14, 14, 14, 14, 14, 14, 14, 14, 35, 12, 0, 0, 0, 43, 14, 19,
	0, 0, 0, 0, 0, 0, 0, 0, 43, 14, 14, 14, 19, 14, 14, 14, 14, 14, 14, 14,
	43, 27, 60, 81, 35, 35, 35, 35, 35, 35, 35, 41, 0, 0, 35, 35, 38, 14, 14, 37,
	35, 35, 0, 0, 0, 0, 57, 41, 0, 0, 0, 41, 57, 0, 0, 57, 35, 35, 35, 35,
	35, 35, 35, 35, 35, 41, 0, 0, 0, 43, 14, 14, 14, 35, 12, 12, 12, 12, 12, 35,
	35, 14, 14, 14, 14, 14, 14, 14, 14, 57, 12, 12, 12, 12, 12, 35, 35, 65, 178, 12,
	12, 12, 12, 86, 35, 38, 14, 19, 14, 43, 14, 14, 14, 0, 14, 14, 19, 35, 35, 35,
	35, 14, 14, 14, 14, 37, 14, 14, 38, 37, 14, 14, 37, 38, 14, 14, 14, 14, 14, 14,
	0, 0, 0, 43, 35, 35, 12, 12, 12, 12, 12, 35, 35, 191, 151, 14, 37, 35, 35, 35,
	35, 35, 38, 37, 37, 38, 38, 14, 14, 14, 14, 37, 14, 14, 38, 38, 35, 35, 35, 37,
	35, 38, 38, 38, 38, 14, 38, 37, 37, 38, 38, 38, 38, 38, 38, 37, 37, 38, 14, 37,
	14, 14, 14, 37, 14, 14, 38, 14, 37, 37, 14, 14, 14, 14, 14, 38, 14, 14, 38, 14,
	38, 14, 14, 38, 14, 14, 28, 28, 28, 28, 28, 28, 25, 14, 28, 28, 28, 28, 28, 28,
	28, 14, 28, 28, 28, 28, 28, 28, 25, 95, 95, 95, 95, 193, 193, 193, 193, 193, 193, 193,
	193, 193, 193, 193, 193, 193, 95, 95, 121, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95,
	14, 95, 95, 95, 120, 122, 95, 95, 122, 95, 95, 125, 194, 121, 95, 125, 194, 95, 95, 95,
	95, 95, 95, 195, 196, 196, 95, 125, 95, 125, 125, 125, 125, 125, 194, 95, 95, 95, 95, 95,
	95, 95, 95, 95, 95, 125, 125, 125, 125, 125, 125, 125, 125, 125, 194, 95, 194, 95, 121, 125,
	121, 125, 95, 95, 95, 121, 121, 95, 95, 95, 95, 95, 95, 95, 122, 122, 122, 95, 95, 194,
	95, 120, 120, 122, 95, 95, 95, 95, 95, 95, 14, 14, 14, 122, 95, 95, 95, 95, 95, 95,
	95, 120, 14, 14, 14, 14, 14, 14, 122, 95, 95, 95, 95, 95, 95, 14, 14, 14, 14, 14,
	14, 14, 14, 14, 14, 14, 14, 95, 95, 95, 95, 95, 125, 95, 95, 194, 95, 95, 194, 95,
	121, 194, 95, 95, 95, 95, 95, 95, 14, 14, 14, 14, 95, 95, 95, 95, 14, 14, 14, 95,
	95, 95, 95, 95, 121, 125, 95, 121, 125, 125, 14, 14, 14, 105, 197, 111, 14, 14, 95, 121,
	95, 95, 95, 95, 95, 95, 95, 95, 125, 194, 95, 95, 95, 95, 194, 95, 95, 95, 95, 95,
	194, 95, 14, 14, 95, 120, 14, 122, 95, 95, 14, 14, 14, 14, 14, 14, 194, 121, 95, 95,
	95, 95, 125, 125, 125, 125, 95, 95, 95, 194, 95, 95, 95, 95, 125, 125, 125, 125, 125, 95,
	125, 194, 95, 95, 95, 121, 95, 95, 95, 95, 95, 95, 121, 194, 125, 121, 95, 95, 95, 95,
	95, 95, 95, 95, 121, 125, 121, 125, 125, 125, 125, 125, 125, 95, 14, 14, 14, 14, 95, 95,
	95, 95, 95, 121, 125, 95, 95, 95, 95, 95, 125, 125, 125, 125, 194, 95, 95, 95, 14, 37,
	14, 14, 14, 14, 14, 14, 12, 12, 12, 12, 12, 37, 35, 35, 95, 95, 95, 95, 95, 95,
	95, 35, 41, 35, 35, 35, 35, 35, 35, 35, 13, 13, 13, 7, 31, 9, 9, 15, 42, 18,
	38, 3, 37, 36, 3, 38, 35, 14, 3, 37, 27, 24, 27, 43, 34, 34, 27, 27, 3, 3,
	3, 18, 3, 35, 37, 14, 7, 12, 3, 13, 13, 32, 19, 35, 36, 37, 37, 37, 3, 1,
	1, 3, 1, 38, 3, 7, 1, 1, 8, 3, 1, 35, 8, 1, 3, 8, 19, 19, 19, 13,
	0, 0, 27, 3, 3, 0, 0, 3, 3, 27, 22, 0, 0, 13, 22, 13, 13, 3, 18, 13,
	23, 23, 23, 0, 0, 23, 23, 3, 3, 36, 36, 36, 13, 18, 18, 18, 36, 34, 34, 3,
	18, 3, 13, 34, 13, 0, 27, 18, 34, 13, 7, 7, 0, 8, 0, 40, 40, 40, 40, 0,
	0, 37, 40, 3, 8, 8, 19, 8, 8, 7, 19, 18, 19, 3, 7, 13, 35, 12, 7, 8,
	3, 19, 19, 0, 28, 28, 30, 30, 29, 29, 22, 3, 7, 3, 12, 0, 7, 0, 33, 40,
	7, 37, 34, 0, 13, 19, 13, 2, 2, 2, 45, 2, 2, 0, 5, 5, 25, 7, 7, 25,
	25, 25, 25, 13, 44, 44, 0, 7, 7, 19, 7, 47, 13, 48, 22, 19, 22, 22, 6, 1,
	38, 38, 35, 38, 26, 26, 26, 7, 9, 9, 38, 1, 33, 33, 27, 35, 12, 33, 7, 36,
	46, 3, 12, 1, 37, 3, 3, 26, 12, 3, 25, 3, 25, 16, 3, 25, 25, 1, 1, 25,
	16, 16, 12, 35, 0, 18, 18, 7, 3, 22, 35, 7, 6, 6, 22, 7, 18, 35, 14, 35,
	14, 22, 0, 25, 12, 25, 25, 33, 33, 35, 12, 12, 33, 25, 0, 11, 25, 11, 11, 25,
	11, 0, 13, 33, 33, 11, 11, 33, 25, 0, 11, 11, 36, 3, 28, 0, 2, 13, 45, 25,
	5, 13, 20, 21, 21, 21, 30, 0, 0, 29, 41, 41, 13, 23, 33, 18, 12, 26, 25, 35,
	25, 37, 36, 25, 0, 46, 25, 18, 25, 12, 37, 0, 10, 1, 26, 0, 13, 22, 13, 4,
	4, 2, 45, 7, 0, 19, 3, 34, 0, 34, 0, 2, 13, 45, 5, 0, 0, 5, 45, 4,
	13, 25, 13, 8, 8, 0, 7, 40, 8, 18, 4, 13, 35, 35, 12, 19, 39, 39, 16, 25,
	25, 17, 17, 17, 38, 33,
}

// Total size 10566 B.

func lbLookup( rune) uint8 {
	if 0 <=  &&  < 918000 {
		return lbUint8[6090+int(int((int(lbUint8[1090+int(int((int(lbUint16[int((int(lbUint8[226+int(int((int(lbUint8[int((((>>1)>>3)>>3)>>5)]))<<5)+int((((>>1)>>3)>>3)&31))]))<<3)+int(((>>1)>>3)&7)]))<<3)+int((>>1)&7))]))<<1)+int(&1))]
	} else {
		return 0
	}
}