10#ifndef vtkVRMLImporter_Yacc_h
11#define vtkVRMLImporter_Yacc_h
31VTK_ABI_NAMESPACE_BEGIN
43 void*
operator new(
size_t n) {
return vtkVRMLAllocator::AllocateMemory(n); }
45 void operator delete(
void* vtkNotUsed(ptr)) {}
61 void addField(
const char* name,
int type);
66 int hasField(
const char* name)
const;
69 const char*
getName()
const {
return name; }
71 void*
operator new(
size_t n) {
return vtkVRMLAllocator::AllocateMemory(n); }
73 void operator delete(
void* vtkNotUsed(ptr)) {}
80 void*
operator new(
size_t n) {
return vtkVRMLAllocator::AllocateMemory(n); }
82 void operator delete(
void* vtkNotUsed(ptr)) {}
95 void add(vtkVRMLVectorType<NameTypeRec*>&,
const char*,
int);
96 int has(
const vtkVRMLVectorType<NameTypeRec*>&,
const char*)
const;
100 vtkVRMLVectorType<NameTypeRec*> eventIns;
101 vtkVRMLVectorType<NameTypeRec*> eventOuts;
102 vtkVRMLVectorType<NameTypeRec*> fields;
127 int addField(
const char* type,
const char* name);
128 int addEventIn(
const char* type,
const char* name);
129 int addEventOut(
const char* type,
const char* name);
131 int add(
void (
VrmlNodeType::*)(
const char*,
int),
const char*,
const char*);
302 vtkVRMLVectorType<vtkVRMLUseStruct*>*
useList;
328 assert(nm !=
nullptr);
329 name =
static_cast<char*
>(vtkVRMLAllocator::AllocateMemory((strlen(nm) + 1) *
sizeof(
char)));
338 for (i = 0; i < eventIns.Count(); i++)
344 for (i = 0; i < eventOuts.Count(); i++)
350 for (i = 0; i < fields.Count(); i++)
359 add(eventIns, nodeName, type);
363 add(eventOuts, nodeName, type);
367 add(fields, nodeName, type);
372 add(fields, nodeName, type);
373 vtk::format_to(std::back_inserter(tmp),
"set_{:s}", nodeName);
374 add(eventIns, tmp.data(), type);
375 vtk::format_to(std::back_inserter(tmp),
"{:s}_changed", nodeName);
376 add(eventOuts, tmp.data(), type);
379inline void VrmlNodeType::add(vtkVRMLVectorType<NameTypeRec*>& recs,
const char* nodeName,
int type)
381 NameTypeRec* r =
new NameTypeRec;
382 r->name = vtkVRMLAllocator::StrDup(nodeName);
389 return has(eventIns, nodeName);
393 return has(eventOuts, nodeName);
397 return has(fields, nodeName);
404 if ((type = has(fields, nodeName)) == 0)
407 if (type != has(eventIns, nodeName))
410 if (type != has(eventOuts, nodeName))
415inline int VrmlNodeType::has(
416 const vtkVRMLVectorType<NameTypeRec*>& recs,
const char* nodeName)
const
418 for (
int i = 0; i < recs.Count(); i++)
420 NameTypeRec* n = recs.Get(i);
421 if (strcmp(n->name, nodeName) == 0)
466 std::cerr <<
"PROTO " << _type->
getName() <<
" already defined\n";
485 for (
int i = 0; i <
typeList->Count(); i++)
489 if (nodeType ==
nullptr)
507 for (
int i = 0; i <
typeList->Count(); i++)
510 if (nt !=
nullptr && strcmp(nt->
getName(), _name) == 0)
525#define IDENTIFIER 258
529#define EXTERNPROTO 262
537#define EXPOSEDFIELD 270
544#define SFROTATION 277
552#define MFROTATION 285
603#define YYLTYPE yyltype
610#define YYTRANSLATE(x) ((unsigned)(x) <= 289 ? yytranslate[x] : 68)
612static const char yytranslate[] = { 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
613 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, 39, 2, 2, 2, 2, 2, 2,
614 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, 2, 2, 2,
615 2, 2, 2, 2, 2, 35, 2, 36, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
616 2, 2, 2, 2, 2, 37, 2, 38, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
617 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, 2, 2, 2,
618 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, 2, 2, 2,
619 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, 2, 2, 2,
620 2, 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
621 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34 };
624static const short yyprhs[] = { 0, 0, 2, 3, 6, 8, 10, 12, 14, 15, 16, 22, 25, 27, 29, 30, 40, 41,
625 42, 51, 52, 55, 59, 63, 64, 70, 71, 77, 78, 81, 85, 89, 93, 97, 106, 107, 113, 114, 117, 118, 122,
626 124, 126, 130, 134, 135, 141, 147, 153, 155, 157, 159, 161, 163, 165, 167, 169, 171, 173, 175,
627 177, 179, 181, 183, 185, 187, 190, 193, 196, 199, 203, 205, 206 };
629static const short yyrhs[] = { 41, 0, 0, 41, 42, 0, 43, 0, 46, 0, 58, 0, 59, 0, 0, 0, 4, 44, 3, 45,
630 59, 0, 5, 3, 0, 47, 0, 49, 0, 0, 6, 3, 48, 35, 52, 36, 37, 41, 38, 0, 0, 0, 7, 3, 50, 35, 56, 36,
631 51, 65, 0, 0, 52, 53, 0, 12, 3, 3, 0, 13, 3, 3, 0, 0, 14, 3, 3, 54, 65, 0, 0, 15, 3, 3, 55, 65, 0,
632 0, 56, 57, 0, 12, 3, 3, 0, 13, 3, 3, 0, 14, 3, 3, 0, 15, 3, 3, 0, 10, 3, 39, 3, 8, 3, 39, 3, 0, 0,
633 3, 60, 37, 61, 38, 0, 0, 61, 62, 0, 0, 3, 63, 65, 0, 58, 0, 46, 0, 12, 3, 3, 0, 13, 3, 3, 0, 0,
634 14, 3, 3, 64, 65, 0, 12, 3, 3, 9, 3, 0, 13, 3, 3, 9, 3, 0, 16, 0, 17, 0, 27, 0, 18, 0, 28, 0, 19,
635 0, 20, 0, 29, 0, 22, 0, 30, 0, 23, 0, 31, 0, 24, 0, 25, 0, 32, 0, 26, 0, 33, 0, 21, 43, 0, 21, 11,
636 0, 34, 66, 0, 9, 3, 0, 35, 67, 36, 0, 43, 0, 0, 67, 43, 0 };
641static const short yyrline[] = { 0, 106, 109, 111, 114, 116, 117, 120, 122, 123, 124, 125, 128, 130,
642 133, 135, 139, 141, 143, 145, 147, 150, 153, 155, 157, 158, 160, 163, 165, 168, 171, 173, 175,
643 179, 184, 186, 189, 191, 194, 196, 197, 198, 201, 202, 203, 206, 207, 209, 213, 215, 216, 217,
644 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 232, 233, 234, 235, 238, 240,
647static const char*
const yytname[] = {
"$",
"error",
"$undefined.",
"IDENTIFIER",
"DEF",
"USE",
648 "PROTO",
"EXTERNPROTO",
"TO",
"IS",
"ROUTE",
"SFN_NULL",
"EVENTIN",
"EVENTOUT",
"FIELD",
649 "EXPOSEDFIELD",
"SFBOOL",
"SFCOLOR",
"SFFLOAT",
"SFIMAGE",
"SFINT32",
"SFNODE",
"SFROTATION",
650 "SFSTRING",
"SFTIME",
"SFVEC2F",
"SFVEC3F",
"MFCOLOR",
"MFFLOAT",
"MFINT32",
"MFROTATION",
651 "MFSTRING",
"MFVEC2F",
"MFVEC3F",
"MFNODE",
"'['",
"']'",
"'{'",
"'}'",
"'.'",
"vrmlscene",
652 "declarations",
"declaration",
"nodeDeclaration",
"@1",
"@2",
"protoDeclaration",
"proto",
"@3",
653 "externproto",
"@4",
"@5",
"interfaceDeclarations",
"interfaceDeclaration",
"@6",
"@7",
654 "externInterfaceDeclarations",
"externInterfaceDeclaration",
"routeDeclaration",
"node",
"@8",
655 "nodeGuts",
"nodeGut",
"@9",
"@10",
"fieldValue",
"mfnodeValue",
"nodes",
"" };
658static const short yyr1[] = { 0, 40, 41, 41, 42, 42, 42, 43, 44, 45, 43, 43, 46, 46, 48, 47, 50, 51,
659 49, 52, 52, 53, 53, 54, 53, 55, 53, 56, 56, 57, 57, 57, 57, 58, 60, 59, 61, 61, 63, 62, 62, 62,
660 62, 62, 64, 62, 62, 62, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65,
661 65, 65, 65, 66, 66, 67, 67 };
663static const short yyr2[] = { 0, 1, 0, 2, 1, 1, 1, 1, 0, 0, 5, 2, 1, 1, 0, 9, 0, 0, 8, 0, 2, 3, 3,
664 0, 5, 0, 5, 0, 2, 3, 3, 3, 3, 8, 0, 5, 0, 2, 0, 3, 1, 1, 3, 3, 0, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1,
665 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 1, 0, 2 };
667static const short yydefact[] = { 2, 1, 34, 8, 0, 0, 0, 0, 3, 4, 5, 12, 13, 6, 7, 0, 0, 11, 14, 16,
668 0, 36, 9, 0, 0, 0, 0, 0, 19, 27, 0, 38, 0, 0, 0, 35, 41, 40, 37, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
669 0, 0, 20, 0, 0, 0, 0, 17, 28, 0, 0, 48, 49, 51, 53, 54, 0, 56, 58, 60, 61, 63, 50, 52, 55, 57, 59,
670 62, 64, 0, 39, 42, 43, 44, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 68, 66, 65, 71, 70, 67, 0, 0, 0, 21,
671 22, 23, 25, 0, 29, 30, 31, 32, 18, 33, 0, 46, 47, 45, 0, 0, 15, 69, 72, 24, 26, 0, 0, 0 };
673static const short yydefgoto[] = { 126, 1, 8, 9, 16, 27, 10, 11, 23, 12, 24, 93, 40, 52, 119, 120,
674 41, 58, 13, 14, 15, 26, 38, 43, 103, 80, 100, 115 };
676static const short yypact[] = { -32768, 79, -32768, -32768, -1, 0, 3, 4, -32768, -32768, -32768,
677 -32768, -32768, -32768, -32768, -28, 11, -32768, -32768, -32768, -18, -32768, -32768, -6, 5, 32,
678 -2, 38, -32768, -32768, 35, -32768, 39, 41, 45, -32768, -32768, -32768, -32768, -32768, 19, 66,
679 48, 43, 50, 51, 54, 84, 85, 87, 88, 55, -32768, 90, 91, 92, 93, -32768, -32768, 58, 95, -32768,
680 -32768, -32768, -32768, -32768, 34, -32768, -32768, -32768, -32768, -32768, -32768, -32768,
681 -32768, -32768, -32768, -32768, -32768, 23, -32768, 94, 96, -32768, 97, 98, 101, 103, -32768, 104,
682 105, 106, 107, 43, 108, -32768, -32768, -32768, -32768, -32768, -32768, 109, 110, 43, -32768,
683 -32768, -32768, -32768, 12, -32768, -32768, -32768, -32768, -32768, -32768, 20, -32768, -32768,
684 -32768, 43, 43, -32768, -32768, -32768, -32768, -32768, 99, 114, -32768 };
686static const short yypgoto[] = { -32768, 27, -32768, -66, -32768, -32768, 100, -32768, -32768,
687 -32768, -32768, -32768, -32768, -32768, -32768, -32768, -32768, -32768, 102, 89, -32768, -32768,
688 -32768, -32768, -32768, -73, -32768, -32768 };
692static const short yytable[] = { 97, 31, 17, 18, 5, 6, 19, 20, 7, 21, 32, 33, 34, 99, 22, 2, 3, 4,
693 5, 6, 113, 25, 7, 2, 3, 4, 2, 3, 4, 28, 118, 47, 48, 49, 50, 30, 35, 2, 3, 4, 29, 2, 44, 42, 45,
694 96, 124, 125, 46, 123, 121, 59, 60, 81, 82, 51, 122, 83, 98, 61, 62, 63, 64, 65, 66, 67, 68, 69,
695 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 53, 54, 55, 56, 2, 3, 4, 5, 6, 84, 85, 7, 86, 87, 88, 89,
696 90, 91, 92, 94, 95, 127, 104, 105, 57, 101, 106, 102, 107, 109, 110, 111, 112, 114, 116, 117, 128,
697 108, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, 37 };
699static const short yycheck[] = { 66, 3, 3, 3, 6, 7, 3, 3, 10, 37, 12, 13, 14, 79, 3, 3, 4, 5, 6, 7,
700 93, 39, 10, 3, 4, 5, 3, 4, 5, 35, 103, 12, 13, 14, 15, 3, 38, 3, 4, 5, 35, 3, 3, 8, 3, 11, 119,
701 120, 3, 115, 38, 3, 9, 3, 3, 36, 36, 3, 35, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
702 29, 30, 31, 32, 33, 34, 12, 13, 14, 15, 3, 4, 5, 6, 7, 3, 3, 10, 3, 3, 37, 3, 3, 3, 3, 39, 3, 0,
703 3, 3, 36, 9, 3, 9, 3, 3, 3, 3, 3, 3, 3, 3, 0, 88, 27, -1, -1, -1, -1, -1, -1, -1, -1, -1, 26, -1,
726VTK_ABI_NAMESPACE_BEGIN
733 for (list_type::iterator it = this->m_allocs.begin(); it != this->m_allocs.end(); ++it)
740 void* rval = malloc(size);
741 m_allocs.push_back(rval);
757#define yyerrok (yyerrstatus = 0)
758#define yyclearin (yychar = YYEMPTY)
761#define YYACCEPT return (0)
762#define YYABORT return (1)
763#define YYERROR goto yyerrlab1
768#define YYFAIL goto yyerrlab
769#define YYRECOVERING() (!!yyerrstatus)
770#define YYBACKUP(token, value) \
772 if (yychar == YYEMPTY && yylen == 1) \
774 yychar = (token), yylval = (value); \
775 yychar1 = YYTRANSLATE(yychar); \
781 yyerror("syntax error: cannot back up"); \
792#define YYINITDEPTH 200
798#if defined(YYMAXDEPTH) && (YYMAXDEPTH == 0)
803#define YYMAXDEPTH 10000
837#define YYPOPSTACK (yyvsp--, yyssp--, yylsp--)
839#define YYPOPSTACK (yyvsp--, yyssp--)
861 vtk::print(stderr,
"Starting parse\n");
887 if (yyssp >= yyss + yystacksize - 1)
898 int size = yyssp - yyss + 1;
906 yyoverflow(
"parser stack overflow", &yyss1, size *
sizeof(*yyssp), &yyvs1,
907 size *
sizeof(*yyvsp), &yyls1, size *
sizeof(*yylsp), &yystacksize);
909 yyoverflow(
"parser stack overflow", &yyss1, size *
sizeof(*yyssp), &yyvs1,
910 size *
sizeof(*yyvsp), &yystacksize);
922 yyerror(
"parser stack overflow");
928 yyss = (
short*)yyallocator.
Allocate(yystacksize *
sizeof(*yyssp));
929 yy_memcpy((
char*)yyss1, (
char*)yyss, size *
sizeof(*yyssp));
931 yy_memcpy((
char*)yyvs1, (
char*)yyvs, size *
sizeof(*yyvsp));
934 yy_memcpy((
char*)yyls1, (
char*)yyls, size *
sizeof(*yylsp));
938 yyssp = yyss + size - 1;
939 yyvsp = yyvs + size - 1;
941 yylsp = yyls + size - 1;
946 vtk::print(stderr,
"Stack size increased to {:d}\n", yystacksize);
949 if (yyssp >= yyss + yystacksize - 1)
955 vtk::print(stderr,
"Entering state {:d}\n", yystate);
980 vtk::print(stderr,
"Reading a token: ");
994 vtk::print(stderr,
"Now at end of input.\n");
1004 vtk::print(stderr,
"Next token is {:d} ({:s}",
yychar, yytname[yychar1]);
1010 vtk::print(stderr,
")\n");
1045 vtk::print(stderr,
"Shifting token {:d} ({:s}), ",
yychar, yytname[yychar1]);
1075 yyval = yyvsp[1 - yylen];
1084 vtk::print(stderr,
"Reducing via rule {:d} (line {:d}), ", yyn, yyrline[yyn]);
1087 for (i = yyprhs[yyn]; yyrhs[i] > 0; i++)
1088 vtk::print(stderr,
"{:s} ", yytname[yyrhs[i]]);
1089 vtk::print(stderr,
" -> {:s}\n", yytname[
yyr1[yyn]]);
1115 self->
useNode(yyvsp[0].
string);
1145 addEventIn(yyvsp[-1].
string, yyvsp[0].
string);
1157 int type =
addField(yyvsp[-1].
string, yyvsp[0].
string);
1177 addEventIn(yyvsp[-1].
string, yyvsp[0].
string);
1189 addField(yyvsp[-1].
string, yyvsp[0].
string);
1291 short* ssp1 = yyss - 1;
1292 vtk::print(stderr,
"state stack now");
1293 while (ssp1 != yyssp)
1294 vtk::print(stderr,
" {:d}", *++ssp1);
1295 vtk::print(stderr,
"\n");
1305 yylsp->first_line =
yylloc.first_line;
1306 yylsp->first_column =
yylloc.first_column;
1307 yylsp->last_line = (yylsp - 1)->last_line;
1308 yylsp->last_column = (yylsp - 1)->last_column;
1313 yylsp->last_line = (yylsp + yylen - 1)->last_line;
1314 yylsp->last_column = (yylsp + yylen - 1)->last_column;
1326 if (yystate >= 0 && yystate <=
YYLAST &&
yycheck[yystate] == *yyssp)
1340#ifdef YYERROR_VERBOSE
1351 for (x = (yyn < 0 ? -yyn : 0); x < (
sizeof(yytname) /
sizeof(
char*)); x++)
1353 size += strlen(yytname[x]) + 15, count++;
1354 msg = (
char*)malloc(size + 15);
1357 strcpy(msg,
"parse error");
1362 for (x = (yyn < 0 ? -yyn : 0); x < (
sizeof(yytname) /
sizeof(
char*)); x++)
1365 strcat(msg, count == 0 ?
", expecting `" :
" or `");
1366 strcat(msg, yytname[x]);
1375 yyerror(
"parse error; also virtual memory exceeded");
1385 if (yyerrstatus == 3)
1395 vtk::print(stderr,
"Discarding token {:d} ({:s}).\n",
yychar, yytname[yychar1]);
1414 if (yyn)
goto yydefault;
1430 short* ssp1 = yyss - 1;
1431 vtk::print(stderr,
"Error: state stack now");
1432 while (ssp1 != yyssp)
1433 vtk::print(stderr,
" {:d}", *++ssp1);
1434 vtk::print(stderr,
"\n");
1464 vtk::print(stderr,
"Shifting error token, ");
1499 std::cerr <<
"Error: Empty PROTO stack!\n";
1528 void (
VrmlNodeType::*func)(
const char*,
int),
const char* typeString,
const char* name)
1534 std::cerr <<
"Error: invalid field type: " << type <<
"\n";
1542 std::cerr <<
"Error: declaration outside of prototype\n";
1546 (t->*func)(name, type);
1553 if (strcmp(type,
"SFBool") == 0)
1555 if (strcmp(type,
"SFColor") == 0)
1557 if (strcmp(type,
"SFFloat") == 0)
1559 if (strcmp(type,
"SFImage") == 0)
1561 if (strcmp(type,
"SFInt32") == 0)
1563 if (strcmp(type,
"SFNode") == 0)
1565 if (strcmp(type,
"SFRotation") == 0)
1567 if (strcmp(type,
"SFString") == 0)
1569 if (strcmp(type,
"SFTime") == 0)
1571 if (strcmp(type,
"SFVec2f") == 0)
1573 if (strcmp(type,
"SFVec3f") == 0)
1575 if (strcmp(type,
"MFColor") == 0)
1577 if (strcmp(type,
"MFFloat") == 0)
1579 if (strcmp(type,
"MFInt32") == 0)
1581 if (strcmp(type,
"MFNode") == 0)
1583 if (strcmp(type,
"MFRotation") == 0)
1585 if (strcmp(type,
"MFString") == 0)
1587 if (strcmp(type,
"MFVec2f") == 0)
1589 if (strcmp(type,
"MFVec3f") == 0)
1592 std::cerr <<
"Illegal field type: " << type <<
"\n";
1602 yyerror(
"interface declaration outside of Script or prototype");
1611VTK_ABI_NAMESPACE_END
1627#define YY_USE_PROTOS
1628#define YY_PROTO(proto) proto
1638#define YY_SC_TO_UI(c) ((unsigned int)(unsigned char)c)
1644#define BEGIN yy_start = 1 + 2 *
1649#define YY_START ((yy_start - 1) / 2)
1652#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
1657#define YY_NEW_FILE yyrestart(yyin)
1659#define YY_END_OF_BUFFER_CHAR 0
1662#define YY_BUF_SIZE 16384
1678#define EOB_ACT_CONTINUE_SCAN 0
1679#define EOB_ACT_END_OF_FILE 1
1680#define EOB_ACT_LAST_MATCH 2
1702 *yy_cp = yy_hold_char; \
1703 yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \
1704 YY_DO_BEFORE_ACTION; \
1758#define YY_CURRENT_BUFFER yy_current_buffer
1788#define yy_new_buffer yy_create_buffer
1816#define yytext_ptr yytext
1830#define YY_DO_BEFORE_ACTION \
1833 yytext_ptr = yy_bp; \
1834 yyleng = yy_cp - yy_bp; \
1835 yy_hold_char = *yy_cp; \
1837 yy_c_buf_p = yy_cp; \
1840#define YY_END_OF_BUFFER 50
1841static const short int yy_accept[949] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1842 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 48, 46, 47, 46,
1843 14, 46, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 48, 48, 48, 48, 48, 48, 48, 48, 25, 48, 48, 48,
1844 48, 23, 23, 48, 48, 48, 38, 36, 38, 38, 48, 48, 35, 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, 19,
1847 26, 17, 48, 24, 24, 18, 48, 48, 48, 39, 37, 39, 39, 48, 48, 48, 48, 48, 48, 41, 41, 42, 41, 41,
1848 43, 48, 45, 45, 46, 47, 46, 47, 47, 46, 46, 46, 46, 14, 14, 14, 7, 14, 14, 14, 6, 14, 14, 14, 14,
1849 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 25, 25, 0, 0, 0, 0, 0, 23, 23, 0, 0, 0, 0, 0, 0, 38, 38, 38, 15, 0,
1850 35, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1852 16, 0, 26, 26, 0, 24, 24, 0, 0, 0, 0, 0, 0, 39, 39, 39, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1853 41, 41, 41, 41, 41, 41, 40, 45, 45, 47, 47, 47, 46, 4, 14, 14, 14, 14, 5, 14, 14, 14, 0, 0, 0, 0,
1854 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 0, 44, 44, 0, 0, 0, 0, 44, 44, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1855 0, 0, 0, 35, 0, 0, 27, 0, 0, 0, 0, 0, 27, 0,
1857 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 24, 0, 0, 0, 0, 0, 0,
1858 0, 0, 0, 0, 0, 0, 0, 28, 0, 0, 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 45, 46, 14, 9,
1859 14, 14, 14, 14, 14, 0, 21, 0, 0, 0, 0, 0, 0, 0, 0, 44, 44, 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 0, 0,
1860 0, 0, 0, 0, 0, 0, 0,
1862 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, 14, 2, 8, 14,
1863 14, 12, 22, 0, 0, 33, 0, 0, 0, 0, 0, 33, 0, 0, 0, 0, 33, 0, 0, 0, 33, 0, 0, 0, 0, 0, 33, 0, 0, 0,
1864 44, 44, 44, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1865 0, 27, 0, 0, 27, 0, 0, 29,
1867 0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 29, 0, 0, 0, 29, 0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0,
1868 0, 34, 0, 0, 0, 0, 34, 0, 0, 0, 34, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1869 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 0, 0, 28, 0, 0, 30, 0, 0, 0, 0, 0, 30, 0,
1870 0, 0, 0, 30, 0, 0, 0,
1872 30, 0, 0, 0, 0, 0, 30, 0, 0, 0, 46, 14, 14, 14, 14, 33, 0, 0, 33, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0,
1873 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29, 0, 0, 29, 0, 29, 0, 0, 34, 0, 0, 34, 0, 34, 0, 0, 0, 0,
1874 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 30, 0, 30, 0, 0, 46, 14, 10, 14, 14,
1875 0, 33, 0, 0, 33, 0, 0, 33, 0, 33,
1877 0, 0, 33, 0, 0, 31, 0, 0, 0, 0, 0, 31, 0, 0, 0, 0, 31, 0, 0, 31, 0, 0, 0, 0, 0, 31, 0, 0, 0, 0, 0,
1878 31, 0, 0, 0, 31, 0, 0, 0, 0, 0, 31, 0, 0, 0, 0, 0, 0, 0, 31, 0, 0, 0, 0, 29, 0, 0, 29, 0, 0, 29,
1879 0, 29, 0, 0, 29, 0, 34, 0, 0, 34, 0, 0, 34, 0, 34, 0, 0, 34, 0, 0, 32, 0, 0, 0, 0, 0, 32, 0, 0, 0,
1880 0, 32, 0, 0, 32, 0, 0, 0, 0,
1882 0, 32, 0, 0, 0, 0, 0, 32, 0, 0, 0, 32, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 0, 30,
1883 0, 0, 30, 0, 0, 30, 0, 30, 0, 0, 30, 46, 14, 11, 14, 31, 0, 0, 31, 0, 31, 0, 0, 31, 0, 31, 0, 0,
1884 31, 0, 32, 0, 0, 32, 0, 32, 0, 0, 32, 0, 32, 0, 0, 32, 0, 46, 14, 14, 0, 31, 0, 0, 31, 0, 0, 31,
1885 0, 31, 0, 0, 31, 0, 0, 31, 0, 31, 0, 0, 31,
1887 0, 0, 31, 0, 32, 0, 0, 32, 0, 0, 32, 0, 32, 0, 0, 32, 0, 0, 32, 0, 32, 0, 0, 32, 0, 0, 32, 46, 14,
1888 14, 46, 3, 14, 46, 13, 46, 46, 46, 46, 46, 1, 46, 1, 1, 1, 1, 1, 0 };
1890static const int yy_ec[256] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1891 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 5, 6, 7, 5, 5, 5, 1, 5, 5, 5, 8, 2, 9, 10, 5, 11, 12, 13, 12, 12,
1892 12, 12, 12, 14, 12, 5, 5, 5, 5, 5, 5, 5, 15, 16, 16, 17, 18, 19, 5, 5, 20, 5, 5, 21, 22, 23, 24,
1893 25, 5, 26, 27, 28, 29, 30, 5, 31, 5, 5, 32, 33, 34, 5, 5, 5, 16, 16, 16, 35,
1895 36, 37, 5, 5, 38, 5, 5, 39, 5, 40, 41, 42, 5, 5, 43, 44, 45, 46, 5, 47, 5, 5, 1, 5, 1, 5, 5, 5, 5,
1896 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
1897 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
1900 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
1901 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 };
1903static const int yy_meta[48] = { 0, 1, 2, 3, 2, 4, 5, 6, 4, 4, 1, 7, 7, 7, 7, 7, 7, 7, 7, 7, 4, 4,
1904 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 8, 1, 8, 7, 7, 7, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 };
1906static const short int yy_base[1090] = { 0, 0, 6, 13, 0, 59, 65, 92, 0, 104, 110, 116, 122, 128,
1907 134, 140, 146, 159, 165, 164, 177, 183, 189, 195, 201, 207, 233, 259, 285, 311, 337, 363, 389,
1908 422, 455, 481, 507, 533, 559, 222, 228, 256, 274, 324, 350, 787, 7663, 73, 79, 280, 0, 247, 768,
1909 753, 751, 745, 726, 725, 719, 715, 18, 685, 702, 687, 682, 78, 96, 592, 170, 289, 368, 300, 627,
1910 51, 315, 380, 328, 342, 354, 673, 0, 7663, 410, 677, 420, 376, 427, 436, 394, 708, 454, 458, 743,
1911 466, 470, 778, 676, 7663, 7663, 486, 491,
1913 496, 7663, 511, 517, 522, 7663, 544, 538, 813, 0, 7663, 579, 665, 549, 563, 848, 604, 576, 883, 0,
1914 605, 7663, 617, 672, 7663, 631, 635, 639, 652, 302, 658, 665, 666, 686, 692, 698, 725, 0, 652,
1915 636, 0, 636, 613, 607, 0, 617, 597, 590, 591, 605, 7663, 596, 722, 0, 727, 918, 931, 751, 755,
1916 792, 759, 821, 0, 944, 957, 805, 786, 0, 825, 0, 830, 970, 983, 856, 0, 869, 875, 0, 834, 900,
1917 987, 891, 895, 0, 996, 1022, 1035, 1003, 1007, 0, 1040, 1053, 1066, 1073, 1077, 0, 1082, 1095,
1920 7663, 1119, 1124, 1132, 1140, 1144, 0, 1150, 0, 1159, 1172, 1185, 1192, 0, 1205, 1211, 0, 1208, 0,
1921 1213, 1244, 1257, 1220, 1261, 1274, 1283, 1309, 1322, 1290, 0, 1335, 1341, 1347, 1353, 1359, 7663,
1922 1294, 0, 1234, 1365, 1366, 1372, 0, 604, 580, 572, 569, 0, 552, 537, 501, 511, 519, 1370, 1374,
1923 1393, 1428, 1441, 0, 0, 0, 1410, 1378, 1454, 1407, 1411, 1458, 1462, 1466, 1508, 1521, 1534, 1547,
1924 1560, 191, 1479, 0, 1477, 1483, 1606, 1641, 1654, 0, 0, 0, 1575, 1487, 1667, 1491, 1572, 1584,
1925 1576, 1623, 1680, 0, 0, 0, 0, 230, 1588,
1927 1693, 1615, 1592, 1706, 1741, 0, 0, 0, 0, 1723, 1720, 1758, 1725, 1762, 1775, 1810, 0, 0, 0, 0,
1928 1792, 1789, 1827, 1793, 1831, 0, 1836, 1840, 1853, 1888, 0, 0, 0, 0, 1870, 1867, 1905, 1872, 1909,
1929 1914, 1949, 0, 0, 0, 0, 238, 1922, 1962, 1927, 1931, 1975, 2010, 0, 0, 0, 0, 1992, 1935, 2027, 0,
1930 2040, 500, 0, 488, 493, 444, 443, 450, 456, 7663, 1990, 2060, 2073, 2037, 2086, 2099, 2112, 2044,
1931 0, 2116, 1995, 2162, 2175, 2128, 2188, 2201, 2214, 2227, 2132, 2146, 2240, 2253, 2288, 2301, 2261,
1932 2314, 2327, 2340, 2353, 2366,
1934 2401, 2414, 2268, 2427, 2440, 2453, 2466, 2479, 2514, 2527, 2374, 2540, 2553, 2566, 2579, 2383,
1935 2487, 2592, 2605, 2640, 2653, 2494, 2666, 2679, 2692, 2705, 2281, 437, 0, 0, 50, 386, 0, 7663,
1936 2379, 2498, 2622, 2718, 2731, 0, 0, 0, 239, 2613, 2744, 2757, 2770, 2783, 2818, 2792, 2617, 2831,
1937 2866, 0, 0, 0, 0, 272, 2796, 2800, 2845, 0, 2881, 205, 285, 2840, 2804, 2927, 2962, 2975, 0, 0, 0,
1938 2944, 2941, 2988, 3001, 3014, 3027, 3062, 2946, 3035, 3075, 3110, 0, 0, 0, 0, 3092, 3039, 3043,
1939 3127, 3047, 3089, 3162, 3175, 400, 3094, 3135, 3144,
1941 3188, 3201, 0, 0, 0, 417, 3139, 3214, 3227, 3240, 3253, 3288, 3262, 3266, 3301, 3336, 0, 0, 0, 0,
1942 437, 3270, 3274, 3315, 3310, 3341, 3346, 3381, 3394, 0, 0, 0, 548, 3354, 3407, 3420, 3433, 3446,
1943 3481, 3359, 3363, 3494, 3529, 0, 0, 0, 0, 562, 3367, 3454, 3463, 3503, 3458, 3542, 3577, 3590, 0,
1944 0, 0, 3559, 3507, 3603, 3616, 3629, 3642, 3677, 3512, 3556, 3690, 3725, 0, 0, 0, 0, 3659, 3560,
1945 3656, 3738, 3660, 3698, 3773, 3786, 645, 3703, 3707, 3755, 3799, 3812, 0, 0, 0, 661, 3711, 3825,
1946 3838, 3851, 3864, 3899, 3747, 3872,
1948 3912, 3947, 0, 0, 0, 0, 680, 3876, 3880, 3926, 3925, 390, 370, 351, 323, 3952, 3960, 3987, 4000,
1949 4035, 4048, 3967, 4083, 4096, 4131, 4144, 4008, 4157, 4170, 4183, 4196, 4209, 4244, 4257, 4270,
1950 4283, 4296, 4331, 4015, 4344, 4357, 4370, 4065, 4056, 4383, 4396, 4431, 4444, 4104, 4479, 4113,
1951 4217, 4492, 4505, 4540, 4553, 4224, 4588, 4601, 4636, 4649, 4304, 4662, 4675, 4688, 4701, 4714,
1952 4749, 4762, 4775, 4788, 4801, 4836, 4311, 4849, 4862, 4875, 4413, 4404, 4888, 4901, 4936, 4949,
1953 4452, 4984, 2858, 304, 0, 274, 296, 3884, 3971, 4997, 5010, 688, 5023, 5036, 4522, 4019, 5049,
1955 5062, 5075, 689, 4061, 4108, 4461, 5088, 5101, 0, 0, 0, 695, 4228, 5114, 5127, 5140, 5153, 4316,
1956 4408, 5188, 5223, 5236, 0, 0, 0, 712, 4456, 4519, 4570, 5249, 5262, 5275, 5310, 4524, 4561, 5323,
1957 5358, 0, 0, 0, 0, 740, 4565, 4609, 4618, 4613, 5371, 5384, 5397, 5410, 4722, 4726, 4731, 4809,
1958 4813, 5445, 5458, 757, 5471, 5484, 4918, 4817, 5497, 5510, 5523, 765, 4821, 4915, 5536, 5549, 838,
1959 5562, 5575, 4966, 4919, 5588, 5601, 5614, 862, 4964, 4968, 5167, 5627, 5640, 0, 0, 0, 931, 5161,
1960 5653, 5666, 5679, 5692, 5197, 5201, 5727, 5762, 5775, 0, 0,
1962 0, 986, 5205, 5209, 5292, 5788, 5801, 5814, 5849, 5284, 5331, 5862, 5897, 0, 0, 0, 0, 1022, 5335,
1963 5339, 5427, 5343, 5910, 5923, 5936, 5949, 5418, 5422, 5706, 5700, 5735, 5984, 5997, 1023, 6010,
1964 6023, 5831, 5739, 6036, 6049, 6062, 1025, 5752, 268, 0, 250, 5879, 5828, 6075, 6088, 6123, 6136,
1965 5870, 6171, 6184, 6219, 6232, 5957, 6267, 6280, 6315, 5966, 6096, 6103, 5833, 6144, 5875, 6151,
1966 6192, 5962, 6199, 6108, 6240, 6247, 6156, 6288, 6301, 236, 204, 6203, 6251, 6328, 0, 1065, 3, 277,
1967 6341, 6340, 6376, 6389, 0, 1123, 376, 411, 6402, 6344, 6437, 6450, 0, 1129,
1969 435, 443, 6463, 6349, 6353, 6357, 6361, 6401, 6410, 6414, 6464, 6418, 6499, 6422, 6472, 6478,
1970 6504, 6508, 6513, 6521, 6525, 6529, 6533, 6539, 6547, 6551, 6556, 3328, 213, 194, 6569, 0, 188,
1971 6575, 0, 6491, 3939, 5180, 5719, 6307, 6579, 6586, 6592, 6593, 6599, 6600, 6606, 7663, 6619, 6627,
1972 6635, 6643, 6651, 6656, 6663, 6671, 6679, 6686, 6694, 6702, 6710, 6718, 6726, 6733, 163, 6740,
1973 6748, 6756, 6764, 157, 6772, 6780, 6788, 6796, 6804, 104, 6812, 6820, 6825, 6832, 6840, 6847, 93,
1974 6854, 90, 6862, 6870, 66, 6878, 6886, 6894, 6902, 6910, 6918, 6926, 6934, 6942, 6950, 6958, 6966,
1976 6974, 6982, 6990, 6998, 7006, 7011, 7018, 7026, 7034, 64, 7042, 7050, 7058, 7066, 7074, 7082,
1977 7090, 7098, 7106, 7114, 7122, 7130, 7138, 7146, 7154, 7162, 7170, 7178, 7183, 7190, 7198, 7206,
1978 7214, 7222, 7230, 7238, 7246, 7254, 7262, 7270, 7278, 7286, 7294, 7302, 7310, 7318, 7326, 7334,
1979 7342, 7350, 7358, 7366, 7374, 7382, 7387, 7394, 7402, 7410, 7418, 7426, 7434, 7442, 7450, 7458,
1980 7466, 7474, 7482, 7490, 7498, 7506, 7514, 7522, 7530, 7538, 7546, 7554, 7562, 7570, 7578, 7586,
1981 7591, 7598, 7606, 7614, 7622, 7630, 7638, 7646, 7654 };
1983static const short int yy_def[1090] = { 0, 949, 949, 948, 3, 949, 949, 949, 7, 7, 7, 7, 7, 7, 7, 7,
1984 7, 950, 950, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 951, 951, 7, 7, 7, 7, 952, 952, 952, 952,
1985 7, 7, 948, 948, 948, 948, 953, 954, 953, 954, 954, 954, 954, 954, 954, 954, 954, 954, 954, 948,
1986 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 72, 948, 948, 948, 948, 948, 948, 955, 948, 956,
1987 955, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948,
1989 948, 948, 948, 948, 948, 948, 948, 948, 948, 957, 948, 958, 957, 948, 948, 948, 948, 948, 948,
1990 959, 959, 948, 960, 959, 948, 948, 948, 948, 948, 948, 953, 948, 961, 953, 953, 953, 953, 954,
1991 954, 954, 954, 954, 954, 954, 954, 954, 954, 954, 954, 948, 948, 948, 948, 67, 67, 948, 962, 948,
1992 948, 948, 948, 948, 73, 948, 963, 964, 948, 965, 948, 79, 79, 948, 966, 948, 955, 956, 956, 955,
1993 948, 948, 948, 948, 948, 89, 89, 948, 967, 948, 948, 92, 92, 948, 968, 948, 948, 95, 95, 948, 969,
1996 948, 948, 948, 948, 948, 948, 970, 948, 109, 109, 948, 971, 948, 957, 958, 958, 957, 948, 116,
1997 116, 948, 972, 948, 948, 948, 225, 948, 973, 948, 974, 974, 975, 975, 975, 975, 948, 948, 976,
1998 977, 977, 977, 978, 979, 979, 979, 979, 979, 979, 979, 979, 979, 948, 948, 948, 948, 948, 980,
1999 980, 258, 258, 258, 258, 948, 948, 948, 948, 948, 948, 948, 981, 981, 981, 981, 981, 274, 982,
2000 983, 948, 948, 948, 984, 984, 282, 282, 282, 282, 948, 948, 948, 948, 948, 948, 948, 967, 294,
2001 294, 294, 294, 294, 948,
2003 948, 948, 948, 948, 968, 305, 305, 305, 305, 305, 948, 948, 948, 948, 948, 969, 316, 316, 316,
2004 316, 316, 948, 948, 948, 948, 985, 948, 948, 948, 971, 330, 330, 330, 330, 330, 948, 948, 948,
2005 948, 948, 972, 341, 341, 341, 341, 341, 948, 948, 948, 948, 948, 973, 352, 352, 352, 352, 352,
2006 948, 948, 976, 978, 979, 979, 979, 979, 979, 979, 979, 948, 948, 256, 948, 986, 948, 258, 948,
2007 987, 258, 988, 274, 280, 948, 989, 948, 282, 948, 990, 385, 948, 948, 991, 948, 948, 992, 948,
2008 993, 948, 994, 993, 948,
2010 948, 995, 948, 996, 948, 997, 996, 948, 948, 998, 948, 999, 948, 1000, 999, 948, 948, 1001, 948,
2011 948, 1002, 948, 1003, 948, 1004, 1003, 1005, 1006, 1006, 1006, 1006, 1006, 1006, 948, 948, 948,
2012 948, 1007, 1007, 439, 439, 439, 439, 948, 948, 1008, 1008, 447, 1009, 948, 948, 948, 1009, 453,
2013 453, 453, 453, 453, 447, 447, 448, 1010, 948, 463, 463, 948, 948, 948, 1011, 1011, 470, 470, 470,
2014 470, 948, 948, 1012, 1012, 478, 1013, 948, 948, 948, 1013, 484, 484, 484, 484, 484, 478, 478, 478,
2015 948, 948, 1014, 1014, 496, 948, 948, 948,
2017 1015, 1015, 502, 502, 502, 502, 948, 948, 1016, 1016, 510, 1017, 948, 948, 948, 1017, 516, 516,
2018 516, 516, 516, 510, 510, 511, 948, 948, 948, 1018, 1018, 529, 529, 529, 529, 948, 948, 1019, 1019,
2019 537, 1020, 948, 948, 948, 1020, 543, 543, 543, 543, 543, 537, 537, 538, 948, 948, 948, 1021, 1021,
2020 556, 556, 556, 556, 948, 948, 1022, 1022, 564, 1023, 948, 948, 948, 1023, 570, 570, 570, 570, 570,
2021 564, 564, 564, 948, 948, 1024, 1024, 582, 948, 948, 948, 1025, 1025, 588, 588, 588, 588, 948, 948,
2022 1026, 1026, 596, 1027, 948, 948,
2024 948, 1027, 602, 602, 602, 602, 602, 596, 596, 597, 1028, 1029, 1029, 1029, 1029, 948, 948, 1030,
2025 1031, 1031, 948, 948, 1032, 948, 948, 1033, 948, 1034, 948, 1035, 1034, 1036, 1036, 948, 1037,
2026 1036, 948, 1035, 948, 1038, 1037, 1038, 948, 948, 1039, 1040, 1040, 948, 948, 1041, 948, 948,
2027 1042, 1043, 1043, 948, 948, 1044, 948, 948, 1045, 948, 1046, 948, 1047, 1046, 1048, 1048, 948,
2028 1049, 1048, 948, 1047, 948, 1050, 1049, 1050, 948, 948, 1051, 1052, 1052, 948, 948, 1053, 1054,
2029 1055, 1055, 1055, 1055, 948, 948, 1056, 1056, 694, 1057, 1057, 697, 948, 948,
2031 1058, 1058, 702, 948, 948, 948, 1059, 1059, 708, 708, 708, 708, 948, 948, 1060, 1060, 716, 948,
2032 948, 948, 1061, 1061, 722, 722, 722, 722, 716, 716, 717, 1062, 1062, 731, 1063, 948, 948, 948,
2033 1063, 737, 737, 737, 737, 737, 731, 731, 732, 948, 948, 1064, 1064, 749, 749, 749, 750, 948, 948,
2034 1065, 1065, 757, 1066, 1066, 760, 948, 948, 1067, 1067, 765, 948, 948, 1068, 1068, 770, 1069,
2035 1069, 773, 948, 948, 1070, 1070, 778, 948, 948, 948, 1071, 1071, 784, 784, 784, 784, 948, 948,
2036 1072, 1072, 792, 948, 948, 948, 1073, 1073, 798, 798,
2038 798, 798, 792, 792, 793, 1074, 1074, 807, 1075, 948, 948, 948, 1075, 813, 813, 813, 813, 813, 807,
2039 807, 808, 948, 948, 1076, 1076, 825, 825, 825, 826, 948, 948, 1077, 1077, 833, 1078, 1078, 836,
2040 948, 948, 1079, 1079, 841, 1080, 1081, 1081, 1081, 948, 948, 1082, 1083, 1083, 948, 948, 1084,
2041 1085, 1085, 948, 948, 1086, 1087, 1087, 948, 948, 784, 793, 792, 796, 948, 798, 808, 807, 812,
2042 948, 813, 826, 825, 1080, 1081, 1081, 948, 948, 1082, 882, 882, 851, 851, 851, 948, 948, 1084,
2043 890, 890, 856, 856, 856, 948, 948, 1086, 898, 898,
2045 861, 861, 861, 948, 948, 784, 784, 784, 792, 792, 793, 948, 948, 798, 798, 798, 807, 807, 808,
2046 948, 823, 813, 813, 813, 825, 825, 826, 1080, 1081, 1081, 1080, 1081, 1081, 1080, 1081, 1080,
2047 1080, 1088, 1088, 1088, 948, 1088, 948, 1089, 1089, 1089, 1089, 0, 948, 948, 948, 948, 948, 948,
2048 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948,
2049 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948,
2050 948, 948, 948, 948, 948, 948, 948, 948,
2052 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948,
2053 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948,
2054 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948,
2055 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948,
2056 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948 };
2058static const short int yy_nxt[7711] = { 0, 948, 47, 48, 47, 948, 948, 49, 47, 48, 47, 469, 472, 49,
2059 46, 47, 48, 47, 50, 46, 51, 46, 46, 46, 46, 46, 46, 46, 50, 50, 52, 53, 50, 54, 50, 50, 55, 50,
2060 56, 57, 50, 58, 59, 50, 50, 46, 46, 46, 50, 60, 61, 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, 47,
2061 48, 47, 147, 148, 51, 47, 48, 47, 613, 462, 51, 462, 614, 129, 130, 129, 62, 63, 131, 132, 948,
2062 132, 62, 63, 133, 64, 153, 154, 154, 154, 154, 64, 47, 48, 47, 326, 948, 51, 277,
2064 65, 66, 67, 67, 67, 67, 155, 155, 155, 155, 360, 63, 68, 69, 70, 70, 70, 70, 68, 69, 70, 70, 70,
2065 70, 71, 46, 72, 73, 73, 73, 71, 46, 72, 73, 73, 73, 74, 46, 75, 76, 76, 76, 74, 46, 75, 76, 76,
2066 76, 77, 78, 79, 79, 79, 79, 77, 78, 79, 79, 79, 79, 47, 48, 47, 326, 81, 82, 47, 48, 47, 277, 81,
2067 82, 84, 85, 86, 86, 86, 86, 83, 159, 160, 160, 160, 160, 83, 84, 85, 86, 86, 86, 86, 87, 88, 89,
2068 89, 89, 89, 87, 88, 89,
2070 89, 89, 89, 90, 91, 92, 92, 92, 92, 90, 91, 92, 92, 92, 92, 93, 94, 95, 95, 95, 95, 270, 935, 121,
2071 48, 121, 96, 122, 123, 121, 48, 121, 933, 122, 123, 270, 932, 270, 97, 930, 98, 93, 94, 95, 95,
2072 95, 95, 391, 135, 130, 135, 270, 96, 136, 124, 418, 618, 121, 48, 121, 124, 125, 123, 929, 97,
2073 391, 98, 99, 100, 101, 101, 101, 101, 418, 618, 121, 48, 121, 96, 125, 123, 135, 130, 135, 469,
2074 472, 136, 879, 124, 623, 102, 878, 98, 99, 100, 101, 101, 101, 101, 161,
2076 161, 161, 161, 132, 96, 132, 124, 623, 133, 137, 163, 163, 163, 163, 846, 270, 102, 845, 98, 103,
2077 46, 104, 105, 105, 105, 167, 167, 167, 167, 844, 96, 270, 126, 46, 127, 128, 128, 128, 167, 167,
2078 167, 167, 106, 46, 98, 103, 46, 104, 105, 105, 105, 169, 170, 170, 170, 170, 96, 690, 126, 46,
2079 127, 128, 128, 128, 171, 171, 171, 171, 106, 46, 98, 107, 108, 109, 109, 109, 109, 159, 160, 160,
2080 160, 160, 96, 281, 284, 162, 181, 181, 181, 181, 167, 167, 167, 167, 102, 689, 98, 107, 108, 109,
2082 109, 109, 109, 162, 185, 185, 185, 185, 96, 688, 168, 135, 130, 135, 687, 134, 177, 391, 281, 284,
2083 102, 615, 98, 47, 48, 47, 168, 111, 112, 179, 180, 180, 180, 180, 645, 391, 179, 180, 180, 180,
2084 180, 113, 484, 487, 182, 183, 184, 184, 184, 184, 484, 487, 645, 102, 650, 98, 47, 48, 47, 612,
2085 111, 112, 182, 189, 190, 190, 190, 190, 191, 191, 191, 191, 650, 434, 113, 195, 196, 196, 196,
2086 196, 197, 197, 197, 197, 433, 432, 102, 431, 98, 114, 115, 116, 116, 116, 116, 202, 203, 203, 203,
2089 96, 204, 204, 204, 204, 202, 203, 203, 203, 203, 430, 429, 102, 205, 98, 114, 115, 116, 116, 116,
2090 116, 206, 206, 206, 206, 428, 96, 206, 206, 206, 206, 205, 206, 206, 206, 206, 370, 369, 102, 368,
2091 98, 117, 118, 119, 119, 119, 119, 207, 210, 210, 210, 210, 96, 208, 209, 209, 209, 209, 218, 219,
2092 219, 219, 219, 207, 97, 653, 98, 117, 118, 119, 119, 119, 119, 220, 220, 220, 220, 367, 96, 658,
2093 135, 130, 135, 653, 134, 216, 226, 226, 226, 226, 97, 366, 98, 156, 156, 156, 365, 658, 157, 364,
2095 363, 153, 154, 154, 154, 154, 231, 130, 231, 158, 134, 232, 134, 224, 225, 225, 225, 225, 234,
2096 130, 234, 362, 134, 235, 253, 252, 251, 158, 164, 164, 164, 250, 249, 165, 248, 247, 246, 163,
2097 163, 163, 163, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, 129, 130, 129, 245,
2098 166, 131, 135, 130, 135, 418, 244, 136, 238, 132, 240, 132, 240, 243, 133, 241, 166, 172, 172,
2099 172, 236, 680, 173, 418, 238, 169, 170, 170, 170, 170, 135, 130, 135, 174, 217, 136, 135, 130,
2100 135, 680, 685, 136, 135,
2102 130, 135, 201, 178, 136, 618, 623, 152, 174, 186, 186, 186, 849, 151, 187, 685, 150, 183, 184,
2103 184, 184, 184, 149, 618, 623, 188, 135, 130, 135, 854, 849, 136, 155, 155, 155, 155, 948, 155,
2104 155, 155, 155, 146, 145, 188, 192, 192, 192, 854, 144, 193, 242, 143, 189, 190, 190, 190, 190,
2105 859, 263, 263, 194, 264, 264, 264, 264, 161, 161, 161, 161, 161, 161, 161, 161, 142, 645, 859,
2106 162, 141, 194, 198, 198, 198, 650, 140, 199, 139, 948, 195, 196, 196, 196, 196, 645, 948, 162,
2107 200, 167, 167, 167, 167,
2109 650, 159, 160, 160, 160, 160, 164, 164, 164, 162, 948, 165, 948, 200, 211, 211, 211, 948, 948,
2110 212, 948, 948, 208, 209, 209, 209, 209, 162, 265, 265, 213, 266, 266, 266, 266, 171, 171, 171,
2111 171, 948, 171, 171, 171, 171, 181, 181, 181, 181, 213, 221, 221, 221, 948, 948, 222, 653, 948,
2112 218, 219, 219, 219, 219, 948, 287, 287, 223, 288, 288, 288, 288, 135, 130, 135, 653, 134, 177,
2113 135, 130, 135, 658, 134, 177, 948, 223, 227, 227, 227, 948, 948, 228, 948, 948, 224, 225, 225,
2114 225, 225, 658, 289, 289,
2116 229, 290, 290, 290, 290, 185, 185, 185, 185, 179, 180, 180, 180, 180, 948, 948, 948, 182, 229,
2117 156, 156, 156, 948, 948, 157, 948, 254, 255, 256, 256, 256, 256, 258, 156, 258, 182, 948, 259,
2118 948, 260, 261, 262, 262, 262, 262, 164, 164, 164, 864, 948, 165, 948, 267, 948, 268, 269, 269,
2119 269, 271, 164, 271, 948, 948, 272, 948, 273, 864, 274, 275, 275, 275, 172, 172, 172, 948, 948,
2120 173, 948, 278, 279, 280, 280, 280, 280, 282, 172, 282, 948, 948, 283, 948, 284, 285, 286, 286,
2121 286, 286, 181, 181, 181,
2123 181, 948, 948, 869, 182, 948, 185, 185, 185, 185, 300, 300, 948, 301, 301, 301, 301, 191, 191,
2124 191, 191, 869, 182, 186, 186, 186, 948, 948, 187, 948, 291, 292, 293, 293, 293, 293, 295, 186,
2125 295, 874, 680, 296, 685, 297, 298, 299, 299, 299, 299, 948, 191, 191, 191, 191, 192, 192, 192,
2126 874, 680, 193, 685, 302, 303, 304, 304, 304, 304, 306, 192, 306, 948, 948, 307, 948, 308, 309,
2127 310, 310, 310, 310, 311, 311, 849, 312, 312, 312, 312, 197, 197, 197, 197, 948, 197, 197, 197,
2128 197, 198, 198, 198, 948,
2130 849, 199, 948, 313, 314, 315, 315, 315, 315, 317, 198, 317, 948, 948, 318, 948, 319, 320, 321,
2131 321, 321, 321, 322, 322, 948, 323, 323, 323, 323, 204, 204, 204, 204, 202, 203, 203, 203, 203,
2132 948, 948, 854, 205, 204, 204, 204, 204, 859, 324, 324, 205, 325, 325, 325, 325, 206, 206, 206,
2133 206, 854, 205, 210, 210, 210, 210, 859, 948, 948, 205, 948, 210, 210, 210, 210, 211, 211, 211,
2134 948, 948, 212, 948, 327, 328, 329, 329, 329, 329, 331, 211, 331, 948, 948, 332, 948, 333, 334,
2135 335, 335, 335, 335, 336,
2137 336, 948, 337, 337, 337, 337, 135, 130, 135, 948, 134, 216, 135, 130, 135, 948, 134, 216, 220,
2138 220, 220, 220, 948, 220, 220, 220, 220, 347, 347, 948, 348, 348, 348, 348, 948, 240, 134, 240,
2139 134, 948, 241, 948, 134, 948, 134, 221, 221, 221, 948, 948, 222, 948, 338, 339, 340, 340, 340,
2140 340, 342, 221, 342, 948, 948, 343, 948, 344, 345, 346, 346, 346, 346, 226, 226, 226, 226, 227,
2141 227, 227, 948, 948, 228, 948, 948, 224, 225, 225, 225, 225, 948, 948, 948, 229, 948, 226, 226,
2142 226, 226, 358, 358, 948,
2144 359, 359, 359, 359, 237, 237, 237, 237, 948, 229, 227, 227, 227, 948, 948, 228, 948, 349, 350,
2145 351, 351, 351, 351, 353, 227, 353, 948, 948, 354, 948, 355, 356, 357, 357, 357, 357, 231, 130,
2146 231, 948, 948, 232, 234, 130, 234, 948, 134, 235, 234, 130, 234, 948, 134, 235, 234, 130, 234,
2147 948, 134, 235, 234, 130, 234, 948, 134, 235, 240, 240, 240, 240, 948, 241, 241, 135, 130, 135,
2148 948, 948, 136, 255, 256, 256, 256, 256, 371, 371, 371, 371, 264, 264, 264, 264, 948, 361, 372,
2149 372, 372, 948, 948, 373,
2151 948, 948, 255, 256, 256, 256, 256, 948, 948, 948, 374, 375, 376, 375, 948, 948, 377, 266, 266,
2152 266, 266, 266, 266, 266, 266, 948, 948, 378, 374, 258, 156, 258, 948, 948, 259, 948, 260, 261,
2153 262, 262, 262, 262, 258, 156, 258, 378, 948, 259, 948, 260, 261, 262, 262, 262, 262, 156, 156,
2154 156, 948, 948, 157, 948, 948, 948, 264, 264, 264, 264, 269, 269, 269, 269, 269, 269, 269, 269,
2155 269, 269, 269, 269, 164, 164, 164, 948, 948, 165, 279, 280, 280, 280, 280, 948, 379, 381, 381,
2156 381, 381, 288, 288, 288,
2158 288, 290, 290, 290, 290, 948, 948, 948, 379, 271, 164, 271, 948, 948, 272, 948, 273, 948, 274,
2159 275, 275, 275, 271, 164, 271, 948, 948, 272, 948, 273, 948, 274, 275, 275, 275, 271, 164, 271,
2160 948, 948, 272, 948, 273, 948, 274, 275, 275, 275, 271, 164, 271, 948, 948, 272, 948, 273, 948,
2161 274, 275, 275, 275, 271, 164, 271, 948, 948, 272, 948, 273, 948, 274, 275, 275, 275, 948, 948,
2162 385, 386, 385, 948, 948, 387, 290, 290, 290, 290, 389, 389, 389, 389, 380, 948, 388, 292, 293,
2163 293, 293, 293, 301, 301,
2165 301, 301, 392, 392, 392, 392, 380, 382, 382, 382, 388, 948, 383, 948, 948, 279, 280, 280, 280,
2166 280, 948, 948, 948, 384, 303, 304, 304, 304, 304, 948, 948, 948, 292, 293, 293, 293, 293, 948,
2167 948, 948, 390, 384, 282, 172, 282, 948, 948, 283, 948, 284, 285, 286, 286, 286, 286, 282, 172,
2168 282, 390, 948, 283, 948, 284, 285, 286, 286, 286, 286, 172, 172, 172, 948, 948, 173, 948, 948,
2169 948, 288, 288, 288, 288, 295, 186, 295, 948, 948, 296, 948, 297, 298, 299, 299, 299, 299, 186,
2170 186, 186, 948, 948, 187,
2172 948, 948, 948, 301, 301, 301, 301, 393, 393, 393, 948, 948, 394, 948, 948, 303, 304, 304, 304,
2173 304, 948, 948, 948, 395, 396, 397, 396, 948, 948, 398, 312, 312, 312, 312, 314, 315, 315, 315,
2174 315, 948, 399, 395, 306, 192, 306, 948, 948, 307, 948, 308, 309, 310, 310, 310, 310, 948, 948,
2175 948, 399, 192, 192, 192, 948, 948, 193, 948, 948, 948, 312, 312, 312, 312, 400, 400, 400, 400,
2176 401, 401, 401, 948, 948, 402, 948, 948, 314, 315, 315, 315, 315, 948, 948, 948, 403, 404, 405,
2177 404, 948, 948, 406, 323,
2179 323, 323, 323, 325, 325, 325, 325, 948, 948, 407, 403, 317, 198, 317, 948, 948, 318, 948, 319,
2180 320, 321, 321, 321, 321, 948, 948, 948, 407, 198, 198, 198, 948, 948, 199, 948, 948, 948, 323,
2181 323, 323, 323, 325, 325, 325, 325, 328, 329, 329, 329, 329, 408, 408, 408, 408, 409, 409, 409,
2182 948, 948, 410, 948, 948, 328, 329, 329, 329, 329, 948, 948, 948, 411, 412, 413, 412, 948, 948,
2183 414, 337, 337, 337, 337, 339, 340, 340, 340, 340, 948, 415, 411, 331, 211, 331, 948, 948, 332,
2184 948, 333, 334, 335, 335,
2186 335, 335, 948, 948, 948, 415, 211, 211, 211, 948, 948, 212, 948, 948, 948, 337, 337, 337, 337,
2187 416, 416, 416, 416, 339, 340, 340, 340, 340, 948, 948, 948, 417, 348, 348, 348, 348, 350, 351,
2188 351, 351, 351, 419, 419, 419, 419, 359, 359, 359, 359, 417, 342, 221, 342, 948, 948, 343, 948,
2189 344, 345, 346, 346, 346, 346, 221, 221, 221, 948, 948, 222, 948, 948, 948, 348, 348, 348, 348,
2190 420, 420, 420, 948, 948, 421, 948, 948, 350, 351, 351, 351, 351, 948, 948, 948, 422, 423, 424,
2191 423, 948, 948, 425, 948,
2193 371, 371, 371, 371, 948, 381, 381, 381, 381, 426, 422, 353, 227, 353, 948, 948, 354, 948, 355,
2194 356, 357, 357, 357, 357, 948, 948, 948, 426, 227, 227, 227, 948, 948, 228, 948, 948, 948, 359,
2195 359, 359, 359, 135, 130, 135, 444, 444, 136, 445, 445, 445, 445, 459, 460, 948, 461, 461, 461,
2196 461, 948, 948, 427, 372, 372, 372, 948, 948, 373, 948, 435, 436, 437, 437, 437, 437, 439, 372,
2197 439, 948, 948, 440, 948, 441, 442, 443, 443, 443, 443, 375, 376, 375, 948, 948, 377, 948, 446,
2198 447, 448, 448, 448, 448,
2200 376, 376, 376, 948, 948, 449, 948, 450, 451, 452, 452, 452, 452, 454, 376, 454, 948, 948, 455,
2201 948, 456, 457, 458, 458, 458, 458, 463, 464, 464, 464, 465, 465, 465, 465, 465, 475, 475, 948,
2202 476, 476, 476, 476, 389, 389, 389, 389, 270, 948, 948, 390, 465, 465, 465, 493, 493, 948, 494,
2203 494, 494, 494, 948, 948, 270, 382, 382, 382, 948, 390, 383, 948, 466, 467, 468, 468, 468, 468,
2204 470, 382, 470, 948, 948, 471, 948, 472, 473, 474, 474, 474, 474, 385, 386, 385, 948, 948, 387,
2205 948, 477, 478, 479, 479,
2207 479, 479, 386, 386, 386, 948, 948, 480, 948, 481, 482, 483, 483, 483, 483, 485, 386, 485, 948,
2208 948, 486, 948, 487, 488, 489, 489, 489, 489, 282, 172, 282, 948, 948, 283, 490, 491, 285, 492,
2209 492, 492, 492, 295, 186, 295, 948, 948, 296, 495, 496, 298, 497, 497, 497, 497, 393, 393, 393,
2210 948, 948, 394, 948, 948, 948, 392, 392, 392, 392, 948, 507, 507, 395, 508, 508, 508, 508, 534,
2211 534, 948, 535, 535, 535, 535, 135, 130, 611, 948, 948, 136, 395, 393, 393, 393, 948, 948, 394,
2212 948, 498, 499, 500, 500,
2214 500, 500, 502, 393, 502, 948, 948, 503, 948, 504, 505, 506, 506, 506, 506, 396, 397, 396, 948,
2215 948, 398, 948, 509, 510, 511, 511, 511, 511, 397, 397, 397, 948, 948, 512, 948, 513, 514, 515,
2216 515, 515, 515, 517, 397, 517, 948, 948, 518, 948, 519, 520, 521, 521, 521, 521, 306, 192, 306,
2217 948, 948, 307, 522, 523, 309, 524, 524, 524, 524, 401, 401, 401, 948, 948, 402, 948, 948, 948,
2218 400, 400, 400, 400, 948, 561, 561, 403, 562, 562, 562, 562, 436, 437, 437, 437, 437, 416, 416,
2219 416, 416, 948, 948, 948,
2221 417, 403, 401, 401, 401, 948, 948, 402, 948, 525, 526, 527, 527, 527, 527, 529, 401, 529, 417,
2222 948, 530, 948, 531, 532, 533, 533, 533, 533, 404, 405, 404, 948, 948, 406, 948, 536, 537, 538,
2223 538, 538, 538, 405, 405, 405, 948, 948, 539, 948, 540, 541, 542, 542, 542, 542, 544, 405, 544,
2224 948, 948, 545, 948, 546, 547, 548, 548, 548, 548, 317, 198, 317, 948, 948, 318, 549, 550, 320,
2225 551, 551, 551, 551, 409, 409, 409, 948, 948, 410, 948, 948, 948, 408, 408, 408, 408, 948, 579,
2226 579, 411, 580, 580, 580,
2228 580, 593, 593, 948, 594, 594, 594, 594, 616, 616, 616, 616, 948, 948, 411, 409, 409, 409, 948,
2229 948, 410, 948, 552, 553, 554, 554, 554, 554, 556, 409, 556, 948, 948, 557, 948, 558, 559, 560,
2230 560, 560, 560, 412, 413, 412, 948, 948, 414, 948, 563, 564, 565, 565, 565, 565, 413, 413, 413,
2231 948, 948, 566, 948, 567, 568, 569, 569, 569, 569, 571, 413, 571, 948, 948, 572, 948, 573, 574,
2232 575, 575, 575, 575, 331, 211, 331, 948, 948, 332, 576, 577, 334, 578, 578, 578, 578, 342, 221,
2233 342, 948, 948, 343, 581,
2235 582, 345, 583, 583, 583, 583, 420, 420, 420, 948, 948, 421, 948, 948, 948, 419, 419, 419, 419,
2236 948, 948, 948, 422, 445, 445, 445, 445, 621, 621, 621, 621, 436, 437, 437, 437, 437, 948, 948,
2237 948, 617, 422, 420, 420, 420, 948, 948, 421, 948, 584, 585, 586, 586, 586, 586, 588, 420, 588,
2238 617, 948, 589, 948, 590, 591, 592, 592, 592, 592, 423, 424, 423, 948, 948, 425, 948, 595, 596,
2239 597, 597, 597, 597, 424, 424, 424, 948, 948, 598, 948, 599, 600, 601, 601, 601, 601, 603, 424,
2240 603, 948, 948, 604, 948,
2242 605, 606, 607, 607, 607, 607, 353, 227, 353, 948, 948, 354, 608, 609, 356, 610, 610, 610, 610,
2243 439, 372, 439, 948, 948, 440, 948, 441, 442, 443, 443, 443, 443, 439, 372, 439, 948, 948, 440,
2244 948, 441, 442, 443, 443, 443, 443, 372, 372, 372, 948, 948, 373, 948, 948, 948, 445, 445, 445,
2245 445, 258, 156, 258, 948, 948, 259, 948, 260, 447, 448, 448, 448, 448, 258, 156, 258, 948, 948,
2246 259, 948, 260, 261, 619, 619, 619, 619, 375, 376, 375, 948, 948, 377, 948, 948, 447, 448, 448,
2247 448, 448, 948, 948, 948,
2249 620, 451, 452, 452, 452, 452, 461, 461, 461, 461, 461, 461, 461, 461, 624, 624, 624, 624, 620,
2250 454, 376, 454, 948, 948, 455, 948, 456, 457, 458, 458, 458, 458, 372, 372, 372, 948, 948, 373,
2251 948, 948, 451, 452, 452, 452, 452, 948, 948, 948, 622, 467, 468, 468, 468, 468, 261, 461, 461,
2252 461, 461, 135, 130, 135, 378, 948, 136, 948, 622, 454, 376, 454, 843, 948, 455, 948, 456, 457,
2253 458, 458, 458, 458, 378, 270, 271, 164, 271, 270, 270, 272, 270, 273, 270, 463, 464, 464, 464,
2254 465, 465, 465, 465, 465,
2256 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 270, 380, 270, 270, 270, 465, 465, 465, 270,
2257 270, 270, 270, 270, 270, 270, 270, 270, 380, 625, 625, 625, 948, 948, 626, 948, 948, 467, 468,
2258 468, 468, 468, 948, 948, 948, 627, 628, 629, 628, 948, 948, 630, 476, 476, 476, 476, 482, 483,
2259 483, 483, 483, 948, 631, 627, 470, 382, 470, 948, 948, 471, 948, 472, 473, 474, 474, 474, 474,
2260 470, 382, 470, 631, 948, 471, 948, 472, 473, 474, 474, 474, 474, 382, 382, 382, 948, 948, 383,
2261 948, 948, 948, 476, 476,
2263 476, 476, 282, 172, 282, 948, 948, 283, 948, 284, 478, 479, 479, 479, 479, 282, 172, 282, 948,
2264 948, 283, 948, 284, 285, 632, 632, 632, 632, 633, 634, 633, 948, 948, 635, 948, 948, 478, 479,
2265 479, 479, 479, 948, 948, 948, 636, 637, 637, 637, 637, 492, 492, 492, 492, 492, 492, 492, 492,
2266 494, 494, 494, 494, 948, 636, 485, 386, 485, 948, 948, 486, 948, 487, 488, 489, 489, 489, 489,
2267 629, 629, 629, 948, 948, 638, 948, 948, 482, 483, 483, 483, 483, 948, 948, 948, 639, 640, 634,
2268 640, 948, 948, 641, 494,
2270 494, 494, 494, 499, 500, 500, 500, 500, 948, 642, 639, 485, 386, 485, 948, 948, 486, 948, 487,
2271 488, 489, 489, 489, 489, 948, 948, 948, 642, 385, 386, 385, 948, 948, 387, 948, 948, 948, 492,
2272 492, 492, 492, 948, 948, 948, 388, 643, 643, 643, 643, 508, 508, 508, 508, 499, 500, 500, 500,
2273 500, 948, 948, 948, 644, 388, 295, 186, 295, 948, 948, 296, 948, 297, 298, 497, 497, 497, 497,
2274 295, 186, 295, 644, 948, 296, 948, 297, 298, 497, 497, 497, 497, 502, 393, 502, 948, 948, 503,
2275 948, 504, 505, 506, 506,
2277 506, 506, 502, 393, 502, 948, 948, 503, 948, 504, 505, 506, 506, 506, 506, 393, 393, 393, 948,
2278 948, 394, 948, 948, 948, 508, 508, 508, 508, 306, 192, 306, 948, 948, 307, 948, 308, 510, 511,
2279 511, 511, 511, 306, 192, 306, 948, 948, 307, 948, 308, 309, 646, 646, 646, 646, 396, 397, 396,
2280 948, 948, 398, 948, 948, 510, 511, 511, 511, 511, 948, 948, 948, 647, 514, 515, 515, 515, 515,
2281 648, 648, 648, 648, 524, 524, 524, 524, 524, 524, 524, 524, 647, 517, 397, 517, 948, 948, 518,
2282 948, 519, 520, 521, 521,
2284 521, 521, 393, 393, 393, 948, 948, 394, 948, 948, 514, 515, 515, 515, 515, 948, 948, 948, 649,
2285 526, 527, 527, 527, 527, 309, 524, 524, 524, 524, 135, 130, 931, 399, 948, 136, 948, 649, 517,
2286 397, 517, 948, 948, 518, 948, 519, 520, 521, 521, 521, 521, 399, 651, 651, 651, 651, 526, 527,
2287 527, 527, 527, 948, 948, 948, 652, 535, 535, 535, 535, 541, 542, 542, 542, 542, 656, 656, 656,
2288 656, 551, 551, 551, 551, 652, 529, 401, 529, 948, 948, 530, 948, 531, 532, 533, 533, 533, 533,
2289 529, 401, 529, 948, 948,
2291 530, 948, 531, 532, 533, 533, 533, 533, 401, 401, 401, 948, 948, 402, 948, 948, 948, 535, 535,
2292 535, 535, 317, 198, 317, 948, 948, 318, 948, 319, 537, 538, 538, 538, 538, 317, 198, 317, 948,
2293 948, 318, 948, 319, 320, 654, 654, 654, 654, 404, 405, 404, 948, 948, 406, 948, 948, 537, 538,
2294 538, 538, 538, 948, 948, 948, 655, 551, 551, 551, 551, 659, 659, 659, 659, 320, 551, 551, 551,
2295 551, 948, 948, 948, 407, 655, 544, 405, 544, 948, 948, 545, 948, 546, 547, 548, 548, 548, 548,
2296 401, 401, 401, 407, 948,
2298 402, 948, 948, 541, 542, 542, 542, 542, 948, 948, 948, 657, 553, 554, 554, 554, 554, 562, 562,
2299 562, 562, 568, 569, 569, 569, 569, 948, 948, 948, 657, 544, 405, 544, 948, 948, 545, 948, 546,
2300 547, 548, 548, 548, 548, 660, 660, 660, 948, 948, 661, 948, 948, 553, 554, 554, 554, 554, 948,
2301 948, 948, 662, 663, 664, 663, 948, 948, 665, 672, 672, 672, 672, 578, 578, 578, 578, 948, 948,
2302 666, 662, 556, 409, 556, 948, 948, 557, 948, 558, 559, 560, 560, 560, 560, 556, 409, 556, 666,
2303 948, 557, 948, 558, 559,
2305 560, 560, 560, 560, 409, 409, 409, 948, 948, 410, 948, 948, 948, 562, 562, 562, 562, 331, 211,
2306 331, 948, 948, 332, 948, 333, 564, 565, 565, 565, 565, 331, 211, 331, 948, 948, 332, 948, 333,
2307 334, 667, 667, 667, 667, 668, 669, 668, 948, 948, 670, 948, 948, 564, 565, 565, 565, 565, 948,
2308 948, 948, 671, 675, 669, 675, 948, 948, 676, 578, 578, 578, 578, 580, 580, 580, 580, 948, 948,
2309 677, 671, 571, 413, 571, 948, 948, 572, 948, 573, 574, 575, 575, 575, 575, 664, 664, 664, 677,
2310 948, 673, 948, 948, 568,
2312 569, 569, 569, 569, 948, 948, 948, 674, 580, 580, 580, 580, 585, 586, 586, 586, 586, 678, 678,
2313 678, 678, 594, 594, 594, 594, 674, 571, 413, 571, 948, 948, 572, 948, 573, 574, 575, 575, 575,
2314 575, 412, 413, 412, 948, 948, 414, 948, 948, 948, 578, 578, 578, 578, 948, 948, 948, 415, 600,
2315 601, 601, 601, 601, 948, 948, 948, 585, 586, 586, 586, 586, 948, 948, 948, 679, 415, 342, 221,
2316 342, 948, 948, 343, 948, 344, 345, 583, 583, 583, 583, 342, 221, 342, 679, 948, 343, 948, 344,
2317 345, 583, 583, 583, 583,
2319 588, 420, 588, 948, 948, 589, 948, 590, 591, 592, 592, 592, 592, 588, 420, 588, 948, 948, 589,
2320 948, 590, 591, 592, 592, 592, 592, 420, 420, 420, 948, 948, 421, 948, 948, 948, 594, 594, 594,
2321 594, 353, 227, 353, 948, 948, 354, 948, 355, 596, 597, 597, 597, 597, 353, 227, 353, 948, 948,
2322 354, 948, 355, 356, 681, 681, 681, 681, 423, 424, 423, 948, 948, 425, 948, 948, 596, 597, 597,
2323 597, 597, 948, 948, 948, 682, 683, 683, 683, 683, 610, 610, 610, 610, 610, 610, 610, 610, 692,
2324 692, 692, 692, 948, 682,
2326 603, 424, 603, 948, 948, 604, 948, 605, 606, 607, 607, 607, 607, 420, 420, 420, 948, 948, 421,
2327 948, 948, 600, 601, 601, 601, 601, 135, 130, 135, 684, 948, 136, 948, 948, 948, 356, 610, 610,
2328 610, 610, 135, 130, 135, 426, 948, 136, 948, 684, 603, 424, 603, 948, 938, 604, 686, 605, 606,
2329 607, 607, 607, 607, 426, 616, 616, 616, 616, 948, 691, 691, 617, 692, 692, 692, 692, 699, 699,
2330 948, 700, 700, 700, 700, 692, 692, 692, 692, 948, 948, 617, 439, 372, 439, 948, 948, 440, 693,
2331 694, 442, 695, 695, 695,
2333 695, 375, 376, 375, 948, 948, 377, 948, 260, 261, 619, 619, 619, 619, 948, 713, 713, 620, 714,
2334 714, 714, 714, 746, 746, 948, 747, 747, 747, 747, 700, 700, 700, 700, 948, 948, 620, 258, 156,
2335 258, 948, 948, 259, 696, 697, 261, 698, 698, 698, 698, 372, 372, 372, 948, 948, 373, 948, 948,
2336 948, 621, 621, 621, 621, 948, 754, 754, 622, 755, 755, 755, 755, 705, 706, 706, 706, 706, 643,
2337 643, 643, 643, 948, 948, 948, 644, 622, 454, 376, 454, 948, 948, 455, 701, 702, 457, 703, 703,
2338 703, 703, 625, 625, 625,
2340 644, 948, 626, 948, 948, 948, 624, 624, 624, 624, 948, 762, 762, 627, 763, 763, 763, 763, 847,
2341 847, 847, 847, 948, 651, 651, 651, 651, 948, 948, 948, 652, 627, 625, 625, 625, 948, 948, 626,
2342 948, 704, 705, 706, 706, 706, 706, 708, 625, 708, 652, 948, 709, 948, 710, 711, 712, 712, 712,
2343 712, 628, 629, 628, 948, 948, 630, 948, 715, 716, 717, 717, 717, 717, 629, 629, 629, 948, 948,
2344 638, 948, 718, 719, 720, 720, 720, 720, 722, 629, 722, 948, 948, 723, 948, 724, 725, 726, 726,
2345 726, 726, 470, 382, 470,
2347 948, 948, 471, 727, 728, 473, 729, 729, 729, 729, 633, 634, 633, 948, 948, 635, 948, 284, 285,
2348 632, 632, 632, 632, 948, 767, 767, 636, 768, 768, 768, 768, 775, 775, 948, 776, 776, 776, 776,
2349 714, 714, 714, 714, 948, 948, 636, 633, 634, 633, 948, 948, 635, 948, 730, 731, 732, 732, 732,
2350 732, 634, 634, 634, 948, 948, 733, 948, 734, 735, 736, 736, 736, 736, 738, 634, 738, 948, 948,
2351 739, 948, 740, 741, 742, 742, 742, 742, 282, 172, 282, 948, 948, 283, 743, 744, 285, 745, 745,
2352 745, 745, 629, 629, 629,
2354 948, 948, 638, 948, 948, 948, 637, 637, 637, 637, 948, 789, 789, 639, 790, 790, 790, 790, 822,
2355 822, 948, 823, 823, 823, 823, 719, 720, 720, 720, 720, 948, 639, 722, 629, 722, 948, 948, 723,
2356 948, 724, 725, 726, 726, 726, 726, 640, 634, 640, 948, 948, 641, 948, 748, 749, 750, 750, 750,
2357 750, 738, 634, 738, 948, 948, 739, 948, 740, 741, 742, 742, 742, 742, 485, 386, 485, 948, 948,
2358 486, 751, 752, 488, 753, 753, 753, 753, 502, 393, 502, 948, 948, 503, 756, 757, 505, 758, 758,
2359 758, 758, 396, 397, 396,
2361 948, 948, 398, 948, 308, 309, 646, 646, 646, 646, 948, 830, 830, 647, 831, 831, 831, 831, 852,
2362 852, 852, 852, 948, 678, 678, 678, 678, 948, 948, 948, 679, 647, 306, 192, 306, 948, 948, 307,
2363 759, 760, 309, 761, 761, 761, 761, 393, 393, 393, 679, 948, 394, 948, 948, 948, 648, 648, 648,
2364 648, 948, 838, 838, 649, 839, 839, 839, 839, 729, 729, 729, 729, 705, 706, 706, 706, 706, 948,
2365 948, 948, 848, 649, 517, 397, 517, 948, 948, 518, 764, 765, 520, 766, 766, 766, 766, 529, 401,
2366 529, 848, 948, 530, 769,
2368 770, 532, 771, 771, 771, 771, 404, 405, 404, 948, 948, 406, 948, 319, 320, 654, 654, 654, 654,
2369 948, 948, 948, 655, 375, 376, 375, 948, 948, 377, 729, 729, 729, 729, 735, 736, 736, 736, 736,
2370 948, 378, 655, 317, 198, 317, 948, 948, 318, 772, 773, 320, 774, 774, 774, 774, 401, 401, 401,
2371 378, 948, 402, 948, 948, 948, 656, 656, 656, 656, 948, 948, 948, 657, 857, 857, 857, 857, 745,
2372 745, 745, 745, 473, 729, 729, 729, 729, 948, 948, 948, 631, 657, 544, 405, 544, 948, 948, 545,
2373 777, 778, 547, 779, 779,
2375 779, 779, 660, 660, 660, 631, 948, 661, 948, 948, 948, 659, 659, 659, 659, 948, 948, 948, 662,
2376 745, 745, 745, 745, 747, 747, 747, 747, 285, 745, 745, 745, 745, 948, 948, 948, 388, 662, 660,
2377 660, 660, 948, 948, 661, 948, 780, 781, 782, 782, 782, 782, 784, 660, 784, 388, 948, 785, 948,
2378 786, 787, 788, 788, 788, 788, 663, 664, 663, 948, 948, 665, 948, 791, 792, 793, 793, 793, 793,
2379 664, 664, 664, 948, 948, 673, 948, 794, 795, 796, 796, 796, 796, 798, 664, 798, 948, 948, 799,
2380 948, 800, 801, 802, 802,
2382 802, 802, 556, 409, 556, 948, 948, 557, 803, 804, 559, 805, 805, 805, 805, 668, 669, 668, 948,
2383 948, 670, 948, 333, 334, 667, 667, 667, 667, 948, 948, 948, 671, 753, 753, 753, 753, 753, 753,
2384 753, 753, 488, 753, 753, 753, 753, 948, 948, 948, 642, 671, 668, 669, 668, 948, 948, 670, 948,
2385 806, 807, 808, 808, 808, 808, 669, 669, 669, 642, 948, 809, 948, 810, 811, 812, 812, 812, 812,
2386 814, 669, 814, 948, 948, 815, 948, 816, 817, 818, 818, 818, 818, 331, 211, 331, 948, 948, 332,
2387 819, 820, 334, 821, 821,
2389 821, 821, 664, 664, 664, 948, 948, 673, 948, 948, 948, 672, 672, 672, 672, 948, 948, 948, 674,
2390 755, 755, 755, 755, 755, 755, 755, 755, 763, 763, 763, 763, 768, 768, 768, 768, 948, 674, 798,
2391 664, 798, 948, 948, 799, 948, 800, 801, 802, 802, 802, 802, 675, 669, 675, 948, 948, 676, 948,
2392 824, 825, 826, 826, 826, 826, 814, 669, 814, 948, 948, 815, 948, 816, 817, 818, 818, 818, 818,
2393 571, 413, 571, 948, 948, 572, 827, 828, 574, 829, 829, 829, 829, 588, 420, 588, 948, 948, 589,
2394 832, 833, 591, 834, 834,
2396 834, 834, 423, 424, 423, 948, 948, 425, 948, 355, 356, 681, 681, 681, 681, 948, 948, 948, 682,
2397 396, 397, 396, 948, 948, 398, 768, 768, 768, 768, 776, 776, 776, 776, 948, 948, 399, 682, 353,
2398 227, 353, 948, 948, 354, 835, 836, 356, 837, 837, 837, 837, 420, 420, 420, 399, 948, 421, 948,
2399 948, 948, 683, 683, 683, 683, 948, 948, 948, 684, 404, 405, 404, 948, 948, 406, 781, 782, 782,
2400 782, 782, 862, 862, 862, 862, 948, 407, 684, 603, 424, 603, 948, 948, 604, 840, 841, 606, 842,
2401 842, 842, 842, 439, 372,
2403 439, 407, 948, 440, 948, 441, 442, 695, 695, 695, 695, 439, 372, 439, 948, 948, 440, 948, 441,
2404 442, 695, 695, 695, 695, 258, 156, 258, 948, 948, 259, 948, 260, 261, 698, 698, 698, 698, 258,
2405 156, 258, 948, 948, 259, 948, 260, 261, 698, 698, 698, 698, 372, 372, 372, 948, 948, 373, 948,
2406 948, 948, 700, 700, 700, 700, 454, 376, 454, 948, 948, 455, 948, 456, 457, 703, 703, 703, 703,
2407 454, 376, 454, 948, 948, 455, 948, 456, 457, 703, 703, 703, 703, 708, 625, 708, 948, 948, 709,
2408 948, 710, 711, 712, 712,
2410 712, 712, 708, 625, 708, 948, 948, 709, 948, 710, 711, 712, 712, 712, 712, 625, 625, 625, 948,
2411 948, 626, 948, 948, 948, 714, 714, 714, 714, 470, 382, 470, 948, 948, 471, 948, 472, 716, 717,
2412 717, 717, 717, 470, 382, 470, 948, 948, 471, 948, 472, 473, 850, 850, 850, 850, 628, 629, 628,
2413 948, 948, 630, 948, 948, 716, 717, 717, 717, 717, 948, 948, 948, 851, 790, 790, 790, 790, 948,
2414 781, 782, 782, 782, 782, 940, 941, 940, 863, 948, 942, 948, 851, 625, 625, 625, 948, 948, 626,
2415 948, 948, 719, 720, 720,
2417 720, 720, 863, 948, 948, 853, 795, 796, 796, 796, 796, 867, 867, 867, 867, 805, 805, 805, 805,
2418 805, 805, 805, 805, 853, 722, 629, 722, 948, 948, 723, 948, 724, 725, 726, 726, 726, 726, 722,
2419 629, 722, 948, 948, 723, 948, 724, 725, 726, 726, 726, 726, 282, 172, 282, 948, 948, 283, 948,
2420 284, 731, 732, 732, 732, 732, 282, 172, 282, 948, 948, 283, 948, 284, 285, 855, 855, 855, 855,
2421 633, 634, 633, 948, 948, 635, 948, 948, 731, 732, 732, 732, 732, 948, 948, 948, 856, 811, 812,
2422 812, 812, 812, 948, 948,
2424 948, 559, 805, 805, 805, 805, 948, 948, 948, 666, 856, 738, 634, 738, 948, 948, 739, 948, 740,
2425 741, 742, 742, 742, 742, 629, 629, 629, 666, 948, 638, 948, 948, 735, 736, 736, 736, 736, 948,
2426 948, 948, 858, 872, 872, 872, 872, 821, 821, 821, 821, 821, 821, 821, 821, 823, 823, 823, 823,
2427 948, 858, 738, 634, 738, 948, 948, 739, 948, 740, 741, 742, 742, 742, 742, 629, 629, 629, 948,
2428 948, 638, 948, 948, 948, 747, 747, 747, 747, 485, 386, 485, 948, 948, 486, 948, 487, 749, 750,
2429 750, 750, 750, 485, 386,
2431 485, 948, 948, 486, 948, 487, 488, 860, 860, 860, 860, 640, 634, 640, 948, 948, 641, 948, 948,
2432 749, 750, 750, 750, 750, 948, 948, 948, 861, 829, 829, 829, 829, 829, 829, 829, 829, 334, 821,
2433 821, 821, 821, 948, 948, 948, 415, 861, 502, 393, 502, 948, 948, 503, 948, 504, 505, 758, 758,
2434 758, 758, 502, 393, 502, 415, 948, 503, 948, 504, 505, 758, 758, 758, 758, 306, 192, 306, 948,
2435 948, 307, 948, 308, 309, 761, 761, 761, 761, 306, 192, 306, 948, 948, 307, 948, 308, 309, 761,
2436 761, 761, 761, 393, 393,
2438 393, 948, 948, 394, 948, 948, 948, 763, 763, 763, 763, 517, 397, 517, 948, 948, 518, 948, 519,
2439 520, 766, 766, 766, 766, 517, 397, 517, 948, 948, 518, 948, 519, 520, 766, 766, 766, 766, 529,
2440 401, 529, 948, 948, 530, 948, 531, 532, 771, 771, 771, 771, 529, 401, 529, 948, 948, 530, 948,
2441 531, 532, 771, 771, 771, 771, 317, 198, 317, 948, 948, 318, 948, 319, 320, 774, 774, 774, 774,
2442 317, 198, 317, 948, 948, 318, 948, 319, 320, 774, 774, 774, 774, 401, 401, 401, 948, 948, 402,
2443 948, 948, 948, 776, 776,
2445 776, 776, 544, 405, 544, 948, 948, 545, 948, 546, 547, 779, 779, 779, 779, 544, 405, 544, 948,
2446 948, 545, 948, 546, 547, 779, 779, 779, 779, 784, 660, 784, 948, 948, 785, 948, 786, 787, 788,
2447 788, 788, 788, 784, 660, 784, 948, 948, 785, 948, 786, 787, 788, 788, 788, 788, 660, 660, 660,
2448 948, 948, 661, 948, 948, 948, 790, 790, 790, 790, 556, 409, 556, 948, 948, 557, 948, 558, 792,
2449 793, 793, 793, 793, 556, 409, 556, 948, 948, 557, 948, 558, 559, 865, 865, 865, 865, 663, 664,
2450 663, 948, 948, 665, 948,
2452 948, 792, 793, 793, 793, 793, 948, 948, 948, 866, 831, 831, 831, 831, 948, 574, 829, 829, 829,
2453 829, 940, 941, 940, 677, 948, 942, 948, 866, 660, 660, 660, 948, 948, 661, 948, 948, 795, 796,
2454 796, 796, 796, 677, 948, 948, 868, 831, 831, 831, 831, 839, 839, 839, 839, 135, 130, 135, 948,
2455 948, 136, 948, 948, 877, 868, 798, 664, 798, 948, 948, 799, 948, 800, 801, 802, 802, 802, 802,
2456 798, 664, 798, 948, 948, 799, 948, 800, 801, 802, 802, 802, 802, 331, 211, 331, 948, 948, 332,
2457 948, 333, 807, 808, 808,
2459 808, 808, 331, 211, 331, 948, 948, 332, 948, 333, 334, 870, 870, 870, 870, 668, 669, 668, 948,
2460 948, 670, 948, 948, 807, 808, 808, 808, 808, 948, 948, 948, 871, 423, 424, 423, 880, 880, 425,
2461 881, 881, 881, 881, 559, 865, 865, 865, 865, 948, 426, 871, 814, 669, 814, 948, 948, 815, 948,
2462 816, 817, 818, 818, 818, 818, 664, 664, 664, 426, 948, 673, 948, 948, 811, 812, 812, 812, 812,
2463 948, 888, 888, 873, 889, 889, 889, 889, 948, 867, 867, 867, 867, 847, 847, 847, 847, 948, 948,
2464 948, 848, 873, 814, 669,
2466 814, 948, 948, 815, 948, 816, 817, 818, 818, 818, 818, 664, 664, 664, 848, 948, 673, 948, 948,
2467 948, 823, 823, 823, 823, 571, 413, 571, 948, 948, 572, 948, 573, 825, 826, 826, 826, 826, 571,
2468 413, 571, 948, 948, 572, 948, 573, 574, 875, 875, 875, 875, 675, 669, 675, 948, 948, 676, 948,
2469 948, 825, 826, 826, 826, 826, 948, 896, 896, 876, 897, 897, 897, 897, 334, 870, 870, 870, 870,
2470 862, 862, 862, 862, 948, 948, 948, 863, 876, 588, 420, 588, 948, 948, 589, 948, 590, 591, 834,
2471 834, 834, 834, 588, 420,
2473 588, 863, 948, 589, 948, 590, 591, 834, 834, 834, 834, 353, 227, 353, 948, 948, 354, 948, 355,
2474 356, 837, 837, 837, 837, 353, 227, 353, 948, 948, 354, 948, 355, 356, 837, 837, 837, 837, 420,
2475 420, 420, 948, 948, 421, 948, 948, 948, 839, 839, 839, 839, 603, 424, 603, 948, 948, 604, 948,
2476 605, 606, 842, 842, 842, 842, 603, 424, 603, 948, 948, 604, 948, 605, 606, 842, 842, 842, 842,
2477 708, 625, 708, 948, 948, 709, 882, 883, 711, 884, 884, 884, 884, 628, 629, 628, 948, 948, 630,
2478 948, 472, 473, 850, 850,
2480 850, 850, 948, 904, 904, 851, 905, 905, 905, 905, 906, 907, 948, 908, 908, 908, 908, 948, 872,
2481 872, 872, 872, 948, 851, 470, 382, 470, 948, 948, 471, 885, 886, 473, 887, 887, 887, 887, 625,
2482 625, 625, 948, 948, 626, 948, 948, 948, 852, 852, 852, 852, 948, 909, 910, 853, 911, 911, 911,
2483 911, 912, 912, 948, 913, 913, 913, 913, 574, 875, 875, 875, 875, 948, 853, 722, 629, 722, 948,
2484 948, 723, 890, 891, 725, 892, 892, 892, 892, 633, 634, 633, 948, 948, 635, 948, 284, 285, 855,
2485 855, 855, 855, 948, 914,
2487 915, 856, 916, 916, 916, 916, 917, 918, 948, 919, 919, 919, 919, 881, 881, 881, 881, 948, 948,
2488 856, 282, 172, 282, 948, 948, 283, 893, 894, 285, 895, 895, 895, 895, 629, 629, 629, 948, 948,
2489 638, 948, 948, 948, 857, 857, 857, 857, 948, 920, 920, 858, 921, 921, 921, 921, 922, 923, 948,
2490 924, 924, 924, 924, 881, 881, 881, 881, 948, 948, 858, 738, 634, 738, 948, 948, 739, 898, 899,
2491 741, 900, 900, 900, 900, 640, 634, 640, 948, 948, 641, 948, 487, 488, 860, 860, 860, 860, 948,
2492 925, 926, 861, 927, 927,
2494 927, 927, 135, 130, 135, 948, 948, 136, 940, 941, 940, 928, 948, 942, 948, 861, 485, 386, 485,
2495 948, 948, 486, 901, 902, 488, 903, 903, 903, 903, 708, 625, 708, 948, 948, 709, 948, 710, 711,
2496 884, 884, 884, 884, 628, 629, 628, 948, 948, 630, 469, 472, 889, 889, 889, 889, 897, 897, 897,
2497 897, 631, 905, 905, 905, 905, 905, 905, 905, 905, 908, 908, 908, 908, 908, 908, 908, 908, 948,
2498 631, 625, 625, 625, 948, 948, 626, 948, 948, 948, 889, 889, 889, 889, 722, 629, 722, 948, 948,
2499 723, 948, 724, 725, 892,
2501 892, 892, 892, 633, 634, 633, 948, 948, 635, 281, 284, 908, 908, 908, 908, 948, 948, 948, 864,
2502 388, 911, 911, 911, 911, 911, 911, 911, 911, 913, 913, 913, 913, 916, 916, 916, 916, 864, 388,
2503 629, 629, 629, 948, 948, 638, 948, 948, 948, 897, 897, 897, 897, 738, 634, 738, 948, 948, 739,
2504 948, 740, 741, 900, 900, 900, 900, 640, 634, 640, 948, 948, 641, 484, 487, 948, 559, 911, 911,
2505 911, 911, 948, 948, 642, 666, 916, 916, 916, 916, 948, 948, 916, 916, 916, 916, 135, 130, 135,
2506 869, 948, 136, 642, 666,
2508 660, 660, 660, 948, 948, 661, 948, 948, 948, 913, 913, 913, 913, 869, 919, 919, 919, 919, 919,
2509 919, 919, 919, 334, 919, 919, 919, 919, 937, 948, 948, 415, 921, 921, 921, 921, 921, 921, 921,
2510 921, 924, 924, 924, 924, 924, 924, 924, 924, 948, 415, 924, 924, 924, 924, 948, 948, 948, 874,
2511 927, 927, 927, 927, 927, 927, 927, 927, 574, 927, 927, 927, 927, 135, 130, 135, 677, 874, 136,
2512 135, 130, 135, 948, 943, 136, 943, 948, 948, 944, 948, 940, 941, 940, 948, 677, 942, 943, 946,
2513 943, 946, 948, 944, 947,
2515 946, 946, 946, 946, 948, 947, 947, 946, 948, 946, 948, 948, 947, 934, 948, 948, 948, 948, 936, 46,
2516 46, 46, 46, 46, 46, 46, 46, 80, 80, 80, 80, 80, 80, 80, 80, 110, 110, 110, 110, 110, 110, 110,
2517 110, 120, 120, 120, 120, 120, 120, 120, 120, 134, 134, 134, 134, 134, 134, 134, 134, 138, 948,
2518 948, 138, 175, 948, 948, 175, 948, 175, 175, 175, 176, 176, 176, 176, 176, 176, 176, 176, 214,
2519 948, 948, 214, 948, 214, 214, 215, 215, 215, 215, 215, 215, 215, 215, 230, 230, 948, 230, 948,
2522 230, 230, 233, 233, 233, 233, 233, 233, 233, 233, 239, 239, 948, 239, 239, 239, 239, 239, 257,
2523 257, 257, 257, 257, 257, 257, 257, 270, 270, 270, 270, 270, 270, 270, 270, 276, 276, 948, 948,
2524 276, 276, 281, 281, 281, 281, 281, 281, 281, 281, 294, 294, 294, 294, 294, 294, 294, 294, 305,
2525 305, 305, 305, 305, 305, 305, 305, 316, 316, 316, 316, 316, 316, 316, 316, 330, 330, 330, 330,
2526 330, 330, 330, 330, 341, 341, 341, 341, 341, 341, 341, 341, 352, 352, 352, 352, 352, 352, 352,
2527 352, 230, 230, 948, 230,
2529 948, 230, 230, 230, 233, 233, 233, 233, 233, 233, 233, 233, 239, 239, 948, 239, 239, 239, 239,
2530 239, 134, 134, 134, 134, 134, 134, 134, 134, 138, 948, 948, 138, 257, 257, 257, 257, 257, 257,
2531 257, 257, 270, 270, 270, 270, 270, 270, 270, 270, 276, 276, 948, 948, 276, 276, 281, 281, 281,
2532 281, 281, 281, 281, 281, 438, 438, 438, 438, 438, 438, 438, 438, 453, 453, 453, 453, 453, 453,
2533 453, 453, 469, 469, 469, 469, 469, 469, 469, 469, 484, 484, 484, 484, 484, 484, 484, 484, 294,
2534 294, 294, 294, 294, 294,
2536 294, 294, 501, 501, 501, 501, 501, 501, 501, 501, 305, 305, 305, 305, 305, 305, 305, 305, 516,
2537 516, 516, 516, 516, 516, 516, 516, 528, 528, 528, 528, 528, 528, 528, 528, 316, 316, 316, 316,
2538 316, 316, 316, 316, 543, 543, 543, 543, 543, 543, 543, 543, 555, 555, 555, 555, 555, 555, 555,
2539 555, 330, 330, 330, 330, 330, 330, 330, 330, 570, 570, 570, 570, 570, 570, 570, 570, 341, 341,
2540 341, 341, 341, 341, 341, 341, 587, 587, 587, 587, 587, 587, 587, 587, 352, 352, 352, 352, 352,
2541 352, 352, 352, 602, 602,
2543 602, 602, 602, 602, 602, 602, 134, 134, 134, 134, 134, 134, 134, 134, 138, 948, 948, 138, 438,
2544 438, 438, 438, 438, 438, 438, 438, 257, 257, 257, 257, 257, 257, 257, 257, 453, 453, 453, 453,
2545 453, 453, 453, 453, 469, 469, 469, 469, 469, 469, 469, 469, 281, 281, 281, 281, 281, 281, 281,
2546 281, 484, 484, 484, 484, 484, 484, 484, 484, 294, 294, 294, 294, 294, 294, 294, 294, 501, 501,
2547 501, 501, 501, 501, 501, 501, 305, 305, 305, 305, 305, 305, 305, 305, 516, 516, 516, 516, 516,
2548 516, 516, 516, 528, 528,
2550 528, 528, 528, 528, 528, 528, 316, 316, 316, 316, 316, 316, 316, 316, 543, 543, 543, 543, 543,
2551 543, 543, 543, 555, 555, 555, 555, 555, 555, 555, 555, 330, 330, 330, 330, 330, 330, 330, 330,
2552 570, 570, 570, 570, 570, 570, 570, 570, 341, 341, 341, 341, 341, 341, 341, 341, 587, 587, 587,
2553 587, 587, 587, 587, 587, 352, 352, 352, 352, 352, 352, 352, 352, 602, 602, 602, 602, 602, 602,
2554 602, 602, 134, 134, 134, 134, 134, 134, 134, 134, 138, 948, 948, 138, 438, 438, 438, 438, 438,
2555 438, 438, 438, 257, 257,
2557 257, 257, 257, 257, 257, 257, 453, 453, 453, 453, 453, 453, 453, 453, 707, 707, 707, 707, 707,
2558 707, 707, 707, 469, 469, 469, 469, 469, 469, 469, 469, 721, 721, 721, 721, 721, 721, 721, 721,
2559 281, 281, 281, 281, 281, 281, 281, 281, 737, 737, 737, 737, 737, 737, 737, 737, 484, 484, 484,
2560 484, 484, 484, 484, 484, 501, 501, 501, 501, 501, 501, 501, 501, 305, 305, 305, 305, 305, 305,
2561 305, 305, 516, 516, 516, 516, 516, 516, 516, 516, 528, 528, 528, 528, 528, 528, 528, 528, 316,
2562 316, 316, 316, 316, 316,
2564 316, 316, 543, 543, 543, 543, 543, 543, 543, 543, 783, 783, 783, 783, 783, 783, 783, 783, 555,
2565 555, 555, 555, 555, 555, 555, 555, 797, 797, 797, 797, 797, 797, 797, 797, 330, 330, 330, 330,
2566 330, 330, 330, 330, 813, 813, 813, 813, 813, 813, 813, 813, 570, 570, 570, 570, 570, 570, 570,
2567 570, 587, 587, 587, 587, 587, 587, 587, 587, 352, 352, 352, 352, 352, 352, 352, 352, 602, 602,
2568 602, 602, 602, 602, 602, 602, 134, 134, 134, 134, 134, 134, 134, 134, 138, 948, 948, 138, 438,
2569 438, 438, 438, 438, 438,
2571 438, 438, 257, 257, 257, 257, 257, 257, 257, 257, 453, 453, 453, 453, 453, 453, 453, 453, 707,
2572 707, 707, 707, 707, 707, 707, 707, 469, 469, 469, 469, 469, 469, 469, 469, 721, 721, 721, 721,
2573 721, 721, 721, 721, 281, 281, 281, 281, 281, 281, 281, 281, 737, 737, 737, 737, 737, 737, 737,
2574 737, 484, 484, 484, 484, 484, 484, 484, 484, 501, 501, 501, 501, 501, 501, 501, 501, 305, 305,
2575 305, 305, 305, 305, 305, 305, 516, 516, 516, 516, 516, 516, 516, 516, 528, 528, 528, 528, 528,
2576 528, 528, 528, 316, 316,
2578 316, 316, 316, 316, 316, 316, 543, 543, 543, 543, 543, 543, 543, 543, 783, 783, 783, 783, 783,
2579 783, 783, 783, 555, 555, 555, 555, 555, 555, 555, 555, 797, 797, 797, 797, 797, 797, 797, 797,
2580 330, 330, 330, 330, 330, 330, 330, 330, 813, 813, 813, 813, 813, 813, 813, 813, 570, 570, 570,
2581 570, 570, 570, 570, 570, 587, 587, 587, 587, 587, 587, 587, 587, 352, 352, 352, 352, 352, 352,
2582 352, 352, 602, 602, 602, 602, 602, 602, 602, 602, 134, 134, 134, 134, 134, 134, 134, 134, 138,
2583 948, 948, 138, 707, 707,
2585 707, 707, 707, 707, 707, 707, 469, 469, 469, 469, 469, 469, 469, 469, 721, 721, 721, 721, 721,
2586 721, 721, 721, 281, 281, 281, 281, 281, 281, 281, 281, 737, 737, 737, 737, 737, 737, 737, 737,
2587 484, 484, 484, 484, 484, 484, 484, 484, 939, 939, 939, 939, 939, 939, 939, 939, 945, 945, 948,
2588 945, 945, 945, 945, 945, 45, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948,
2589 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948,
2592 948, 948, 948, 948, 948, 948, 948, 948, 948, 948 };
2594static const short int yy_chk[7711] = { 0, 0, 1, 1, 1, 0, 0, 1, 2, 2, 2, 885, 885, 2, 3, 3, 3, 3, 3,
2595 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2596 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 5, 5, 60, 60, 5, 6, 6, 6, 431, 1010, 6, 988, 431, 47, 47, 47, 5, 5,
2597 47, 48, 73, 48, 6, 6, 48, 5, 65, 65, 65, 65, 65, 6, 7, 7, 7, 985, 73, 7, 983,
2599 7, 7, 7, 7, 7, 7, 66, 66, 66, 66, 976, 7, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 11, 11, 11,
2600 11, 11, 11, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 15, 15, 15,
2601 15, 15, 15, 16, 16, 16, 16, 16, 16, 17, 17, 17, 970, 17, 17, 18, 18, 18, 965, 18, 18, 19, 19, 19,
2602 19, 19, 19, 17, 68, 68, 68, 68, 68, 18, 20, 20, 20, 20, 20, 20, 21, 21, 21, 21, 21, 21, 22, 22,
2605 22, 22, 22, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 25, 25, 25, 25, 25, 25, 275, 933, 39,
2606 39, 39, 25, 39, 39, 40, 40, 40, 930, 40, 40, 464, 929, 275, 25, 879, 25, 26, 26, 26, 26, 26, 26,
2607 299, 51, 51, 51, 464, 26, 51, 39, 346, 443, 41, 41, 41, 40, 41, 41, 878, 26, 299, 26, 27, 27, 27,
2608 27, 27, 27, 346, 443, 42, 42, 42, 27, 42, 42, 49, 49, 49, 886, 886, 49, 846, 41, 458, 27, 844, 27,
2609 28, 28, 28, 28, 28, 28, 69,
2611 69, 69, 69, 130, 28, 130, 42, 458, 130, 49, 71, 71, 71, 71, 690, 465, 28, 689, 28, 29, 29, 29, 29,
2612 29, 29, 74, 74, 74, 74, 687, 29, 465, 43, 43, 43, 43, 43, 43, 76, 76, 76, 76, 29, 43, 29, 30, 30,
2613 30, 30, 30, 30, 77, 77, 77, 77, 77, 30, 615, 44, 44, 44, 44, 44, 44, 78, 78, 78, 78, 30, 44, 30,
2614 31, 31, 31, 31, 31, 31, 70, 70, 70, 70, 70, 31, 893, 893, 70, 85, 85, 85, 85, 75, 75, 75, 75, 31,
2615 614, 31, 32, 32, 32,
2617 32, 32, 32, 70, 88, 88, 88, 88, 32, 613, 75, 82, 82, 82, 612, 82, 82, 497, 894, 894, 32, 432, 32,
2618 33, 33, 33, 75, 33, 33, 84, 84, 84, 84, 84, 506, 497, 86, 86, 86, 86, 86, 33, 901, 901, 86, 87,
2619 87, 87, 87, 87, 902, 902, 506, 33, 521, 33, 34, 34, 34, 428, 34, 34, 86, 90, 90, 90, 90, 90, 91,
2620 91, 91, 91, 521, 369, 34, 93, 93, 93, 93, 93, 94, 94, 94, 94, 368, 367, 34, 366, 34, 35, 35, 35,
2621 35, 35, 35, 99, 99, 99, 99, 99,
2623 35, 100, 100, 100, 100, 101, 101, 101, 101, 101, 365, 364, 35, 101, 35, 36, 36, 36, 36, 36, 36,
2624 103, 103, 103, 103, 362, 36, 104, 104, 104, 104, 101, 105, 105, 105, 105, 253, 252, 36, 251, 36,
2625 37, 37, 37, 37, 37, 37, 104, 108, 108, 108, 108, 37, 107, 107, 107, 107, 107, 114, 114, 114, 114,
2626 114, 104, 37, 533, 37, 38, 38, 38, 38, 38, 38, 115, 115, 115, 115, 250, 38, 548, 112, 112, 112,
2627 533, 112, 112, 118, 118, 118, 118, 38, 249, 38, 67, 67, 67, 247, 548, 67, 246,
2629 245, 67, 67, 67, 67, 67, 121, 121, 121, 67, 112, 121, 112, 117, 117, 117, 117, 117, 123, 123, 123,
2630 244, 123, 123, 152, 150, 149, 67, 72, 72, 72, 148, 147, 72, 146, 144, 143, 72, 72, 72, 72, 126,
2631 126, 126, 126, 127, 127, 127, 127, 128, 128, 128, 128, 129, 129, 129, 142, 72, 129, 131, 131, 131,
2632 583, 140, 131, 127, 132, 133, 132, 133, 139, 132, 133, 72, 79, 79, 79, 124, 592, 79, 583, 127, 79,
2633 79, 79, 79, 79, 134, 134, 134, 79, 113, 134, 135, 135, 135, 592, 607, 135, 136,
2635 136, 136, 96, 83, 136, 695, 703, 64, 79, 89, 89, 89, 712, 63, 89, 607, 62, 89, 89, 89, 89, 89, 61,
2636 695, 703, 89, 137, 137, 137, 726, 712, 137, 153, 153, 153, 153, 155, 155, 155, 155, 155, 59, 58,
2637 89, 92, 92, 92, 726, 57, 92, 137, 56, 92, 92, 92, 92, 92, 742, 158, 158, 92, 158, 158, 158, 158,
2638 159, 159, 159, 159, 161, 161, 161, 161, 55, 758, 742, 161, 54, 92, 95, 95, 95, 766, 53, 95, 52,
2639 45, 95, 95, 95, 95, 95, 758, 0, 161, 95, 167, 167, 167, 167,
2641 766, 160, 160, 160, 160, 160, 166, 166, 166, 160, 0, 166, 0, 95, 109, 109, 109, 0, 0, 109, 0, 0,
2642 109, 109, 109, 109, 109, 160, 162, 162, 109, 162, 162, 162, 162, 169, 169, 169, 169, 171, 171,
2643 171, 171, 171, 179, 179, 179, 179, 109, 116, 116, 116, 0, 0, 116, 771, 0, 116, 116, 116, 116, 116,
2644 0, 174, 174, 116, 174, 174, 174, 174, 176, 176, 176, 771, 176, 176, 177, 177, 177, 779, 177, 177,
2645 0, 116, 119, 119, 119, 0, 0, 119, 0, 0, 119, 119, 119, 119, 119, 779, 182, 182,
2647 119, 182, 182, 182, 182, 183, 183, 183, 183, 180, 180, 180, 180, 180, 0, 0, 0, 180, 119, 156, 156,
2648 156, 0, 0, 156, 0, 156, 156, 156, 156, 156, 156, 157, 157, 157, 180, 0, 157, 0, 157, 157, 157,
2649 157, 157, 157, 164, 164, 164, 788, 0, 164, 0, 164, 0, 164, 164, 164, 164, 165, 165, 165, 0, 0,
2650 165, 0, 165, 788, 165, 165, 165, 165, 172, 172, 172, 0, 0, 172, 0, 172, 172, 172, 172, 172, 172,
2651 173, 173, 173, 0, 0, 173, 0, 173, 173, 173, 173, 173, 173, 181, 181, 181,
2653 181, 0, 0, 802, 181, 185, 185, 185, 185, 185, 188, 188, 0, 188, 188, 188, 188, 189, 189, 189, 189,
2654 802, 181, 186, 186, 186, 0, 0, 186, 0, 186, 186, 186, 186, 186, 186, 187, 187, 187, 818, 834, 187,
2655 842, 187, 187, 187, 187, 187, 187, 191, 191, 191, 191, 191, 192, 192, 192, 818, 834, 192, 842,
2656 192, 192, 192, 192, 192, 192, 193, 193, 193, 0, 0, 193, 0, 193, 193, 193, 193, 193, 193, 194, 194,
2657 884, 194, 194, 194, 194, 195, 195, 195, 195, 197, 197, 197, 197, 197, 198, 198, 198, 0,
2659 884, 198, 0, 198, 198, 198, 198, 198, 198, 199, 199, 199, 0, 0, 199, 0, 199, 199, 199, 199, 199,
2660 199, 200, 200, 0, 200, 200, 200, 200, 202, 202, 202, 202, 203, 203, 203, 203, 203, 0, 0, 892, 203,
2661 204, 204, 204, 204, 900, 205, 205, 204, 205, 205, 205, 205, 206, 206, 206, 206, 892, 203, 208,
2662 208, 208, 208, 900, 0, 0, 204, 210, 210, 210, 210, 210, 211, 211, 211, 0, 0, 211, 0, 211, 211,
2663 211, 211, 211, 211, 212, 212, 212, 0, 0, 212, 0, 212, 212, 212, 212, 212, 212, 213,
2665 213, 0, 213, 213, 213, 213, 215, 215, 215, 0, 215, 215, 216, 216, 216, 0, 216, 216, 218, 218, 218,
2666 218, 220, 220, 220, 220, 220, 223, 223, 0, 223, 223, 223, 223, 0, 239, 215, 239, 215, 0, 239, 0,
2667 216, 0, 216, 221, 221, 221, 0, 0, 221, 0, 221, 221, 221, 221, 221, 221, 222, 222, 222, 0, 0, 222,
2668 0, 222, 222, 222, 222, 222, 222, 224, 224, 224, 224, 225, 225, 225, 0, 0, 225, 0, 0, 225, 225,
2669 225, 225, 225, 0, 0, 0, 225, 226, 226, 226, 226, 226, 229, 229, 0,
2671 229, 229, 229, 229, 237, 237, 237, 237, 0, 225, 227, 227, 227, 0, 0, 227, 0, 227, 227, 227, 227,
2672 227, 227, 228, 228, 228, 0, 0, 228, 0, 228, 228, 228, 228, 228, 228, 231, 231, 231, 0, 0, 231,
2673 232, 232, 232, 0, 232, 232, 233, 233, 233, 0, 233, 233, 234, 234, 234, 0, 234, 234, 235, 235, 235,
2674 0, 235, 235, 240, 241, 240, 241, 0, 240, 241, 242, 242, 242, 0, 0, 242, 254, 254, 254, 254, 254,
2675 255, 255, 255, 255, 263, 263, 263, 263, 0, 242, 256, 256, 256, 0, 0, 256,
2677 0, 0, 256, 256, 256, 256, 256, 0, 0, 0, 256, 262, 262, 262, 0, 0, 262, 265, 265, 265, 265, 266,
2678 266, 266, 266, 0, 0, 262, 256, 257, 257, 257, 0, 0, 257, 0, 257, 257, 257, 257, 257, 257, 258,
2679 258, 258, 262, 0, 258, 0, 258, 258, 258, 258, 258, 258, 264, 264, 264, 0, 0, 264, 0, 0, 0, 264,
2680 264, 264, 264, 267, 267, 267, 267, 268, 268, 268, 268, 269, 269, 269, 269, 276, 276, 276, 0, 0,
2681 276, 278, 278, 278, 278, 278, 0, 268, 279, 279, 279, 279, 287, 287, 287,
2683 287, 289, 289, 289, 289, 0, 0, 0, 268, 270, 270, 270, 0, 0, 270, 0, 270, 0, 270, 270, 270, 270,
2684 271, 271, 271, 0, 0, 271, 0, 271, 0, 271, 271, 271, 271, 272, 272, 272, 0, 0, 272, 0, 272, 0, 272,
2685 272, 272, 272, 273, 273, 273, 0, 0, 273, 0, 273, 0, 273, 273, 273, 273, 274, 274, 274, 0, 0, 274,
2686 0, 274, 0, 274, 274, 274, 274, 0, 0, 286, 286, 286, 0, 0, 286, 290, 290, 290, 290, 292, 292, 292,
2687 292, 274, 0, 286, 291, 291, 291, 291, 291, 300, 300,
2689 300, 300, 303, 303, 303, 303, 274, 280, 280, 280, 286, 0, 280, 0, 0, 280, 280, 280, 280, 280, 0,
2690 0, 0, 280, 302, 302, 302, 302, 302, 0, 0, 0, 293, 293, 293, 293, 293, 0, 0, 0, 293, 280, 281, 281,
2691 281, 0, 0, 281, 0, 281, 281, 281, 281, 281, 281, 282, 282, 282, 293, 0, 282, 0, 282, 282, 282,
2692 282, 282, 282, 288, 288, 288, 0, 0, 288, 0, 0, 0, 288, 288, 288, 288, 294, 294, 294, 0, 0, 294, 0,
2693 294, 294, 294, 294, 294, 294, 301, 301, 301, 0, 0, 301,
2695 0, 0, 0, 301, 301, 301, 301, 304, 304, 304, 0, 0, 304, 0, 0, 304, 304, 304, 304, 304, 0, 0, 0,
2696 304, 310, 310, 310, 0, 0, 310, 311, 311, 311, 311, 313, 313, 313, 313, 313, 0, 310, 304, 305, 305,
2697 305, 0, 0, 305, 0, 305, 305, 305, 305, 305, 305, 0, 0, 0, 310, 312, 312, 312, 0, 0, 312, 0, 0, 0,
2698 312, 312, 312, 312, 314, 314, 314, 314, 315, 315, 315, 0, 0, 315, 0, 0, 315, 315, 315, 315, 315,
2699 0, 0, 0, 315, 321, 321, 321, 0, 0, 321, 322,
2701 322, 322, 322, 324, 324, 324, 324, 0, 0, 321, 315, 316, 316, 316, 0, 0, 316, 0, 316, 316, 316,
2702 316, 316, 316, 0, 0, 0, 321, 323, 323, 323, 0, 0, 323, 0, 0, 0, 323, 323, 323, 323, 325, 325, 325,
2703 325, 327, 327, 327, 327, 327, 328, 328, 328, 328, 329, 329, 329, 0, 0, 329, 0, 0, 329, 329, 329,
2704 329, 329, 0, 0, 0, 329, 335, 335, 335, 0, 0, 335, 336, 336, 336, 336, 338, 338, 338, 338, 338, 0,
2705 335, 329, 330, 330, 330, 0, 0, 330, 0, 330, 330, 330, 330,
2707 330, 330, 0, 0, 0, 335, 337, 337, 337, 0, 0, 337, 0, 0, 0, 337, 337, 337, 337, 339, 339, 339, 339,
2708 340, 340, 340, 340, 340, 0, 0, 0, 340, 347, 347, 347, 347, 349, 349, 349, 349, 349, 350, 350, 350,
2709 350, 358, 358, 358, 358, 340, 341, 341, 341, 0, 0, 341, 0, 341, 341, 341, 341, 341, 341, 348, 348,
2710 348, 0, 0, 348, 0, 0, 0, 348, 348, 348, 348, 351, 351, 351, 0, 0, 351, 0, 0, 351, 351, 351, 351,
2711 351, 0, 0, 0, 351, 357, 357, 357, 0, 0, 357, 371,
2713 371, 371, 371, 371, 381, 381, 381, 381, 381, 357, 351, 352, 352, 352, 0, 0, 352, 0, 352, 352, 352,
2714 352, 352, 352, 0, 0, 0, 357, 359, 359, 359, 0, 0, 359, 0, 0, 0, 359, 359, 359, 359, 361, 361, 361,
2715 374, 374, 361, 374, 374, 374, 374, 378, 378, 0, 378, 378, 378, 378, 0, 0, 361, 372, 372, 372, 0,
2716 0, 372, 0, 372, 372, 372, 372, 372, 372, 373, 373, 373, 0, 0, 373, 0, 373, 373, 373, 373, 373,
2717 373, 375, 375, 375, 0, 0, 375, 0, 375, 375, 375, 375, 375, 375,
2719 376, 376, 376, 0, 0, 376, 0, 376, 376, 376, 376, 376, 376, 377, 377, 377, 0, 0, 377, 0, 377, 377,
2720 377, 377, 377, 377, 380, 380, 380, 380, 380, 380, 380, 380, 380, 384, 384, 0, 384, 384, 384, 384,
2721 389, 389, 389, 389, 380, 0, 0, 389, 380, 380, 380, 390, 390, 0, 390, 390, 390, 390, 0, 0, 380,
2722 382, 382, 382, 0, 389, 382, 0, 382, 382, 382, 382, 382, 382, 383, 383, 383, 0, 0, 383, 0, 383,
2723 383, 383, 383, 383, 383, 385, 385, 385, 0, 0, 385, 0, 385, 385, 385, 385,
2725 385, 385, 386, 386, 386, 0, 0, 386, 0, 386, 386, 386, 386, 386, 386, 387, 387, 387, 0, 0, 387, 0,
2726 387, 387, 387, 387, 387, 387, 388, 388, 388, 0, 0, 388, 388, 388, 388, 388, 388, 388, 388, 391,
2727 391, 391, 0, 0, 391, 391, 391, 391, 391, 391, 391, 391, 392, 392, 392, 0, 0, 392, 0, 0, 0, 392,
2728 392, 392, 392, 0, 395, 395, 392, 395, 395, 395, 395, 403, 403, 0, 403, 403, 403, 403, 427, 427,
2729 427, 0, 0, 427, 392, 393, 393, 393, 0, 0, 393, 0, 393, 393, 393, 393,
2731 393, 393, 394, 394, 394, 0, 0, 394, 0, 394, 394, 394, 394, 394, 394, 396, 396, 396, 0, 0, 396, 0,
2732 396, 396, 396, 396, 396, 396, 397, 397, 397, 0, 0, 397, 0, 397, 397, 397, 397, 397, 397, 398, 398,
2733 398, 0, 0, 398, 0, 398, 398, 398, 398, 398, 398, 399, 399, 399, 0, 0, 399, 399, 399, 399, 399,
2734 399, 399, 399, 400, 400, 400, 0, 0, 400, 0, 0, 0, 400, 400, 400, 400, 0, 411, 411, 400, 411, 411,
2735 411, 411, 435, 435, 435, 435, 435, 416, 416, 416, 416, 0, 0, 0,
2737 416, 400, 401, 401, 401, 0, 0, 401, 0, 401, 401, 401, 401, 401, 401, 402, 402, 402, 416, 0, 402,
2738 0, 402, 402, 402, 402, 402, 402, 404, 404, 404, 0, 0, 404, 0, 404, 404, 404, 404, 404, 404, 405,
2739 405, 405, 0, 0, 405, 0, 405, 405, 405, 405, 405, 405, 406, 406, 406, 0, 0, 406, 0, 406, 406, 406,
2740 406, 406, 406, 407, 407, 407, 0, 0, 407, 407, 407, 407, 407, 407, 407, 407, 408, 408, 408, 0, 0,
2741 408, 0, 0, 0, 408, 408, 408, 408, 0, 417, 417, 408, 417, 417, 417,
2743 417, 422, 422, 0, 422, 422, 422, 422, 436, 436, 436, 436, 0, 0, 408, 409, 409, 409, 0, 0, 409, 0,
2744 409, 409, 409, 409, 409, 409, 410, 410, 410, 0, 0, 410, 0, 410, 410, 410, 410, 410, 410, 412, 412,
2745 412, 0, 0, 412, 0, 412, 412, 412, 412, 412, 412, 413, 413, 413, 0, 0, 413, 0, 413, 413, 413, 413,
2746 413, 413, 414, 414, 414, 0, 0, 414, 0, 414, 414, 414, 414, 414, 414, 415, 415, 415, 0, 0, 415,
2747 415, 415, 415, 415, 415, 415, 415, 418, 418, 418, 0, 0, 418, 418,
2749 418, 418, 418, 418, 418, 418, 419, 419, 419, 0, 0, 419, 0, 0, 0, 419, 419, 419, 419, 0, 0, 0, 419,
2750 444, 444, 444, 444, 451, 451, 451, 451, 437, 437, 437, 437, 437, 0, 0, 0, 437, 419, 420, 420, 420,
2751 0, 0, 420, 0, 420, 420, 420, 420, 420, 420, 421, 421, 421, 437, 0, 421, 0, 421, 421, 421, 421,
2752 421, 421, 423, 423, 423, 0, 0, 423, 0, 423, 423, 423, 423, 423, 423, 424, 424, 424, 0, 0, 424, 0,
2753 424, 424, 424, 424, 424, 424, 425, 425, 425, 0, 0, 425, 0,
2755 425, 425, 425, 425, 425, 425, 426, 426, 426, 0, 0, 426, 426, 426, 426, 426, 426, 426, 426, 438,
2756 438, 438, 0, 0, 438, 0, 438, 438, 438, 438, 438, 438, 439, 439, 439, 0, 0, 439, 0, 439, 439, 439,
2757 439, 439, 439, 445, 445, 445, 0, 0, 445, 0, 0, 0, 445, 445, 445, 445, 446, 446, 446, 0, 0, 446, 0,
2758 446, 446, 446, 446, 446, 446, 447, 447, 447, 0, 0, 447, 0, 447, 447, 447, 447, 447, 447, 448, 448,
2759 448, 0, 0, 448, 0, 0, 448, 448, 448, 448, 448, 0, 0, 0,
2761 448, 450, 450, 450, 450, 450, 459, 459, 459, 459, 460, 460, 460, 460, 467, 467, 467, 467, 448,
2762 449, 449, 449, 0, 0, 449, 0, 449, 449, 449, 449, 449, 449, 452, 452, 452, 0, 0, 452, 0, 0, 452,
2763 452, 452, 452, 452, 0, 0, 0, 452, 466, 466, 466, 466, 466, 461, 461, 461, 461, 461, 686, 686, 686,
2764 461, 0, 686, 0, 452, 453, 453, 453, 686, 0, 453, 0, 453, 453, 453, 453, 453, 453, 461, 463, 463,
2765 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463,
2767 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463,
2768 463, 463, 463, 463, 463, 463, 463, 463, 463, 468, 468, 468, 0, 0, 468, 0, 0, 468, 468, 468, 468,
2769 468, 0, 0, 0, 468, 474, 474, 474, 0, 0, 474, 475, 475, 475, 475, 481, 481, 481, 481, 481, 0, 474,
2770 468, 469, 469, 469, 0, 0, 469, 0, 469, 469, 469, 469, 469, 469, 470, 470, 470, 474, 0, 470, 0,
2771 470, 470, 470, 470, 470, 470, 476, 476, 476, 0, 0, 476, 0, 0, 0, 476, 476,
2773 476, 476, 477, 477, 477, 0, 0, 477, 0, 477, 477, 477, 477, 477, 477, 478, 478, 478, 0, 0, 478, 0,
2774 478, 478, 478, 478, 478, 478, 479, 479, 479, 0, 0, 479, 0, 0, 479, 479, 479, 479, 479, 0, 0, 0,
2775 479, 482, 482, 482, 482, 490, 490, 490, 490, 491, 491, 491, 491, 493, 493, 493, 493, 0, 479, 480,
2776 480, 480, 0, 0, 480, 0, 480, 480, 480, 480, 480, 480, 483, 483, 483, 0, 0, 483, 0, 0, 483, 483,
2777 483, 483, 483, 0, 0, 0, 483, 489, 489, 489, 0, 0, 489, 494,
2779 494, 494, 494, 498, 498, 498, 498, 498, 0, 489, 483, 484, 484, 484, 0, 0, 484, 0, 484, 484, 484,
2780 484, 484, 484, 0, 0, 0, 489, 492, 492, 492, 0, 0, 492, 0, 0, 0, 492, 492, 492, 492, 0, 0, 0, 492,
2781 499, 499, 499, 499, 507, 507, 507, 507, 500, 500, 500, 500, 500, 0, 0, 0, 500, 492, 495, 495, 495,
2782 0, 0, 495, 0, 495, 495, 495, 495, 495, 495, 496, 496, 496, 500, 0, 496, 0, 496, 496, 496, 496,
2783 496, 496, 501, 501, 501, 0, 0, 501, 0, 501, 501, 501, 501,
2785 501, 501, 502, 502, 502, 0, 0, 502, 0, 502, 502, 502, 502, 502, 502, 508, 508, 508, 0, 0, 508, 0,
2786 0, 0, 508, 508, 508, 508, 509, 509, 509, 0, 0, 509, 0, 509, 509, 509, 509, 509, 509, 510, 510,
2787 510, 0, 0, 510, 0, 510, 510, 510, 510, 510, 510, 511, 511, 511, 0, 0, 511, 0, 0, 511, 511, 511,
2788 511, 511, 0, 0, 0, 511, 513, 513, 513, 513, 513, 514, 514, 514, 514, 522, 522, 522, 522, 523, 523,
2789 523, 523, 511, 512, 512, 512, 0, 0, 512, 0, 512, 512, 512, 512,
2791 512, 512, 515, 515, 515, 0, 0, 515, 0, 0, 515, 515, 515, 515, 515, 0, 0, 0, 515, 525, 525, 525,
2792 525, 525, 524, 524, 524, 524, 524, 928, 928, 928, 524, 0, 928, 0, 515, 516, 516, 516, 0, 0, 516,
2793 0, 516, 516, 516, 516, 516, 516, 524, 526, 526, 526, 526, 527, 527, 527, 527, 527, 0, 0, 0, 527,
2794 534, 534, 534, 534, 540, 540, 540, 540, 540, 541, 541, 541, 541, 549, 549, 549, 549, 527, 528,
2795 528, 528, 0, 0, 528, 0, 528, 528, 528, 528, 528, 528, 529, 529, 529, 0, 0,
2797 529, 0, 529, 529, 529, 529, 529, 529, 535, 535, 535, 0, 0, 535, 0, 0, 0, 535, 535, 535, 535, 536,
2798 536, 536, 0, 0, 536, 0, 536, 536, 536, 536, 536, 536, 537, 537, 537, 0, 0, 537, 0, 537, 537, 537,
2799 537, 537, 537, 538, 538, 538, 0, 0, 538, 0, 0, 538, 538, 538, 538, 538, 0, 0, 0, 538, 550, 550,
2800 550, 550, 553, 553, 553, 553, 551, 551, 551, 551, 551, 0, 0, 0, 551, 538, 539, 539, 539, 0, 0,
2801 539, 0, 539, 539, 539, 539, 539, 539, 542, 542, 542, 551, 0,
2803 542, 0, 0, 542, 542, 542, 542, 542, 0, 0, 0, 542, 552, 552, 552, 552, 552, 561, 561, 561, 561,
2804 567, 567, 567, 567, 567, 0, 0, 0, 542, 543, 543, 543, 0, 0, 543, 0, 543, 543, 543, 543, 543, 543,
2805 554, 554, 554, 0, 0, 554, 0, 0, 554, 554, 554, 554, 554, 0, 0, 0, 554, 560, 560, 560, 0, 0, 560,
2806 568, 568, 568, 568, 576, 576, 576, 576, 0, 0, 560, 554, 555, 555, 555, 0, 0, 555, 0, 555, 555,
2807 555, 555, 555, 555, 556, 556, 556, 560, 0, 556, 0, 556, 556,
2809 556, 556, 556, 556, 562, 562, 562, 0, 0, 562, 0, 0, 0, 562, 562, 562, 562, 563, 563, 563, 0, 0,
2810 563, 0, 563, 563, 563, 563, 563, 563, 564, 564, 564, 0, 0, 564, 0, 564, 564, 564, 564, 564, 564,
2811 565, 565, 565, 0, 0, 565, 0, 0, 565, 565, 565, 565, 565, 0, 0, 0, 565, 575, 575, 575, 0, 0, 575,
2812 577, 577, 577, 577, 579, 579, 579, 579, 0, 0, 575, 565, 566, 566, 566, 0, 0, 566, 0, 566, 566,
2813 566, 566, 566, 566, 569, 569, 569, 575, 0, 569, 0, 0, 569,
2815 569, 569, 569, 569, 0, 0, 0, 569, 580, 580, 580, 580, 584, 584, 584, 584, 584, 585, 585, 585, 585,
2816 593, 593, 593, 593, 569, 570, 570, 570, 0, 0, 570, 0, 570, 570, 570, 570, 570, 570, 578, 578, 578,
2817 0, 0, 578, 0, 0, 0, 578, 578, 578, 578, 0, 0, 0, 578, 599, 599, 599, 599, 599, 0, 0, 0, 586, 586,
2818 586, 586, 586, 0, 0, 0, 586, 578, 581, 581, 581, 0, 0, 581, 0, 581, 581, 581, 581, 581, 581, 582,
2819 582, 582, 586, 0, 582, 0, 582, 582, 582, 582, 582, 582,
2821 587, 587, 587, 0, 0, 587, 0, 587, 587, 587, 587, 587, 587, 588, 588, 588, 0, 0, 588, 0, 588, 588,
2822 588, 588, 588, 588, 594, 594, 594, 0, 0, 594, 0, 0, 0, 594, 594, 594, 594, 595, 595, 595, 0, 0,
2823 595, 0, 595, 595, 595, 595, 595, 595, 596, 596, 596, 0, 0, 596, 0, 596, 596, 596, 596, 596, 596,
2824 597, 597, 597, 0, 0, 597, 0, 0, 597, 597, 597, 597, 597, 0, 0, 0, 597, 600, 600, 600, 600, 608,
2825 608, 608, 608, 609, 609, 609, 609, 691, 691, 691, 691, 0, 597,
2827 598, 598, 598, 0, 0, 598, 0, 598, 598, 598, 598, 598, 598, 601, 601, 601, 0, 0, 601, 0, 0, 601,
2828 601, 601, 601, 601, 611, 611, 611, 601, 0, 611, 0, 0, 0, 610, 610, 610, 610, 610, 937, 937, 937,
2829 610, 0, 937, 0, 601, 602, 602, 602, 0, 937, 602, 611, 602, 602, 602, 602, 602, 602, 610, 616, 616,
2830 616, 616, 0, 617, 617, 616, 617, 617, 617, 617, 622, 622, 0, 622, 622, 622, 622, 692, 692, 692,
2831 692, 0, 0, 616, 618, 618, 618, 0, 0, 618, 618, 618, 618, 618, 618, 618,
2833 618, 619, 619, 619, 0, 0, 619, 0, 619, 619, 619, 619, 619, 619, 0, 627, 627, 619, 627, 627, 627,
2834 627, 639, 639, 0, 639, 639, 639, 639, 699, 699, 699, 699, 0, 0, 619, 620, 620, 620, 0, 0, 620,
2835 620, 620, 620, 620, 620, 620, 620, 621, 621, 621, 0, 0, 621, 0, 0, 0, 621, 621, 621, 621, 0, 644,
2836 644, 621, 644, 644, 644, 644, 704, 704, 704, 704, 704, 643, 643, 643, 643, 0, 0, 0, 643, 621, 623,
2837 623, 623, 0, 0, 623, 623, 623, 623, 623, 623, 623, 623, 624, 624, 624,
2839 643, 0, 624, 0, 0, 0, 624, 624, 624, 624, 0, 649, 649, 624, 649, 649, 649, 649, 705, 705, 705,
2840 705, 0, 651, 651, 651, 651, 0, 0, 0, 651, 624, 625, 625, 625, 0, 0, 625, 0, 625, 625, 625, 625,
2841 625, 625, 626, 626, 626, 651, 0, 626, 0, 626, 626, 626, 626, 626, 626, 628, 628, 628, 0, 0, 628,
2842 0, 628, 628, 628, 628, 628, 628, 629, 629, 629, 0, 0, 629, 0, 629, 629, 629, 629, 629, 629, 630,
2843 630, 630, 0, 0, 630, 0, 630, 630, 630, 630, 630, 630, 631, 631, 631,
2845 0, 0, 631, 631, 631, 631, 631, 631, 631, 631, 632, 632, 632, 0, 0, 632, 0, 632, 632, 632, 632,
2846 632, 632, 0, 652, 652, 632, 652, 652, 652, 652, 657, 657, 0, 657, 657, 657, 657, 713, 713, 713,
2847 713, 0, 0, 632, 633, 633, 633, 0, 0, 633, 0, 633, 633, 633, 633, 633, 633, 634, 634, 634, 0, 0,
2848 634, 0, 634, 634, 634, 634, 634, 634, 635, 635, 635, 0, 0, 635, 0, 635, 635, 635, 635, 635, 635,
2849 636, 636, 636, 0, 0, 636, 636, 636, 636, 636, 636, 636, 636, 637, 637, 637,
2851 0, 0, 637, 0, 0, 0, 637, 637, 637, 637, 0, 662, 662, 637, 662, 662, 662, 662, 674, 674, 0, 674,
2852 674, 674, 674, 718, 718, 718, 718, 718, 0, 637, 638, 638, 638, 0, 0, 638, 0, 638, 638, 638, 638,
2853 638, 638, 640, 640, 640, 0, 0, 640, 0, 640, 640, 640, 640, 640, 640, 641, 641, 641, 0, 0, 641, 0,
2854 641, 641, 641, 641, 641, 641, 642, 642, 642, 0, 0, 642, 642, 642, 642, 642, 642, 642, 642, 645,
2855 645, 645, 0, 0, 645, 645, 645, 645, 645, 645, 645, 645, 646, 646, 646,
2857 0, 0, 646, 0, 646, 646, 646, 646, 646, 646, 0, 679, 679, 646, 679, 679, 679, 679, 719, 719, 719,
2858 719, 0, 678, 678, 678, 678, 0, 0, 0, 678, 646, 647, 647, 647, 0, 0, 647, 647, 647, 647, 647, 647,
2859 647, 647, 648, 648, 648, 678, 0, 648, 0, 0, 0, 648, 648, 648, 648, 0, 684, 684, 648, 684, 684,
2860 684, 684, 727, 727, 727, 727, 706, 706, 706, 706, 706, 0, 0, 0, 706, 648, 650, 650, 650, 0, 0,
2861 650, 650, 650, 650, 650, 650, 650, 650, 653, 653, 653, 706, 0, 653, 653,
2863 653, 653, 653, 653, 653, 653, 654, 654, 654, 0, 0, 654, 0, 654, 654, 654, 654, 654, 654, 0, 0, 0,
2864 654, 698, 698, 698, 0, 0, 698, 728, 728, 728, 728, 734, 734, 734, 734, 734, 0, 698, 654, 655, 655,
2865 655, 0, 0, 655, 655, 655, 655, 655, 655, 655, 655, 656, 656, 656, 698, 0, 656, 0, 0, 0, 656, 656,
2866 656, 656, 0, 0, 0, 656, 735, 735, 735, 735, 743, 743, 743, 743, 729, 729, 729, 729, 729, 0, 0, 0,
2867 729, 656, 658, 658, 658, 0, 0, 658, 658, 658, 658, 658, 658,
2869 658, 658, 659, 659, 659, 729, 0, 659, 0, 0, 0, 659, 659, 659, 659, 0, 0, 0, 659, 744, 744, 744,
2870 744, 746, 746, 746, 746, 745, 745, 745, 745, 745, 0, 0, 0, 745, 659, 660, 660, 660, 0, 0, 660, 0,
2871 660, 660, 660, 660, 660, 660, 661, 661, 661, 745, 0, 661, 0, 661, 661, 661, 661, 661, 661, 663,
2872 663, 663, 0, 0, 663, 0, 663, 663, 663, 663, 663, 663, 664, 664, 664, 0, 0, 664, 0, 664, 664, 664,
2873 664, 664, 664, 665, 665, 665, 0, 0, 665, 0, 665, 665, 665, 665,
2875 665, 665, 666, 666, 666, 0, 0, 666, 666, 666, 666, 666, 666, 666, 666, 667, 667, 667, 0, 0, 667,
2876 0, 667, 667, 667, 667, 667, 667, 0, 0, 0, 667, 751, 751, 751, 751, 752, 752, 752, 752, 753, 753,
2877 753, 753, 753, 0, 0, 0, 753, 667, 668, 668, 668, 0, 0, 668, 0, 668, 668, 668, 668, 668, 668, 669,
2878 669, 669, 753, 0, 669, 0, 669, 669, 669, 669, 669, 669, 670, 670, 670, 0, 0, 670, 0, 670, 670,
2879 670, 670, 670, 670, 671, 671, 671, 0, 0, 671, 671, 671, 671, 671, 671,
2881 671, 671, 672, 672, 672, 0, 0, 672, 0, 0, 0, 672, 672, 672, 672, 0, 0, 0, 672, 754, 754, 754, 754,
2882 755, 755, 755, 755, 762, 762, 762, 762, 767, 767, 767, 767, 0, 672, 673, 673, 673, 0, 0, 673, 0,
2883 673, 673, 673, 673, 673, 673, 675, 675, 675, 0, 0, 675, 0, 675, 675, 675, 675, 675, 675, 676, 676,
2884 676, 0, 0, 676, 0, 676, 676, 676, 676, 676, 676, 677, 677, 677, 0, 0, 677, 677, 677, 677, 677,
2885 677, 677, 677, 680, 680, 680, 0, 0, 680, 680, 680, 680, 680, 680,
2887 680, 680, 681, 681, 681, 0, 0, 681, 0, 681, 681, 681, 681, 681, 681, 0, 0, 0, 681, 761, 761, 761,
2888 0, 0, 761, 768, 768, 768, 768, 775, 775, 775, 775, 0, 0, 761, 681, 682, 682, 682, 0, 0, 682, 682,
2889 682, 682, 682, 682, 682, 682, 683, 683, 683, 761, 0, 683, 0, 0, 0, 683, 683, 683, 683, 0, 0, 0,
2890 683, 774, 774, 774, 0, 0, 774, 780, 780, 780, 780, 780, 781, 781, 781, 781, 0, 774, 683, 685, 685,
2891 685, 0, 0, 685, 685, 685, 685, 685, 685, 685, 685, 693, 693,
2893 693, 774, 0, 693, 0, 693, 693, 693, 693, 693, 693, 694, 694, 694, 0, 0, 694, 0, 694, 694, 694,
2894 694, 694, 694, 696, 696, 696, 0, 0, 696, 0, 696, 696, 696, 696, 696, 696, 697, 697, 697, 0, 0,
2895 697, 0, 697, 697, 697, 697, 697, 697, 700, 700, 700, 0, 0, 700, 0, 0, 0, 700, 700, 700, 700, 701,
2896 701, 701, 0, 0, 701, 0, 701, 701, 701, 701, 701, 701, 702, 702, 702, 0, 0, 702, 0, 702, 702, 702,
2897 702, 702, 702, 707, 707, 707, 0, 0, 707, 0, 707, 707, 707, 707,
2899 707, 707, 708, 708, 708, 0, 0, 708, 0, 708, 708, 708, 708, 708, 708, 714, 714, 714, 0, 0, 714, 0,
2900 0, 0, 714, 714, 714, 714, 715, 715, 715, 0, 0, 715, 0, 715, 715, 715, 715, 715, 715, 716, 716,
2901 716, 0, 0, 716, 0, 716, 716, 716, 716, 716, 716, 717, 717, 717, 0, 0, 717, 0, 0, 717, 717, 717,
2902 717, 717, 0, 0, 0, 717, 789, 789, 789, 789, 0, 782, 782, 782, 782, 782, 938, 938, 938, 782, 0,
2903 938, 0, 717, 720, 720, 720, 0, 0, 720, 0, 0, 720, 720, 720,
2905 720, 720, 782, 0, 0, 720, 794, 794, 794, 794, 794, 795, 795, 795, 795, 803, 803, 803, 803, 804,
2906 804, 804, 804, 720, 721, 721, 721, 0, 0, 721, 0, 721, 721, 721, 721, 721, 721, 722, 722, 722, 0,
2907 0, 722, 0, 722, 722, 722, 722, 722, 722, 730, 730, 730, 0, 0, 730, 0, 730, 730, 730, 730, 730,
2908 730, 731, 731, 731, 0, 0, 731, 0, 731, 731, 731, 731, 731, 731, 732, 732, 732, 0, 0, 732, 0, 0,
2909 732, 732, 732, 732, 732, 0, 0, 0, 732, 810, 810, 810, 810, 810, 0, 0,
2911 0, 805, 805, 805, 805, 805, 0, 0, 0, 805, 732, 733, 733, 733, 0, 0, 733, 0, 733, 733, 733, 733,
2912 733, 733, 736, 736, 736, 805, 0, 736, 0, 0, 736, 736, 736, 736, 736, 0, 0, 0, 736, 811, 811, 811,
2913 811, 819, 819, 819, 819, 820, 820, 820, 820, 822, 822, 822, 822, 0, 736, 737, 737, 737, 0, 0, 737,
2914 0, 737, 737, 737, 737, 737, 737, 747, 747, 747, 0, 0, 747, 0, 0, 0, 747, 747, 747, 747, 748, 748,
2915 748, 0, 0, 748, 0, 748, 748, 748, 748, 748, 748, 749, 749,
2917 749, 0, 0, 749, 0, 749, 749, 749, 749, 749, 749, 750, 750, 750, 0, 0, 750, 0, 0, 750, 750, 750,
2918 750, 750, 0, 0, 0, 750, 827, 827, 827, 827, 828, 828, 828, 828, 821, 821, 821, 821, 821, 0, 0, 0,
2919 821, 750, 756, 756, 756, 0, 0, 756, 0, 756, 756, 756, 756, 756, 756, 757, 757, 757, 821, 0, 757,
2920 0, 757, 757, 757, 757, 757, 757, 759, 759, 759, 0, 0, 759, 0, 759, 759, 759, 759, 759, 759, 760,
2921 760, 760, 0, 0, 760, 0, 760, 760, 760, 760, 760, 760, 763, 763,
2923 763, 0, 0, 763, 0, 0, 0, 763, 763, 763, 763, 764, 764, 764, 0, 0, 764, 0, 764, 764, 764, 764, 764,
2924 764, 765, 765, 765, 0, 0, 765, 0, 765, 765, 765, 765, 765, 765, 769, 769, 769, 0, 0, 769, 0, 769,
2925 769, 769, 769, 769, 769, 770, 770, 770, 0, 0, 770, 0, 770, 770, 770, 770, 770, 770, 772, 772, 772,
2926 0, 0, 772, 0, 772, 772, 772, 772, 772, 772, 773, 773, 773, 0, 0, 773, 0, 773, 773, 773, 773, 773,
2927 773, 776, 776, 776, 0, 0, 776, 0, 0, 0, 776, 776,
2929 776, 776, 777, 777, 777, 0, 0, 777, 0, 777, 777, 777, 777, 777, 777, 778, 778, 778, 0, 0, 778, 0,
2930 778, 778, 778, 778, 778, 778, 783, 783, 783, 0, 0, 783, 0, 783, 783, 783, 783, 783, 783, 784, 784,
2931 784, 0, 0, 784, 0, 784, 784, 784, 784, 784, 784, 790, 790, 790, 0, 0, 790, 0, 0, 0, 790, 790, 790,
2932 790, 791, 791, 791, 0, 0, 791, 0, 791, 791, 791, 791, 791, 791, 792, 792, 792, 0, 0, 792, 0, 792,
2933 792, 792, 792, 792, 792, 793, 793, 793, 0, 0, 793, 0,
2935 0, 793, 793, 793, 793, 793, 0, 0, 0, 793, 830, 830, 830, 830, 0, 829, 829, 829, 829, 829, 939,
2936 939, 939, 829, 0, 939, 0, 793, 796, 796, 796, 0, 0, 796, 0, 0, 796, 796, 796, 796, 796, 829, 0, 0,
2937 796, 831, 831, 831, 831, 838, 838, 838, 838, 843, 843, 843, 0, 0, 843, 0, 0, 843, 796, 797, 797,
2938 797, 0, 0, 797, 0, 797, 797, 797, 797, 797, 797, 798, 798, 798, 0, 0, 798, 0, 798, 798, 798, 798,
2939 798, 798, 806, 806, 806, 0, 0, 806, 0, 806, 806, 806, 806,
2941 806, 806, 807, 807, 807, 0, 0, 807, 0, 807, 807, 807, 807, 807, 807, 808, 808, 808, 0, 0, 808, 0,
2942 0, 808, 808, 808, 808, 808, 0, 0, 0, 808, 837, 837, 837, 848, 848, 837, 848, 848, 848, 848, 865,
2943 865, 865, 865, 865, 0, 837, 808, 809, 809, 809, 0, 0, 809, 0, 809, 809, 809, 809, 809, 809, 812,
2944 812, 812, 837, 0, 812, 0, 0, 812, 812, 812, 812, 812, 0, 853, 853, 812, 853, 853, 853, 853, 867,
2945 867, 867, 867, 867, 847, 847, 847, 847, 0, 0, 0, 847, 812, 813, 813,
2947 813, 0, 0, 813, 0, 813, 813, 813, 813, 813, 813, 823, 823, 823, 847, 0, 823, 0, 0, 0, 823, 823,
2948 823, 823, 824, 824, 824, 0, 0, 824, 0, 824, 824, 824, 824, 824, 824, 825, 825, 825, 0, 0, 825, 0,
2949 825, 825, 825, 825, 825, 825, 826, 826, 826, 0, 0, 826, 0, 0, 826, 826, 826, 826, 826, 0, 858,
2950 858, 826, 858, 858, 858, 858, 870, 870, 870, 870, 870, 862, 862, 862, 862, 0, 0, 0, 862, 826, 832,
2951 832, 832, 0, 0, 832, 0, 832, 832, 832, 832, 832, 832, 833, 833,
2953 833, 862, 0, 833, 0, 833, 833, 833, 833, 833, 833, 835, 835, 835, 0, 0, 835, 0, 835, 835, 835,
2954 835, 835, 835, 836, 836, 836, 0, 0, 836, 0, 836, 836, 836, 836, 836, 836, 839, 839, 839, 0, 0,
2955 839, 0, 0, 0, 839, 839, 839, 839, 840, 840, 840, 0, 0, 840, 0, 840, 840, 840, 840, 840, 840, 841,
2956 841, 841, 0, 0, 841, 0, 841, 841, 841, 841, 841, 841, 849, 849, 849, 0, 0, 849, 849, 849, 849,
2957 849, 849, 849, 849, 850, 850, 850, 0, 0, 850, 0, 850, 850, 850, 850,
2959 850, 850, 0, 863, 863, 850, 863, 863, 863, 863, 864, 864, 0, 864, 864, 864, 864, 872, 872, 872,
2960 872, 872, 0, 850, 851, 851, 851, 0, 0, 851, 851, 851, 851, 851, 851, 851, 851, 852, 852, 852, 0,
2961 0, 852, 0, 0, 0, 852, 852, 852, 852, 0, 866, 866, 852, 866, 866, 866, 866, 868, 868, 0, 868, 868,
2962 868, 868, 875, 875, 875, 875, 875, 0, 852, 854, 854, 854, 0, 0, 854, 854, 854, 854, 854, 854, 854,
2963 854, 855, 855, 855, 0, 0, 855, 0, 855, 855, 855, 855, 855, 855, 0, 869,
2965 869, 855, 869, 869, 869, 869, 871, 871, 0, 871, 871, 871, 871, 880, 880, 880, 880, 0, 0, 855, 856,
2966 856, 856, 0, 0, 856, 856, 856, 856, 856, 856, 856, 856, 857, 857, 857, 0, 0, 857, 0, 0, 0, 857,
2967 857, 857, 857, 0, 873, 873, 857, 873, 873, 873, 873, 874, 874, 0, 874, 874, 874, 874, 881, 881,
2968 881, 881, 0, 0, 857, 859, 859, 859, 0, 0, 859, 859, 859, 859, 859, 859, 859, 859, 860, 860, 860,
2969 0, 0, 860, 0, 860, 860, 860, 860, 860, 860, 0, 876, 876, 860, 876, 876,
2971 876, 876, 877, 877, 877, 0, 0, 877, 940, 940, 940, 877, 0, 940, 0, 860, 861, 861, 861, 0, 0, 861,
2972 861, 861, 861, 861, 861, 861, 861, 882, 882, 882, 0, 0, 882, 0, 882, 882, 882, 882, 882, 882, 887,
2973 887, 887, 0, 0, 887, 887, 887, 888, 888, 888, 888, 896, 896, 896, 896, 887, 904, 904, 904, 904,
2974 905, 905, 905, 905, 906, 906, 906, 906, 907, 907, 907, 907, 0, 887, 889, 889, 889, 0, 0, 889, 0,
2975 0, 0, 889, 889, 889, 889, 890, 890, 890, 0, 0, 890, 0, 890, 890, 890,
2977 890, 890, 890, 895, 895, 895, 0, 0, 895, 895, 895, 908, 908, 908, 908, 0, 0, 0, 908, 895, 909,
2978 909, 909, 909, 910, 910, 910, 910, 912, 912, 912, 912, 914, 914, 914, 914, 908, 895, 897, 897,
2979 897, 0, 0, 897, 0, 0, 0, 897, 897, 897, 897, 898, 898, 898, 0, 0, 898, 0, 898, 898, 898, 898, 898,
2980 898, 903, 903, 903, 0, 0, 903, 903, 903, 0, 911, 911, 911, 911, 911, 0, 0, 903, 911, 915, 915,
2981 915, 915, 0, 0, 916, 916, 916, 916, 936, 936, 936, 916, 0, 936, 903, 911,
2983 913, 913, 913, 0, 0, 913, 0, 0, 0, 913, 913, 913, 913, 916, 917, 917, 917, 917, 918, 918, 918,
2984 918, 919, 919, 919, 919, 919, 936, 0, 0, 919, 920, 920, 920, 920, 921, 921, 921, 921, 922, 922,
2985 922, 922, 923, 923, 923, 923, 0, 919, 924, 924, 924, 924, 0, 0, 0, 924, 925, 925, 925, 925, 926,
2986 926, 926, 926, 927, 927, 927, 927, 927, 931, 931, 931, 927, 924, 931, 934, 934, 934, 0, 941, 934,
2987 941, 0, 0, 941, 0, 942, 942, 942, 0, 927, 942, 943, 944, 943, 944, 0, 943, 944,
2989 945, 946, 945, 946, 0, 945, 946, 947, 0, 947, 0, 0, 947, 931, 0, 0, 0, 0, 934, 949, 949, 949, 949,
2990 949, 949, 949, 949, 950, 950, 950, 950, 950, 950, 950, 950, 951, 951, 951, 951, 951, 951, 951,
2991 951, 952, 952, 952, 952, 952, 952, 952, 952, 953, 953, 953, 953, 953, 953, 953, 953, 954, 0, 0,
2992 954, 955, 0, 0, 955, 0, 955, 955, 955, 956, 956, 956, 956, 956, 956, 956, 956, 957, 0, 0, 957, 0,
2993 957, 957, 958, 958, 958, 958, 958, 958, 958, 958, 959, 959, 0, 959, 0, 959,
2995 959, 959, 960, 960, 960, 960, 960, 960, 960, 960, 961, 961, 0, 961, 961, 961, 961, 961, 962, 962,
2996 962, 962, 962, 962, 962, 962, 963, 963, 963, 963, 963, 963, 963, 963, 964, 964, 0, 0, 964, 964,
2997 966, 966, 966, 966, 966, 966, 966, 966, 967, 967, 967, 967, 967, 967, 967, 967, 968, 968, 968,
2998 968, 968, 968, 968, 968, 969, 969, 969, 969, 969, 969, 969, 969, 971, 971, 971, 971, 971, 971,
2999 971, 971, 972, 972, 972, 972, 972, 972, 972, 972, 973, 973, 973, 973, 973, 973, 973, 973, 974,
3002 0, 974, 974, 974, 975, 975, 975, 975, 975, 975, 975, 975, 977, 977, 0, 977, 977, 977, 977, 977,
3003 978, 978, 978, 978, 978, 978, 978, 978, 979, 0, 0, 979, 980, 980, 980, 980, 980, 980, 980, 980,
3004 981, 981, 981, 981, 981, 981, 981, 981, 982, 982, 0, 0, 982, 982, 984, 984, 984, 984, 984, 984,
3005 984, 984, 986, 986, 986, 986, 986, 986, 986, 986, 987, 987, 987, 987, 987, 987, 987, 987, 989,
3006 989, 989, 989, 989, 989, 989, 989, 990, 990, 990, 990, 990, 990, 990, 990, 991, 991, 991, 991,
3009 991, 991, 992, 992, 992, 992, 992, 992, 992, 992, 993, 993, 993, 993, 993, 993, 993, 993, 994,
3010 994, 994, 994, 994, 994, 994, 994, 995, 995, 995, 995, 995, 995, 995, 995, 996, 996, 996, 996,
3011 996, 996, 996, 996, 997, 997, 997, 997, 997, 997, 997, 997, 998, 998, 998, 998, 998, 998, 998,
3012 998, 999, 999, 999, 999, 999, 999, 999, 999, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1001,
3013 1001, 1001, 1001, 1001, 1001, 1001, 1001, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1002, 1003,
3014 1003, 1003, 1003, 1003, 1003, 1003, 1003, 1004, 1004,
3016 1004, 1004, 1004, 1004, 1004, 1004, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1006, 0, 0,
3017 1006, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1008, 1008, 1008, 1008, 1008, 1008, 1008,
3018 1008, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1009, 1011, 1011, 1011, 1011, 1011, 1011, 1011,
3019 1011, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1013, 1013, 1013, 1013, 1013, 1013, 1013,
3020 1013, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1015, 1015, 1015, 1015, 1015, 1015, 1015,
3021 1015, 1016, 1016, 1016, 1016, 1016, 1016, 1016, 1016, 1017, 1017, 1017, 1017, 1017, 1017, 1017,
3024 1018, 1018, 1018, 1018, 1018, 1018, 1019, 1019, 1019, 1019, 1019, 1019, 1019, 1019, 1020, 1020,
3025 1020, 1020, 1020, 1020, 1020, 1020, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1022, 1022,
3026 1022, 1022, 1022, 1022, 1022, 1022, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1024, 1024,
3027 1024, 1024, 1024, 1024, 1024, 1024, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1026, 1026,
3028 1026, 1026, 1026, 1026, 1026, 1026, 1027, 1027, 1027, 1027, 1027, 1027, 1027, 1027, 1028, 1028,
3029 1028, 1028, 1028, 1028, 1028, 1028, 1029, 0, 0, 1029, 1030, 1030, 1030, 1030, 1030, 1030, 1030,
3032 1031, 1031, 1031, 1031, 1031, 1031, 1032, 1032, 1032, 1032, 1032, 1032, 1032, 1032, 1033, 1033,
3033 1033, 1033, 1033, 1033, 1033, 1033, 1034, 1034, 1034, 1034, 1034, 1034, 1034, 1034, 1035, 1035,
3034 1035, 1035, 1035, 1035, 1035, 1035, 1036, 1036, 1036, 1036, 1036, 1036, 1036, 1036, 1037, 1037,
3035 1037, 1037, 1037, 1037, 1037, 1037, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1039, 1039,
3036 1039, 1039, 1039, 1039, 1039, 1039, 1040, 1040, 1040, 1040, 1040, 1040, 1040, 1040, 1041, 1041,
3037 1041, 1041, 1041, 1041, 1041, 1041, 1042, 1042, 1042, 1042, 1042, 1042, 1042, 1042, 1043, 1043,
3038 1043, 1043, 1043, 1043,
3040 1043, 1043, 1044, 1044, 1044, 1044, 1044, 1044, 1044, 1044, 1045, 1045, 1045, 1045, 1045, 1045,
3041 1045, 1045, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1047, 1047, 1047, 1047, 1047, 1047,
3042 1047, 1047, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1049, 1049, 1049, 1049, 1049, 1049,
3043 1049, 1049, 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1051, 1051, 1051, 1051, 1051, 1051,
3044 1051, 1051, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1053, 1053, 1053, 1053, 1053, 1053,
3045 1053, 1053, 1054, 1054, 1054, 1054, 1054, 1054, 1054, 1054, 1055, 0, 0, 1055, 1056, 1056, 1056,
3048 1056, 1056, 1057, 1057, 1057, 1057, 1057, 1057, 1057, 1057, 1058, 1058, 1058, 1058, 1058, 1058,
3049 1058, 1058, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1060, 1060, 1060, 1060, 1060, 1060,
3050 1060, 1060, 1061, 1061, 1061, 1061, 1061, 1061, 1061, 1061, 1062, 1062, 1062, 1062, 1062, 1062,
3051 1062, 1062, 1063, 1063, 1063, 1063, 1063, 1063, 1063, 1063, 1064, 1064, 1064, 1064, 1064, 1064,
3052 1064, 1064, 1065, 1065, 1065, 1065, 1065, 1065, 1065, 1065, 1066, 1066, 1066, 1066, 1066, 1066,
3053 1066, 1066, 1067, 1067, 1067, 1067, 1067, 1067, 1067, 1067, 1068, 1068, 1068, 1068, 1068, 1068,
3054 1068, 1068, 1069, 1069,
3056 1069, 1069, 1069, 1069, 1069, 1069, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1071, 1071,
3057 1071, 1071, 1071, 1071, 1071, 1071, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1073, 1073,
3058 1073, 1073, 1073, 1073, 1073, 1073, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1075, 1075,
3059 1075, 1075, 1075, 1075, 1075, 1075, 1076, 1076, 1076, 1076, 1076, 1076, 1076, 1076, 1077, 1077,
3060 1077, 1077, 1077, 1077, 1077, 1077, 1078, 1078, 1078, 1078, 1078, 1078, 1078, 1078, 1079, 1079,
3061 1079, 1079, 1079, 1079, 1079, 1079, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1081, 0, 0,
3064 1082, 1082, 1082, 1082, 1082, 1082, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1083, 1084, 1084,
3065 1084, 1084, 1084, 1084, 1084, 1084, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1085, 1086, 1086,
3066 1086, 1086, 1086, 1086, 1086, 1086, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1088, 1088,
3067 1088, 1088, 1088, 1088, 1088, 1088, 1089, 1089, 0, 1089, 1089, 1089, 1089, 1089, 948, 948, 948,
3068 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948,
3069 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948, 948,
3071 948, 948, 948, 948, 948, 948, 948, 948, 948, 948 };
3079static const short int yy_rule_linenum[49] = { 0, 122, 127, 128, 129, 130, 131, 132, 133, 134, 135,
3080 136, 137, 138, 141, 145, 149, 157, 160, 164, 169, 177, 178, 180, 184, 195, 199, 205, 206, 211,
3081 220, 234, 235, 240, 249, 260, 263, 264, 266, 270, 274, 279, 281, 282, 289, 295, 302, 305, 309 };
3086#define REJECT reject_used_but_not_detected
3087#define yymore() yymore_used_but_not_detected
3088#define YY_MORE_ADJ 0
3104#define YY_INPUT(buf, result, max_size) (*theyyInput)(buf, result, max_size, this)
3126VTK_ABI_NAMESPACE_BEGIN
3132VTK_ABI_NAMESPACE_END
3153#ifdef YY_MALLOC_DECL
3169#ifndef YY_READ_BUF_SIZE
3170#define YY_READ_BUF_SIZE 8192
3179#define ECHO (void)fwrite(yytext, yyleng, 1, yyout)
3186#define YY_INPUT(buf, result, max_size) \
3187 if (yy_current_buffer->yy_is_interactive) \
3189 int c = getc(yyin); \
3190 result = c == EOF ? 0 : 1; \
3193 else if (((result = fread(buf, 1, max_size, yyin)) == 0) && ferror(yyin)) \
3194 YY_FATAL_ERROR("input in flex scanner failed")
3202#define yyterminate() return YY_NULL
3206#ifndef YY_START_STACK_INCR
3207#define YY_START_STACK_INCR 25
3211#ifndef YY_FATAL_ERROR
3212#define YY_FATAL_ERROR(msg) yy_fatal_error(msg)
3219#define YY_DECL int yylex(vtkVRMLImporter* self)
3225#ifndef YY_USER_ACTION
3226#define YY_USER_ACTION
3231#define YY_BREAK break;
3234VTK_ABI_NAMESPACE_BEGIN
3238 char *yy_cp, *yy_bp;
3247 vtk::print(stderr,
"LEX--> Start State {:d}\n",
expectToken);
3321 yyerror(
"ACK: Bad expectToken");
3376 while (
yy_chk[
yy_base[yy_current_state] + yy_c] != yy_current_state)
3378 yy_current_state = (int)
yy_def[yy_current_state];
3379 if (yy_current_state >= 949)
3380 yy_c =
yy_meta[(
unsigned int)yy_c];
3382 yy_current_state =
yy_nxt[
yy_base[yy_current_state] + (
unsigned int)yy_c];
3384 }
while (
yy_base[yy_current_state] != 7663);
3396 vtk::print(stderr,
"--scanner backing up\n");
3397 else if (yy_act < 49)
3400 else if (yy_act == 49)
3401 vtk::print(stderr,
"--accepting default rule (\"{:s}\")\n",
yytext);
3402 else if (yy_act == 50)
3403 vtk::print(stderr,
"--(end of buffer or a NUL)\n");
3405 vtk::print(stderr,
"--EOF (start condition {:d})\n",
YY_START);
3415 goto yy_find_action;
3519 yylval.vec2f = self->FloatArrayNew();
3520 yylval.vec2f->SetNumberOfComponents(2);
3529 yylval.mfint32 = self->IdTypeArrayNew();
3538 yylval.vec3f = self->PointsNew();
3550 return tokenFieldType;
3583 yylval.mfint32->InsertNextValue(num);
3599 yylval.sffloat = vtk::scan_value<float>(std::string_view(
yytext))->value();
3630 num[0] = vtk::scan_value<float>(std::string_view(strtok(
yytext,
" \t")))->value();
3631 num[1] = vtk::scan_value<float>(std::string_view(strtok(
nullptr,
" \t")))->value();
3633 yylval.vec2f->InsertNextTuple(num);
3649 yylval.vec3f = self->PointsNew();
3650 num[0] = vtk::scan_value<float>(std::string_view(strtok(
yytext,
" \t")))->value();
3651 num[1] = vtk::scan_value<float>(std::string_view(strtok(
nullptr,
" \t")))->value();
3652 num[2] = vtk::scan_value<float>(std::string_view(strtok(
nullptr,
" \t")))->value();
3654 yylval.vec3f->InsertPoint(0, num);
3663 num[0] = vtk::scan_value<float>(std::string_view(strtok(
yytext,
" \t")))->value();
3664 num[1] = vtk::scan_value<float>(std::string_view(strtok(
nullptr,
" \t")))->value();
3665 num[2] = vtk::scan_value<float>(std::string_view(strtok(
nullptr,
" \t")))->value();
3667 yylval.vec3f->InsertNextPoint(num);
3684 vtk::scan_value<float>(std::string_view(strtok(
yytext,
" \t")))->value();
3686 vtk::scan_value<float>(std::string_view(strtok(
nullptr,
" \t")))->value();
3688 vtk::scan_value<float>(std::string_view(strtok(
nullptr,
" \t")))->value();
3690 vtk::scan_value<float>(std::string_view(strtok(
nullptr,
" \t")))->value();
3712 yylval.vec3f = self->PointsNew();
3713 num[0] = vtk::scan_value<float>(std::string_view(strtok(
yytext,
" \t")))->value();
3714 num[1] = vtk::scan_value<float>(std::string_view(strtok(
nullptr,
" \t")))->value();
3715 num[2] = vtk::scan_value<float>(std::string_view(strtok(
nullptr,
" \t")))->value();
3717 yylval.vec3f->InsertPoint(0, num);
3726 num[0] = vtk::scan_value<float>(std::string_view(strtok(
yytext,
" \t")))->value();
3727 num[1] = vtk::scan_value<float>(std::string_view(strtok(
nullptr,
" \t")))->value();
3728 num[2] = vtk::scan_value<float>(std::string_view(strtok(
nullptr,
" \t")))->value();
3729 yylval.vec3f->InsertNextPoint(num);
3763 yyerror(
"String missing open-quote");
3772 yyerror(
"String missing open-quote");
3814 auto result = vtk::scan<int, int>(std::string_view(
yytext),
"{:d} {:d}");
3815 std::tie(w,
h) = result->values();
3883 int yy_amount_of_matched_text = yy_cp -
yytext_ptr - 1;
3936 yy_current_state = yy_next_state;
3943 goto yy_find_action;
3995 goto yy_find_action;
4001 YY_FATAL_ERROR(
"fatal flex scanner internal error--no action found");
4018 int number_to_move, i;
4022 YY_FATAL_ERROR(
"fatal flex scanner internal error--end of buffer missed");
4048 for (i = 0; i < number_to_move; ++i)
4061 while (num_to_read <= 0)
4063#ifdef YY_USES_REJECT
4064 YY_FATAL_ERROR(
"input buffer overflow, can't enlarge buffer because scanner uses REJECT");
4141 while (
yy_chk[
yy_base[yy_current_state] + yy_c] != yy_current_state)
4143 yy_current_state = (int)
yy_def[yy_current_state];
4144 if (yy_current_state >= 949)
4145 yy_c =
yy_meta[(
unsigned int)yy_c];
4147 yy_current_state =
yy_nxt[
yy_base[yy_current_state] + (
unsigned int)yy_c];
4150 return yy_current_state;
4171 while (
yy_chk[
yy_base[yy_current_state] + yy_c] != yy_current_state)
4173 yy_current_state = (int)
yy_def[yy_current_state];
4174 if (yy_current_state >= 949)
4175 yy_c =
yy_meta[(
unsigned int)yy_c];
4177 yy_current_state =
yy_nxt[
yy_base[yy_current_state] + (
unsigned int)yy_c];
4178 yy_is_jam = (yy_current_state == 948);
4180 return yy_is_jam ? 0 : yy_current_state;
4286 vtk::print(stderr,
"{:s}\n", msg);
4297 yytext[yyleng] = yy_hold_char; \
4298 yy_c_buf_p = yytext + n - YY_MORE_ADJ; \
4299 yy_hold_char = *yy_c_buf_p; \
4300 *yy_c_buf_p = '\0'; \
4308static void yy_flex_strncpy(
char* s1,
const char*
s2,
int n)
4310static void yy_flex_strncpy(s1,
s2, n)
char* s1;
4316 for (i = 0; i < n; ++i)
4323 return malloc(size);
4328 return realloc(ptr, size);
4342 result =
static_cast<int>(strlen(strncpy(buf, standardNodes[self->
memyyInput_i], max_size)));
4355 int c = getc(self->
yyin);
4356 result = c == EOF ? 0 : 1;
4359 else if (((result =
static_cast<int>(fread(buf, 1, max_size, self->
yyin))) == 0) &&
4366VTK_ABI_NAMESPACE_END
int hasEventOut(const char *name) const
const char * getName() const
void addField(const char *name, int type)
void addExposedField(const char *name, int type)
void addEventIn(const char *name, int type)
int hasEventIn(const char *name) const
int hasField(const char *name) const
void addEventOut(const char *name, int type)
VrmlNodeType(const char *nm)
int hasExposedField(const char *name) const
dynamic, self-adjusting array of float
dynamic, self-adjusting array of vtkIdType
abstract base class for most VTK objects
represent and manipulate 3D points
Computes the portion of a dataset which is inside a selection.
virtual void useNode(const char *)
Needed by the yacc/lex grammar used.
virtual void exitNode()
Needed by the yacc/lex grammar used.
virtual void enterField(const char *)
Needed by the yacc/lex grammar used.
virtual void enterNode(const char *)
Needed by the yacc/lex grammar used.
virtual void exitField()
Needed by the yacc/lex grammar used.
vtkVRMLUseStruct(char *n, vtkObject *o)
std::list< void * > list_type
void * Allocate(size_t size)
int yyparse(vtkVRMLImporter *self)
void yyerror(const char *)
vtkVRMLVectorType< VrmlNodeType::FieldRec * > * currentField
yy_state_type yy_last_accepting_state
struct yy_buffer_state * YY_BUFFER_STATE
yy_state_type yy_get_previous_state()
void beginProto(const char *)
char * yy_last_accepting_cpos
void(* theyyInput)(char *, int &, int, vtkVRMLYaccData *)
yy_state_type yy_try_NUL_trans(yy_state_type current_state)
struct vtkVRMLYaccData::yyltype yyltype
YY_BUFFER_STATE yy_create_buffer(FILE *file, int size)
void * yy_flex_alloc(unsigned int)
void yyrestart(FILE *input_file)
int addField(const char *type, const char *name)
vtkVRMLVectorType< VrmlNodeType * > * CurrentProtoStack
static void memyyInput(char *buf, int &result, int max_size, vtkVRMLYaccData *self)
void yy_flex_free(void *)
void yy_load_buffer_state()
int add(void(VrmlNodeType::*)(const char *, int), const char *, const char *)
vtkVRMLVectorType< vtkVRMLUseStruct * > * useList
int addEventOut(const char *type, const char *name)
int addExposedField(const char *type, const char *name)
void yy_init_buffer(YY_BUFFER_STATE b, FILE *file)
void yy_delete_buffer(YY_BUFFER_STATE b)
vtkVRMLVectorType< VrmlNodeType * > * typeList
YY_BUFFER_STATE yy_current_buffer
void addToNameSpace(VrmlNodeType *)
int addEventIn(const char *type, const char *name)
int yy_did_buffer_switch_on_eof
static void defyyInput(char *buf, int &result, int max_size, vtkVRMLYaccData *self)
void yy_fatal_error(const char msg[])
int yylex(vtkVRMLImporter *self)
const VrmlNodeType * find(const char *nm)
void * yy_flex_realloc(void *, unsigned int)
int fieldType(const char *type)
void yy_switch_to_buffer(YY_BUFFER_STATE new_buffer)
const VrmlNodeType * nodeType
YY_BUFFER_STATUS_STATE yy_buffer_status
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
Optimized C++ utilities for scanning values from strings and files.
#define VTK_FROM_CHARS_IF_ERROR_BREAK(string, value)
static const short yycheck[]
static const short int yy_accept[949]
static const int yy_ec[256]
static const char yytranslate[]
static const short yydefgoto[]
static const short int yy_base[1090]
static void yy_memcpy(char *from, char *to, int count)
static const int yy_meta[48]
#define EOB_ACT_END_OF_FILE
static const short yytable[]
static const short yypact[]
static const short yypgoto[]
static const short yyr1[]
static const short yydefact[]
#define YY_INPUT(buf, result, max_size)
static const short yyr2[]
static const short int yy_def[1090]
#define YY_STATE_EOF(state)
#define YY_END_OF_BUFFER_CHAR
static const short int yy_nxt[7711]
#define YY_FATAL_ERROR(msg)
#define YY_DO_BEFORE_ACTION
#define EOB_ACT_LAST_MATCH
#define EOB_ACT_CONTINUE_SCAN
static const short int yy_chk[7711]
static const short int yy_rule_linenum[49]