diff --git a/Common/Views.cpp b/Common/Views.cpp index 8a00a0c1386208f396e727daf0d08e93f1bd0021..49a0b9ad8ee21ba0e53e82254d2a2e53ae4b806e 100644 --- a/Common/Views.cpp +++ b/Common/Views.cpp @@ -1,4 +1,4 @@ -/* $Id: Views.cpp,v 1.12 2000-11-27 18:59:28 geuzaine Exp $ */ +/* $Id: Views.cpp,v 1.13 2000-12-07 00:55:16 geuzaine Exp $ */ #include "Gmsh.h" #include "Views.h" @@ -331,6 +331,142 @@ void CopyViewOptions(Post_View *src, Post_View *dest){ ColorTable_Paste(&dest->CT); } +char **Get_StringViewOption(int num, char *str, int *type){ + Post_View *v; + + if(num < 0 || num >= List_Nbr(Post_ViewList)){ + *type = -1 ; + return NULL ; + } + v = (Post_View*)List_Pointer(Post_ViewList, num); + + if(!strcmp(str, "Format")){ + return (char**)&v->Format ; + } + else if(!strcmp(str, "FileName")){ + return (char**)&v->FileName ; + } + else if(!strcmp(str, "Name")){ + return (char**)&v->FileName ; + } + else{ + return NULL ; + } +} + +void *Get_NumberViewOption(int num, char *str, int *type){ + Post_View *v; + + if(num < 0 || num >= List_Nbr(Post_ViewList)){ + *type = -1 ; + return NULL ; + } + v = (Post_View*)List_Pointer(Post_ViewList, num); + + if(!strcmp(str, "NbTimeStep")){ + *type = GMSH_INT ; + return (void*)&v->NbTimeStep ; + } + else if(!strcmp(str, "Min")){ + *type = GMSH_DOUBLE ; + return (void*)&v->Min ; + } + else if(!strcmp(str, "Max")){ + *type = GMSH_DOUBLE ; + return (void*)&v->Max ; + } + else if(!strcmp(str, "CustomMin")){ + *type = GMSH_DOUBLE ; + return (void*)&v->CustomMin ; + } + else if(!strcmp(str, "CustomMin")){ + *type = GMSH_DOUBLE ; + return (void*)&v->CustomMax ; + } + else if(!strcmp(str, "ArrowScale")){ + *type = GMSH_DOUBLE ; + return (void*)&v->ArrowScale ; + } + else if(!strcmp(str, "Visible")){ + *type = GMSH_INT ; + return (void*)&v->Visible ; + } + else if(!strcmp(str, "IntervalsType")){ + *type = GMSH_INT ; + return (void*)&v->IntervalsType ; + } + else if(!strcmp(str, "NbIso")){ + *type = GMSH_INT ; + return (void*)&v->NbIso ; + } + else if(!strcmp(str, "Light")){ + *type = GMSH_INT ; + return (void*)&v->Light ; + } + else if(!strcmp(str, "ShowElement")){ + *type = GMSH_INT ; + return (void*)&v->ShowElement ; + } + else if(!strcmp(str, "ShowTime")){ + *type = GMSH_INT ; + return (void*)&v->ShowElement ; + } + else if(!strcmp(str, "ShowScale")){ + *type = GMSH_INT ; + return (void*)&v->ShowElement ; + } + else if(!strcmp(str, "TransparentScale")){ + *type = GMSH_INT ; + return (void*)&v->TransparentScale ; + } + else if(!strcmp(str, "ScaleType")){ + *type = GMSH_INT ; + return (void*)&v->ScaleType ; + } + else if(!strcmp(str, "RangeType")){ + *type = GMSH_INT ; + return (void*)&v->RangeType ; + } + else if(!strcmp(str, "ArrowType")){ + *type = GMSH_INT ; + return (void*)&v->ArrowType ; + } + else if(!strcmp(str, "ArrowLocation")){ + *type = GMSH_INT ; + return (void*)&v->ArrowLocation ; + } + else if(!strcmp(str, "TimeStep")){ + *type = GMSH_INT ; + return (void*)&v->TimeStep ; + } + else{ + return NULL ; + } +} + +void *Get_ArrayViewOption(int num, char *str, int *type){ + Post_View *v; + + if(num < 0 || num >= List_Nbr(Post_ViewList)){ + *type = -1 ; + return NULL ; + } + v = (Post_View*)List_Pointer(Post_ViewList, num); + + if(!strcmp(str, "Offset")){ + *type = GMSH_DOUBLE ; + return (void*)v->Offset ; + } + else if(!strcmp(str, "Raise")){ + *type = GMSH_DOUBLE ; + return (void*)v->Raise ; + } + else{ + return NULL ; + } +} + + /* ------------------------------------------------------------------------ */ /* R e a d _ V i e w */ /* ------------------------------------------------------------------------ */ diff --git a/Common/Views.h b/Common/Views.h index 619f9d1d857fb287d06a70c9dac6b8b534d0de6a..a5456c031308062b1d99cc16ba371326b4b847c7 100644 --- a/Common/Views.h +++ b/Common/Views.h @@ -1,4 +1,4 @@ -/* $Id: Views.h,v 1.10 2000-11-27 18:59:28 geuzaine Exp $ */ +/* $Id: Views.h,v 1.11 2000-12-07 00:55:16 geuzaine Exp $ */ #ifndef _VIEWS_H_ #define _VIEWS_H_ @@ -82,4 +82,8 @@ int CreateBGM(Post_View *ErrView, int OptiMethod, double Degree, double OptiValue, double *ObjFunct, char *OutFile); double ErrorInView(Post_View * ErrView, int *n); +char **Get_StringViewOption(int num, char *str, int *type); +void *Get_NumberViewOption(int num, char *str, int *type); +void *Get_ArrayViewOption(int num, char *str, int *type); + #endif diff --git a/Parser/Gmsh.l b/Parser/Gmsh.l index f1e646a530932be3176babcb191cb3c374acdbc7..be16cf5a4b2acd57f2cdb7b4c62a1655ac770f80 100644 --- a/Parser/Gmsh.l +++ b/Parser/Gmsh.l @@ -1,4 +1,4 @@ -%{ /* $Id: Gmsh.l,v 1.10 2000-12-06 22:36:44 geuzaine Exp $ */ +%{ /* $Id: Gmsh.l,v 1.11 2000-12-07 00:55:16 geuzaine Exp $ */ #include <stdio.h> #include <stdlib.h> @@ -141,7 +141,6 @@ Modulo return tModulo ; Nurbs return tNurbs; -Offset return tOffset; Order return tOrder; Options return tOptions; diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index b9421f588776146082cff39235d97364fbd01d8b..fe3b590502c145f7ca17cf88124960f15b813c84 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -63,105 +63,104 @@ #define tDelete 313 #define tCoherence 314 #define tView 315 -#define tOffset 316 -#define tAttractor 317 -#define tLayers 318 -#define tScalarTetrahedron 319 -#define tVectorTetrahedron 320 -#define tTensorTetrahedron 321 -#define tScalarTriangle 322 -#define tVectorTriangle 323 -#define tTensorTriangle 324 -#define tScalarLine 325 -#define tVectorLine 326 -#define tTensorLine 327 -#define tScalarPoint 328 -#define tVectorPoint 329 -#define tTensorPoint 330 -#define tBSpline 331 -#define tNurbs 332 -#define tOrder 333 -#define tWith 334 -#define tBounds 335 -#define tKnots 336 -#define tColor 337 -#define tOptions 338 -#define tFor 339 -#define tEndFor 340 -#define tScript 341 -#define tExit 342 -#define tMerge 343 -#define tB_SPLINE_SURFACE_WITH_KNOTS 344 -#define tB_SPLINE_CURVE_WITH_KNOTS 345 -#define tCARTESIAN_POINT 346 -#define tTRUE 347 -#define tFALSE 348 -#define tUNSPECIFIED 349 -#define tU 350 -#define tV 351 -#define tEDGE_CURVE 352 -#define tVERTEX_POINT 353 -#define tORIENTED_EDGE 354 -#define tPLANE 355 -#define tFACE_OUTER_BOUND 356 -#define tEDGE_LOOP 357 -#define tADVANCED_FACE 358 -#define tVECTOR 359 -#define tDIRECTION 360 -#define tAXIS2_PLACEMENT_3D 361 -#define tISO 362 -#define tENDISO 363 -#define tENDSEC 364 -#define tDATA 365 -#define tHEADER 366 -#define tFILE_DESCRIPTION 367 -#define tFILE_SCHEMA 368 -#define tFILE_NAME 369 -#define tMANIFOLD_SOLID_BREP 370 -#define tCLOSED_SHELL 371 -#define tADVANCED_BREP_SHAPE_REPRESENTATION 372 -#define tFACE_BOUND 373 -#define tCYLINDRICAL_SURFACE 374 -#define tCONICAL_SURFACE 375 -#define tCIRCLE 376 -#define tTRIMMED_CURVE 377 -#define tGEOMETRIC_SET 378 -#define tCOMPOSITE_CURVE_SEGMENT 379 -#define tCONTINUOUS 380 -#define tCOMPOSITE_CURVE 381 -#define tTOROIDAL_SURFACE 382 -#define tPRODUCT_DEFINITION 383 -#define tPRODUCT_DEFINITION_SHAPE 384 -#define tSHAPE_DEFINITION_REPRESENTATION 385 -#define tELLIPSE 386 -#define tTrimmed 387 -#define tSolid 388 -#define tEndSolid 389 -#define tVertex 390 -#define tFacet 391 -#define tNormal 392 -#define tOuter 393 -#define tLoopSTL 394 -#define tEndLoop 395 -#define tEndFacet 396 -#define tAFFECTPLUS 397 -#define tAFFECTMINUS 398 -#define tAFFECTTIMES 399 -#define tAFFECTDIVIDE 400 -#define tAND 401 -#define tOR 402 -#define tNOTEQUAL 403 -#define tEQUAL 404 -#define tAPPROXEQUAL 405 -#define tLESSOREQUAL 406 -#define tGREATEROREQUAL 407 -#define tCROSSPRODUCT 408 -#define UNARYPREC 409 -#define tPLUSPLUS 410 -#define tMINUSMINUS 411 +#define tAttractor 316 +#define tLayers 317 +#define tScalarTetrahedron 318 +#define tVectorTetrahedron 319 +#define tTensorTetrahedron 320 +#define tScalarTriangle 321 +#define tVectorTriangle 322 +#define tTensorTriangle 323 +#define tScalarLine 324 +#define tVectorLine 325 +#define tTensorLine 326 +#define tScalarPoint 327 +#define tVectorPoint 328 +#define tTensorPoint 329 +#define tBSpline 330 +#define tNurbs 331 +#define tOrder 332 +#define tWith 333 +#define tBounds 334 +#define tKnots 335 +#define tColor 336 +#define tOptions 337 +#define tFor 338 +#define tEndFor 339 +#define tScript 340 +#define tExit 341 +#define tMerge 342 +#define tB_SPLINE_SURFACE_WITH_KNOTS 343 +#define tB_SPLINE_CURVE_WITH_KNOTS 344 +#define tCARTESIAN_POINT 345 +#define tTRUE 346 +#define tFALSE 347 +#define tUNSPECIFIED 348 +#define tU 349 +#define tV 350 +#define tEDGE_CURVE 351 +#define tVERTEX_POINT 352 +#define tORIENTED_EDGE 353 +#define tPLANE 354 +#define tFACE_OUTER_BOUND 355 +#define tEDGE_LOOP 356 +#define tADVANCED_FACE 357 +#define tVECTOR 358 +#define tDIRECTION 359 +#define tAXIS2_PLACEMENT_3D 360 +#define tISO 361 +#define tENDISO 362 +#define tENDSEC 363 +#define tDATA 364 +#define tHEADER 365 +#define tFILE_DESCRIPTION 366 +#define tFILE_SCHEMA 367 +#define tFILE_NAME 368 +#define tMANIFOLD_SOLID_BREP 369 +#define tCLOSED_SHELL 370 +#define tADVANCED_BREP_SHAPE_REPRESENTATION 371 +#define tFACE_BOUND 372 +#define tCYLINDRICAL_SURFACE 373 +#define tCONICAL_SURFACE 374 +#define tCIRCLE 375 +#define tTRIMMED_CURVE 376 +#define tGEOMETRIC_SET 377 +#define tCOMPOSITE_CURVE_SEGMENT 378 +#define tCONTINUOUS 379 +#define tCOMPOSITE_CURVE 380 +#define tTOROIDAL_SURFACE 381 +#define tPRODUCT_DEFINITION 382 +#define tPRODUCT_DEFINITION_SHAPE 383 +#define tSHAPE_DEFINITION_REPRESENTATION 384 +#define tELLIPSE 385 +#define tTrimmed 386 +#define tSolid 387 +#define tEndSolid 388 +#define tVertex 389 +#define tFacet 390 +#define tNormal 391 +#define tOuter 392 +#define tLoopSTL 393 +#define tEndLoop 394 +#define tEndFacet 395 +#define tAFFECTPLUS 396 +#define tAFFECTMINUS 397 +#define tAFFECTTIMES 398 +#define tAFFECTDIVIDE 399 +#define tAND 400 +#define tOR 401 +#define tNOTEQUAL 402 +#define tEQUAL 403 +#define tAPPROXEQUAL 404 +#define tLESSOREQUAL 405 +#define tGREATEROREQUAL 406 +#define tCROSSPRODUCT 407 +#define UNARYPREC 408 +#define tPLUSPLUS 409 +#define tMINUSMINUS 410 #line 1 "Gmsh.y" - /* $Id: Gmsh.tab.cpp,v 1.20 2000-12-06 23:01:55 geuzaine Exp $ */ + /* $Id: Gmsh.tab.cpp,v 1.21 2000-12-07 00:55:16 geuzaine Exp $ */ #include <stdarg.h> @@ -238,26 +237,26 @@ typedef union { -#define YYFINAL 1437 +#define YYFINAL 1489 #define YYFLAG -32768 -#define YYNTBASE 174 +#define YYNTBASE 175 -#define YYTRANSLATE(x) ((unsigned)(x) <= 411 ? yytranslate[x] : 254) +#define YYTRANSLATE(x) ((unsigned)(x) <= 410 ? yytranslate[x] : 255) static const short yytranslate[] = { 0, 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, 164, 2, 2, 2, 161, 2, 2, 168, - 170, 159, 157, 169, 158, 173, 160, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 153, - 2, 154, 147, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 163, 2, 2, 2, 160, 2, 2, 167, + 169, 158, 156, 168, 157, 172, 159, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 152, + 2, 153, 146, 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, 165, 2, 2, 2, 2, 2, 2, + 173, 2, 174, 164, 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, 171, 2, 172, 2, 2, 2, 2, 2, + 2, 2, 170, 2, 171, 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, 2, 2, @@ -284,9 +283,8 @@ static const short yytranslate[] = { 0, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, - 148, 149, 150, 151, 152, 155, 156, 162, 163, 166, - 167 + 137, 138, 139, 140, 141, 142, 143, 144, 145, 147, + 148, 149, 150, 151, 154, 155, 161, 162, 165, 166 }; #if YYDEBUG != 0 @@ -312,219 +310,238 @@ static const short yyprhs[] = { 0, 1335, 1338, 1342, 1349, 1358, 1360, 1369, 1382, 1391, 1404, 1413, 1426, 1438, 1454, 1456, 1459, 1469, 1472, 1479, 1489, 1499, 1508, 1517, 1526, 1533, 1538, 1541, 1542, 1545, 1547, - 1554, 1561, 1568, 1575, 1582, 1589, 1595, 1601, 1608, 1615, - 1622, 1631, 1632, 1635, 1637, 1639, 1641, 1643, 1645, 1647, - 1649, 1653, 1656, 1659, 1662, 1666, 1670, 1674, 1678, 1682, - 1686, 1690, 1694, 1698, 1702, 1706, 1710, 1714, 1718, 1724, - 1729, 1734, 1739, 1744, 1749, 1754, 1759, 1764, 1769, 1774, - 1781, 1786, 1791, 1796, 1801, 1806, 1811, 1818, 1825, 1832, - 1834, 1836, 1838, 1842, 1847, 1852, 1856, 1862, 1864, 1867, - 1870, 1874, 1878, 1890, 1900, 1908, 1916, 1920, 1921, 1925, - 1927, 1931, 1932, 1936, 1940, 1942, 1946, 1947, 1949, 1953, - 1955, 1957, 1961, 1965, 1975, 1983, 1989, 1991 + 1554, 1566, 1573, 1585, 1592, 1604, 1611, 1623, 1630, 1642, + 1649, 1661, 1667, 1679, 1685, 1697, 1704, 1716, 1723, 1735, + 1742, 1754, 1763, 1764, 1767, 1769, 1771, 1773, 1775, 1777, + 1779, 1781, 1785, 1788, 1791, 1794, 1798, 1802, 1806, 1810, + 1814, 1818, 1822, 1826, 1830, 1834, 1838, 1842, 1846, 1850, + 1856, 1861, 1866, 1871, 1876, 1881, 1886, 1891, 1896, 1901, + 1906, 1913, 1918, 1923, 1928, 1933, 1938, 1943, 1950, 1957, + 1964, 1966, 1968, 1970, 1974, 1983, 1988, 1998, 2003, 2013, + 2017, 2023, 2025, 2028, 2031, 2035, 2039, 2051, 2061, 2069, + 2077, 2081, 2090, 2091, 2095, 2097, 2101, 2102, 2106, 2110, + 2112, 2116, 2117, 2119, 2123, 2125, 2127, 2131, 2135, 2145, + 2153, 2159, 2161 }; -static const short yyrhs[] = { 176, - 0, 175, 0, 181, 0, 134, 0, 137, 138, 242, - 242, 242, 139, 140, 136, 242, 242, 242, 136, 242, - 242, 242, 136, 242, 242, 242, 141, 142, 0, 135, - 0, 0, 176, 177, 0, 178, 0, 180, 0, 179, - 0, 1, 6, 0, 108, 6, 0, 109, 6, 0, - 111, 6, 0, 110, 6, 0, 112, 6, 0, 113, - 168, 247, 169, 5, 170, 6, 0, 114, 168, 247, - 170, 6, 0, 115, 168, 5, 169, 5, 169, 247, - 169, 247, 169, 5, 169, 5, 169, 5, 170, 6, - 0, 3, 7, 92, 168, 5, 169, 245, 170, 6, - 0, 3, 7, 91, 168, 5, 169, 242, 169, 251, - 169, 241, 169, 241, 169, 241, 169, 251, 169, 251, - 169, 241, 170, 6, 0, 3, 7, 90, 168, 5, - 169, 242, 169, 242, 169, 249, 169, 241, 169, 241, - 169, 241, 169, 241, 169, 251, 169, 251, 169, 251, - 169, 251, 169, 241, 170, 6, 0, 3, 7, 98, - 168, 5, 169, 3, 169, 3, 169, 3, 169, 241, - 170, 6, 0, 3, 7, 102, 168, 5, 169, 3, - 169, 241, 170, 6, 0, 3, 7, 119, 168, 5, - 169, 3, 169, 241, 170, 6, 0, 3, 7, 100, - 168, 5, 169, 159, 169, 159, 169, 242, 169, 241, - 170, 6, 0, 3, 7, 103, 168, 5, 169, 251, - 170, 6, 0, 3, 7, 104, 168, 5, 169, 251, - 169, 3, 169, 241, 170, 6, 0, 3, 7, 99, - 168, 5, 169, 3, 170, 6, 0, 3, 7, 105, - 168, 5, 169, 3, 169, 242, 170, 6, 0, 3, - 7, 107, 168, 5, 169, 3, 169, 3, 169, 3, - 170, 6, 0, 3, 7, 106, 168, 5, 169, 245, - 170, 6, 0, 3, 7, 101, 168, 5, 169, 3, - 170, 6, 0, 3, 7, 34, 168, 5, 169, 3, - 169, 3, 170, 6, 0, 3, 7, 117, 168, 5, - 169, 251, 170, 6, 0, 3, 7, 118, 168, 5, - 169, 251, 169, 3, 170, 6, 0, 3, 7, 116, - 168, 5, 169, 3, 170, 6, 0, 3, 7, 120, - 168, 5, 169, 3, 169, 242, 170, 6, 0, 3, - 7, 121, 168, 5, 169, 3, 169, 242, 169, 242, - 170, 6, 0, 3, 7, 128, 168, 5, 169, 3, - 169, 242, 169, 242, 170, 6, 0, 3, 7, 122, - 168, 5, 169, 3, 169, 242, 170, 6, 0, 3, - 7, 132, 168, 5, 169, 3, 169, 242, 169, 242, - 170, 6, 0, 3, 7, 123, 168, 5, 169, 3, - 169, 251, 169, 251, 169, 241, 169, 241, 170, 6, - 0, 3, 7, 124, 168, 5, 169, 251, 170, 6, - 0, 3, 7, 125, 168, 126, 169, 241, 169, 3, - 170, 6, 0, 3, 7, 127, 168, 5, 169, 251, - 169, 241, 170, 6, 0, 3, 7, 129, 168, 5, - 169, 5, 169, 3, 169, 3, 170, 6, 0, 3, - 7, 130, 168, 5, 169, 5, 169, 3, 170, 6, - 0, 3, 7, 131, 168, 3, 169, 3, 170, 6, - 0, 0, 181, 182, 0, 184, 0, 183, 0, 222, - 0, 223, 0, 224, 0, 227, 0, 228, 0, 232, - 0, 235, 0, 236, 0, 229, 0, 231, 0, 230, - 0, 84, 171, 237, 172, 0, 87, 171, 239, 172, - 0, 1, 6, 0, 30, 168, 5, 169, 242, 170, - 6, 0, 61, 5, 171, 185, 172, 6, 0, 61, - 5, 62, 245, 171, 185, 172, 6, 0, 0, 185, - 187, 0, 185, 190, 0, 185, 193, 0, 185, 196, - 0, 185, 199, 0, 185, 202, 0, 185, 205, 0, - 185, 208, 0, 185, 211, 0, 185, 214, 0, 185, - 217, 0, 185, 220, 0, 242, 0, 186, 169, 242, - 0, 0, 74, 168, 242, 169, 242, 169, 242, 170, - 188, 171, 186, 172, 6, 0, 242, 0, 189, 169, - 242, 0, 0, 75, 168, 242, 169, 242, 169, 242, - 170, 191, 171, 189, 172, 6, 0, 242, 0, 192, - 169, 242, 0, 0, 76, 168, 242, 169, 242, 169, - 242, 170, 194, 171, 192, 172, 6, 0, 242, 0, - 195, 169, 242, 0, 0, 71, 168, 242, 169, 242, - 169, 242, 169, 242, 169, 242, 169, 242, 170, 197, - 171, 195, 172, 6, 0, 242, 0, 198, 169, 242, - 0, 0, 72, 168, 242, 169, 242, 169, 242, 169, - 242, 169, 242, 169, 242, 170, 200, 171, 198, 172, - 6, 0, 242, 0, 201, 169, 242, 0, 0, 73, - 168, 242, 169, 242, 169, 242, 169, 242, 169, 242, - 169, 242, 170, 203, 171, 201, 172, 6, 0, 242, - 0, 204, 169, 242, 0, 0, 68, 168, 242, 169, - 242, 169, 242, 169, 242, 169, 242, 169, 242, 169, - 242, 169, 242, 169, 242, 170, 206, 171, 204, 172, - 6, 0, 242, 0, 207, 169, 242, 0, 0, 69, - 168, 242, 169, 242, 169, 242, 169, 242, 169, 242, - 169, 242, 169, 242, 169, 242, 169, 242, 170, 209, - 171, 207, 172, 6, 0, 242, 0, 210, 169, 242, - 0, 0, 70, 168, 242, 169, 242, 169, 242, 169, - 242, 169, 242, 169, 242, 169, 242, 169, 242, 169, - 242, 170, 212, 171, 210, 172, 6, 0, 242, 0, - 213, 169, 242, 0, 0, 65, 168, 242, 169, 242, - 169, 242, 169, 242, 169, 242, 169, 242, 169, 242, - 169, 242, 169, 242, 169, 242, 169, 242, 169, 242, - 170, 215, 171, 213, 172, 6, 0, 242, 0, 216, - 169, 242, 0, 0, 66, 168, 242, 169, 242, 169, - 242, 169, 242, 169, 242, 169, 242, 169, 242, 169, - 242, 169, 242, 169, 242, 169, 242, 169, 242, 170, - 218, 171, 216, 172, 6, 0, 242, 0, 219, 169, - 242, 0, 0, 67, 168, 242, 169, 242, 169, 242, - 169, 242, 169, 242, 169, 242, 169, 242, 169, 242, - 169, 242, 169, 242, 169, 242, 169, 242, 170, 221, - 171, 219, 172, 6, 0, 4, 7, 242, 6, 0, - 4, 143, 242, 6, 0, 4, 144, 242, 6, 0, - 4, 166, 242, 6, 0, 4, 144, 242, 6, 0, - 4, 145, 242, 6, 0, 4, 146, 242, 6, 0, - 31, 168, 242, 170, 7, 245, 6, 0, 46, 31, - 168, 242, 170, 7, 251, 6, 0, 63, 31, 251, - 7, 171, 242, 169, 242, 169, 242, 172, 6, 0, - 38, 39, 251, 7, 242, 6, 0, 31, 171, 242, - 172, 6, 0, 34, 168, 242, 170, 7, 251, 6, - 0, 36, 168, 242, 170, 7, 251, 6, 0, 63, - 34, 251, 7, 171, 242, 169, 242, 169, 242, 172, - 6, 0, 32, 168, 242, 170, 7, 251, 6, 0, - 32, 168, 242, 170, 7, 251, 42, 245, 6, 0, - 40, 168, 242, 170, 7, 171, 242, 169, 242, 169, - 5, 169, 5, 169, 5, 172, 6, 0, 33, 168, - 242, 170, 7, 251, 6, 0, 46, 34, 168, 242, - 170, 7, 251, 6, 0, 34, 56, 168, 242, 170, - 7, 251, 6, 0, 77, 168, 242, 170, 7, 251, - 6, 0, 78, 168, 242, 170, 7, 251, 82, 251, - 79, 242, 6, 0, 34, 171, 242, 172, 6, 0, - 42, 35, 168, 242, 170, 7, 251, 6, 0, 133, - 35, 168, 242, 170, 7, 242, 251, 6, 0, 43, - 35, 168, 242, 170, 7, 251, 6, 0, 78, 35, - 80, 81, 168, 242, 170, 7, 249, 82, 171, 251, - 169, 251, 172, 79, 171, 242, 169, 242, 172, 6, - 0, 78, 35, 168, 242, 170, 7, 249, 82, 171, - 251, 169, 251, 172, 79, 171, 242, 169, 242, 172, - 6, 0, 46, 35, 168, 242, 170, 7, 251, 6, - 0, 35, 56, 168, 242, 170, 7, 251, 6, 0, - 35, 171, 242, 172, 6, 0, 45, 37, 168, 242, - 170, 7, 251, 6, 0, 37, 168, 242, 170, 7, - 251, 6, 0, 46, 37, 168, 242, 170, 7, 251, - 6, 0, 51, 245, 171, 225, 172, 0, 50, 171, - 245, 169, 245, 169, 242, 172, 171, 225, 172, 0, - 52, 245, 171, 225, 172, 0, 53, 171, 245, 169, - 242, 172, 171, 225, 172, 0, 227, 0, 226, 0, - 224, 0, 0, 226, 223, 0, 55, 171, 226, 172, - 0, 59, 171, 226, 172, 0, 57, 5, 6, 0, - 30, 5, 6, 0, 88, 6, 0, 89, 5, 6, - 0, 85, 168, 242, 8, 242, 170, 0, 85, 168, - 242, 8, 242, 8, 242, 170, 0, 86, 0, 54, - 31, 171, 242, 169, 245, 172, 6, 0, 54, 31, - 171, 242, 169, 245, 169, 245, 169, 242, 172, 6, - 0, 54, 34, 171, 242, 169, 245, 172, 6, 0, - 54, 34, 171, 242, 169, 245, 169, 245, 169, 242, - 172, 6, 0, 54, 35, 171, 242, 169, 245, 172, - 6, 0, 54, 35, 171, 242, 169, 245, 169, 245, - 169, 242, 172, 6, 0, 54, 35, 171, 242, 169, - 245, 172, 171, 233, 172, 6, 0, 54, 35, 171, - 242, 169, 245, 169, 245, 169, 242, 172, 171, 233, - 172, 6, 0, 234, 0, 233, 234, 0, 64, 171, - 251, 169, 251, 169, 251, 172, 6, 0, 58, 6, - 0, 44, 34, 251, 7, 242, 6, 0, 44, 34, - 251, 7, 242, 47, 49, 242, 6, 0, 44, 34, - 251, 7, 242, 47, 48, 242, 6, 0, 44, 35, - 171, 242, 172, 7, 251, 6, 0, 41, 35, 171, - 242, 172, 7, 251, 6, 0, 44, 37, 171, 242, - 172, 7, 251, 6, 0, 58, 35, 251, 7, 242, - 6, 0, 58, 35, 251, 6, 0, 60, 6, 0, - 0, 237, 238, 0, 183, 0, 4, 173, 4, 7, - 5, 6, 0, 4, 173, 4, 7, 242, 6, 0, - 4, 173, 4, 143, 242, 6, 0, 4, 173, 4, - 144, 242, 6, 0, 4, 173, 4, 145, 242, 6, - 0, 4, 173, 4, 146, 242, 6, 0, 4, 173, - 4, 166, 6, 0, 4, 173, 4, 167, 6, 0, - 4, 173, 4, 7, 245, 6, 0, 4, 173, 4, - 143, 245, 6, 0, 4, 173, 4, 144, 245, 6, - 0, 4, 173, 83, 173, 4, 7, 253, 6, 0, - 0, 239, 240, 0, 238, 0, 93, 0, 94, 0, - 95, 0, 96, 0, 97, 0, 243, 0, 168, 242, - 170, 0, 158, 242, 0, 157, 242, 0, 164, 242, - 0, 242, 158, 242, 0, 242, 157, 242, 0, 242, - 159, 242, 0, 242, 160, 242, 0, 242, 161, 242, - 0, 242, 165, 242, 0, 242, 153, 242, 0, 242, - 154, 242, 0, 242, 155, 242, 0, 242, 156, 242, - 0, 242, 151, 242, 0, 242, 150, 242, 0, 242, - 148, 242, 0, 242, 149, 242, 0, 242, 147, 242, - 8, 242, 0, 10, 168, 242, 170, 0, 11, 168, - 242, 170, 0, 12, 168, 242, 170, 0, 13, 168, - 242, 170, 0, 14, 168, 242, 170, 0, 15, 168, - 242, 170, 0, 16, 168, 242, 170, 0, 17, 168, - 242, 170, 0, 18, 168, 242, 170, 0, 19, 168, - 242, 170, 0, 20, 168, 242, 169, 242, 170, 0, - 21, 168, 242, 170, 0, 22, 168, 242, 170, 0, - 23, 168, 242, 170, 0, 24, 168, 242, 170, 0, - 25, 168, 242, 170, 0, 26, 168, 242, 170, 0, - 27, 168, 242, 169, 242, 170, 0, 28, 168, 242, - 169, 242, 170, 0, 29, 168, 242, 169, 242, 170, - 0, 3, 0, 9, 0, 4, 0, 4, 173, 4, - 0, 4, 173, 4, 166, 0, 4, 173, 4, 167, - 0, 242, 8, 242, 0, 242, 8, 242, 8, 242, - 0, 246, 0, 158, 245, 0, 157, 245, 0, 245, - 158, 245, 0, 245, 157, 245, 0, 171, 242, 169, - 242, 169, 242, 169, 242, 169, 242, 172, 0, 171, - 242, 169, 242, 169, 242, 169, 242, 172, 0, 171, - 242, 169, 242, 169, 242, 172, 0, 168, 242, 169, - 242, 169, 242, 170, 0, 4, 173, 4, 0, 0, - 168, 248, 170, 0, 5, 0, 248, 169, 5, 0, - 0, 171, 250, 172, 0, 168, 250, 170, 0, 251, - 0, 250, 169, 251, 0, 0, 242, 0, 171, 252, - 172, 0, 242, 0, 244, 0, 252, 169, 242, 0, - 252, 169, 244, 0, 171, 242, 169, 242, 169, 242, - 169, 242, 172, 0, 171, 242, 169, 242, 169, 242, - 172, 0, 171, 4, 169, 242, 172, 0, 4, 0, - 4, 173, 83, 173, 4, 0 +static const short yyrhs[] = { 177, + 0, 176, 0, 182, 0, 133, 0, 136, 137, 243, + 243, 243, 138, 139, 135, 243, 243, 243, 135, 243, + 243, 243, 135, 243, 243, 243, 140, 141, 0, 134, + 0, 0, 177, 178, 0, 179, 0, 181, 0, 180, + 0, 1, 6, 0, 107, 6, 0, 108, 6, 0, + 110, 6, 0, 109, 6, 0, 111, 6, 0, 112, + 167, 248, 168, 5, 169, 6, 0, 113, 167, 248, + 169, 6, 0, 114, 167, 5, 168, 5, 168, 248, + 168, 248, 168, 5, 168, 5, 168, 5, 169, 6, + 0, 3, 7, 91, 167, 5, 168, 246, 169, 6, + 0, 3, 7, 90, 167, 5, 168, 243, 168, 252, + 168, 242, 168, 242, 168, 242, 168, 252, 168, 252, + 168, 242, 169, 6, 0, 3, 7, 89, 167, 5, + 168, 243, 168, 243, 168, 250, 168, 242, 168, 242, + 168, 242, 168, 242, 168, 252, 168, 252, 168, 252, + 168, 252, 168, 242, 169, 6, 0, 3, 7, 97, + 167, 5, 168, 3, 168, 3, 168, 3, 168, 242, + 169, 6, 0, 3, 7, 101, 167, 5, 168, 3, + 168, 242, 169, 6, 0, 3, 7, 118, 167, 5, + 168, 3, 168, 242, 169, 6, 0, 3, 7, 99, + 167, 5, 168, 158, 168, 158, 168, 243, 168, 242, + 169, 6, 0, 3, 7, 102, 167, 5, 168, 252, + 169, 6, 0, 3, 7, 103, 167, 5, 168, 252, + 168, 3, 168, 242, 169, 6, 0, 3, 7, 98, + 167, 5, 168, 3, 169, 6, 0, 3, 7, 104, + 167, 5, 168, 3, 168, 243, 169, 6, 0, 3, + 7, 106, 167, 5, 168, 3, 168, 3, 168, 3, + 169, 6, 0, 3, 7, 105, 167, 5, 168, 246, + 169, 6, 0, 3, 7, 100, 167, 5, 168, 3, + 169, 6, 0, 3, 7, 34, 167, 5, 168, 3, + 168, 3, 169, 6, 0, 3, 7, 116, 167, 5, + 168, 252, 169, 6, 0, 3, 7, 117, 167, 5, + 168, 252, 168, 3, 169, 6, 0, 3, 7, 115, + 167, 5, 168, 3, 169, 6, 0, 3, 7, 119, + 167, 5, 168, 3, 168, 243, 169, 6, 0, 3, + 7, 120, 167, 5, 168, 3, 168, 243, 168, 243, + 169, 6, 0, 3, 7, 127, 167, 5, 168, 3, + 168, 243, 168, 243, 169, 6, 0, 3, 7, 121, + 167, 5, 168, 3, 168, 243, 169, 6, 0, 3, + 7, 131, 167, 5, 168, 3, 168, 243, 168, 243, + 169, 6, 0, 3, 7, 122, 167, 5, 168, 3, + 168, 252, 168, 252, 168, 242, 168, 242, 169, 6, + 0, 3, 7, 123, 167, 5, 168, 252, 169, 6, + 0, 3, 7, 124, 167, 125, 168, 242, 168, 3, + 169, 6, 0, 3, 7, 126, 167, 5, 168, 252, + 168, 242, 169, 6, 0, 3, 7, 128, 167, 5, + 168, 5, 168, 3, 168, 3, 169, 6, 0, 3, + 7, 129, 167, 5, 168, 5, 168, 3, 169, 6, + 0, 3, 7, 130, 167, 3, 168, 3, 169, 6, + 0, 0, 182, 183, 0, 185, 0, 184, 0, 223, + 0, 224, 0, 225, 0, 228, 0, 229, 0, 233, + 0, 236, 0, 237, 0, 230, 0, 232, 0, 231, + 0, 83, 170, 238, 171, 0, 86, 170, 240, 171, + 0, 1, 6, 0, 30, 167, 5, 168, 243, 169, + 6, 0, 61, 5, 170, 186, 171, 6, 0, 61, + 5, 4, 246, 170, 186, 171, 6, 0, 0, 186, + 188, 0, 186, 191, 0, 186, 194, 0, 186, 197, + 0, 186, 200, 0, 186, 203, 0, 186, 206, 0, + 186, 209, 0, 186, 212, 0, 186, 215, 0, 186, + 218, 0, 186, 221, 0, 243, 0, 187, 168, 243, + 0, 0, 73, 167, 243, 168, 243, 168, 243, 169, + 189, 170, 187, 171, 6, 0, 243, 0, 190, 168, + 243, 0, 0, 74, 167, 243, 168, 243, 168, 243, + 169, 192, 170, 190, 171, 6, 0, 243, 0, 193, + 168, 243, 0, 0, 75, 167, 243, 168, 243, 168, + 243, 169, 195, 170, 193, 171, 6, 0, 243, 0, + 196, 168, 243, 0, 0, 70, 167, 243, 168, 243, + 168, 243, 168, 243, 168, 243, 168, 243, 169, 198, + 170, 196, 171, 6, 0, 243, 0, 199, 168, 243, + 0, 0, 71, 167, 243, 168, 243, 168, 243, 168, + 243, 168, 243, 168, 243, 169, 201, 170, 199, 171, + 6, 0, 243, 0, 202, 168, 243, 0, 0, 72, + 167, 243, 168, 243, 168, 243, 168, 243, 168, 243, + 168, 243, 169, 204, 170, 202, 171, 6, 0, 243, + 0, 205, 168, 243, 0, 0, 67, 167, 243, 168, + 243, 168, 243, 168, 243, 168, 243, 168, 243, 168, + 243, 168, 243, 168, 243, 169, 207, 170, 205, 171, + 6, 0, 243, 0, 208, 168, 243, 0, 0, 68, + 167, 243, 168, 243, 168, 243, 168, 243, 168, 243, + 168, 243, 168, 243, 168, 243, 168, 243, 169, 210, + 170, 208, 171, 6, 0, 243, 0, 211, 168, 243, + 0, 0, 69, 167, 243, 168, 243, 168, 243, 168, + 243, 168, 243, 168, 243, 168, 243, 168, 243, 168, + 243, 169, 213, 170, 211, 171, 6, 0, 243, 0, + 214, 168, 243, 0, 0, 64, 167, 243, 168, 243, + 168, 243, 168, 243, 168, 243, 168, 243, 168, 243, + 168, 243, 168, 243, 168, 243, 168, 243, 168, 243, + 169, 216, 170, 214, 171, 6, 0, 243, 0, 217, + 168, 243, 0, 0, 65, 167, 243, 168, 243, 168, + 243, 168, 243, 168, 243, 168, 243, 168, 243, 168, + 243, 168, 243, 168, 243, 168, 243, 168, 243, 169, + 219, 170, 217, 171, 6, 0, 243, 0, 220, 168, + 243, 0, 0, 66, 167, 243, 168, 243, 168, 243, + 168, 243, 168, 243, 168, 243, 168, 243, 168, 243, + 168, 243, 168, 243, 168, 243, 168, 243, 169, 222, + 170, 220, 171, 6, 0, 4, 7, 243, 6, 0, + 4, 142, 243, 6, 0, 4, 143, 243, 6, 0, + 4, 165, 243, 6, 0, 4, 143, 243, 6, 0, + 4, 144, 243, 6, 0, 4, 145, 243, 6, 0, + 31, 167, 243, 169, 7, 246, 6, 0, 46, 31, + 167, 243, 169, 7, 252, 6, 0, 62, 31, 252, + 7, 170, 243, 168, 243, 168, 243, 171, 6, 0, + 38, 39, 252, 7, 243, 6, 0, 31, 170, 243, + 171, 6, 0, 34, 167, 243, 169, 7, 252, 6, + 0, 36, 167, 243, 169, 7, 252, 6, 0, 62, + 34, 252, 7, 170, 243, 168, 243, 168, 243, 171, + 6, 0, 32, 167, 243, 169, 7, 252, 6, 0, + 32, 167, 243, 169, 7, 252, 42, 246, 6, 0, + 40, 167, 243, 169, 7, 170, 243, 168, 243, 168, + 5, 168, 5, 168, 5, 171, 6, 0, 33, 167, + 243, 169, 7, 252, 6, 0, 46, 34, 167, 243, + 169, 7, 252, 6, 0, 34, 56, 167, 243, 169, + 7, 252, 6, 0, 76, 167, 243, 169, 7, 252, + 6, 0, 77, 167, 243, 169, 7, 252, 81, 252, + 78, 243, 6, 0, 34, 170, 243, 171, 6, 0, + 42, 35, 167, 243, 169, 7, 252, 6, 0, 132, + 35, 167, 243, 169, 7, 243, 252, 6, 0, 43, + 35, 167, 243, 169, 7, 252, 6, 0, 77, 35, + 79, 80, 167, 243, 169, 7, 250, 81, 170, 252, + 168, 252, 171, 78, 170, 243, 168, 243, 171, 6, + 0, 77, 35, 167, 243, 169, 7, 250, 81, 170, + 252, 168, 252, 171, 78, 170, 243, 168, 243, 171, + 6, 0, 46, 35, 167, 243, 169, 7, 252, 6, + 0, 35, 56, 167, 243, 169, 7, 252, 6, 0, + 35, 170, 243, 171, 6, 0, 45, 37, 167, 243, + 169, 7, 252, 6, 0, 37, 167, 243, 169, 7, + 252, 6, 0, 46, 37, 167, 243, 169, 7, 252, + 6, 0, 51, 246, 170, 226, 171, 0, 50, 170, + 246, 168, 246, 168, 243, 171, 170, 226, 171, 0, + 52, 246, 170, 226, 171, 0, 53, 170, 246, 168, + 243, 171, 170, 226, 171, 0, 228, 0, 227, 0, + 225, 0, 0, 227, 224, 0, 55, 170, 227, 171, + 0, 59, 170, 227, 171, 0, 57, 5, 6, 0, + 30, 5, 6, 0, 87, 6, 0, 88, 5, 6, + 0, 84, 167, 243, 8, 243, 169, 0, 84, 167, + 243, 8, 243, 8, 243, 169, 0, 85, 0, 54, + 31, 170, 243, 168, 246, 171, 6, 0, 54, 31, + 170, 243, 168, 246, 168, 246, 168, 243, 171, 6, + 0, 54, 34, 170, 243, 168, 246, 171, 6, 0, + 54, 34, 170, 243, 168, 246, 168, 246, 168, 243, + 171, 6, 0, 54, 35, 170, 243, 168, 246, 171, + 6, 0, 54, 35, 170, 243, 168, 246, 168, 246, + 168, 243, 171, 6, 0, 54, 35, 170, 243, 168, + 246, 171, 170, 234, 171, 6, 0, 54, 35, 170, + 243, 168, 246, 168, 246, 168, 243, 171, 170, 234, + 171, 6, 0, 235, 0, 234, 235, 0, 63, 170, + 252, 168, 252, 168, 252, 171, 6, 0, 58, 6, + 0, 44, 34, 252, 7, 243, 6, 0, 44, 34, + 252, 7, 243, 47, 49, 243, 6, 0, 44, 34, + 252, 7, 243, 47, 48, 243, 6, 0, 44, 35, + 170, 243, 171, 7, 252, 6, 0, 41, 35, 170, + 243, 171, 7, 252, 6, 0, 44, 37, 170, 243, + 171, 7, 252, 6, 0, 58, 35, 252, 7, 243, + 6, 0, 58, 35, 252, 6, 0, 60, 6, 0, + 0, 238, 239, 0, 184, 0, 4, 172, 4, 7, + 5, 6, 0, 4, 172, 61, 173, 243, 174, 172, + 4, 7, 5, 6, 0, 4, 172, 4, 7, 243, + 6, 0, 4, 172, 61, 173, 243, 174, 172, 4, + 7, 243, 6, 0, 4, 172, 4, 142, 243, 6, + 0, 4, 172, 61, 173, 243, 174, 172, 4, 142, + 243, 6, 0, 4, 172, 4, 143, 243, 6, 0, + 4, 172, 61, 173, 243, 174, 172, 4, 143, 243, + 6, 0, 4, 172, 4, 144, 243, 6, 0, 4, + 172, 61, 173, 243, 174, 172, 4, 7, 243, 6, + 0, 4, 172, 4, 145, 243, 6, 0, 4, 172, + 61, 173, 243, 174, 172, 4, 145, 243, 6, 0, + 4, 172, 4, 165, 6, 0, 4, 172, 61, 173, + 243, 174, 172, 4, 165, 243, 6, 0, 4, 172, + 4, 166, 6, 0, 4, 172, 61, 173, 243, 174, + 172, 4, 166, 243, 6, 0, 4, 172, 4, 7, + 246, 6, 0, 4, 172, 61, 173, 243, 174, 172, + 4, 7, 246, 6, 0, 4, 172, 4, 142, 246, + 6, 0, 4, 172, 61, 173, 243, 174, 172, 4, + 142, 246, 6, 0, 4, 172, 4, 143, 246, 6, + 0, 4, 172, 61, 173, 243, 174, 172, 4, 143, + 246, 6, 0, 4, 172, 82, 172, 4, 7, 254, + 6, 0, 0, 240, 241, 0, 239, 0, 92, 0, + 93, 0, 94, 0, 95, 0, 96, 0, 244, 0, + 167, 243, 169, 0, 157, 243, 0, 156, 243, 0, + 163, 243, 0, 243, 157, 243, 0, 243, 156, 243, + 0, 243, 158, 243, 0, 243, 159, 243, 0, 243, + 160, 243, 0, 243, 164, 243, 0, 243, 152, 243, + 0, 243, 153, 243, 0, 243, 154, 243, 0, 243, + 155, 243, 0, 243, 150, 243, 0, 243, 149, 243, + 0, 243, 147, 243, 0, 243, 148, 243, 0, 243, + 146, 243, 8, 243, 0, 10, 167, 243, 169, 0, + 11, 167, 243, 169, 0, 12, 167, 243, 169, 0, + 13, 167, 243, 169, 0, 14, 167, 243, 169, 0, + 15, 167, 243, 169, 0, 16, 167, 243, 169, 0, + 17, 167, 243, 169, 0, 18, 167, 243, 169, 0, + 19, 167, 243, 169, 0, 20, 167, 243, 168, 243, + 169, 0, 21, 167, 243, 169, 0, 22, 167, 243, + 169, 0, 23, 167, 243, 169, 0, 24, 167, 243, + 169, 0, 25, 167, 243, 169, 0, 26, 167, 243, + 169, 0, 27, 167, 243, 168, 243, 169, 0, 28, + 167, 243, 168, 243, 169, 0, 29, 167, 243, 168, + 243, 169, 0, 3, 0, 9, 0, 4, 0, 4, + 172, 4, 0, 4, 172, 61, 173, 243, 174, 172, + 4, 0, 4, 172, 4, 165, 0, 4, 172, 61, + 173, 243, 174, 172, 4, 165, 0, 4, 172, 4, + 166, 0, 4, 172, 61, 173, 243, 174, 172, 4, + 166, 0, 243, 8, 243, 0, 243, 8, 243, 8, + 243, 0, 247, 0, 157, 246, 0, 156, 246, 0, + 246, 157, 246, 0, 246, 156, 246, 0, 170, 243, + 168, 243, 168, 243, 168, 243, 168, 243, 171, 0, + 170, 243, 168, 243, 168, 243, 168, 243, 171, 0, + 170, 243, 168, 243, 168, 243, 171, 0, 167, 243, + 168, 243, 168, 243, 169, 0, 4, 172, 4, 0, + 4, 172, 61, 173, 243, 174, 172, 4, 0, 0, + 167, 249, 169, 0, 5, 0, 249, 168, 5, 0, + 0, 170, 251, 171, 0, 167, 251, 169, 0, 252, + 0, 251, 168, 252, 0, 0, 243, 0, 170, 253, + 171, 0, 243, 0, 245, 0, 253, 168, 243, 0, + 253, 168, 245, 0, 170, 243, 168, 243, 168, 243, + 168, 243, 171, 0, 170, 243, 168, 243, 168, 243, + 171, 0, 170, 4, 168, 243, 171, 0, 4, 0, + 4, 172, 82, 172, 4, 0 }; #endif @@ -551,17 +568,19 @@ static const short yyrline[] = { 0, 1060, 1067, 1069, 1070, 1073, 1078, 1089, 1107, 1122, 1150, 1181, 1185, 1197, 1212, 1225, 1263, 1269, 1275, 1279, 1283, 1287, 1291, 1296, 1303, 1307, 1312, 1330, 1340, 1358, 1375, - 1392, 1413, 1433, 1453, 1470, 1494, 1505, 1507, 1510, 1514, - 1526, 1543, 1560, 1577, 1594, 1611, 1628, 1645, 1670, 1695, - 1720, 1738, 1740, 1743, 1758, 1760, 1761, 1762, 1763, 1766, - 1768, 1769, 1770, 1771, 1772, 1773, 1774, 1775, 1776, 1777, - 1778, 1779, 1780, 1781, 1782, 1783, 1784, 1785, 1786, 1787, - 1788, 1789, 1790, 1791, 1792, 1793, 1794, 1795, 1796, 1797, - 1798, 1799, 1800, 1801, 1802, 1803, 1804, 1805, 1806, 1809, - 1811, 1812, 1821, 1838, 1855, 1874, 1881, 1894, 1899, 1903, - 1907, 1911, 1916, 1921, 1925, 1929, 1933, 1961, 1965, 1970, - 1974, 1979, 1983, 1987, 1993, 1999, 2005, 2009, 2015, 2022, - 2028, 2037, 2041, 2051, 2056, 2060, 2065, 2070 + 1392, 1413, 1433, 1453, 1470, 1494, 1505, 1507, 1510, 1517, + 1530, 1548, 1565, 1586, 1603, 1624, 1641, 1662, 1679, 1700, + 1717, 1738, 1755, 1776, 1793, 1816, 1841, 1870, 1895, 1924, + 1949, 1980, 1999, 2001, 2004, 2019, 2021, 2022, 2023, 2024, + 2027, 2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037, + 2038, 2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047, + 2048, 2049, 2050, 2051, 2052, 2053, 2054, 2055, 2056, 2057, + 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065, 2066, 2067, + 2070, 2072, 2073, 2082, 2099, 2120, 2137, 2158, 2175, 2197, + 2204, 2217, 2222, 2226, 2230, 2234, 2239, 2244, 2248, 2252, + 2256, 2282, 2314, 2318, 2323, 2327, 2332, 2336, 2340, 2346, + 2352, 2358, 2362, 2368, 2375, 2381, 2390, 2394, 2404, 2409, + 2413, 2418, 2423 }; #endif @@ -576,11 +595,11 @@ static const char * const yytname[] = { "$","error","$undefined.","tDOUBLE", "tParametric","tElliptic","tPlane","tRuled","tTransfinite","tComplex","tPhysical", "tUsing","tBump","tProgression","tRotate","tTranslate","tSymmetry","tDilate", "tExtrude","tDuplicata","tLoop","tInclude","tRecombine","tDelete","tCoherence", -"tView","tOffset","tAttractor","tLayers","tScalarTetrahedron","tVectorTetrahedron", -"tTensorTetrahedron","tScalarTriangle","tVectorTriangle","tTensorTriangle","tScalarLine", -"tVectorLine","tTensorLine","tScalarPoint","tVectorPoint","tTensorPoint","tBSpline", -"tNurbs","tOrder","tWith","tBounds","tKnots","tColor","tOptions","tFor","tEndFor", -"tScript","tExit","tMerge","tB_SPLINE_SURFACE_WITH_KNOTS","tB_SPLINE_CURVE_WITH_KNOTS", +"tView","tAttractor","tLayers","tScalarTetrahedron","tVectorTetrahedron","tTensorTetrahedron", +"tScalarTriangle","tVectorTriangle","tTensorTriangle","tScalarLine","tVectorLine", +"tTensorLine","tScalarPoint","tVectorPoint","tTensorPoint","tBSpline","tNurbs", +"tOrder","tWith","tBounds","tKnots","tColor","tOptions","tFor","tEndFor","tScript", +"tExit","tMerge","tB_SPLINE_SURFACE_WITH_KNOTS","tB_SPLINE_CURVE_WITH_KNOTS", "tCARTESIAN_POINT","tTRUE","tFALSE","tUNSPECIFIED","tU","tV","tEDGE_CURVE","tVERTEX_POINT", "tORIENTED_EDGE","tPLANE","tFACE_OUTER_BOUND","tEDGE_LOOP","tADVANCED_FACE", "tVECTOR","tDIRECTION","tAXIS2_PLACEMENT_3D","tISO","tENDISO","tENDSEC","tDATA", @@ -593,7 +612,7 @@ static const char * const yytname[] = { "$","error","$undefined.","tDOUBLE", "tAFFECTMINUS","tAFFECTTIMES","tAFFECTDIVIDE","'?'","tAND","tOR","tNOTEQUAL", "tEQUAL","tAPPROXEQUAL","'<'","'>'","tLESSOREQUAL","tGREATEROREQUAL","'+'","'-'", "'*'","'/'","'%'","tCROSSPRODUCT","UNARYPREC","'!'","'^'","tPLUSPLUS","tMINUSMINUS", -"'('","','","')'","'{'","'}'","'.'","All","STLFormatItem","StepFormatItems", +"'('","','","')'","'{'","'}'","'.'","'['","']'","All","STLFormatItem","StepFormatItems", "StepFormatItem","StepSpecial","StepHeaderItem","StepDataItem","GeomFormatList", "GeomFormat","Printf","View","Views","ScalarPointValues","ScalarPoint","@1", "VectorPointValues","VectorPoint","@2","TensorPointValues","TensorPoint","@3", @@ -611,37 +630,39 @@ static const char * const yytname[] = { "$","error","$undefined.","tDOUBLE", #endif static const short yyr1[] = { 0, - 174, 174, 174, 175, 175, 175, 176, 176, 177, 177, - 177, 177, 178, 178, 178, 178, 178, 179, 179, 179, - 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 181, 181, 182, 182, 182, 182, 182, 182, 182, 182, - 182, 182, 182, 182, 182, 182, 182, 182, 183, 184, - 184, 185, 185, 185, 185, 185, 185, 185, 185, 185, - 185, 185, 185, 185, 186, 186, 188, 187, 189, 189, - 191, 190, 192, 192, 194, 193, 195, 195, 197, 196, - 198, 198, 200, 199, 201, 201, 203, 202, 204, 204, - 206, 205, 207, 207, 209, 208, 210, 210, 212, 211, - 213, 213, 215, 214, 216, 216, 218, 217, 219, 219, - 221, 220, 222, 222, 222, 222, 222, 222, 222, 223, - 223, 223, 223, 223, 223, 223, 223, 223, 223, 223, - 223, 223, 223, 223, 223, 223, 223, 223, 223, 223, - 223, 223, 223, 223, 223, 223, 223, 224, 224, 224, - 224, 225, 225, 225, 226, 226, 227, 228, 229, 230, - 230, 230, 231, 231, 231, 232, 232, 232, 232, 232, - 232, 232, 232, 233, 233, 234, 234, 235, 235, 235, - 235, 235, 235, 235, 235, 236, 237, 237, 238, 238, - 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, - 238, 239, 239, 240, 241, 241, 241, 241, 241, 242, - 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, - 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, - 242, 242, 242, 242, 242, 242, 242, 242, 242, 242, - 242, 242, 242, 242, 242, 242, 242, 242, 242, 243, - 243, 243, 243, 243, 243, 244, 244, 245, 245, 245, - 245, 245, 246, 246, 246, 246, 246, 247, 247, 248, - 248, 249, 249, 249, 250, 250, 251, 251, 251, 252, - 252, 252, 252, 253, 253, 253, 253, 253 + 175, 175, 175, 176, 176, 176, 177, 177, 178, 178, + 178, 178, 179, 179, 179, 179, 179, 180, 180, 180, + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, + 182, 182, 183, 183, 183, 183, 183, 183, 183, 183, + 183, 183, 183, 183, 183, 183, 183, 183, 184, 185, + 185, 186, 186, 186, 186, 186, 186, 186, 186, 186, + 186, 186, 186, 186, 187, 187, 189, 188, 190, 190, + 192, 191, 193, 193, 195, 194, 196, 196, 198, 197, + 199, 199, 201, 200, 202, 202, 204, 203, 205, 205, + 207, 206, 208, 208, 210, 209, 211, 211, 213, 212, + 214, 214, 216, 215, 217, 217, 219, 218, 220, 220, + 222, 221, 223, 223, 223, 223, 223, 223, 223, 224, + 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, + 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, + 224, 224, 224, 224, 224, 224, 224, 225, 225, 225, + 225, 226, 226, 226, 227, 227, 228, 229, 230, 231, + 231, 231, 232, 232, 232, 233, 233, 233, 233, 233, + 233, 233, 233, 234, 234, 235, 235, 236, 236, 236, + 236, 236, 236, 236, 236, 237, 238, 238, 239, 239, + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, + 239, 239, 239, 239, 239, 239, 239, 239, 239, 239, + 239, 239, 240, 240, 241, 242, 242, 242, 242, 242, + 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, + 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, + 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, + 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, + 244, 244, 244, 244, 244, 244, 244, 244, 244, 245, + 245, 246, 246, 246, 246, 246, 247, 247, 247, 247, + 247, 247, 248, 248, 249, 249, 250, 250, 250, 251, + 251, 252, 252, 252, 253, 253, 253, 253, 254, 254, + 254, 254, 254 }; static const short yyr2[] = { 0, @@ -666,16 +687,18 @@ static const short yyr2[] = { 0, 2, 3, 6, 8, 1, 8, 12, 8, 12, 8, 12, 11, 15, 1, 2, 9, 2, 6, 9, 9, 8, 8, 8, 6, 4, 2, 0, 2, 1, 6, - 6, 6, 6, 6, 6, 5, 5, 6, 6, 6, - 8, 0, 2, 1, 1, 1, 1, 1, 1, 1, - 3, 2, 2, 2, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 5, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, - 4, 4, 4, 4, 4, 4, 6, 6, 6, 1, - 1, 1, 3, 4, 4, 3, 5, 1, 2, 2, - 3, 3, 11, 9, 7, 7, 3, 0, 3, 1, - 3, 0, 3, 3, 1, 3, 0, 1, 3, 1, - 1, 3, 3, 9, 7, 5, 1, 5 + 11, 6, 11, 6, 11, 6, 11, 6, 11, 6, + 11, 5, 11, 5, 11, 6, 11, 6, 11, 6, + 11, 8, 0, 2, 1, 1, 1, 1, 1, 1, + 1, 3, 2, 2, 2, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 6, 4, 4, 4, 4, 4, 4, 6, 6, 6, + 1, 1, 1, 3, 8, 4, 9, 4, 9, 3, + 5, 1, 2, 2, 3, 3, 11, 9, 7, 7, + 3, 8, 0, 3, 1, 3, 0, 3, 3, 1, + 3, 0, 1, 3, 1, 1, 3, 3, 9, 7, + 5, 1, 5 }; static const short yydefact[] = { 51, @@ -686,19 +709,19 @@ static const short yydefact[] = { 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 185, 0, 0, 0, 0, 52, 54, 53, 55, 56, 57, 58, 59, 63, 65, - 64, 60, 61, 62, 270, 272, 271, 0, 0, 0, + 64, 60, 61, 62, 281, 283, 282, 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, 230, 12, 0, 13, 14, 16, 15, 17, - 288, 288, 0, 68, 0, 0, 0, 0, 0, 0, + 0, 0, 241, 12, 0, 13, 14, 16, 15, 17, + 303, 303, 0, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 297, 0, 0, 0, 0, 297, 0, + 0, 0, 0, 312, 0, 0, 0, 0, 312, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 278, 0, 0, 0, 0, 0, 175, - 0, 297, 175, 206, 0, 297, 297, 0, 0, 0, - 207, 0, 222, 181, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 292, 0, 0, 0, 0, 0, 175, + 0, 312, 175, 206, 0, 312, 312, 0, 0, 0, + 207, 0, 233, 181, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 233, 232, 234, + 0, 0, 0, 0, 0, 0, 0, 244, 243, 245, 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, 0, 0, 0, @@ -706,1610 +729,1686 @@ static const short yydefact[] = { 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 298, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 280, 279, 0, + 0, 313, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 294, 293, 0, 0, 0, 0, 175, 175, 0, 0, 0, 0, 0, 179, 0, 0, 0, 72, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 182, 0, 273, 0, 0, 0, + 0, 0, 0, 0, 182, 0, 284, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 231, - 0, 247, 248, 246, 245, 241, 242, 243, 244, 233, - 232, 237, 238, 239, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 242, 0, 258, 259, 257, 256, 252, 253, 254, 255, + 244, 243, 248, 249, 250, 251, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 290, 0, 0, 0, - 0, 133, 134, 135, 138, 139, 136, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 300, - 301, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 287, 0, 0, 282, - 281, 174, 0, 173, 172, 0, 0, 0, 0, 0, - 177, 176, 205, 0, 178, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 66, 209, 208, 0, 67, - 224, 223, 0, 274, 275, 250, 251, 252, 253, 254, - 255, 256, 257, 258, 259, 0, 261, 262, 263, 264, - 265, 266, 0, 0, 0, 236, 235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 305, 0, 0, + 0, 0, 133, 134, 135, 138, 139, 136, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 315, 316, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 301, 0, 0, + 0, 296, 295, 174, 0, 173, 172, 0, 0, 0, + 0, 0, 177, 176, 205, 0, 178, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 66, 209, 208, + 0, 67, 235, 234, 0, 286, 288, 0, 261, 262, + 263, 264, 265, 266, 267, 268, 269, 270, 0, 272, + 273, 274, 275, 276, 277, 0, 0, 0, 247, 246, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 289, 0, 19, 0, 0, 0, 144, 297, 297, 0, - 297, 156, 0, 164, 297, 297, 0, 0, 299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 168, 170, 0, 0, 0, - 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 0, 0, - 297, 0, 0, 297, 0, 0, 0, 0, 0, 0, - 0, 249, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 297, 297, 0, 0, 0, 0, 297, 297, - 0, 0, 0, 0, 0, 297, 0, 297, 0, 0, - 0, 0, 0, 291, 0, 288, 0, 0, 0, 0, - 297, 0, 297, 0, 0, 276, 302, 303, 143, 0, - 297, 297, 297, 198, 0, 297, 297, 297, 297, 297, - 297, 297, 0, 0, 0, 0, 0, 0, 0, 204, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 70, 0, 0, 0, 0, 292, 0, - 0, 0, 0, 183, 0, 260, 267, 268, 269, 0, + 0, 0, 0, 304, 0, 19, 0, 0, 0, 144, + 312, 312, 0, 312, 156, 0, 164, 312, 312, 0, + 0, 314, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 168, + 170, 0, 0, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 0, 0, 312, 0, 0, 312, 0, 0, + 0, 0, 0, 0, 0, 0, 260, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 312, 312, 0, + 0, 0, 0, 312, 312, 0, 0, 0, 0, 0, + 312, 0, 312, 0, 0, 0, 0, 0, 306, 0, + 303, 0, 0, 0, 0, 312, 0, 312, 0, 0, + 290, 317, 318, 143, 0, 312, 312, 312, 198, 0, + 312, 312, 312, 312, 312, 312, 312, 0, 0, 0, + 0, 0, 0, 0, 0, 204, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 70, + 0, 0, 0, 0, 307, 0, 0, 0, 0, 0, + 183, 0, 0, 271, 278, 279, 280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 225, 226, 227, 228, 229, 0, 0, - 0, 0, 0, 0, 0, 18, 0, 69, 140, 148, - 0, 151, 0, 145, 0, 146, 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 175, 0, 0, 0, 0, 0, + 0, 236, 237, 238, 239, 240, 0, 0, 0, 0, + 0, 0, 0, 18, 0, 69, 140, 148, 0, 151, + 0, 145, 0, 146, 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 154, 0, 297, 297, - 0, 297, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 297, 0, 0, 0, 297, 0, 0, 0, 0, + 0, 0, 0, 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 297, 0, 0, 0, 0, 0, - 0, 0, 0, 288, 0, 153, 163, 277, 0, 202, - 157, 159, 0, 0, 201, 203, 165, 141, 152, 162, - 167, 0, 286, 0, 285, 0, 0, 186, 0, 188, - 0, 190, 0, 71, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 292, 0, - 295, 0, 0, 0, 272, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 216, 217, 0, - 184, 0, 0, 0, 0, 0, 21, 0, 30, 0, - 34, 0, 28, 0, 0, 33, 0, 38, 36, 0, - 0, 0, 0, 0, 0, 45, 0, 0, 0, 0, - 0, 50, 0, 0, 149, 0, 200, 199, 175, 0, - 171, 0, 0, 0, 0, 0, 0, 194, 0, 0, + 0, 0, 0, 0, 0, 154, 0, 312, 312, 0, + 312, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 312, 0, 0, 0, 0, 312, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 297, 294, 293, 297, 0, 0, 210, - 0, 211, 218, 212, 219, 213, 220, 214, 215, 0, - 158, 0, 0, 292, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 297, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 284, 0, 0, - 0, 197, 297, 0, 195, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 312, 0, 0, 0, 0, + 0, 0, 0, 0, 303, 0, 153, 163, 291, 0, + 202, 157, 159, 0, 0, 201, 203, 165, 141, 152, + 162, 167, 0, 0, 300, 0, 299, 0, 0, 186, + 0, 188, 0, 190, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 296, 0, 0, 273, 307, 0, 0, 0, 35, 0, + 307, 0, 310, 0, 0, 0, 283, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 222, + 224, 0, 0, 184, 0, 285, 0, 0, 0, 0, + 21, 0, 30, 0, 34, 0, 28, 0, 0, 33, + 0, 38, 36, 0, 0, 0, 0, 0, 0, 45, + 0, 0, 0, 0, 0, 50, 0, 0, 149, 0, + 200, 199, 175, 302, 0, 171, 0, 0, 0, 0, + 0, 0, 194, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 312, 309, + 308, 312, 0, 0, 210, 0, 212, 226, 214, 228, + 216, 230, 218, 220, 0, 0, 158, 287, 289, 0, + 0, 307, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 312, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 298, 0, 0, 0, 197, + 312, 0, 195, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 311, 0, + 0, 284, 0, 0, 322, 0, 0, 0, 35, 0, 0, 0, 0, 25, 0, 31, 0, 37, 26, 39, 0, 42, 0, 46, 47, 0, 0, 49, 0, 0, 0, 169, 0, 0, 0, 0, 0, 192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 297, 297, 155, 0, 272, 0, 221, 0, + 0, 0, 312, 312, 155, 0, 0, 0, 283, 0, + 232, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 297, 187, 189, 191, 0, + 312, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 87, 91, 95, 142, 147, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 283, 187, 189, 191, 0, 297, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 87, 91, - 95, 142, 147, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 29, 32, 40, 0, 41, 48, 43, + 0, 0, 29, 32, 40, 0, 41, 48, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 297, 0, 0, 0, + 0, 0, 0, 0, 0, 312, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 297, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 308, 306, 0, 0, 0, - 0, 24, 27, 0, 0, 0, 193, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, - 89, 0, 93, 0, 0, 0, 0, 0, 297, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 312, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 211, 213, 227, 215, + 229, 217, 231, 221, 223, 225, 323, 321, 0, 0, + 0, 0, 24, 27, 0, 0, 0, 193, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, + 0, 89, 0, 93, 0, 0, 285, 0, 0, 0, + 312, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 305, 0, 0, 0, 44, 20, 150, 196, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 86, 88, - 90, 92, 94, 96, 0, 0, 0, 0, 0, 297, - 0, 0, 0, 0, 0, 0, 99, 103, 107, 0, - 0, 304, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 5, 297, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 161, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 97, - 0, 101, 0, 105, 0, 297, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 160, - 0, 22, 0, 0, 0, 0, 0, 0, 98, 100, - 102, 104, 106, 108, 297, 0, 0, 0, 111, 115, - 119, 0, 0, 0, 0, 0, 0, 0, 297, 0, + 0, 0, 0, 320, 0, 0, 0, 44, 20, 150, + 196, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 86, 88, 90, 92, 94, 96, 0, 0, 0, 0, + 0, 312, 0, 0, 0, 0, 0, 0, 99, 103, + 107, 0, 0, 319, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 5, 312, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 109, 0, 113, 0, 117, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, - 112, 114, 116, 118, 120, 0, 123, 127, 131, 23, - 0, 0, 0, 0, 0, 0, 0, 121, 0, 125, - 0, 129, 0, 0, 0, 0, 0, 0, 122, 124, - 126, 128, 130, 132, 0, 0, 0 + 0, 161, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 97, 0, 101, 0, 105, 0, 312, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 160, 0, 22, 0, 0, 0, 0, 0, 0, + 98, 100, 102, 104, 106, 108, 312, 0, 0, 0, + 111, 115, 119, 0, 0, 0, 0, 0, 0, 0, + 312, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 109, 0, 113, 0, 117, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 110, 112, 114, 116, 118, 120, 0, 123, 127, + 131, 23, 0, 0, 0, 0, 0, 0, 0, 121, + 0, 125, 0, 129, 0, 0, 0, 0, 0, 0, + 122, 124, 126, 128, 130, 132, 0, 0, 0 }; -static const short yydefgoto[] = { 1435, - 4, 5, 18, 19, 20, 21, 6, 61, 457, 63, - 447, 1208, 577, 1154, 1210, 578, 1155, 1212, 579, 1156, - 1319, 580, 1292, 1321, 581, 1293, 1323, 582, 1294, 1380, - 583, 1366, 1382, 584, 1367, 1384, 585, 1368, 1417, 586, - 1411, 1419, 587, 1412, 1421, 588, 1413, 64, 442, 432, - 433, 434, 435, 68, 69, 70, 71, 72, 947, 948, - 73, 74, 312, 458, 314, 462, 729, 272, 103, 411, - 288, 154, 249, 388, 791, 880, 881, 412, 1037 +static const short yydefgoto[] = { 1487, + 4, 5, 18, 19, 20, 21, 6, 61, 459, 63, + 449, 1259, 581, 1183, 1261, 582, 1184, 1263, 583, 1185, + 1371, 584, 1344, 1373, 585, 1345, 1375, 586, 1346, 1432, + 587, 1418, 1434, 588, 1419, 1436, 589, 1420, 1469, 590, + 1463, 1471, 591, 1464, 1473, 592, 1465, 64, 444, 434, + 435, 436, 437, 68, 69, 70, 71, 72, 962, 963, + 73, 74, 312, 460, 314, 464, 737, 272, 103, 412, + 288, 154, 249, 389, 800, 892, 893, 413, 1057 }; -static const short yypact[] = { 742, --32768,-32768, -117,-32768, 424, 1923, 1114, 29, 30, 38, - 50, 65, 70, 76, -67, -61, -39,-32768,-32768,-32768, --32768, 132, 141, 0, -37, -25, -19, -48, -44, -13, - -6, 127, 24, 178, 182, 211, 224, 244, 344, 100, - -1, -1, 128, 116, 135, 305, 289, 154, 320, 328, - 102, 187, -29, 185, 189,-32768, 193, 368, 377, 353, +static const short yypact[] = { 413, +-32768,-32768, -98,-32768, 40, 2215, 1064, 13, 44, 54, + 61, 91, 108, 114, -68, -28, -26,-32768,-32768,-32768, +-32768, 126, 245, 0, -63, -11, -3, -40, -41, 80, + 89, 172, 96, 186, 236, 284, 53, 243, 323, 125, + 92, 92, 189, 100, 191, 380, 356, 223, 397, 406, + 224, 248, -29, 281, 310,-32768, 294, 464, 477, 451, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768, 214,-32768, 221, 281, 297, - 307, 311, 312, 322, 323, 324, 326, 327, 329, 336, - 346, 347, 351, 354, 355, 356, 358, 1114, 1114, 1114, - 1114, 1036,-32768,-32768, 1961,-32768,-32768,-32768,-32768,-32768, - 359, 359, 403,-32768, 1114, 1114, 1114, 1114, 1114, 1114, - 413, 461, 1114, 1114, 1114, 1114, 361, 1114, 1114, 372, - 1114, 1114, 1114, 543, 1114, 349, 373, 374, 543, 402, - 404, 375, 376, 380, 406, 408, -1, 300, -1, -1, - 1114, 1114, -119,-32768, -83, -1, 407, 409, 410,-32768, - 512, 543,-32768,-32768, -36, 543, 543, 1114, -69, 1114, --32768, 1114,-32768,-32768, 515, 411, 541, 1114, 1114, 1114, - 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, - 1114, 1114, 1114, 1114, 1114, 1114, 1114, 412, 412, 412, - 2416, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, - 1114, 1114, 1114, 1114, 1114, 1114, 1036, 416, 418, 433, - 434, 436, 437, 439, 440, 441, 442, 443, 446, 448, - 449, 471, 472, 473, 474, 476, 477, 479, 480, 481, - 482, 483, 484, 485, 486, 487, 491, 598, 492, 490, - 493, 744, 817, 919, 997, 1090, 1322,-32768, 494, 2440, - 2007, 2464, 2488, 1114, 2512, 2027, 1114, 2047, 2536, 2560, - 1114, 6366, 657, 2584, 1114, 1114, 1114, 670, 1114, 1114, - 1114, 1114, 1114, 1114, 1114, -103, 674,-32768,-32768, 3928, - 3951, -1, -1, 350, 350, -5, 1114, 1114, 1114, 1761, --32768, 80, 1780, -1,-32768, 672, 673, 2608, 600, 1114, - 2632, 19, 579, 21,-32768, 1114, 87, 2656, 2680, 2704, - 2728, 2752, 2776, 2800, 2824, 2848, 2872, 3974, 2896, 2920, - 2944, 2968, 2992, 3016, 3997, 4020, 4043, 1114, 1114,-32768, - 773, 303, 303, 435, 435, -80, -80, -80, -80, -152, - -151, 412, 412, 412, 412, 1866, 677, 678, 679, 680, - 682, 684, 685, 686, 687, 689, 690, 691, 692, 693, - 694, 697, 698, 699, 700, 701, 703, 704, 705, 586, - 708, 710, 711, 712, 715, 714,-32768, 93, 716, 718, - 717,-32768,-32768,-32768,-32768,-32768,-32768, 1114, 713, 719, - 741, 745, 3040, 746, 743, 3064, 748, 750, 752, 1599, --32768, 126, 1114, 754, 2067, 3088, 3112, 1114, 2087, 2107, - 3136, 3160, 3184, 3208, 3232, -1,-32768, 1114, 1114,-32768, --32768,-32768, 583, 27,-32768, 590, 1114, 4066, 4089, 4112, --32768,-32768,-32768, 1114,-32768, -74, 769, 580, 592, 757, - 597, 3256, 761, 596, 602,-32768,-32768,-32768, 1114,-32768, --32768,-32768, 3280,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768, 1114,-32768,-32768,-32768,-32768, --32768,-32768, 1114, 1114, 1114, 225, 225, 1114, 631, 603, - 605, 606, 607, 613, 622, 623, 624, 625, 626, 628, - 630, 632, 633, 634, 635, 636, 637, 638, 640, 641, - 642, 643, 644, 645, 649, 650, 651, 652, 655, 795, --32768, 658,-32768, 656, 3304, -1,-32768, 543, 543, 820, - 543,-32768, 822,-32768, 543, 543, 1114, 1114,-32768, 1341, - 659, 824, 826, 839, 352, 841, 842, 863, 864, 865, - 866, 867, 98, 4135, 4158,-32768,-32768, 2127, -1, -1, - -1, 1364,-32768, 707, 720, 721, 722, 738, 739, 740, - 747, 751, 771, 774, 775, 877,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1114, 1114, - 543, 1114, 878, 543, 6, 285, 879, 3328, 3352, 3376, - 3400, 6366, 777, 881, 1114, 1114, -1, 884, 907, 755, - 908, 913, 543, 543, 915, -1, 943, 944, 543, 543, - 945, 946, 947, 948, 949, 543, 391, 543, 950, 951, - 952, 955, 956,-32768, 954, 359, 957, 1, 11, 963, - 543, 973, 543, 975, 977, 1623, 1599,-32768,-32768, 1114, - 543, 543, 543,-32768, 231, 543, 543, 543, 543, 543, - 543, 543, 1114, 1114, 1114, 791, -129, -124, 139,-32768, - 1779, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, - 1114, 1114, 1114,-32768, 4181, 4204, 978, 3424, 146, 903, - 99, 813, 1114,-32768, 1114,-32768,-32768,-32768,-32768, 1114, - 818, 4227, 4250, -55, 821, 819, 823, 825, 828, 829, - 832, 833, -16, 835, 836, 837, 852, 853, 854, 855, - 856, 857, 838,-32768,-32768,-32768,-32768,-32768, 858, 859, - 861, 868, 869, 862, 872,-32768, 873,-32768,-32768,-32768, - -1,-32768, 985,-32768, 988,-32768,-32768, 1114, 4273, 992, - 999, 1027, 1114, 1114, 1028, 1029, 1030, 1037, 1038, 1065, - 1075, 2147, 3448, 1885, 350, -1, 1076, -1, 1079, -1, - -2, 1080, 4296, 4319, 4342, 4365, 4388, 4411, 4434, 4457, - 4480, 4503, 4526, 4549, 1114, 1114,-32768, 1081, 543, 543, - 1005, 543, 325, 609, 609, 1114, 1114, 1083, 1084, 1087, - 3472, 212, 1036, 1089, 1114, 543, 1088, 1092, 1091, 934, - 1093, 391, 1094, 1095, 1114, 1096, 1098, 1106, 1107, 1111, - 391, 1114, 1114, 1114, 543, 1109, 1113, 391, 1114, 1116, - 1146, 1153, 1114, 359, 62,-32768,-32768, 6366, 1114,-32768, --32768,-32768, 1383, 1404,-32768,-32768,-32768,-32768,-32768,-32768, --32768, 989,-32768, 1114,-32768, 991, 131,-32768, 144,-32768, - 147,-32768, -28,-32768, 1114, 1114, 1114, 1114, 1114, 1114, - 1114, 1114, 1114, 1114, 1114, 1114, 4572, 4595, 146, 149, --32768, 143, 990, 1085, 1004, 1172, 609, 609, 1114, 1462, - 90, 1487, 92, 1510, 94, 1529, 1550,-32768,-32768, 1173, --32768, 1182, 1036, 1009, 4618, 1033,-32768, 1034,-32768, 1040, --32768, 1035,-32768, 1042, 3496,-32768, 1043,-32768,-32768, 1044, - 1045, 3520, 4641, 3544, 1047,-32768, 1057, 1059, 4664, 1062, - 1063,-32768, 4687, 1066,-32768, 4710,-32768,-32768, 350, 1952, --32768, 1114, 1114, 1114, 1192, 1061, -42,-32768, 4733, 4756, - 4779, 4802, 4825, 4848, 4871, 4894, 4917, 4940, 4963, 4986, - 1114, 1114, 1117, 543,-32768,-32768, 543, 1114, 1202,-32768, - 2392,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 23, --32768, 1720, 1201, 146, 391, 1210, 1114, 1236, 391, 1246, - 1250, 1248, 1251, 1254, 1114, 1255, 543, 1256, 1257, 1114, - 1253, 1264, 1114, 1268, 1269, 1103, 1114,-32768, 2167, 2187, - 2207,-32768, 543, 1270,-32768, 1114, 1114, 1114, 1114, 1114, - 1114, 1114, 1114, 1114, 1114, 1114, 1114, 2227, 2247, 1108, --32768, 1112, 1569, 87, 1104, 1438, 1274, 1114,-32768, 1115, - 1118, 1120, 5009,-32768, 1121,-32768, 1122,-32768,-32768,-32768, - 3568,-32768, 1133,-32768,-32768, 3592, 1134,-32768, 3616, 1136, - 1139,-32768, 2267, 1277, 1279, 41, 1141,-32768, 5032, 5055, - 5078, 5101, 5124, 5147, 5170, 5193, 5216, 3640, 3664, 3688, - 1280, 1284, 543, 543,-32768, 1220, -127, 5239,-32768, 1036, - 391, 391, 391, 391, 1305, 1306, 1309, 391, 1310, 1311, - 1312, 1314, 1315,-32768,-32768,-32768,-32768, -28, 543, 1114, - 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114,-32768,-32768, --32768,-32768,-32768, 1161, 1160, 1162, 1114, 1114, 1036, 1164, - 1165, 1166, 1167,-32768,-32768,-32768, 1169,-32768,-32768,-32768, - 1170, 1171, -40, 1174, 5262, 5285, 5308, 5331, 5354, 5377, - 5400, 5423, 5446, 1175, 1177, 1181, 543, 1262, 1338, 2287, - 5469, 1750, 391, 391, 1339, 1347, 391, 1349, 1350, 1351, - 543, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, - 1114, 1114, 1114, 1184, 1187,-32768,-32768, 1114, 1114, 1190, - 1191,-32768,-32768, 1203, 1204, 1189,-32768, 1199, 5492, 5515, - 5538, 5561, 5584, 5607, 5630, 5653, 5676, 226, 6366, 235, - 6366, 240, 6366, 1265, 1114, 1981, 1036, 391, 543, 1356, - 1369, 1370, 1371, 1114, 1114, 1114, 1114, 1114, 1114, 1114, - 1114, 1114, 1114, 1372, 1114, 1373, 1114, 1378, 1215, 5699, - 1114,-32768, 1036, 1219, 1221,-32768,-32768,-32768,-32768, 5722, - 5745, 5768, 5791, 5814, 5837, 3712, 3736, 3760, 6366,-32768, - 6366,-32768, 6366,-32768, 1114, 1114, 2307, 2373, 391, 543, - 1114, 1114, 1114, 1114, 1114, 1114,-32768,-32768,-32768, 5860, - 2327,-32768, 1252, 1224, 1226, 5883, 5906, 5929, 5952, 5975, - 5998, 1225, 1228, 1229, 1114, 1395,-32768, 543, 391, 1114, - 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 2347,-32768, - 1233, 1235, 6021, 6044, 6067, 6090, 6113, 6136, 241, 6366, - 245, 6366, 246, 6366, 1397, 543, 1405, 1114, 1114, 1114, - 1114, 1114, 1114, 1114, 1406, 1114, 1407, 1114, 1408,-32768, - 1258,-32768, 6159, 6182, 6205, 3784, 3808, 3832, 6366,-32768, - 6366,-32768, 6366,-32768, 543, 1114, 1114, 1114,-32768,-32768, --32768, 1259, 6228, 6251, 6274, 1244, 1261, 1272, 543, 1114, - 1114, 1114, 1114, 1114, 1114, 1275, 6297, 6320, 6343, 251, - 6366, 257, 6366, 259, 6366, 391, 1114, 1114, 1114, 1114, - 1411, 1114, 1416, 1114, 1417, 1263, 3856, 3880, 3904, 6366, --32768, 6366,-32768, 6366,-32768, 1418,-32768,-32768,-32768,-32768, - 1303, 1313, 1332, 1114, 1114, 1114, 279, 6366, 298, 6366, - 302, 6366, 1114, 1419, 1114, 1420, 1114, 1439, 6366,-32768, - 6366,-32768, 6366,-32768, 1446, 1485,-32768 +-32768,-32768,-32768,-32768,-32768, 320,-32768, 376, 384, 385, + 390, 391, 393, 409, 410, 411, 414, 416, 417, 418, + 421, 424, 425, 426, 427, 428, 429, 1064, 1064, 1064, + 1064, 1507,-32768,-32768, 2237,-32768,-32768,-32768,-32768,-32768, + 430, 430, 575,-32768, 1064, 1064, 1064, 1064, 1064, 1064, + 576, 585, 1064, 1064, 1064, 1064, 431, 1064, 1064, 432, + 1064, 1064, 1064, 693, 1064, 435, 433, 434, 693, 439, + 440, 466, 467, 468, 469, 470, 92, 471, 92, 92, + 1064, 1064, -122,-32768, -94, 92, 472, 474, 475,-32768, + 632, 693,-32768,-32768, 22, 693, 693, 1064, -69, 1064, +-32768, 1064,-32768,-32768, 633, 479, 7, 1064, 1064, 1064, + 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1064, + 1064, 1064, 1064, 1064, 1064, 1064, 1064, 485, 485, 485, + 2756, 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1064, + 1064, 1064, 1064, 1064, 1064, 1064, 1507, 483, 488, 489, + 490, 491, 492, 493, 498, 499, 500, 501, 502, 503, + 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, + 527, 531, 532, 533, 556, 557, 558, 647, 559, 560, + 562, 832, 954, 1007, 1088, 1391, 1415,-32768, 563, 2780, + 2347, 2804, 2828, 1064, 2852, 2367, 1064, 2387, 2876, 2900, + 1064, 6706, 719, 2924, 1064, 1064, 1064, 721, 1064, 1064, + 1064, 1064, 1064, 1064, 1064, 168, 9,-32768,-32768, 4268, + 4291, 92, 92, 423, 423, 199, 1064, 1064, 1064, 2033, +-32768, 99, 2054, 92,-32768, 725, 726, 2948, 655, 1064, + 2972, -1, 288, 20,-32768, 1064, 136, 564, 2996, 3020, + 3044, 3068, 3092, 3116, 3140, 3164, 3188, 3212, 4314, 3236, + 3260, 3284, 3308, 3332, 3356, 4337, 4360, 4383, 1064, 1064, +-32768, 1144, -75, -75, 242, 242, 129, 129, 129, 129, + -118, -109, 485, 485, 485, 485, 1965, 731, 733, 735, + 736, 737, 738, 739, 740, 741, 742, 743, 745, 746, + 747, 748, 751, 752, 753, 756, 757, 758, 759, 763, + 646, 767, 769, 784, 785, 788, 795,-32768, 171, 796, + 797, 799,-32768,-32768,-32768,-32768,-32768,-32768, 1064, 798, + 800, 801, 803, 3380, 804, 806, 3404, 807, 808, 809, + 1877,-32768, 113, 1064, 810, 2407, 3428, 3452, 1064, 2427, + 2447, 3476, 3500, 3524, 3548, 3572, 92,-32768, 641, 1064, + 1064,-32768,-32768,-32768, 649, 2101,-32768, 650, 1064, 4406, + 4429, 4452,-32768,-32768,-32768, 1064,-32768, -55, 278, 648, + 652, 816, 657, 3596, 818, 658, 662,-32768,-32768,-32768, + 1064,-32768,-32768,-32768, 3620,-32768,-32768, 1064,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1064,-32768, +-32768,-32768,-32768,-32768,-32768, 1064, 1064, 1064, 267, 267, + 1064, 692, 664, 666, 667, 668, 671, 672, 673, 674, + 676, 677, 678, 679, 680, 683, 684, 685, 686, 687, + 689, 690, 694, 696, 697, 698, 699, 700, 701, 715, + 716, 717, 856,-32768, 718,-32768, 720, 3644, 92,-32768, + 693, 693, 879, 693,-32768, 882,-32768, 693, 693, 1064, + 1064,-32768, 1434, 727, 884, 888, 889, 415, 891, 892, + 893, 894, 895, 896, 897, 252, 1064, 4475, 4498,-32768, +-32768, 2467, 92, 92, 92, 1456,-32768, 765, 766, 773, + 787, 790, 791, 792, 794, 826, 827, 830, 834, 901, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768, 1064, 1064, 693, 1064, 927, 693, 4, 158, + 948, 789, 3668, 3692, 3716, 3740, 6706, 774, 905, 1064, + 1064, 92, 953, 959, 813, 961, 962, 693, 693, 963, + 92, 965, 970, 693, 693, 971, 972, 974, 980, 999, + 693, 422, 693, 1000, 1002, 1003, 1001, 1006,-32768, 1004, + 430, 1009, 1, 11, 1010, 693, 1011, 693, 1013, 1014, + 1899, 1877,-32768,-32768, 1064, 693, 693, 693,-32768, 329, + 693, 693, 693, 693, 693, 693, 693, 1064, 2158, 1064, + 1064, 835, -135, -112, -99,-32768, 711, 1064, 1064, 1064, + 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1064,-32768, + 4521, 4544, 1015, 3764, 156, 931, 155, 849, 851, 1064, +-32768, 1064, 852,-32768,-32768,-32768,-32768, 1064, 857, 4567, + 4590, -14, 858, 870, 872, 873, 875, 876, 878, 880, + 110, 885, 881, 883, 886, 887, 898, 903, 928, 929, + 926,-32768,-32768,-32768,-32768,-32768, 930, 947, 949, 951, + 952, 955, 966,-32768, 967,-32768,-32768,-32768, 92,-32768, + 1035,-32768, 1038,-32768,-32768, 1064, 4613, 1041, 1050, 1051, + 1064, 1064, 1054, 1055, 1056, 1057, 1058, 1110, 1115, 2487, + 950, 3788, 2269, 423, 92, 1117, 92, 1130, 92, 24, + 1131, 4636, 4659, 4682, 4705, 4728, 4751, 4774, 4797, 4820, + 4843, 4866, 4889, 1064, 1064,-32768, 1063, 693, 693, 1067, + 693, 484, 902, 902, 1064, 1064, 1132, 1152, 1064, 1164, + 3812, 216, 1168, 1507, 1170, 1064, 693, 1190, 1171, 1191, + 1040, 1193, 422, 1194, 1198, 1064, 1196, 1200, 1211, 1212, + 1201, 422, 1064, 1064, 1064, 693, 1213, 1219, 422, 1064, + 1220, 1221, 1222, 1064, 430, 3,-32768,-32768, 6706, 1064, +-32768,-32768,-32768, 1536, 1560,-32768,-32768,-32768,-32768,-32768, +-32768,-32768, 1059, 1226,-32768, 1064,-32768, 1068, 299,-32768, + 301,-32768, 303,-32768, -21,-32768, 1064, 1064, 1064, 1064, + 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1064, 4912, 4935, + 156, 260,-32768, 166, 1079, 1147, 1078, 1245, 902, 902, + 1064, 1579, 12, 1601, 58, 1620, 60, 1640, 1670,-32768, +-32768, 2223, 1246,-32768, 1248, 325, 1507, 1086, 4958, 1089, +-32768, 1090,-32768, 1092,-32768, 1087,-32768, 1093, 3836,-32768, + 1095,-32768,-32768, 1096, 1097, 3860, 4981, 3884, 1099,-32768, + 1112, 1114, 5004, 1100, 1116,-32768, 5027, 1111,-32768, 5050, +-32768,-32768, 423,-32768, 2295,-32768, 1064, 1064, 1064, 1258, + 1119, -38,-32768, 5073, 5096, 5119, 5142, 5165, 5188, 5211, + 5234, 5257, 5280, 5303, 5326, 1064, 1064, 1145, 693,-32768, +-32768, 693, 1064, 10,-32768, 2732,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768, 1123, 23,-32768,-32768,-32768, 1483, + 1278, 156, 422, 1284, 1064, 1299, 422, 1300, 1304, 1303, + 1306, 1307, 1064, 1308, 693, 1309, 1318, 1064, 1322, 1320, + 1064, 1323, 1325, 1156, 1064,-32768, 2507, 2527, 2547,-32768, + 693, 1326,-32768, 1064, 1064, 1064, 1064, 1064, 1064, 1064, + 1064, 1064, 1064, 1064, 1064, 2567, 2587, 1161,-32768, 1167, + 1697, 136, 1163, 1330, 1165, 1166, 1332, 1064,-32768, 1173, + 1174, 1175, 5349,-32768, 1185,-32768, 1186,-32768,-32768,-32768, + 3908,-32768, 1176,-32768,-32768, 3932, 1187,-32768, 3956, 1189, + 1192,-32768, 2607, 1333, 1352, 43, 1195,-32768, 5372, 5395, + 5418, 5441, 5464, 5487, 5510, 5533, 5556, 3980, 4004, 4028, + 1353, 1355, 693, 693,-32768, 1064, 239, 1280, 93, 5579, +-32768, 1507, 422, 422, 422, 422, 1360, 1362, 1363, 422, + 1364, 1374, 1376, 1379, 1380,-32768,-32768,-32768,-32768, -21, + 693, 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1064, +-32768,-32768,-32768,-32768,-32768, 1218, 1216, 2246, 603, 902, + 902, 1064, 1064, 1064, 1217, 1064, 1064, 1507, 1223, 1224, + 1225, 1227,-32768,-32768,-32768, 1230,-32768,-32768,-32768, 1231, + 1232, -35, 1236, 5602, 5625, 5648, 5671, 5694, 5717, 5740, + 5763, 5786, 1235, 1237, 1238, 693, 1310, 1234, 1384, 1724, + 67, 1746, 94, 1765, 97, 1795, 1825, 1852, 1389, 2627, + 5809, 2041, 422, 422, 1403, 1404, 422, 1390, 1406, 1407, + 693, 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1064, + 1064, 1064, 1064, 1241, 1244, 1418,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1064, 1064, + 1255, 1256,-32768,-32768, 1257, 1260, 1254,-32768, 1259, 5832, + 5855, 5878, 5901, 5924, 5947, 5970, 5993, 6016, 170, 6706, + 262, 6706, 282, 6706, 1349, 1064, 325, 2321, 1507, 422, + 693, 1430, 1432, 1435, 1436, 1064, 1064, 1064, 1064, 1064, + 1064, 1064, 1064, 1064, 1064, 1437, 1064, 1438, 1064, 1439, + 1276, 6039, 1064,-32768, 1507, 1279, 1281,-32768,-32768,-32768, +-32768, 6062, 6085, 6108, 6131, 6154, 6177, 4052, 4076, 4100, + 6706,-32768, 6706,-32768, 6706,-32768, 1064, 1064, 2647, 2713, + 422, 693, 1064, 1064, 1064, 1064, 1064, 1064,-32768,-32768, +-32768, 6200, 2667,-32768, 1312, 1282, 1286, 6223, 6246, 6269, + 6292, 6315, 6338, 1285, 1293, 1295, 1064, 1442,-32768, 693, + 422, 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1064, + 2687,-32768, 1288, 1298, 6361, 6384, 6407, 6430, 6453, 6476, + 295, 6706, 297, 6706, 360, 6706, 1463, 693, 1465, 1064, + 1064, 1064, 1064, 1064, 1064, 1064, 1467, 1064, 1468, 1064, + 1469,-32768, 1314,-32768, 6499, 6522, 6545, 4124, 4148, 4172, + 6706,-32768, 6706,-32768, 6706,-32768, 693, 1064, 1064, 1064, +-32768,-32768,-32768, 1315, 6568, 6591, 6614, 1316, 1317, 1331, + 693, 1064, 1064, 1064, 1064, 1064, 1064, 1324, 6637, 6660, + 6683, 361, 6706, 367, 6706, 369, 6706, 422, 1064, 1064, + 1064, 1064, 1470, 1064, 1471, 1064, 1472, 1311, 4196, 4220, + 4244, 6706,-32768, 6706,-32768, 6706,-32768, 1478,-32768,-32768, +-32768,-32768, 1334, 1335, 1336, 1064, 1064, 1064, 371, 6706, + 373, 6706, 377, 6706, 1064, 1479, 1064, 1482, 1064, 1487, + 6706,-32768, 6706,-32768, 6706,-32768, 1502, 1503,-32768 }; static const short yypgoto[] = {-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1480,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1501,-32768, 941,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1499, 1501, - -293, 234, 1502,-32768,-32768,-32768,-32768,-32768, 401, -932, --32768,-32768,-32768, 1196,-32768,-32768, -771, -7,-32768, 1007, - -10,-32768, -111,-32768, -870, 736, 778,-32768,-32768 +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1506, 1508, + -291, 396, 1509,-32768,-32768,-32768,-32768,-32768, 379, -960, +-32768,-32768,-32768, 1199,-32768,-32768, -785, -7,-32768, 1012, + -10,-32768, -111,-32768, -879, 755, 833,-32768,-32768 }; -#define YYLAST 6531 +#define YYLAST 6870 static const short yytable[] = { 102, - 250, 436, 148, 862, 121, 169, 739, 127, 963, 691, - 309, 130, 216, 216, 1015, 945, 740, 945, -236, -235, - 7, 946, 454, 946, 454, 304, 1035, 292, 293, 945, - 153, 155, 292, 293, 104, 946, 105, 292, 293, 766, - 912, 1127, 767, 106, 768, 177, 1107, 769, 455, 921, - 455, 294, 741, 292, 293, 107, 928, 25, 26, 27, - 28, 29, 30, 31, 32, 426, 33, 935, 35, 36, - 108, 38, 39, 292, 293, 109, 338, 339, 213, 214, - 215, 110, 292, 293, 216, 443, 444, 295, 692, 51, - 198, 199, 200, 201, 217, 973, 563, 975, 310, 977, - 111, 292, 293, 52, 53, 793, 112, 252, 253, 254, - 255, 256, 257, 1040, 807, 260, 261, 262, 263, 128, - 265, 266, 129, 268, 269, 270, 131, 274, 113, 1014, - 123, 1170, 166, 124, 305, 167, 286, 114, 170, 289, - 292, 293, 125, 290, 291, 296, 157, 115, 126, 158, - 159, 292, 293, 816, 132, 149, 150, 292, 293, 60, - 308, 133, 311, 437, 313, 134, 151, 122, 863, 152, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, - 456, 135, 460, 1036, 341, 342, 343, 344, 345, 346, - 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 1015, 1108, 136, 1041, 75, 76, 137, 1045, 292, 293, + 250, 1033, 456, 438, 121, 169, 747, 697, 949, 309, + 317, 978, 428, 1052, 130, 127, 748, 988, 104, 960, + 292, 293, 960, 456, 961, 304, 1055, 961, 457, 874, + 153, 155, 775, 292, 293, 776, 960, 926, 7, -1, + 8, 961, 9, 292, 293, 216, 935, 294, 1129, 457, + 105, -247, 749, 942, 216, 777, 292, 293, 778, 106, + -246, 292, 293, 990, 698, 992, 107, 318, 779, 429, + 1053, 780, 1229, 205, 206, 295, 207, 208, 209, 210, + 339, 340, 213, 214, 215, 699, 139, 140, 216, 141, + 198, 199, 200, 201, 217, 148, 108, 310, 111, 1231, + 292, 293, 1233, 123, 445, 446, 124, 252, 253, 254, + 255, 256, 257, 109, 567, 260, 261, 262, 263, 110, + 265, 266, 1060, 268, 269, 270, 128, 274, 131, 129, + 157, 114, 1032, 158, 159, 1210, 286, 170, 112, 289, + 113, 292, 293, 290, 291, 296, 10, 11, 12, 13, + 14, 15, 16, 17, 818, 125, 292, 293, 292, 293, + 308, 802, 311, 126, 313, 700, 122, 292, 293, 458, + 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, + 462, 305, 1056, 875, 342, 343, 344, 345, 346, 347, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 134, 1033, 1130, 292, 293, 292, 293, 1061, 75, 76, + 136, 1065, 292, 293, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, 95, 96, 97, 1149, 132, 149, 150, 292, + 293, 115, 292, 293, 166, 133, 404, 167, 151, 407, + 1156, 152, 135, 411, 177, 292, 293, 416, 417, 418, + 137, 420, 421, 422, 423, 424, 425, 426, 827, 142, + 541, 432, 433, 542, 339, 340, 213, 214, 215, 440, + 441, 442, 216, 448, 147, 461, 803, 804, 805, 806, + 466, 467, 454, 202, 203, 204, 205, 206, 465, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 138, 807, + 808, 216, 798, 292, 293, 799, 701, 1159, 1160, 1161, + 1162, 489, 490, 979, 1166, 427, 981, 1285, 523, 524, + 1286, 568, 569, 570, 571, 572, 573, 574, 575, 576, + 577, 578, 579, 143, 292, 293, 144, 145, 156, 146, + 160, 202, 203, 204, 205, 206, 439, 207, 208, 209, + 210, 211, 212, 213, 214, 215, 761, 762, 100, 216, + 1150, 1151, 101, 1152, 161, 271, 116, 117, 118, 119, + 162, 528, 163, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 164, 1153, 1154, 216, 543, 292, 293, 120, + 165, 548, -7, -7, 168, -7, 556, 1241, 1242, 668, + 659, 1245, 558, 559, 213, 214, 215, 979, 980, 1287, + 216, 562, 1288, 202, 203, 204, 205, 206, 566, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 580, 1289, + 171, 216, 1290, 600, 292, 293, 292, 293, 292, 293, + 602, 660, 1386, 173, 1388, 1387, 957, 1389, 958, 174, + 959, 603, 40, 41, 42, 43, 172, 45, 604, 605, + 606, 175, 868, 607, 1296, 176, 75, 897, 898, 998, + 999, 177, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 732, 733, 734, 735, 736, 643, -7, + -7, -7, -7, -7, -7, -7, -7, 1390, 1442, 745, + 1391, 1443, 651, 652, 1444, 1336, 1446, 1445, 1475, 1447, + 1477, 1476, 178, 1478, 1479, 1, 2, 1480, 3, 669, + 179, 180, 673, 674, 675, 300, 181, 182, 303, 183, + 202, 203, 204, 205, 206, 1364, 207, 208, 209, 210, + 339, 340, 213, 214, 215, 184, 185, 186, 216, 251, + 187, 258, 188, 189, 190, 691, 692, 191, 694, 259, + 192, 193, 194, 195, 196, 197, 248, 264, 267, 276, + 277, 712, 710, 711, 275, 75, 897, 1189, 279, 280, + 721, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 281, 282, 283, 284, 285, 301, 315, 899, + 900, 297, 287, 298, 299, 316, 100, 757, 216, 358, + 901, 388, 1448, 152, 359, 360, 361, 362, 363, 364, + 770, 1024, 772, 773, 365, 366, 367, 368, 369, 370, + 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, + 792, 793, 371, 372, 373, 374, 375, 376, 377, 378, + 379, 380, 811, 381, 812, 75, 76, 382, 383, 384, + 814, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 385, 386, 387, 414, 390, 419, 391, 392, + 399, 450, 451, 948, 453, 493, 468, 494, 846, 495, + 496, 497, 498, 499, 500, 501, 502, 503, 849, 504, + 505, 506, 507, 854, 855, 508, 509, 510, 899, 900, + 511, 512, 513, 514, 869, 100, 871, 515, 873, 901, + 516, 517, 152, 518, 568, 569, 570, 571, 572, 573, + 574, 575, 576, 577, 578, 579, 889, 890, 519, 520, + 521, 903, 905, 907, 902, 904, 906, 908, 909, 522, + 525, 912, 526, 527, 529, 530, 917, 531, 919, 532, + 534, 535, 537, 557, 538, 539, 544, 593, 929, 560, + 561, 594, 595, 596, 598, 936, 937, 938, 122, 599, + 608, 609, 943, 610, 611, 612, 947, 393, 613, 614, + 615, 616, 950, 617, 618, 619, 620, 621, 98, 99, + 622, 623, 624, 625, 626, 100, 627, 628, 955, 101, + 639, 629, 271, 630, 631, 632, 633, 634, 635, 964, + 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, + 975, 781, 636, 637, 638, 646, 640, 641, 648, 289, + 656, 198, 199, 986, 657, 658, 655, 661, 662, 663, + 664, 665, 666, 667, 75, 897, 690, 709, 708, 1000, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 794, 795, 796, 797, 138, 292, 293, 292, 293, - 292, 293, 464, 465, 292, 293, 403, 139, 140, 406, - 141, 520, 521, 410, 798, 799, 663, 415, 416, 417, - 147, 419, 420, 421, 422, 423, 424, 425, 753, 754, - 142, 430, 431, 116, 117, 118, 119, 292, 293, 438, - 439, 440, 693, 446, 538, 292, 293, 539, 156, 942, - 292, 293, 452, 292, 293, 160, 120, 770, 463, 161, - 771, 964, 943, 789, 966, 944, 790, 964, 965, 1130, - 1131, 1132, 1133, 162, 163, 164, 1137, 75, 885, 886, - 486, 487, 165, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 168, 171, 172, 654, 202, 203, - 204, 205, 206, 173, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 174, 143, 100, 216, 144, 145, 101, - 146, 175, 271, 213, 214, 215, 177, 176, 178, 216, - 525, 1190, 1191, 300, 1233, 1194, 303, 1234, 655, 40, - 41, 42, 43, 1235, 45, 540, 1236, 251, 1237, 1334, - 545, 1238, 1335, 1336, 1338, 553, 1337, 1339, 258, 1390, - 554, 555, 1391, -1, 8, 1392, 9, 1394, 1393, 558, - 1395, 202, 203, 204, 205, 206, 562, 207, 208, 209, - 210, 338, 339, 213, 214, 215, 1244, 1423, 179, 216, - 1424, 596, 205, 206, 694, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 180, 259, 1425, 216, 598, 1426, - 1427, 856, 287, 1428, 181, 599, 600, 601, 182, 183, - 602, 887, 888, 724, 725, 726, 727, 728, 100, 184, - 185, 186, 889, 187, 188, 152, 189, 1284, 202, 203, - 204, 205, 206, 190, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 191, 192, 638, 216, 301, 193, 275, - 315, 194, 195, 196, 737, 197, 248, 1312, 264, 646, - 647, 10, 11, 12, 13, 14, 15, 16, 17, 267, - 276, 277, 281, 282, 317, 75, 76, 283, 667, 668, - 669, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 279, 284, 280, 285, 216, 297, 316, 298, - 299, 685, 686, 357, 688, 358, 459, 207, 208, 209, - 210, 338, 339, 213, 214, 215, 704, 702, 703, 216, - 359, 360, 387, 361, 362, 713, 363, 364, 365, 366, - 367, 75, 885, 368, 1396, 369, 370, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 371, 372, - 373, 374, 749, 375, 376, 1006, 377, 378, 379, 380, - 381, 382, 383, 384, 385, 762, 763, 764, 386, 390, - 389, 391, 398, 413, 773, 774, 775, 776, 777, 778, - 779, 780, 781, 782, 783, 784, 418, 427, 448, 449, - 451, 490, 491, 492, 493, 801, 494, 802, 495, 496, - 497, 498, 803, 499, 500, 501, 502, 503, 504, 98, - 99, 505, 506, 507, 508, 509, 100, 510, 511, 512, - 101, 513, 514, 271, 515, 516, 517, 518, 519, 526, - 522, 524, 934, 523, 527, 202, 203, 204, 205, 206, - 835, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 838, -7, -7, 216, -7, 843, 844, 528, 532, 392, - 589, 529, 531, 534, 556, 857, 535, 859, 536, 861, - 541, 557, 590, 591, 592, 887, 888, 594, 595, 122, - 603, 604, 100, 605, 606, 607, 889, 877, 878, 152, - 488, 608, 891, 893, 895, 890, 892, 894, 896, 897, - 609, 610, 611, 612, 613, 903, 614, 905, 615, 634, - 616, 617, 618, 619, 620, 621, 622, 915, 623, 624, - 625, 626, 627, 628, 922, 923, 924, 629, 630, 631, - 632, 929, 393, 633, 636, 933, 641, 635, 643, 650, - 651, 936, 652, 564, 565, 566, 567, 568, 569, 570, - 571, 572, 573, 574, 575, 653, 940, 656, 657, -7, - -7, -7, -7, -7, -7, -7, -7, 949, 950, 951, - 952, 953, 954, 955, 956, 957, 958, 959, 960, 658, - 659, 660, 661, 662, 672, 1, 2, 289, 3, 198, - 199, 971, 684, 701, 689, 695, 705, 673, 674, 675, - 202, 203, 204, 205, 206, 982, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 676, 677, 678, 216, 706, - 708, 273, 700, 707, 679, 709, 278, 712, 680, 202, - 203, 204, 205, 206, 394, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 1009, 1010, 1011, 216, 681, 302, - 576, 682, 683, 306, 307, 714, 715, 718, 719, 720, - 721, 722, 731, 1028, 1029, 732, 733, 734, 735, 736, - 1033, 765, 738, 202, 203, 204, 205, 206, 742, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 744, 1043, - 746, 216, 747, 787, 792, 800, 804, 1051, 809, 808, - 836, 810, 1056, 837, 811, 1059, 812, 840, 813, 1063, - 814, 815, 395, 817, 841, 818, 819, 826, 1069, 1070, - 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, - 820, 821, 822, 823, 824, 825, 827, 828, 1088, 829, - 1090, 832, 842, 845, 846, 847, 830, 831, 75, 76, - 833, 834, 848, 849, 77, 78, 79, 80, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 202, 203, 204, 205, 206, - 850, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 851, 858, 1129, 216, 860, 864, 883, 879, 898, 899, - 900, 904, 910, 907, 908, 396, 909, 914, 911, 913, - 917, 916, 1145, 1146, 1147, 1148, 1149, 1150, 1151, 1152, - 1153, 918, 919, 920, 926, 927, 75, 76, 930, 1160, - 1161, 1162, 77, 78, 79, 80, 81, 82, 83, 84, + 97, 678, 679, 695, 202, 203, 204, 205, 206, 680, + 207, 208, 209, 210, 339, 340, 213, 214, 215, 1027, + 1028, 1029, 216, 681, 702, 713, 682, 683, 684, 394, + 685, 714, 703, 716, 717, 720, 273, 722, 1046, 1047, + 715, 278, 723, 726, 727, 1051, 728, 202, 203, 204, + 205, 206, 729, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 686, 687, 302, 216, 688, 1063, 306, 307, + 689, 730, 739, 742, 774, 1071, 740, 741, 743, 744, + 1076, 801, 395, 1079, 746, 750, 752, 1083, 754, 755, + 796, 809, 810, 813, 815, 819, 1089, 1090, 1091, 1092, + 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 820, 821, + 847, 822, 823, 848, 824, 825, 851, 826, 1110, 829, + 1112, 830, 828, 831, 832, 852, 853, 899, 900, 856, + 857, 858, 859, 860, 100, 833, 75, 76, 901, 891, + 834, 152, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 202, 203, 204, 205, 206, 931, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 932, 939, - 967, 216, 941, 968, 1199, 1200, 1201, 1202, 1203, 1204, - 1205, 1206, 1207, 1209, 1211, 1213, 969, 970, 983, 980, - 1216, 1217, 202, 203, 204, 205, 206, 981, 207, 208, - 209, 210, 211, 212, 213, 214, 215, 1012, 1030, 100, - 216, 985, 986, 101, 988, 1034, 1039, 1240, 987, 1243, - 989, 991, 1042, 992, 993, 997, 1250, 1251, 1252, 1253, - 1254, 1255, 1256, 1257, 1258, 1259, 998, 1261, 999, 1263, - 1001, 1013, 1002, 1267, 1004, 1268, 202, 203, 204, 205, - 206, 1044, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 1046, 1047, 1048, 216, 1057, 1049, 1280, 1281, 1050, - 1052, 1054, 1055, 1286, 1287, 1288, 1289, 1290, 1291, 1058, - 98, 99, 1060, 1061, 1062, 1068, 1086, 100, 1083, 1089, - 1084, 101, 1105, 1091, 1106, 1122, 1092, 1309, 1093, 1123, - 1095, 1096, 1313, 1314, 1315, 1316, 1317, 1318, 1320, 1322, - 1324, 1098, 1126, 1100, 1102, 639, 640, 1103, 642, 1109, - 1134, 1135, 644, 645, 1136, 1138, 1139, 1140, 1141, 1142, - 1343, 1344, 1345, 1346, 1347, 1348, 1349, 397, 1351, 1157, - 1353, 1158, 1163, 1164, 1159, 1165, 1166, 1167, 1168, 1169, - 1185, 1186, 1171, 1239, 1192, 1181, 649, 1182, 1363, 1364, - 1365, 1183, 1193, 1195, 1196, 1214, 1197, 1215, 1218, 1219, - 1222, 1246, 1377, 1378, 1379, 1381, 1383, 1385, 687, 670, - 1223, 690, 1220, 1221, 1247, 1248, 1249, 1260, 1262, 1397, - 1398, 1399, 1400, 1264, 1402, 1265, 1404, 1269, 937, 1270, - 710, 711, 1298, 1297, 1299, 1306, 716, 717, 1307, 1308, - 1310, 1326, 1340, 723, 1327, 730, 1418, 1420, 1422, 938, - 1342, 1350, 1352, 1354, 1373, 1429, 1401, 1431, 743, 1433, - 745, 1403, 1405, 1410, 1430, 1432, 1355, 1369, 750, 751, - 752, 1374, 1406, 755, 756, 757, 758, 759, 760, 761, - 75, 1087, 1375, 1386, 1434, 1436, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 972, 202, 203, - 204, 205, 206, 1414, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 1415, 1437, 62, 216, 202, 203, 204, - 205, 206, 974, 207, 208, 209, 210, 338, 339, 213, - 214, 215, 1416, 671, 65, 216, 66, 67, 1143, 461, - 202, 203, 204, 205, 206, 976, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 882, 0, 0, 216, 202, - 203, 204, 205, 206, 978, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 648, 0, 0, 216, 0, 0, - 202, 203, 204, 205, 206, 979, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 884, - 0, 0, 0, 0, 1085, 0, 0, 0, 0, 902, - 0, 0, 0, 906, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 98, 99, 0, 0, 0, 0, - 0, 100, 925, 0, 0, 101, 537, 0, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 748, 0, 0, 202, 203, 204, 205, 206, 0, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 0, 0, 0, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 202, 203, 204, 205, 206, - 0, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 0, 0, 0, 216, 0, 0, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, + 95, 96, 97, 396, 837, 835, 836, 838, 1148, 202, + 203, 204, 205, 206, 1158, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 839, 861, 840, 216, 841, 842, + 862, 864, 870, 843, 1174, 1175, 1176, 1177, 1178, 1179, + 1180, 1181, 1182, 844, 845, 872, 876, 910, 1191, 1193, + 1195, 1190, 1192, 1194, 1196, 1197, 1198, 895, 1200, 1201, + 1202, 491, 202, 203, 204, 205, 206, 911, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 913, 75, 1109, + 216, 916, 918, 922, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, 95, 96, 97, 921, 923, 924, 925, 927, + 928, 930, 931, 934, 1250, 1251, 1252, 1253, 1254, 1255, + 1256, 1257, 1258, 1260, 1262, 1264, 932, 933, 940, 98, + 99, 941, 944, 945, 983, 1048, 100, 946, 953, 954, + 101, 1268, 1269, 202, 203, 204, 205, 206, 956, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 982, 984, + 985, 216, 996, 997, 1001, 1006, 1003, 1004, 1292, 1005, + 1007, 1295, 1009, 1030, 1010, 1011, 1015, 1019, 1302, 1303, + 1304, 1305, 1306, 1307, 1308, 1309, 1310, 1311, 1022, 1313, + 1016, 1315, 1017, 1059, 1020, 1319, 1062, 1320, 1031, 202, + 203, 204, 205, 206, 1054, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 1064, 1066, 1067, 216, 1068, 1332, + 1333, 1069, 1070, 1072, 1074, 1338, 1339, 1340, 1341, 1342, + 1343, 98, 99, 1075, 1077, 1078, 1082, 1080, 100, 1081, + 1103, 1088, 101, 1107, 1104, 1106, 1108, 1111, 1127, 1361, + 1113, 1114, 1115, 1120, 1365, 1366, 1367, 1368, 1369, 1370, + 1372, 1374, 1376, 1117, 1118, 1122, 1124, 1128, 1144, 1125, + 1145, 1155, 1131, 644, 645, 1163, 647, 1164, 1165, 1167, + 649, 650, 1395, 1396, 1397, 1398, 1399, 1400, 1401, 1168, + 1403, 1169, 1405, 1170, 1171, 1186, 1187, 1225, 1199, 1227, + 1203, 1204, 1237, 1205, 1246, 1206, 397, 1207, 1208, 1209, + 1415, 1416, 1417, 1211, 1221, 1226, 1222, 1223, 1243, 1244, + 1247, 1265, 1248, 1266, 1429, 1430, 1431, 1433, 1435, 1437, + 398, 1267, 1270, 1271, 1274, 1272, 1291, 693, 1273, 1275, + 696, 1449, 1450, 1451, 1452, 1298, 1454, 1299, 1456, 654, + 1300, 1301, 1312, 1314, 1316, 1317, 1321, 1362, 1322, 1350, + 718, 719, 1349, 1351, 1358, 1378, 724, 725, 1470, 1472, + 1474, 676, 1359, 731, 1360, 738, 1379, 1481, 1392, 1483, + 1394, 1485, 1402, 1404, 1406, 1453, 1455, 1457, 751, 1458, + 753, 1407, 1421, 1462, 1482, 1425, 1426, 1484, 758, 759, + 760, 1438, 1486, 763, 764, 765, 766, 767, 768, 769, + 1427, 1488, 1489, 1466, 1467, 1468, 62, 677, 1172, 75, + 76, 65, 463, 66, 67, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 202, 203, 204, 205, + 206, 951, 207, 208, 209, 210, 339, 340, 213, 214, + 215, 0, 653, 894, 216, 0, 0, 0, 0, 0, + 202, 203, 204, 205, 206, 952, 207, 208, 209, 210, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 202, + 203, 204, 205, 206, 987, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 202, 203, 204, 205, 206, 989, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 1058, 0, 216, + 0, 0, 0, 0, 0, 991, 0, 0, 202, 203, + 204, 205, 206, 896, 207, 208, 209, 210, 339, 340, + 213, 214, 215, 0, 915, 993, 216, 0, 0, 920, + 0, 0, 202, 203, 204, 205, 206, 0, 207, 208, + 209, 210, 211, 212, 213, 214, 215, 0, 939, 100, + 216, 0, 0, 101, 0, 994, 0, 0, 0, 0, + 0, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 1105, 0, 0, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 202, 203, 204, 205, 206, 1228, + 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, + 0, 0, 216, 0, 0, 0, 202, 203, 204, 205, + 206, 1230, 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, 202, 203, 204, 205, 206, - 0, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 0, 0, 0, 216, 0, 0, 0, 0, 0, 0, - 0, 1031, 0, 0, 1032, 202, 203, 204, 205, 206, - 0, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 0, 0, 0, 216, 0, 0, 0, 0, 0, 202, - 203, 204, 205, 206, 1053, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 0, 0, 0, 216, 0, 0, - 1067, 25, 26, 27, 28, 29, 30, 31, 32, 0, - 33, 0, 35, 36, 0, 38, 39, 0, 0, 0, - 25, 26, 27, 28, 29, 30, 31, 32, 0, 33, - 0, 35, 36, 51, 38, 39, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 52, 53, 0, - 0, 0, 51, 564, 565, 566, 567, 568, 569, 570, - 571, 572, 573, 574, 575, 1038, 52, 53, 0, 0, - 1124, 1125, 0, 0, 0, 0, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 1189, 1144, 0, 0, 0, - 0, 0, 0, 60, 0, 0, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 60, 0, 216, 0, 0, 0, 0, 0, - 0, 0, -3, 22, 0, 0, 23, 0, 0, 0, - 0, 0, 441, 0, 1184, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1198, 0, - 772, 445, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 0, 33, 34, 35, 36, 37, 38, 39, 0, - 0, 0, 40, 41, 42, 43, 44, 45, 0, 46, - 47, 48, 49, 50, 0, 51, 0, 0, 0, 0, - 0, 0, 0, 0, 218, 0, 1245, 0, 0, 52, - 53, 0, 0, 0, 489, 0, 54, 55, 56, 57, - 58, 59, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 202, 203, 204, 205, 206, 0, 207, 208, 209, - 210, 338, 339, 213, 214, 215, 0, 1285, 0, 216, - 219, 220, 221, 854, 0, 60, 855, 0, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 0, 0, - 0, 0, 0, 0, 0, 1311, 232, 233, 234, 235, - 236, 237, 238, 239, 240, 241, 0, 242, 243, 244, - 245, 246, 247, 0, 0, 0, 0, 0, 202, 203, - 204, 205, 206, 1341, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 1007, 0, 0, 1008, 0, 0, 0, 202, 203, 204, - 205, 206, 1362, 207, 208, 209, 210, 338, 339, 213, - 214, 215, 0, 0, 0, 216, 1376, 0, 0, 1241, - 0, 0, 1242, 202, 203, 204, 205, 206, 0, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 400, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 405, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 407, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 542, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 546, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 547, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 666, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 852, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 1064, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 1065, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 1066, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 1081, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 1082, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 1104, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 1187, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 1282, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 202, 203, 204, 205, 206, 1296, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 1283, 0, 0, 0, 0, 1325, 202, - 203, 204, 205, 206, 0, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 0, 0, 0, 216, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 428, 340, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 0, 340, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 0, 399, - 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 0, 401, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 0, 402, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 0, 404, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 0, 408, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 0, 409, - 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 0, 414, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 0, 450, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 0, 453, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 0, 466, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 0, 467, - 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 0, 468, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 0, 469, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 0, 470, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 0, 471, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 0, 472, - 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 0, 473, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 0, 474, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 0, 475, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 0, 477, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 0, 478, - 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 0, 479, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 0, 480, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 0, 481, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 0, 482, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 0, 530, - 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 0, 533, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 0, 543, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 0, 544, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 0, 548, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 0, 549, - 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 0, 550, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 0, 551, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 0, 552, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 0, 593, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 0, 597, - 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 0, 637, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 0, 696, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 0, 697, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 0, 698, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 0, 699, - 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 0, 788, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 0, 853, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 0, 901, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 0, 990, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 0, 994, + 1232, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 1234, 0, 0, 216, 0, 0, 0, 0, 0, 0, + 0, 1049, 0, 0, 1050, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 1235, 0, 0, 216, 0, 0, 0, 0, 0, 0, + 0, 0, 202, 203, 204, 205, 206, 1073, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 1236, 0, 0, + 216, 0, 0, 1087, 0, 0, 0, 0, 0, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 540, 0, 0, 216, 0, 0, + 0, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 756, 0, 0, 216, 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 0, 996, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 0, 1097, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 0, 1099, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 0, 1101, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 0, 1119, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, + 0, 0, 0, 0, 0, 1146, 1147, 0, 0, 0, 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 0, 1120, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 0, 1121, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, - 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 0, 1277, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 0, 1278, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 0, 1279, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, + 0, 0, 0, 1173, 0, 0, 0, 0, 0, 0, 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 0, 1359, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 0, 1360, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, + 0, 0, 0, 0, 0, 0, 0, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 1224, 0, + 0, 0, 202, 203, 204, 205, 206, 0, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 0, 1249, 202, 203, 204, 205, 206, 0, + 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, + 0, 0, 216, 25, 26, 27, 28, 29, 30, 31, + 32, 0, 33, 0, 35, 36, 0, 38, 39, 0, + 0, 0, 0, 0, 25, 26, 27, 28, 29, 30, + 31, 32, 0, 33, 51, 35, 36, 0, 38, 39, + 0, 0, 492, 1297, 0, 0, 0, 0, 52, 53, + 202, 203, 204, 205, 206, 51, 207, 208, 209, 210, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 52, + 53, 25, 26, 27, 28, 29, 30, 31, 32, 0, + 33, 0, 35, 36, 0, 38, 39, 0, 0, 0, + 0, 0, 0, 0, 1337, 0, 0, 0, 0, 0, + 0, 0, 51, 0, 60, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1240, 52, 53, 0, 0, + 0, 0, 1363, 0, 0, 60, 202, 203, 204, 205, + 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, + 215, 0, 0, 443, 216, 0, 0, 0, 0, 0, + 1393, 0, 0, 0, -3, 22, 0, 0, 23, 0, + 0, 0, 0, 0, 447, 0, 0, 0, 0, 0, + 0, 0, 60, 0, 0, 0, 0, 0, 0, 1414, + 0, 0, 0, 0, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 1428, 33, 34, 35, 36, 37, 38, + 39, 0, 0, 0, 40, 41, 42, 43, 44, 45, + 218, 46, 47, 48, 49, 50, 51, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 52, 53, 0, 0, 0, 0, 0, 54, 55, 56, + 57, 58, 59, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 219, 220, 221, 0, 0, + 0, 771, 0, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 0, 0, 0, 60, 0, 0, 0, + 0, 232, 233, 234, 235, 236, 237, 238, 239, 240, + 241, 0, 242, 243, 244, 245, 246, 247, 202, 203, + 204, 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 0, 1361, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 0, 1407, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 0, 1408, - 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 0, 1409, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 428, 202, 203, 204, - 205, 206, 0, 207, 208, 209, 210, 338, 339, 213, - 214, 215, 0, 0, 0, 216, 0, 0, 0, 429, + 0, 202, 203, 204, 205, 206, 995, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 0, 202, 203, 204, 205, 206, 1188, + 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, + 0, 0, 216, 0, 0, 0, 866, 0, 0, 867, 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, + 0, 0, 1025, 0, 0, 1026, 202, 203, 204, 205, + 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, + 215, 0, 0, 0, 216, 0, 0, 0, 1293, 0, + 0, 1294, 202, 203, 204, 205, 206, 0, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 401, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 406, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 408, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 545, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 549, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 550, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 672, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 863, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 1084, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 1085, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 1086, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 1101, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 1102, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 1126, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 1238, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 1334, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 202, 203, 204, 205, 206, 1348, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 1335, 0, 0, 0, 0, 1377, 202, 203, + 204, 205, 206, 0, 207, 208, 209, 210, 339, 340, + 213, 214, 215, 0, 0, 0, 216, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 430, + 341, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 0, 341, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 0, 400, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 0, 402, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 0, 403, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 0, + 405, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 0, 409, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 0, 410, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 0, 415, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 0, 452, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 0, + 455, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 0, 469, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 0, 470, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 0, 471, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 0, 472, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 0, + 473, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 0, 474, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 0, 475, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, 0, 476, 202, 203, 204, 205, 206, 0, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 0, 0, 483, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 484, 202, - 203, 204, 205, 206, 0, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 0, 0, 0, 216, 0, 0, - 0, 485, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 559, 202, 203, 204, 205, 206, - 0, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 0, 0, 0, 216, 0, 0, 0, 560, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 0, 477, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 0, + 478, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 0, 480, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 0, 481, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 0, 482, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 0, 483, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 0, + 484, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 0, 485, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 0, 533, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 0, 536, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 0, 546, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 0, + 547, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 0, 551, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 0, 552, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 0, 553, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 0, 554, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 0, + 555, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 0, 597, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 0, 601, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 0, 642, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 0, 704, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 0, + 705, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 0, 706, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 0, 707, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 0, 797, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 0, 865, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 0, + 914, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 0, 1008, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 0, 1012, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 0, 1014, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 0, 1119, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 0, + 1121, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 0, 1123, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 0, 1141, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 0, 1142, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 0, 1143, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 0, + 1329, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 0, 1330, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 0, 1331, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 0, 1411, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 0, 1412, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 0, + 1413, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 0, 1459, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 0, 1460, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 0, 1461, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 430, 202, 203, 204, 205, + 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, + 215, 0, 0, 0, 216, 0, 0, 0, 431, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 479, 202, 203, 204, 205, 206, 0, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 0, 0, 486, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 487, 202, 203, + 204, 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 561, 202, 203, 204, 205, 206, 0, 207, 208, 209, - 210, 338, 339, 213, 214, 215, 0, 0, 0, 216, - 0, 0, 0, 664, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 665, 202, 203, 204, - 205, 206, 0, 207, 208, 209, 210, 338, 339, 213, - 214, 215, 0, 0, 0, 216, 0, 0, 0, 785, + 488, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 563, 202, 203, 204, 205, 206, 0, + 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, + 0, 0, 216, 0, 0, 0, 564, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 565, 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 786, 202, 203, 204, 205, 206, 0, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 0, 0, 805, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 806, 202, - 203, 204, 205, 206, 0, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 0, 0, 0, 216, 0, 0, - 0, 839, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 865, 202, 203, 204, 205, 206, - 0, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 0, 0, 0, 216, 0, 0, 0, 866, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, + 0, 0, 670, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 671, 202, 203, 204, 205, + 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, + 215, 0, 0, 0, 216, 0, 0, 0, 794, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 795, 202, 203, 204, 205, 206, 0, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 0, 0, 816, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 817, 202, 203, + 204, 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 867, 202, 203, 204, 205, 206, 0, 207, 208, 209, - 210, 338, 339, 213, 214, 215, 0, 0, 0, 216, - 0, 0, 0, 868, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 869, 202, 203, 204, - 205, 206, 0, 207, 208, 209, 210, 338, 339, 213, - 214, 215, 0, 0, 0, 216, 0, 0, 0, 870, + 850, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 877, 202, 203, 204, 205, 206, 0, + 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, + 0, 0, 216, 0, 0, 0, 878, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 879, 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 871, 202, 203, 204, 205, 206, 0, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 0, 0, 872, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 873, 202, - 203, 204, 205, 206, 0, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 0, 0, 0, 216, 0, 0, - 0, 874, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 875, 202, 203, 204, 205, 206, - 0, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 0, 0, 0, 216, 0, 0, 0, 876, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, + 0, 0, 880, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 881, 202, 203, 204, 205, + 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, + 215, 0, 0, 0, 216, 0, 0, 0, 882, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 883, 202, 203, 204, 205, 206, 0, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 0, 0, 884, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 885, 202, 203, + 204, 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 961, 202, 203, 204, 205, 206, 0, 207, 208, 209, - 210, 338, 339, 213, 214, 215, 0, 0, 0, 216, - 0, 0, 0, 962, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 984, 202, 203, 204, - 205, 206, 0, 207, 208, 209, 210, 338, 339, 213, - 214, 215, 0, 0, 0, 216, 0, 0, 0, 995, + 886, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 887, 202, 203, 204, 205, 206, 0, + 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, + 0, 0, 216, 0, 0, 0, 888, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 976, 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 1000, 202, 203, 204, 205, 206, 0, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 0, 0, 1003, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 1005, 202, - 203, 204, 205, 206, 0, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 0, 0, 0, 216, 0, 0, - 0, 1016, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 1017, 202, 203, 204, 205, 206, - 0, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 0, 0, 0, 216, 0, 0, 0, 1018, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, + 0, 0, 977, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 1002, 202, 203, 204, 205, + 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, + 215, 0, 0, 0, 216, 0, 0, 0, 1013, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 1018, 202, 203, 204, 205, 206, 0, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 0, 0, 1021, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 1023, 202, 203, + 204, 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 1019, 202, 203, 204, 205, 206, 0, 207, 208, 209, - 210, 338, 339, 213, 214, 215, 0, 0, 0, 216, - 0, 0, 0, 1020, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 1021, 202, 203, 204, - 205, 206, 0, 207, 208, 209, 210, 338, 339, 213, - 214, 215, 0, 0, 0, 216, 0, 0, 0, 1022, + 1034, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 1035, 202, 203, 204, 205, 206, 0, + 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, + 0, 0, 216, 0, 0, 0, 1036, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 1037, 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 1023, 202, 203, 204, 205, 206, 0, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 0, 0, 1024, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 1025, 202, - 203, 204, 205, 206, 0, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 0, 0, 0, 216, 0, 0, - 0, 1026, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 1027, 202, 203, 204, 205, 206, - 0, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 0, 0, 0, 216, 0, 0, 0, 1094, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, + 0, 0, 1038, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 1039, 202, 203, 204, 205, + 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, + 215, 0, 0, 0, 216, 0, 0, 0, 1040, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 1041, 202, 203, 204, 205, 206, 0, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 0, 0, 1042, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 1043, 202, 203, + 204, 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 1110, 202, 203, 204, 205, 206, 0, 207, 208, 209, - 210, 338, 339, 213, 214, 215, 0, 0, 0, 216, - 0, 0, 0, 1111, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 1112, 202, 203, 204, - 205, 206, 0, 207, 208, 209, 210, 338, 339, 213, - 214, 215, 0, 0, 0, 216, 0, 0, 0, 1113, + 1044, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 1045, 202, 203, 204, 205, 206, 0, + 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, + 0, 0, 216, 0, 0, 0, 1116, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 1132, 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 1114, 202, 203, 204, 205, 206, 0, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 0, 0, 1115, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 1116, 202, - 203, 204, 205, 206, 0, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 0, 0, 0, 216, 0, 0, - 0, 1117, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 1118, 202, 203, 204, 205, 206, - 0, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 0, 0, 0, 216, 0, 0, 0, 1128, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, + 0, 0, 1133, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 1134, 202, 203, 204, 205, + 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, + 215, 0, 0, 0, 216, 0, 0, 0, 1135, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 1136, 202, 203, 204, 205, 206, 0, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 0, 0, 1137, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 1138, 202, 203, + 204, 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 1172, 202, 203, 204, 205, 206, 0, 207, 208, 209, - 210, 338, 339, 213, 214, 215, 0, 0, 0, 216, - 0, 0, 0, 1173, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 1174, 202, 203, 204, - 205, 206, 0, 207, 208, 209, 210, 338, 339, 213, - 214, 215, 0, 0, 0, 216, 0, 0, 0, 1175, + 1139, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 1140, 202, 203, 204, 205, 206, 0, + 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, + 0, 0, 216, 0, 0, 0, 1157, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 1212, 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 1176, 202, 203, 204, 205, 206, 0, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 0, 0, 1177, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 1178, 202, - 203, 204, 205, 206, 0, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 0, 0, 0, 216, 0, 0, - 0, 1179, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 1180, 202, 203, 204, 205, 206, - 0, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 0, 0, 0, 216, 0, 0, 0, 1188, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, + 0, 0, 1213, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 1214, 202, 203, 204, 205, + 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, + 215, 0, 0, 0, 216, 0, 0, 0, 1215, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 1216, 202, 203, 204, 205, 206, 0, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 0, 0, 1217, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 1218, 202, 203, + 204, 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 1224, 202, 203, 204, 205, 206, 0, 207, 208, 209, - 210, 338, 339, 213, 214, 215, 0, 0, 0, 216, - 0, 0, 0, 1225, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 1226, 202, 203, 204, - 205, 206, 0, 207, 208, 209, 210, 338, 339, 213, - 214, 215, 0, 0, 0, 216, 0, 0, 0, 1227, + 1219, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 1220, 202, 203, 204, 205, 206, 0, + 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, + 0, 0, 216, 0, 0, 0, 1239, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 1276, 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 1228, 202, 203, 204, 205, 206, 0, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 0, 0, 1229, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 1230, 202, - 203, 204, 205, 206, 0, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 0, 0, 0, 216, 0, 0, - 0, 1231, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 1232, 202, 203, 204, 205, 206, - 0, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 0, 0, 0, 216, 0, 0, 0, 1266, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, + 0, 0, 1277, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 1278, 202, 203, 204, 205, + 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, + 215, 0, 0, 0, 216, 0, 0, 0, 1279, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 1280, 202, 203, 204, 205, 206, 0, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 0, 0, 1281, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 1282, 202, 203, + 204, 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 1271, 202, 203, 204, 205, 206, 0, 207, 208, 209, - 210, 338, 339, 213, 214, 215, 0, 0, 0, 216, - 0, 0, 0, 1272, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 1273, 202, 203, 204, - 205, 206, 0, 207, 208, 209, 210, 338, 339, 213, - 214, 215, 0, 0, 0, 216, 0, 0, 0, 1274, + 1283, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 1284, 202, 203, 204, 205, 206, 0, + 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, + 0, 0, 216, 0, 0, 0, 1318, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 1323, 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 1275, 202, 203, 204, 205, 206, 0, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 0, 0, 1276, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 1295, 202, - 203, 204, 205, 206, 0, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 0, 0, 0, 216, 0, 0, - 0, 1300, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 1301, 202, 203, 204, 205, 206, - 0, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 0, 0, 0, 216, 0, 0, 0, 1302, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, + 0, 0, 1324, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 1325, 202, 203, 204, 205, + 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, + 215, 0, 0, 0, 216, 0, 0, 0, 1326, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 1327, 202, 203, 204, 205, 206, 0, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 0, 0, 1328, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 1347, 202, 203, + 204, 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 1303, 202, 203, 204, 205, 206, 0, 207, 208, 209, - 210, 338, 339, 213, 214, 215, 0, 0, 0, 216, - 0, 0, 0, 1304, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 1305, 202, 203, 204, - 205, 206, 0, 207, 208, 209, 210, 338, 339, 213, - 214, 215, 0, 0, 0, 216, 0, 0, 0, 1328, + 1352, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 1353, 202, 203, 204, 205, 206, 0, + 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, + 0, 0, 216, 0, 0, 0, 1354, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 1355, 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 1329, 202, 203, 204, 205, 206, 0, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 0, 0, 1330, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 1331, 202, - 203, 204, 205, 206, 0, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 0, 0, 0, 216, 0, 0, - 0, 1332, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216, 0, 0, 0, 1333, 202, 203, 204, 205, 206, - 0, 207, 208, 209, 210, 338, 339, 213, 214, 215, - 0, 0, 0, 216, 0, 0, 0, 1356, 202, 203, - 204, 205, 206, 0, 207, 208, 209, 210, 338, 339, + 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, + 0, 0, 1356, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 1357, 202, 203, 204, 205, + 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, + 215, 0, 0, 0, 216, 0, 0, 0, 1380, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 1381, 202, 203, 204, 205, 206, 0, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 0, 0, 1382, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 1383, 202, 203, + 204, 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, - 1357, 202, 203, 204, 205, 206, 0, 207, 208, 209, - 210, 338, 339, 213, 214, 215, 0, 0, 0, 216, - 0, 0, 0, 1358, 202, 203, 204, 205, 206, 0, - 207, 208, 209, 210, 338, 339, 213, 214, 215, 0, - 0, 0, 216, 0, 0, 0, 1370, 202, 203, 204, - 205, 206, 0, 207, 208, 209, 210, 338, 339, 213, - 214, 215, 0, 0, 0, 216, 0, 0, 0, 1371, + 1384, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216, + 0, 0, 0, 1385, 202, 203, 204, 205, 206, 0, + 207, 208, 209, 210, 339, 340, 213, 214, 215, 0, + 0, 0, 216, 0, 0, 0, 1408, 202, 203, 204, + 205, 206, 0, 207, 208, 209, 210, 339, 340, 213, + 214, 215, 0, 0, 0, 216, 0, 0, 0, 1409, 202, 203, 204, 205, 206, 0, 207, 208, 209, 210, - 338, 339, 213, 214, 215, 0, 0, 0, 216, 0, - 0, 0, 1372, 202, 203, 204, 205, 206, 0, 207, - 208, 209, 210, 338, 339, 213, 214, 215, 0, 0, - 0, 216, 0, 0, 0, 1387, 202, 203, 204, 205, - 206, 0, 207, 208, 209, 210, 338, 339, 213, 214, - 215, 0, 0, 0, 216, 0, 0, 0, 1388, 202, - 203, 204, 205, 206, 0, 207, 208, 209, 210, 338, - 339, 213, 214, 215, 0, 0, 0, 216, 0, 0, - 0, 1389, 202, 203, 204, 205, 206, 0, 207, 208, - 209, 210, 338, 339, 213, 214, 215, 0, 0, 0, - 216 + 339, 340, 213, 214, 215, 0, 0, 0, 216, 0, + 0, 0, 1410, 202, 203, 204, 205, 206, 0, 207, + 208, 209, 210, 339, 340, 213, 214, 215, 0, 0, + 0, 216, 0, 0, 0, 1422, 202, 203, 204, 205, + 206, 0, 207, 208, 209, 210, 339, 340, 213, 214, + 215, 0, 0, 0, 216, 0, 0, 0, 1423, 202, + 203, 204, 205, 206, 0, 207, 208, 209, 210, 339, + 340, 213, 214, 215, 0, 0, 0, 216, 0, 0, + 0, 1424, 202, 203, 204, 205, 206, 0, 207, 208, + 209, 210, 339, 340, 213, 214, 215, 0, 0, 0, + 216, 0, 0, 0, 1439, 202, 203, 204, 205, 206, + 0, 207, 208, 209, 210, 339, 340, 213, 214, 215, + 0, 0, 0, 216, 0, 0, 0, 1440, 202, 203, + 204, 205, 206, 0, 207, 208, 209, 210, 339, 340, + 213, 214, 215, 0, 0, 0, 216, 0, 0, 0, + 1441, 202, 203, 204, 205, 206, 0, 207, 208, 209, + 210, 339, 340, 213, 214, 215, 0, 0, 0, 216 }; static const short yycheck[] = { 7, - 112, 295, 4, 6, 5, 35, 6, 56, 879, 4, - 80, 56, 165, 165, 947, 58, 6, 58, 171, 171, - 138, 64, 4, 64, 4, 62, 4, 157, 158, 58, - 41, 42, 157, 158, 6, 64, 7, 157, 158, 169, - 812, 169, 172, 6, 169, 173, 6, 172, 30, 821, - 30, 171, 42, 157, 158, 6, 828, 31, 32, 33, - 34, 35, 36, 37, 38, 169, 40, 6, 42, 43, - 6, 45, 46, 157, 158, 6, 157, 158, 159, 160, - 161, 6, 157, 158, 165, 6, 7, 171, 83, 63, - 98, 99, 100, 101, 102, 6, 171, 6, 168, 6, - 168, 157, 158, 77, 78, 7, 168, 115, 116, 117, - 118, 119, 120, 984, 170, 123, 124, 125, 126, 168, - 128, 129, 171, 131, 132, 133, 171, 135, 168, 172, - 168, 172, 31, 171, 171, 34, 147, 6, 168, 150, - 157, 158, 168, 151, 152, 156, 31, 7, 168, 34, - 35, 157, 158, 170, 168, 157, 158, 157, 158, 133, - 168, 168, 170, 169, 172, 39, 168, 168, 171, 171, + 112, 962, 4, 295, 5, 35, 6, 4, 6, 79, + 4, 891, 4, 4, 56, 56, 6, 6, 6, 58, + 156, 157, 58, 4, 63, 4, 4, 63, 30, 6, + 41, 42, 168, 156, 157, 171, 58, 823, 137, 0, + 1, 63, 3, 156, 157, 164, 832, 170, 6, 30, + 7, 170, 42, 839, 164, 168, 156, 157, 171, 6, + 170, 156, 157, 6, 61, 6, 6, 61, 168, 61, + 61, 171, 6, 149, 150, 170, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 82, 34, 35, 164, 37, + 98, 99, 100, 101, 102, 4, 6, 167, 167, 6, + 156, 157, 6, 167, 6, 7, 170, 115, 116, 117, + 118, 119, 120, 6, 170, 123, 124, 125, 126, 6, + 128, 129, 1002, 131, 132, 133, 167, 135, 170, 170, + 31, 6, 171, 34, 35, 171, 147, 167, 167, 150, + 167, 156, 157, 151, 152, 156, 107, 108, 109, 110, + 111, 112, 113, 114, 169, 167, 156, 157, 156, 157, + 168, 7, 170, 167, 172, 8, 167, 156, 157, 171, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 172, 168, 172, 171, 202, 203, 204, 205, 206, 207, + 171, 170, 170, 170, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, - 1143, 171, 35, 985, 3, 4, 35, 989, 157, 158, + 39, 1172, 170, 156, 157, 156, 157, 1003, 3, 4, + 35, 1007, 156, 157, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 7, 167, 156, 157, 156, + 157, 7, 156, 157, 31, 167, 264, 34, 167, 267, + 168, 170, 167, 271, 172, 156, 157, 275, 276, 277, + 35, 279, 280, 281, 282, 283, 284, 285, 169, 37, + 168, 292, 293, 171, 156, 157, 158, 159, 160, 297, + 298, 299, 164, 304, 170, 8, 142, 143, 144, 145, + 165, 166, 310, 146, 147, 148, 149, 150, 316, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 35, 165, + 166, 164, 167, 156, 157, 170, 169, 1113, 1114, 1115, + 1116, 339, 340, 168, 1120, 168, 171, 168, 168, 169, + 171, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, 74, 75, 31, 156, 157, 34, 35, 170, 37, + 170, 146, 147, 148, 149, 150, 168, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 48, 49, 163, 164, + 142, 143, 167, 145, 5, 170, 142, 143, 144, 145, + 35, 399, 170, 152, 153, 154, 155, 156, 157, 158, + 159, 160, 6, 165, 166, 164, 414, 156, 157, 165, + 5, 419, 0, 1, 167, 3, 427, 1203, 1204, 168, + 6, 1207, 430, 431, 158, 159, 160, 168, 169, 168, + 164, 439, 171, 146, 147, 148, 149, 150, 446, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 171, 168, + 170, 164, 171, 461, 156, 157, 156, 157, 156, 157, + 468, 47, 168, 170, 168, 171, 168, 171, 168, 6, + 168, 479, 50, 51, 52, 53, 167, 55, 486, 487, + 488, 5, 774, 491, 1270, 35, 3, 4, 5, 165, + 166, 172, 9, 10, 11, 12, 13, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 92, 93, 94, 95, 96, 529, 107, + 108, 109, 110, 111, 112, 113, 114, 168, 168, 641, + 171, 171, 540, 541, 168, 1321, 168, 171, 168, 171, + 168, 171, 167, 171, 168, 133, 134, 171, 136, 557, + 167, 167, 563, 564, 565, 160, 167, 167, 163, 167, + 146, 147, 148, 149, 150, 1351, 152, 153, 154, 155, + 156, 157, 158, 159, 160, 167, 167, 167, 164, 5, + 167, 6, 167, 167, 167, 593, 594, 167, 596, 5, + 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, + 167, 612, 610, 611, 170, 3, 4, 5, 170, 170, + 621, 9, 10, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 167, 167, 167, 167, 167, 6, 6, 156, + 157, 170, 172, 170, 170, 167, 163, 655, 164, 167, + 167, 5, 1438, 170, 167, 167, 167, 167, 167, 167, + 668, 953, 670, 671, 167, 167, 167, 167, 167, 167, + 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, + 688, 689, 167, 167, 167, 167, 167, 167, 167, 167, + 167, 167, 700, 167, 702, 3, 4, 167, 167, 167, + 708, 9, 10, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 167, 167, 167, 7, 168, 7, 169, 168, + 168, 7, 7, 845, 80, 5, 173, 5, 749, 5, + 5, 5, 5, 5, 5, 5, 5, 5, 756, 5, + 5, 5, 5, 761, 762, 5, 5, 5, 156, 157, + 5, 5, 5, 5, 775, 163, 777, 5, 779, 167, + 125, 5, 170, 5, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, 75, 794, 795, 5, 5, + 3, 802, 803, 804, 802, 803, 804, 805, 806, 5, + 5, 809, 6, 5, 7, 6, 814, 7, 816, 7, + 7, 6, 6, 173, 7, 7, 7, 170, 826, 171, + 171, 170, 7, 167, 7, 833, 834, 835, 167, 172, + 139, 168, 840, 168, 168, 168, 844, 6, 168, 168, + 168, 168, 850, 168, 168, 168, 168, 168, 156, 157, + 168, 168, 168, 168, 168, 163, 168, 168, 866, 167, + 5, 168, 170, 168, 168, 168, 168, 168, 168, 877, + 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, + 888, 171, 168, 168, 168, 7, 169, 168, 7, 900, + 7, 899, 900, 901, 7, 7, 170, 7, 7, 7, + 7, 7, 7, 7, 3, 4, 6, 3, 135, 917, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 143, 144, 145, 146, 35, 157, 158, 157, 158, - 157, 158, 166, 167, 157, 158, 264, 34, 35, 267, - 37, 169, 170, 271, 166, 167, 169, 275, 276, 277, - 171, 279, 280, 281, 282, 283, 284, 285, 48, 49, - 37, 292, 293, 143, 144, 145, 146, 157, 158, 297, - 298, 299, 8, 304, 169, 157, 158, 172, 171, 169, - 157, 158, 310, 157, 158, 171, 166, 169, 316, 5, - 172, 169, 169, 168, 172, 169, 171, 169, 170, 1091, - 1092, 1093, 1094, 35, 171, 6, 1098, 3, 4, 5, - 338, 339, 5, 9, 10, 11, 12, 13, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 168, 171, 168, 6, 147, 148, - 149, 150, 151, 171, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 6, 31, 164, 165, 34, 35, 168, - 37, 5, 171, 159, 160, 161, 173, 35, 168, 165, - 398, 1163, 1164, 160, 169, 1167, 163, 172, 47, 50, - 51, 52, 53, 169, 55, 413, 172, 5, 169, 169, - 418, 172, 172, 169, 169, 426, 172, 172, 6, 169, - 428, 429, 172, 0, 1, 169, 3, 169, 172, 437, - 172, 147, 148, 149, 150, 151, 444, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 1218, 169, 168, 165, - 172, 459, 150, 151, 170, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 168, 5, 169, 165, 476, 172, - 169, 765, 173, 172, 168, 483, 484, 485, 168, 168, - 488, 157, 158, 93, 94, 95, 96, 97, 164, 168, - 168, 168, 168, 168, 168, 171, 168, 1269, 147, 148, - 149, 150, 151, 168, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 168, 168, 526, 165, 6, 168, 171, - 6, 168, 168, 168, 636, 168, 168, 1299, 168, 537, - 538, 108, 109, 110, 111, 112, 113, 114, 115, 168, - 168, 168, 168, 168, 4, 3, 4, 168, 559, 560, - 561, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 171, 168, 171, 168, 165, 171, 168, 171, - 171, 589, 590, 168, 592, 168, 8, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 607, 605, 606, 165, - 168, 168, 5, 168, 168, 616, 168, 168, 168, 168, - 168, 3, 4, 168, 1386, 168, 168, 9, 10, 11, - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 168, 168, - 168, 168, 650, 168, 168, 939, 168, 168, 168, 168, - 168, 168, 168, 168, 168, 663, 664, 665, 168, 170, - 169, 169, 169, 7, 672, 673, 674, 675, 676, 677, - 678, 679, 680, 681, 682, 683, 7, 4, 7, 7, - 81, 5, 5, 5, 5, 693, 5, 695, 5, 5, - 5, 5, 700, 5, 5, 5, 5, 5, 5, 157, - 158, 5, 5, 5, 5, 5, 164, 5, 5, 5, - 168, 126, 5, 171, 5, 5, 5, 3, 5, 7, - 5, 5, 834, 6, 6, 147, 148, 149, 150, 151, - 741, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 748, 0, 1, 165, 3, 753, 754, 7, 6, 6, - 171, 7, 7, 6, 172, 766, 7, 768, 7, 770, - 7, 172, 171, 7, 168, 157, 158, 7, 173, 168, - 140, 169, 164, 169, 169, 169, 168, 785, 786, 171, - 8, 169, 793, 794, 795, 793, 794, 795, 796, 797, - 169, 169, 169, 169, 169, 803, 169, 805, 169, 5, - 169, 169, 169, 169, 169, 169, 169, 815, 169, 169, - 169, 169, 169, 169, 822, 823, 824, 169, 169, 169, - 169, 829, 6, 169, 169, 833, 7, 170, 7, 171, - 7, 839, 7, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 7, 854, 7, 7, 108, - 109, 110, 111, 112, 113, 114, 115, 865, 866, 867, - 868, 869, 870, 871, 872, 873, 874, 875, 876, 7, - 7, 7, 7, 7, 168, 134, 135, 888, 137, 887, - 888, 889, 6, 3, 7, 7, 3, 168, 168, 168, - 147, 148, 149, 150, 151, 903, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 168, 168, 168, 165, 3, - 3, 134, 136, 159, 168, 3, 139, 3, 168, 147, - 148, 149, 150, 151, 6, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 942, 943, 944, 165, 168, 162, - 172, 168, 168, 166, 167, 3, 3, 3, 3, 3, - 3, 3, 3, 961, 962, 5, 5, 3, 3, 6, - 968, 171, 6, 147, 148, 149, 150, 151, 6, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 6, 987, - 6, 165, 6, 6, 82, 173, 169, 995, 170, 169, - 6, 169, 1000, 6, 170, 1003, 169, 6, 170, 1007, - 169, 169, 6, 169, 6, 170, 170, 170, 1016, 1017, - 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, - 169, 169, 169, 169, 169, 169, 169, 169, 1036, 169, - 1038, 170, 6, 6, 6, 6, 169, 169, 3, 4, - 169, 169, 6, 6, 9, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 147, 148, 149, 150, 151, - 6, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 6, 6, 1090, 165, 6, 6, 82, 7, 6, 6, - 4, 3, 159, 6, 3, 6, 6, 3, 6, 6, - 3, 6, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, - 1118, 6, 6, 3, 6, 3, 3, 4, 3, 1127, - 1128, 1129, 9, 10, 11, 12, 13, 14, 15, 16, + 29, 167, 167, 7, 146, 147, 148, 149, 150, 167, + 152, 153, 154, 155, 156, 157, 158, 159, 160, 957, + 958, 959, 164, 167, 7, 3, 167, 167, 167, 6, + 167, 3, 174, 3, 3, 3, 134, 3, 976, 977, + 158, 139, 3, 3, 3, 983, 3, 146, 147, 148, + 149, 150, 3, 152, 153, 154, 155, 156, 157, 158, + 159, 160, 167, 167, 162, 164, 167, 1005, 166, 167, + 167, 3, 3, 3, 170, 1013, 5, 5, 3, 6, + 1018, 81, 6, 1021, 6, 6, 6, 1025, 6, 6, + 6, 173, 172, 172, 168, 168, 1034, 1035, 1036, 1037, + 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 169, 168, + 6, 169, 168, 6, 169, 168, 6, 168, 1056, 169, + 1058, 169, 168, 168, 168, 6, 6, 156, 157, 6, + 6, 6, 6, 6, 163, 168, 3, 4, 167, 7, + 168, 170, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 147, 148, 149, 150, 151, 3, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 6, 171, - 171, 165, 172, 79, 1172, 1173, 1174, 1175, 1176, 1177, - 1178, 1179, 1180, 1181, 1182, 1183, 173, 6, 170, 7, - 1188, 1189, 147, 148, 149, 150, 151, 6, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 6, 82, 164, - 165, 169, 169, 168, 170, 4, 6, 1215, 169, 1217, - 169, 169, 3, 170, 170, 169, 1224, 1225, 1226, 1227, - 1228, 1229, 1230, 1231, 1232, 1233, 170, 1235, 170, 1237, - 169, 171, 170, 1241, 169, 1243, 147, 148, 149, 150, - 151, 6, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 6, 3, 6, 165, 3, 6, 1265, 1266, 6, - 6, 6, 6, 1271, 1272, 1273, 1274, 1275, 1276, 6, - 157, 158, 5, 5, 172, 6, 173, 164, 171, 6, - 169, 168, 6, 169, 6, 6, 169, 1295, 169, 6, - 170, 170, 1300, 1301, 1302, 1303, 1304, 1305, 1306, 1307, - 1308, 169, 83, 170, 169, 528, 529, 169, 531, 169, - 6, 6, 535, 536, 6, 6, 6, 6, 5, 5, - 1328, 1329, 1330, 1331, 1332, 1333, 1334, 6, 1336, 169, - 1338, 172, 169, 169, 173, 170, 170, 169, 169, 169, - 79, 4, 169, 79, 6, 171, 6, 171, 1356, 1357, - 1358, 171, 6, 5, 5, 172, 6, 171, 169, 169, - 172, 6, 1370, 1371, 1372, 1373, 1374, 1375, 591, 6, - 172, 594, 170, 170, 6, 6, 6, 6, 6, 1387, - 1388, 1389, 1390, 6, 1392, 171, 1394, 169, 6, 169, - 613, 614, 169, 142, 169, 171, 619, 620, 171, 171, - 6, 169, 6, 626, 170, 628, 1414, 1415, 1416, 6, - 6, 6, 6, 6, 171, 1423, 6, 1425, 641, 1427, - 643, 6, 6, 6, 6, 6, 169, 169, 651, 652, - 653, 171, 170, 656, 657, 658, 659, 660, 661, 662, - 3, 4, 171, 169, 6, 0, 9, 10, 11, 12, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 6, 147, 148, - 149, 150, 151, 171, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 171, 0, 6, 165, 147, 148, 149, - 150, 151, 6, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 171, 563, 6, 165, 6, 6, 1108, 314, - 147, 148, 149, 150, 151, 6, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 790, -1, -1, 165, 147, - 148, 149, 150, 151, 6, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 538, -1, -1, 165, -1, -1, - 147, 148, 149, 150, 151, 6, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, 792, - -1, -1, -1, -1, 6, -1, -1, -1, -1, 802, - -1, -1, -1, 806, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 157, 158, -1, -1, -1, -1, - -1, 164, 825, -1, -1, 168, 8, -1, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - 8, -1, -1, 147, 148, 149, 150, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, -1, -1, -1, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, 147, 148, 149, 150, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, -1, -1, 165, -1, -1, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, 147, 148, 149, 150, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, -1, -1, 165, -1, -1, -1, -1, -1, -1, - -1, 964, -1, -1, 967, 147, 148, 149, 150, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, -1, -1, 165, -1, -1, -1, -1, -1, 147, - 148, 149, 150, 151, 997, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, - 1013, 31, 32, 33, 34, 35, 36, 37, 38, -1, + 27, 28, 29, 6, 169, 168, 168, 168, 1106, 146, + 147, 148, 149, 150, 1112, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 168, 6, 168, 164, 168, 168, + 6, 172, 6, 169, 1132, 1133, 1134, 1135, 1136, 1137, + 1138, 1139, 1140, 168, 168, 6, 6, 6, 1149, 1150, + 1151, 1149, 1150, 1151, 1152, 1153, 1154, 81, 1156, 1157, + 1158, 8, 146, 147, 148, 149, 150, 6, 152, 153, + 154, 155, 156, 157, 158, 159, 160, 4, 3, 4, + 164, 4, 3, 3, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 6, 6, 158, 6, 6, + 3, 6, 3, 3, 1212, 1213, 1214, 1215, 1216, 1217, + 1218, 1219, 1220, 1221, 1222, 1223, 6, 6, 6, 156, + 157, 3, 3, 3, 78, 81, 163, 6, 170, 4, + 167, 1239, 1240, 146, 147, 148, 149, 150, 171, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 170, 172, + 6, 164, 7, 6, 169, 169, 168, 168, 1266, 168, + 168, 1269, 168, 6, 169, 169, 168, 168, 1276, 1277, + 1278, 1279, 1280, 1281, 1282, 1283, 1284, 1285, 168, 1287, + 169, 1289, 169, 6, 169, 1293, 3, 1295, 170, 146, + 147, 148, 149, 150, 172, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 6, 6, 3, 164, 6, 1317, + 1318, 6, 6, 6, 6, 1323, 1324, 1325, 1326, 1327, + 1328, 156, 157, 6, 3, 6, 171, 5, 163, 5, + 170, 6, 167, 4, 168, 173, 172, 6, 6, 1347, + 168, 168, 168, 168, 1352, 1353, 1354, 1355, 1356, 1357, + 1358, 1359, 1360, 169, 169, 169, 168, 6, 6, 168, + 6, 82, 168, 531, 532, 6, 534, 6, 6, 6, + 538, 539, 1380, 1381, 1382, 1383, 1384, 1385, 1386, 6, + 1388, 6, 1390, 5, 5, 168, 171, 78, 172, 6, + 168, 168, 4, 169, 5, 169, 6, 168, 168, 168, + 1408, 1409, 1410, 168, 170, 172, 170, 170, 6, 6, + 5, 171, 6, 170, 1422, 1423, 1424, 1425, 1426, 1427, + 6, 4, 168, 168, 171, 169, 78, 595, 169, 171, + 598, 1439, 1440, 1441, 1442, 6, 1444, 6, 1446, 6, + 6, 6, 6, 6, 6, 170, 168, 6, 168, 168, + 618, 619, 141, 168, 170, 168, 624, 625, 1466, 1467, + 1468, 6, 170, 631, 170, 633, 169, 1475, 6, 1477, + 6, 1479, 6, 6, 6, 6, 6, 6, 646, 169, + 648, 168, 168, 6, 6, 170, 170, 6, 656, 657, + 658, 168, 6, 661, 662, 663, 664, 665, 666, 667, + 170, 0, 0, 170, 170, 170, 6, 567, 1130, 3, + 4, 6, 314, 6, 6, 9, 10, 11, 12, 13, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 146, 147, 148, 149, + 150, 6, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, 541, 799, 164, -1, -1, -1, -1, -1, + 146, 147, 148, 149, 150, 6, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, 146, + 147, 148, 149, 150, 6, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, 146, 147, 148, 149, 150, 6, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, 135, -1, 164, + -1, -1, -1, -1, -1, 6, -1, -1, 146, 147, + 148, 149, 150, 801, 152, 153, 154, 155, 156, 157, + 158, 159, 160, -1, 812, 6, 164, -1, -1, 817, + -1, -1, 146, 147, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, 836, 163, + 164, -1, -1, 167, -1, 6, -1, -1, -1, -1, + -1, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, 6, -1, -1, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, 146, 147, 148, 149, 150, 6, + 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, + -1, -1, 164, -1, -1, -1, 146, 147, 148, 149, + 150, 6, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, -1, -1, 164, 146, 147, 148, 149, 150, + 6, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + 6, -1, -1, 164, -1, -1, -1, -1, -1, -1, + -1, 979, -1, -1, 982, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + 6, -1, -1, 164, -1, -1, -1, -1, -1, -1, + -1, -1, 146, 147, 148, 149, 150, 1015, 152, 153, + 154, 155, 156, 157, 158, 159, 160, 6, -1, -1, + 164, -1, -1, 1031, -1, -1, -1, -1, -1, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 8, -1, -1, 164, -1, -1, + -1, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 8, -1, -1, 164, + 146, 147, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, -1, + -1, -1, -1, -1, -1, 1103, 1104, -1, -1, -1, + 146, 147, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, -1, + -1, -1, -1, 1131, -1, -1, -1, -1, -1, -1, + 146, 147, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, -1, + -1, -1, -1, -1, -1, -1, -1, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, 1186, -1, + -1, -1, 146, 147, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, -1, 1211, 146, 147, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, + -1, -1, 164, 31, 32, 33, 34, 35, 36, 37, + 38, -1, 40, -1, 42, 43, -1, 45, 46, -1, + -1, -1, -1, -1, 31, 32, 33, 34, 35, 36, + 37, 38, -1, 40, 62, 42, 43, -1, 45, 46, + -1, -1, 138, 1271, -1, -1, -1, -1, 76, 77, + 146, 147, 148, 149, 150, 62, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, 76, + 77, 31, 32, 33, 34, 35, 36, 37, 38, -1, 40, -1, 42, 43, -1, 45, 46, -1, -1, -1, - 31, 32, 33, 34, 35, 36, 37, 38, -1, 40, - -1, 42, 43, 63, 45, 46, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 77, 78, -1, - -1, -1, 63, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 136, 77, 78, -1, -1, - 1083, 1084, -1, -1, -1, -1, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, 136, 1109, -1, -1, -1, - -1, -1, -1, 133, -1, -1, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, 133, -1, 165, -1, -1, -1, -1, -1, - -1, -1, 0, 1, -1, -1, 4, -1, -1, -1, - -1, -1, 172, -1, 1157, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 1171, -1, - 172, 172, 30, 31, 32, 33, 34, 35, 36, 37, - 38, -1, 40, 41, 42, 43, 44, 45, 46, -1, - -1, -1, 50, 51, 52, 53, 54, 55, -1, 57, - 58, 59, 60, 61, -1, 63, -1, -1, -1, -1, - -1, -1, -1, -1, 34, -1, 1219, -1, -1, 77, - 78, -1, -1, -1, 139, -1, 84, 85, 86, 87, - 88, 89, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, 147, 148, 149, 150, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, -1, 1270, -1, 165, - 90, 91, 92, 169, -1, 133, 172, -1, 98, 99, - 100, 101, 102, 103, 104, 105, 106, 107, -1, -1, - -1, -1, -1, -1, -1, 1298, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, -1, 127, 128, 129, - 130, 131, 132, -1, -1, -1, -1, -1, 147, 148, - 149, 150, 151, 1326, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - 169, -1, -1, 172, -1, -1, -1, 147, 148, 149, - 150, 151, 1355, 153, 154, 155, 156, 157, 158, 159, - 160, 161, -1, -1, -1, 165, 1369, -1, -1, 169, - -1, -1, 172, 147, 148, 149, 150, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, 141, -1, -1, -1, -1, 172, 147, - 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, -1, -1, 165, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - 169, 170, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, - 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, - 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, - -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, - -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, - 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, - 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, - -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, - -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, - 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, - 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, - -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, - -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, - 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, - 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, - -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, - -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, - 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, - 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, - -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, - -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, - 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, - 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, - -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, - -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, - 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, - 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, - -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, - -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, - 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, - 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, - -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, - -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, - 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, - 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, - -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, - -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, - 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, - 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, - -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, - 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, - 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, - -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, - 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, - -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, - 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, - 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, - 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, - -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, - 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, - -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, - 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, - 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, - -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, - 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, - 165 + -1, -1, -1, -1, 1322, -1, -1, -1, -1, -1, + -1, -1, 62, -1, 132, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 135, 76, 77, -1, -1, + -1, -1, 1350, -1, -1, 132, 146, 147, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, -1, 171, 164, -1, -1, -1, -1, -1, + 1378, -1, -1, -1, 0, 1, -1, -1, 4, -1, + -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, + -1, -1, 132, -1, -1, -1, -1, -1, -1, 1407, + -1, -1, -1, -1, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 1421, 40, 41, 42, 43, 44, 45, + 46, -1, -1, -1, 50, 51, 52, 53, 54, 55, + 34, 57, 58, 59, 60, 61, 62, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 76, 77, -1, -1, -1, -1, -1, 83, 84, 85, + 86, 87, 88, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, 89, 90, 91, -1, -1, + -1, 174, -1, 97, 98, 99, 100, 101, 102, 103, + 104, 105, 106, -1, -1, -1, 132, -1, -1, -1, + -1, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, -1, 126, 127, 128, 129, 130, 131, 146, 147, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, -1, -1, -1, 164, -1, -1, -1, + -1, 146, 147, 148, 149, 150, 174, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, -1, 146, 147, 148, 149, 150, 174, + 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, + -1, -1, 164, -1, -1, -1, 168, -1, -1, 171, + 146, 147, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, -1, + -1, -1, 168, -1, -1, 171, 146, 147, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, -1, -1, 164, -1, -1, -1, 168, -1, + -1, 171, 146, 147, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 146, 147, 148, 149, 150, 171, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, 140, -1, -1, -1, -1, 171, 146, 147, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, -1, -1, -1, 164, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, 168, + 169, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, -1, 169, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, -1, 169, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, -1, 169, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, -1, 169, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, -1, + 169, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, -1, 169, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, -1, 169, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, -1, 169, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, -1, 169, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, -1, + 169, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, -1, 169, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, -1, 169, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, -1, 169, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, -1, 169, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, -1, + 169, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, -1, 169, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, -1, 169, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, -1, 169, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, -1, 169, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, -1, + 169, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, -1, 169, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, -1, 169, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, -1, 169, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, -1, 169, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, -1, + 169, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, -1, 169, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, -1, 169, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, -1, 169, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, -1, 169, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, -1, + 169, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, -1, 169, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, -1, 169, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, -1, 169, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, -1, 169, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, -1, + 169, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, -1, 169, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, -1, 169, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, -1, 169, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, -1, 169, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, -1, + 169, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, -1, 169, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, -1, 169, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, -1, 169, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, -1, 169, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, -1, + 169, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, -1, 169, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, -1, 169, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, -1, 169, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, -1, 169, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, -1, + 169, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, -1, 169, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, -1, 169, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, -1, 169, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, -1, 169, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, -1, + 169, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, -1, 169, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, -1, 169, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, -1, 169, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, -1, 169, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, -1, + 169, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, -1, 169, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, -1, 169, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, -1, 169, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, 168, 146, 147, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, -1, -1, 164, -1, -1, -1, 168, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, 168, 146, 147, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, -1, -1, 168, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, 168, 146, 147, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, -1, -1, -1, 164, -1, -1, -1, + 168, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, 168, 146, 147, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, + -1, -1, 164, -1, -1, -1, 168, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, 168, + 146, 147, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, -1, + -1, -1, 168, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, 168, 146, 147, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, -1, -1, 164, -1, -1, -1, 168, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, 168, 146, 147, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, -1, -1, 168, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, 168, 146, 147, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, -1, -1, -1, 164, -1, -1, -1, + 168, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, 168, 146, 147, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, + -1, -1, 164, -1, -1, -1, 168, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, 168, + 146, 147, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, -1, + -1, -1, 168, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, 168, 146, 147, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, -1, -1, 164, -1, -1, -1, 168, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, 168, 146, 147, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, -1, -1, 168, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, 168, 146, 147, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, -1, -1, -1, 164, -1, -1, -1, + 168, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, 168, 146, 147, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, + -1, -1, 164, -1, -1, -1, 168, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, 168, + 146, 147, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, -1, + -1, -1, 168, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, 168, 146, 147, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, -1, -1, 164, -1, -1, -1, 168, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, 168, 146, 147, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, -1, -1, 168, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, 168, 146, 147, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, -1, -1, -1, 164, -1, -1, -1, + 168, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, 168, 146, 147, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, + -1, -1, 164, -1, -1, -1, 168, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, 168, + 146, 147, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, -1, + -1, -1, 168, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, 168, 146, 147, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, -1, -1, 164, -1, -1, -1, 168, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, 168, 146, 147, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, -1, -1, 168, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, 168, 146, 147, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, -1, -1, -1, 164, -1, -1, -1, + 168, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, 168, 146, 147, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, + -1, -1, 164, -1, -1, -1, 168, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, 168, + 146, 147, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, -1, + -1, -1, 168, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, 168, 146, 147, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, -1, -1, 164, -1, -1, -1, 168, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, 168, 146, 147, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, -1, -1, 168, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, 168, 146, 147, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, -1, -1, -1, 164, -1, -1, -1, + 168, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, 168, 146, 147, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, + -1, -1, 164, -1, -1, -1, 168, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, 168, + 146, 147, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, -1, + -1, -1, 168, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, 168, 146, 147, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, -1, -1, 164, -1, -1, -1, 168, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, 168, 146, 147, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, -1, -1, 168, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, 168, 146, 147, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, -1, -1, -1, 164, -1, -1, -1, + 168, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, 168, 146, 147, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, + -1, -1, 164, -1, -1, -1, 168, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, 168, + 146, 147, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, -1, + -1, -1, 168, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, 168, 146, 147, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, -1, -1, 164, -1, -1, -1, 168, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, 168, 146, 147, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, -1, -1, 168, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, 168, 146, 147, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, -1, -1, -1, 164, -1, -1, -1, + 168, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, 168, 146, 147, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, + -1, -1, 164, -1, -1, -1, 168, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, 168, + 146, 147, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, -1, + -1, -1, 168, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, 168, 146, 147, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, -1, -1, 164, -1, -1, -1, 168, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, 168, 146, 147, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, -1, -1, 168, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, 168, 146, 147, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, -1, -1, -1, 164, -1, -1, -1, + 168, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, 168, 146, 147, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, + -1, -1, 164, -1, -1, -1, 168, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, 168, + 146, 147, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, -1, + -1, -1, 168, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, 168, 146, 147, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, -1, -1, 164, -1, -1, -1, 168, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, 168, 146, 147, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, -1, -1, 168, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, 168, 146, 147, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, -1, -1, -1, 164, -1, -1, -1, + 168, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164, + -1, -1, -1, 168, 146, 147, 148, 149, 150, -1, + 152, 153, 154, 155, 156, 157, 158, 159, 160, -1, + -1, -1, 164, -1, -1, -1, 168, 146, 147, 148, + 149, 150, -1, 152, 153, 154, 155, 156, 157, 158, + 159, 160, -1, -1, -1, 164, -1, -1, -1, 168, + 146, 147, 148, 149, 150, -1, 152, 153, 154, 155, + 156, 157, 158, 159, 160, -1, -1, -1, 164, -1, + -1, -1, 168, 146, 147, 148, 149, 150, -1, 152, + 153, 154, 155, 156, 157, 158, 159, 160, -1, -1, + -1, 164, -1, -1, -1, 168, 146, 147, 148, 149, + 150, -1, 152, 153, 154, 155, 156, 157, 158, 159, + 160, -1, -1, -1, 164, -1, -1, -1, 168, 146, + 147, 148, 149, 150, -1, 152, 153, 154, 155, 156, + 157, 158, 159, 160, -1, -1, -1, 164, -1, -1, + -1, 168, 146, 147, 148, 149, 150, -1, 152, 153, + 154, 155, 156, 157, 158, 159, 160, -1, -1, -1, + 164, -1, -1, -1, 168, 146, 147, 148, 149, 150, + -1, 152, 153, 154, 155, 156, 157, 158, 159, 160, + -1, -1, -1, 164, -1, -1, -1, 168, 146, 147, + 148, 149, 150, -1, 152, 153, 154, 155, 156, 157, + 158, 159, 160, -1, -1, -1, 164, -1, -1, -1, + 168, 146, 147, 148, 149, 150, -1, 152, 153, 154, + 155, 156, 157, 158, 159, 160, -1, -1, -1, 164 }; /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ #line 3 "/usr/lib/bison.simple" @@ -4311,7 +4410,7 @@ case 209: ; break;} case 210: -#line 1515 "Gmsh.y" +#line 1518 "Gmsh.y" { if(!(pStrCat = Get_StringOptionCategory(yyvsp[-5].c))) vyyerror("Unknown String Option Class '%s'", yyvsp[-5].c); @@ -4325,7 +4424,24 @@ case 210: ; break;} case 211: -#line 1527 "Gmsh.y" +#line 1531 "Gmsh.y" +{ + if(strcmp(yyvsp[-10].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-10].c); + else{ + if(!(pStrOpt = Get_StringViewOption((int)yyvsp[-6].d, yyvsp[-3].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-6].d); + else vyyerror("Unknown String Option '%s.View[%d].%s'", + yyvsp[-10].c, (int)yyvsp[-6].d, yyvsp[-3].c); + } + else{ + *pStrOpt = yyvsp[-1].c ; + } + } + ; + break;} +case 212: +#line 1549 "Gmsh.y" { if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))) vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-5].c); @@ -4343,8 +4459,30 @@ case 211: } ; break;} -case 212: -#line 1544 "Gmsh.y" +case 213: +#line 1566 "Gmsh.y" +{ + if(strcmp(yyvsp[-10].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-10].c); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)yyvsp[-6].d, yyvsp[-3].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-6].d); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + yyvsp[-10].c, (int)yyvsp[-6].d, yyvsp[-3].c); + } + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt = yyvsp[-1].d ; break ; + case GMSH_FLOAT : *(float*)pNumOpt = (float)yyvsp[-1].d ; break ; + case GMSH_LONG : *(long*)pNumOpt = (long)yyvsp[-1].d ; break ; + case GMSH_INT : *(int*)pNumOpt = (int)yyvsp[-1].d ; break ; + } + } + } + ; + break;} +case 214: +#line 1587 "Gmsh.y" { if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))) vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-5].c); @@ -4362,8 +4500,30 @@ case 212: } ; break;} -case 213: -#line 1561 "Gmsh.y" +case 215: +#line 1604 "Gmsh.y" +{ + if(strcmp(yyvsp[-10].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-10].c); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)yyvsp[-6].d, yyvsp[-3].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-6].d); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + yyvsp[-10].c, (int)yyvsp[-6].d, yyvsp[-3].c); + } + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt += yyvsp[-1].d ; break ; + case GMSH_FLOAT : *(float*)pNumOpt += (float)yyvsp[-1].d ; break ; + case GMSH_LONG : *(long*)pNumOpt += (long)yyvsp[-1].d ; break ; + case GMSH_INT : *(int*)pNumOpt += (int)yyvsp[-1].d ; break ; + } + } + } + ; + break;} +case 216: +#line 1625 "Gmsh.y" { if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))) vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-5].c); @@ -4381,8 +4541,30 @@ case 213: } ; break;} -case 214: -#line 1578 "Gmsh.y" +case 217: +#line 1642 "Gmsh.y" +{ + if(strcmp(yyvsp[-10].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-10].c); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)yyvsp[-6].d, yyvsp[-3].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-6].d); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + yyvsp[-10].c, (int)yyvsp[-6].d, yyvsp[-3].c); + } + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt -= yyvsp[-1].d ; break ; + case GMSH_FLOAT : *(float*)pNumOpt -= (float)yyvsp[-1].d ; break ; + case GMSH_LONG : *(long*)pNumOpt -= (long)yyvsp[-1].d ; break ; + case GMSH_INT : *(int*)pNumOpt -= (int)yyvsp[-1].d ; break ; + } + } + } + ; + break;} +case 218: +#line 1663 "Gmsh.y" { if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))) vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-5].c); @@ -4400,8 +4582,30 @@ case 214: } ; break;} -case 215: -#line 1595 "Gmsh.y" +case 219: +#line 1680 "Gmsh.y" +{ + if(strcmp(yyvsp[-10].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-10].c); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)yyvsp[-6].d, yyvsp[-3].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-6].d); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + yyvsp[-10].c, (int)yyvsp[-6].d, yyvsp[-3].c); + } + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt *= yyvsp[-1].d ; break ; + case GMSH_FLOAT : *(float*)pNumOpt *= (float)yyvsp[-1].d ; break ; + case GMSH_LONG : *(long*)pNumOpt *= (long)yyvsp[-1].d ; break ; + case GMSH_INT : *(int*)pNumOpt *= (int)yyvsp[-1].d ; break ; + } + } + } + ; + break;} +case 220: +#line 1701 "Gmsh.y" { if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))) vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-5].c); @@ -4419,8 +4623,30 @@ case 215: } ; break;} -case 216: -#line 1612 "Gmsh.y" +case 221: +#line 1718 "Gmsh.y" +{ + if(strcmp(yyvsp[-10].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-10].c); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)yyvsp[-6].d, yyvsp[-3].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-6].d); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + yyvsp[-10].c, (int)yyvsp[-6].d, yyvsp[-3].c); + } + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt /= yyvsp[-1].d ; break ; + case GMSH_FLOAT : *(float*)pNumOpt /= (float)yyvsp[-1].d ; break ; + case GMSH_LONG : *(long*)pNumOpt /= (long)yyvsp[-1].d ; break ; + case GMSH_INT : *(int*)pNumOpt /= (int)yyvsp[-1].d ; break ; + } + } + } + ; + break;} +case 222: +#line 1739 "Gmsh.y" { if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-4].c))) vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-4].c); @@ -4438,8 +4664,30 @@ case 216: } ; break;} -case 217: -#line 1629 "Gmsh.y" +case 223: +#line 1756 "Gmsh.y" +{ + if(strcmp(yyvsp[-10].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-10].c); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)yyvsp[-6].d, yyvsp[-3].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-6].d); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + yyvsp[-10].c, (int)yyvsp[-6].d, yyvsp[-3].c); + } + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt += 1. ; break ; + case GMSH_FLOAT : *(float*)pNumOpt += 1. ; break ; + case GMSH_LONG : *(long*)pNumOpt += 1 ; break ; + case GMSH_INT : *(int*)pNumOpt += 1 ; break ; + } + } + } + ; + break;} +case 224: +#line 1777 "Gmsh.y" { if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-4].c))) vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-4].c); @@ -4457,8 +4705,30 @@ case 217: } ; break;} -case 218: -#line 1646 "Gmsh.y" +case 225: +#line 1794 "Gmsh.y" +{ + if(strcmp(yyvsp[-10].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-10].c); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)yyvsp[-6].d, yyvsp[-3].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-6].d); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + yyvsp[-10].c, (int)yyvsp[-6].d, yyvsp[-3].c); + } + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt -= 1. ; break ; + case GMSH_FLOAT : *(float*)pNumOpt -= 1. ; break ; + case GMSH_LONG : *(long*)pNumOpt -= 1 ; break ; + case GMSH_INT : *(int*)pNumOpt -= 1 ; break ; + } + } + } + ; + break;} +case 226: +#line 1817 "Gmsh.y" { if(!(pArrCat = Get_ArrayOptionCategory(yyvsp[-5].c))) vyyerror("Unknown Array Option Class '%s'", yyvsp[-5].c); @@ -4468,24 +4738,54 @@ case 218: else{ switch(i){ case GMSH_DOUBLE : - for(j=0 ; j<4; j++) ((double*)pNumOpt)[j] = yyvsp[-1].v[j] ; + for(j=0 ; j<4; j++) ((double*)pArrOpt)[j] = yyvsp[-1].v[j] ; break ; case GMSH_FLOAT : - for(j=0 ; j<4; j++) ((float*)pNumOpt)[j] = (float)yyvsp[-1].v[j] ; + for(j=0 ; j<4; j++) ((float*)pArrOpt)[j] = (float)yyvsp[-1].v[j] ; break ; case GMSH_LONG : - for(j=0 ; j<4; j++) ((long*)pNumOpt)[j] = (long)yyvsp[-1].v[j] ; + for(j=0 ; j<4; j++) ((long*)pArrOpt)[j] = (long)yyvsp[-1].v[j] ; break ; case GMSH_INT : - for(j=0 ; j<4; j++) ((int*)pNumOpt)[j] = (int)yyvsp[-1].v[j] ; + for(j=0 ; j<4; j++) ((int*)pArrOpt)[j] = (int)yyvsp[-1].v[j] ; break ; } } } ; break;} -case 219: -#line 1671 "Gmsh.y" +case 227: +#line 1842 "Gmsh.y" +{ + if(strcmp(yyvsp[-10].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-10].c); + else{ + if(!(pArrOpt = Get_ArrayViewOption((int)yyvsp[-6].d, yyvsp[-3].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-6].d); + else vyyerror("Unknown Array Option '%s.View[%d].%s'", + yyvsp[-10].c, (int)yyvsp[-6].d, yyvsp[-3].c); + } + else{ + switch(i){ + case GMSH_DOUBLE : + for(j=0 ; j<3; j++) ((double*)pArrOpt)[j] = yyvsp[-1].v[j] ; + break ; + case GMSH_FLOAT : + for(j=0 ; j<3; j++) ((float*)pArrOpt)[j] = (float)yyvsp[-1].v[j] ; + break ; + case GMSH_LONG : + for(j=0 ; j<3; j++) ((long*)pArrOpt)[j] = (long)yyvsp[-1].v[j] ; + break ; + case GMSH_INT : + for(j=0 ; j<3; j++) ((int*)pArrOpt)[j] = (int)yyvsp[-1].v[j] ; + break ; + } + } + } + ; + break;} +case 228: +#line 1871 "Gmsh.y" { if(!(pArrCat = Get_ArrayOptionCategory(yyvsp[-5].c))) vyyerror("Unknown Array Option Class '%s'", yyvsp[-5].c); @@ -4495,24 +4795,54 @@ case 219: else{ switch(i){ case GMSH_DOUBLE : - for(j=0 ; j<4; j++) ((double*)pNumOpt)[j] += yyvsp[-1].v[j] ; + for(j=0 ; j<4; j++) ((double*)pArrOpt)[j] += yyvsp[-1].v[j] ; break ; case GMSH_FLOAT : - for(j=0 ; j<4; j++) ((float*)pNumOpt)[j] += (float)yyvsp[-1].v[j] ; + for(j=0 ; j<4; j++) ((float*)pArrOpt)[j] += (float)yyvsp[-1].v[j] ; break ; case GMSH_LONG : - for(j=0 ; j<4; j++) ((long*)pNumOpt)[j] += (long)yyvsp[-1].v[j] ; + for(j=0 ; j<4; j++) ((long*)pArrOpt)[j] += (long)yyvsp[-1].v[j] ; break ; case GMSH_INT : - for(j=0 ; j<4; j++) ((int*)pNumOpt)[j] += (int)yyvsp[-1].v[j] ; + for(j=0 ; j<4; j++) ((int*)pArrOpt)[j] += (int)yyvsp[-1].v[j] ; break ; } } } ; break;} -case 220: -#line 1696 "Gmsh.y" +case 229: +#line 1896 "Gmsh.y" +{ + if(strcmp(yyvsp[-10].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-10].c); + else{ + if(!(pArrOpt = Get_ArrayViewOption((int)yyvsp[-6].d, yyvsp[-3].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-6].d); + else vyyerror("Unknown Array Option '%s.View[%d].%s'", + yyvsp[-10].c, (int)yyvsp[-6].d, yyvsp[-3].c); + } + else{ + switch(i){ + case GMSH_DOUBLE : + for(j=0 ; j<3; j++) ((double*)pArrOpt)[j] += yyvsp[-1].v[j] ; + break ; + case GMSH_FLOAT : + for(j=0 ; j<3; j++) ((float*)pArrOpt)[j] += (float)yyvsp[-1].v[j] ; + break ; + case GMSH_LONG : + for(j=0 ; j<3; j++) ((long*)pArrOpt)[j] += (long)yyvsp[-1].v[j] ; + break ; + case GMSH_INT : + for(j=0 ; j<3; j++) ((int*)pArrOpt)[j] += (int)yyvsp[-1].v[j] ; + break ; + } + } + } + ; + break;} +case 230: +#line 1925 "Gmsh.y" { if(!(pArrCat = Get_ArrayOptionCategory(yyvsp[-5].c))) vyyerror("Unknown Array Option Class '%s'", yyvsp[-5].c); @@ -4522,24 +4852,54 @@ case 220: else{ switch(i){ case GMSH_DOUBLE : - for(j=0 ; j<4; j++) ((double*)pNumOpt)[j] -= yyvsp[-1].v[j] ; + for(j=0 ; j<4; j++) ((double*)pArrOpt)[j] -= yyvsp[-1].v[j] ; break ; case GMSH_FLOAT : - for(j=0 ; j<4; j++) ((float*)pNumOpt)[j] -= (float)yyvsp[-1].v[j] ; + for(j=0 ; j<4; j++) ((float*)pArrOpt)[j] -= (float)yyvsp[-1].v[j] ; break ; case GMSH_LONG : - for(j=0 ; j<4; j++) ((long*)pNumOpt)[j] -= (long)yyvsp[-1].v[j] ; + for(j=0 ; j<4; j++) ((long*)pArrOpt)[j] -= (long)yyvsp[-1].v[j] ; break ; case GMSH_INT : - for(j=0 ; j<4; j++) ((int*)pNumOpt)[j] -= (int)yyvsp[-1].v[j] ; + for(j=0 ; j<4; j++) ((int*)pArrOpt)[j] -= (int)yyvsp[-1].v[j] ; break ; } } } ; break;} -case 221: -#line 1721 "Gmsh.y" +case 231: +#line 1950 "Gmsh.y" +{ + if(strcmp(yyvsp[-10].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-10].c); + else{ + if(!(pArrOpt = Get_ArrayViewOption((int)yyvsp[-6].d, yyvsp[-3].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-6].d); + else vyyerror("Unknown Array Option '%s.View[%d].%s'", + yyvsp[-10].c, (int)yyvsp[-6].d, yyvsp[-3].c); + } + else{ + switch(i){ + case GMSH_DOUBLE : + for(j=0 ; j<3; j++) ((double*)pArrOpt)[j] -= yyvsp[-1].v[j] ; + break ; + case GMSH_FLOAT : + for(j=0 ; j<3; j++) ((float*)pArrOpt)[j] -= (float)yyvsp[-1].v[j] ; + break ; + case GMSH_LONG : + for(j=0 ; j<3; j++) ((long*)pArrOpt)[j] -= (long)yyvsp[-1].v[j] ; + break ; + case GMSH_INT : + for(j=0 ; j<3; j++) ((int*)pArrOpt)[j] -= (int)yyvsp[-1].v[j] ; + break ; + } + } + } + ; + break;} +case 232: +#line 1981 "Gmsh.y" { if(!(pColCat = Get_ColorOptionCategory(yyvsp[-7].c))) vyyerror("Unknown Color Option Class '%s'", yyvsp[-7].c); @@ -4552,196 +4912,196 @@ case 221: } ; break;} -case 225: -#line 1759 "Gmsh.y" +case 236: +#line 2020 "Gmsh.y" {yyval.i = 1;; break;} -case 226: -#line 1760 "Gmsh.y" +case 237: +#line 2021 "Gmsh.y" {yyval.i = 0;; break;} -case 227: -#line 1761 "Gmsh.y" +case 238: +#line 2022 "Gmsh.y" {yyval.i = -1;; break;} -case 228: -#line 1762 "Gmsh.y" +case 239: +#line 2023 "Gmsh.y" {yyval.i = -1;; break;} -case 229: -#line 1763 "Gmsh.y" +case 240: +#line 2024 "Gmsh.y" {yyval.i = -1;; break;} -case 230: -#line 1767 "Gmsh.y" +case 241: +#line 2028 "Gmsh.y" { yyval.d = yyvsp[0].d; ; break;} -case 231: -#line 1768 "Gmsh.y" +case 242: +#line 2029 "Gmsh.y" { yyval.d = yyvsp[-1].d ; ; break;} -case 232: -#line 1769 "Gmsh.y" +case 243: +#line 2030 "Gmsh.y" { yyval.d = -yyvsp[0].d ; ; break;} -case 233: -#line 1770 "Gmsh.y" +case 244: +#line 2031 "Gmsh.y" { yyval.d = yyvsp[0].d; ; break;} -case 234: -#line 1771 "Gmsh.y" +case 245: +#line 2032 "Gmsh.y" { yyval.d = !yyvsp[0].d ; ; break;} -case 235: -#line 1772 "Gmsh.y" +case 246: +#line 2033 "Gmsh.y" { yyval.d = yyvsp[-2].d - yyvsp[0].d ; ; break;} -case 236: -#line 1773 "Gmsh.y" +case 247: +#line 2034 "Gmsh.y" { yyval.d = yyvsp[-2].d + yyvsp[0].d ; ; break;} -case 237: -#line 1774 "Gmsh.y" +case 248: +#line 2035 "Gmsh.y" { yyval.d = yyvsp[-2].d * yyvsp[0].d ; ; break;} -case 238: -#line 1775 "Gmsh.y" +case 249: +#line 2036 "Gmsh.y" { yyval.d = yyvsp[-2].d / yyvsp[0].d ; ; break;} -case 239: -#line 1776 "Gmsh.y" +case 250: +#line 2037 "Gmsh.y" { yyval.d = (int)yyvsp[-2].d % (int)yyvsp[0].d ; ; break;} -case 240: -#line 1777 "Gmsh.y" +case 251: +#line 2038 "Gmsh.y" { yyval.d = pow(yyvsp[-2].d,yyvsp[0].d) ; ; break;} -case 241: -#line 1778 "Gmsh.y" +case 252: +#line 2039 "Gmsh.y" { yyval.d = yyvsp[-2].d < yyvsp[0].d ; ; break;} -case 242: -#line 1779 "Gmsh.y" +case 253: +#line 2040 "Gmsh.y" { yyval.d = yyvsp[-2].d > yyvsp[0].d ; ; break;} -case 243: -#line 1780 "Gmsh.y" +case 254: +#line 2041 "Gmsh.y" { yyval.d = yyvsp[-2].d <= yyvsp[0].d ; ; break;} -case 244: -#line 1781 "Gmsh.y" +case 255: +#line 2042 "Gmsh.y" { yyval.d = yyvsp[-2].d >= yyvsp[0].d ; ; break;} -case 245: -#line 1782 "Gmsh.y" +case 256: +#line 2043 "Gmsh.y" { yyval.d = yyvsp[-2].d == yyvsp[0].d ; ; break;} -case 246: -#line 1783 "Gmsh.y" +case 257: +#line 2044 "Gmsh.y" { yyval.d = yyvsp[-2].d != yyvsp[0].d ; ; break;} -case 247: -#line 1784 "Gmsh.y" +case 258: +#line 2045 "Gmsh.y" { yyval.d = yyvsp[-2].d && yyvsp[0].d ; ; break;} -case 248: -#line 1785 "Gmsh.y" +case 259: +#line 2046 "Gmsh.y" { yyval.d = yyvsp[-2].d || yyvsp[0].d ; ; break;} -case 249: -#line 1786 "Gmsh.y" +case 260: +#line 2047 "Gmsh.y" { yyval.d = yyvsp[-4].d? yyvsp[-2].d : yyvsp[0].d ; ; break;} -case 250: -#line 1787 "Gmsh.y" +case 261: +#line 2048 "Gmsh.y" { yyval.d = exp(yyvsp[-1].d); ; break;} -case 251: -#line 1788 "Gmsh.y" +case 262: +#line 2049 "Gmsh.y" { yyval.d = log(yyvsp[-1].d); ; break;} -case 252: -#line 1789 "Gmsh.y" +case 263: +#line 2050 "Gmsh.y" { yyval.d = log10(yyvsp[-1].d); ; break;} -case 253: -#line 1790 "Gmsh.y" +case 264: +#line 2051 "Gmsh.y" { yyval.d = sqrt(yyvsp[-1].d); ; break;} -case 254: -#line 1791 "Gmsh.y" +case 265: +#line 2052 "Gmsh.y" { yyval.d = sin(yyvsp[-1].d); ; break;} -case 255: -#line 1792 "Gmsh.y" +case 266: +#line 2053 "Gmsh.y" { yyval.d = asin(yyvsp[-1].d); ; break;} -case 256: -#line 1793 "Gmsh.y" +case 267: +#line 2054 "Gmsh.y" { yyval.d = cos(yyvsp[-1].d); ; break;} -case 257: -#line 1794 "Gmsh.y" +case 268: +#line 2055 "Gmsh.y" { yyval.d = acos(yyvsp[-1].d); ; break;} -case 258: -#line 1795 "Gmsh.y" +case 269: +#line 2056 "Gmsh.y" { yyval.d = tan(yyvsp[-1].d); ; break;} -case 259: -#line 1796 "Gmsh.y" +case 270: +#line 2057 "Gmsh.y" { yyval.d = atan(yyvsp[-1].d); ; break;} -case 260: -#line 1797 "Gmsh.y" +case 271: +#line 2058 "Gmsh.y" { yyval.d = atan2(yyvsp[-3].d,yyvsp[-1].d); ; break;} -case 261: -#line 1798 "Gmsh.y" +case 272: +#line 2059 "Gmsh.y" { yyval.d = sinh(yyvsp[-1].d); ; break;} -case 262: -#line 1799 "Gmsh.y" +case 273: +#line 2060 "Gmsh.y" { yyval.d = cosh(yyvsp[-1].d); ; break;} -case 263: -#line 1800 "Gmsh.y" +case 274: +#line 2061 "Gmsh.y" { yyval.d = tanh(yyvsp[-1].d); ; break;} -case 264: -#line 1801 "Gmsh.y" +case 275: +#line 2062 "Gmsh.y" { yyval.d = fabs(yyvsp[-1].d); ; break;} -case 265: -#line 1802 "Gmsh.y" +case 276: +#line 2063 "Gmsh.y" { yyval.d = floor(yyvsp[-1].d); ; break;} -case 266: -#line 1803 "Gmsh.y" +case 277: +#line 2064 "Gmsh.y" { yyval.d = ceil(yyvsp[-1].d); ; break;} -case 267: -#line 1804 "Gmsh.y" +case 278: +#line 2065 "Gmsh.y" { yyval.d = fmod(yyvsp[-3].d,yyvsp[-1].d); ; break;} -case 268: -#line 1805 "Gmsh.y" +case 279: +#line 2066 "Gmsh.y" { yyval.d = fmod(yyvsp[-3].d,yyvsp[-1].d); ; break;} -case 269: -#line 1806 "Gmsh.y" +case 280: +#line 2067 "Gmsh.y" { yyval.d = sqrt(yyvsp[-3].d*yyvsp[-3].d+yyvsp[-1].d*yyvsp[-1].d); ; break;} -case 270: -#line 1810 "Gmsh.y" +case 281: +#line 2071 "Gmsh.y" { yyval.d = yyvsp[0].d; ; break;} -case 271: -#line 1811 "Gmsh.y" +case 282: +#line 2072 "Gmsh.y" { yyval.d = 3.141592653589793; ; break;} -case 272: -#line 1813 "Gmsh.y" +case 283: +#line 2074 "Gmsh.y" { TheSymbol.Name = yyvsp[0].c ; if (!List_Query(Symbol_L, &TheSymbol, CompareSymbols)) { @@ -4751,8 +5111,8 @@ case 272: Free(yyvsp[0].c); ; break;} -case 273: -#line 1822 "Gmsh.y" +case 284: +#line 2083 "Gmsh.y" { if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-2].c))) vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-2].c); @@ -4770,8 +5130,30 @@ case 273: } ; break;} -case 274: -#line 1839 "Gmsh.y" +case 285: +#line 2100 "Gmsh.y" +{ + if(strcmp(yyvsp[-7].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-7].c); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)yyvsp[-3].d, yyvsp[0].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-3].d); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + yyvsp[-7].c, (int)yyvsp[-3].d, yyvsp[0].c); + } + else{ + switch(i){ + case GMSH_DOUBLE : yyval.d = *(double*)pNumOpt ; break ; + case GMSH_FLOAT : yyval.d = (double)(*(float*)pNumOpt) ; break ; + case GMSH_LONG : yyval.d = (double)(*(long*)pNumOpt) ; break ; + case GMSH_INT : yyval.d = (double)(*(int*)pNumOpt) ; break ; + } + } + } + ; + break;} +case 286: +#line 2121 "Gmsh.y" { if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-3].c))) vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-3].c); @@ -4789,8 +5171,30 @@ case 274: } ; break;} -case 275: -#line 1856 "Gmsh.y" +case 287: +#line 2138 "Gmsh.y" +{ + if(strcmp(yyvsp[-8].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-8].c); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)yyvsp[-4].d, yyvsp[-1].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-4].d); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + yyvsp[-8].c, (int)yyvsp[-4].d, yyvsp[-1].c); + } + else{ + switch(i){ + case GMSH_DOUBLE : yyval.d = (*(double*)pNumOpt += 1.) ; break ; + case GMSH_FLOAT : yyval.d = (double)(*(float*)pNumOpt += 1.) ; break ; + case GMSH_LONG : yyval.d = (double)(*(long*)pNumOpt += 1) ; break ; + case GMSH_INT : yyval.d = (double)(*(int*)pNumOpt += 1) ; break ; + } + } + } + ; + break;} +case 288: +#line 2159 "Gmsh.y" { if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-3].c))) vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-3].c); @@ -4808,16 +5212,38 @@ case 275: } ; break;} -case 276: -#line 1876 "Gmsh.y" +case 289: +#line 2176 "Gmsh.y" +{ + if(strcmp(yyvsp[-8].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-8].c); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)yyvsp[-4].d, yyvsp[-1].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-4].d); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + yyvsp[-8].c, (int)yyvsp[-4].d, yyvsp[-1].c); + } + else{ + switch(i){ + case GMSH_DOUBLE : yyval.d = (*(double*)pNumOpt -= 1.) ; break ; + case GMSH_FLOAT : yyval.d = (double)(*(float*)pNumOpt -= 1.) ; break ; + case GMSH_LONG : yyval.d = (double)(*(long*)pNumOpt -= 1) ; break ; + case GMSH_INT : yyval.d = (double)(*(int*)pNumOpt -= 1) ; break ; + } + } + } + ; + break;} +case 290: +#line 2199 "Gmsh.y" { ListOfDouble2_L = List_Create(2,1,sizeof(double)) ; for(d=yyvsp[-2].d ; (yyvsp[-2].d<yyvsp[0].d)?(d<=yyvsp[0].d):(d>=yyvsp[0].d) ; (yyvsp[-2].d<yyvsp[0].d)?(d+=1.):(d-=1.)) List_Add(ListOfDouble2_L, &d) ; ; break;} -case 277: -#line 1882 "Gmsh.y" +case 291: +#line 2205 "Gmsh.y" { ListOfDouble2_L = List_Create(2,1,sizeof(double)) ; if(!yyvsp[0].d || (yyvsp[-4].d<yyvsp[-2].d && yyvsp[0].d<0) || (yyvsp[-4].d>yyvsp[-2].d && yyvsp[0].d>0)){ @@ -4829,62 +5255,62 @@ case 277: List_Add(ListOfDouble2_L, &d) ; ; break;} -case 278: -#line 1896 "Gmsh.y" +case 292: +#line 2219 "Gmsh.y" { yyval.v = yyvsp[0].v; ; break;} -case 279: -#line 1900 "Gmsh.y" +case 293: +#line 2223 "Gmsh.y" { for(i=0 ; i<6 ; i++) yyval.v[i] = -yyvsp[0].v[i] ; ; break;} -case 280: -#line 1904 "Gmsh.y" +case 294: +#line 2227 "Gmsh.y" { yyval.v = yyvsp[0].v; ; break;} -case 281: -#line 1908 "Gmsh.y" +case 295: +#line 2231 "Gmsh.y" { for(i=0 ; i<6 ; i++) yyval.v[i] = yyvsp[-2].v[i] - yyvsp[0].v[i] ; ; break;} -case 282: -#line 1912 "Gmsh.y" +case 296: +#line 2235 "Gmsh.y" { for(i=0 ; i<6 ; i++) yyval.v[i] = yyvsp[-2].v[i] + yyvsp[0].v[i] ; ; break;} -case 283: -#line 1918 "Gmsh.y" +case 297: +#line 2241 "Gmsh.y" { yyval.v[0]=yyvsp[-9].d; yyval.v[1]=yyvsp[-7].d; yyval.v[2]=yyvsp[-5].d; yyval.v[3]=yyvsp[-3].d; yyval.v[4]=yyvsp[-1].d; ; break;} -case 284: -#line 1922 "Gmsh.y" +case 298: +#line 2245 "Gmsh.y" { yyval.v[0]=yyvsp[-7].d; yyval.v[1]=yyvsp[-5].d; yyval.v[2]=yyvsp[-3].d; yyval.v[3]=yyvsp[-1].d; yyval.v[4]=1.0; ; break;} -case 285: -#line 1926 "Gmsh.y" +case 299: +#line 2249 "Gmsh.y" { yyval.v[0]=yyvsp[-5].d; yyval.v[1]=yyvsp[-3].d; yyval.v[2]=yyvsp[-1].d; yyval.v[3]=0.0; yyval.v[4]=1.0; ; break;} -case 286: -#line 1930 "Gmsh.y" +case 300: +#line 2253 "Gmsh.y" { yyval.v[0]=yyvsp[-5].d; yyval.v[1]=yyvsp[-3].d; yyval.v[2]=yyvsp[-1].d; yyval.v[3]=0.0; yyval.v[4]=1.0; ; break;} -case 287: -#line 1934 "Gmsh.y" +case 301: +#line 2257 "Gmsh.y" { if(!(pArrCat = Get_ArrayOptionCategory(yyvsp[-2].c))) vyyerror("Unknown Array Option Class '%s'", yyvsp[-2].c); @@ -4911,84 +5337,116 @@ case 287: } ; break;} -case 288: -#line 1963 "Gmsh.y" +case 302: +#line 2283 "Gmsh.y" { + if(strcmp(yyvsp[-7].c, "Post")) + vyyerror("Unknown View Option Class '%s'", yyvsp[-7].c); + else{ + if(!(pArrOpt = Get_ArrayViewOption((int)yyvsp[-3].d, yyvsp[0].c, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)yyvsp[-3].d); + else vyyerror("Unknown Array Option '%s.View[%d].%s'", + yyvsp[-7].c, (int)yyvsp[-3].d, yyvsp[0].c); + } + else{ + switch(i){ + case GMSH_DOUBLE : + for(j=0 ; j<3 ; j++) yyval.v[j] = ((double*)pArrOpt)[j] ; + break ; + case GMSH_FLOAT : + for(j=0 ; j<3 ; j++) yyval.v[j] = (double)((float*)pArrOpt)[j] ; + break ; + case GMSH_LONG : + for(j=0 ; j<3 ; j++) yyval.v[j] = (double)((int*)pArrOpt)[j] ; + break ; + case GMSH_INT : + for(j=0 ; j<3 ; j++) yyval.v[j] = (double)((int*)pArrOpt)[j] ; + break ; + } + yyval.v[3] = 0. ; + yyval.v[4] = 1. ; + } + } ; break;} -case 289: -#line 1966 "Gmsh.y" +case 303: +#line 2316 "Gmsh.y" { ; break;} -case 290: -#line 1972 "Gmsh.y" +case 304: +#line 2319 "Gmsh.y" { ; break;} -case 291: -#line 1975 "Gmsh.y" +case 305: +#line 2325 "Gmsh.y" { ; break;} -case 292: -#line 1981 "Gmsh.y" +case 306: +#line 2328 "Gmsh.y" { ; break;} -case 293: -#line 1984 "Gmsh.y" +case 307: +#line 2334 "Gmsh.y" +{ + ; + break;} +case 308: +#line 2337 "Gmsh.y" { yyval.l=ListOfListOfDouble_L; ; break;} -case 294: -#line 1988 "Gmsh.y" +case 309: +#line 2341 "Gmsh.y" { yyval.l=ListOfListOfDouble_L; ; break;} -case 295: -#line 1995 "Gmsh.y" +case 310: +#line 2348 "Gmsh.y" { ListOfListOfDouble_L = List_Create(2,1,sizeof(List_T*)) ; List_Add(ListOfListOfDouble_L, &(yyvsp[0].l)) ; ; break;} -case 296: -#line 2000 "Gmsh.y" +case 311: +#line 2353 "Gmsh.y" { List_Add(ListOfListOfDouble_L, &(yyvsp[0].l)) ; ; break;} -case 297: -#line 2007 "Gmsh.y" +case 312: +#line 2360 "Gmsh.y" { ; break;} -case 298: -#line 2010 "Gmsh.y" +case 313: +#line 2363 "Gmsh.y" { ListOfDouble_L = List_Create(2,1,sizeof(double)) ; List_Add(ListOfDouble_L, &(yyvsp[0].d)) ; yyval.l=ListOfDouble_L; ; break;} -case 299: -#line 2016 "Gmsh.y" +case 314: +#line 2369 "Gmsh.y" { yyval.l=ListOfDouble_L; ; break;} -case 300: -#line 2024 "Gmsh.y" +case 315: +#line 2377 "Gmsh.y" { ListOfDouble_L = List_Create(2,1,sizeof(double)) ; List_Add(ListOfDouble_L, &(yyvsp[0].d)) ; ; break;} -case 301: -#line 2029 "Gmsh.y" +case 316: +#line 2382 "Gmsh.y" { ListOfDouble_L = List_Create(2,1,sizeof(double)) ; for(i=0 ; i<List_Nbr(ListOfDouble2_L) ; i++){ @@ -4998,14 +5456,14 @@ case 301: List_Delete(ListOfDouble2_L); ; break;} -case 302: -#line 2038 "Gmsh.y" +case 317: +#line 2391 "Gmsh.y" { List_Add(ListOfDouble_L, &(yyvsp[0].d)) ; ; break;} -case 303: -#line 2042 "Gmsh.y" +case 318: +#line 2395 "Gmsh.y" { for(i=0 ; i<List_Nbr(ListOfDouble2_L) ; i++){ List_Read(ListOfDouble2_L, i, &d) ; @@ -5014,34 +5472,34 @@ case 303: List_Delete(ListOfDouble2_L); ; break;} -case 304: -#line 2053 "Gmsh.y" +case 319: +#line 2406 "Gmsh.y" { yyval.u = PACK_COLOR((int)yyvsp[-7].d, (int)yyvsp[-5].d, (int)yyvsp[-3].d, (int)yyvsp[-1].d); ; break;} -case 305: -#line 2057 "Gmsh.y" +case 320: +#line 2410 "Gmsh.y" { yyval.u = PACK_COLOR((int)yyvsp[-5].d, (int)yyvsp[-3].d, (int)yyvsp[-1].d, 255); ; break;} -case 306: -#line 2061 "Gmsh.y" +case 321: +#line 2414 "Gmsh.y" { yyval.u = Get_ColorForString(ColorString, (int)yyvsp[-1].d, yyvsp[-3].c, &flag); if(flag) vyyerror("Unknown Color '%s'", yyvsp[-3].c); ; break;} -case 307: -#line 2066 "Gmsh.y" +case 322: +#line 2419 "Gmsh.y" { yyval.u = Get_ColorForString(ColorString, -1, yyvsp[0].c, &flag); if(flag) vyyerror("Unknown Color '%s'", yyvsp[0].c); ; break;} -case 308: -#line 2071 "Gmsh.y" +case 323: +#line 2424 "Gmsh.y" { if(!(pColCat = Get_ColorOptionCategory(yyvsp[-4].c))) vyyerror("Unknown Color Option Class '%s'", yyvsp[-4].c); @@ -5276,7 +5734,7 @@ yyerrhandle: } return 1; } -#line 2084 "Gmsh.y" +#line 2437 "Gmsh.y" void InitSymbols(void){ diff --git a/Parser/Gmsh.tab.cpp.h b/Parser/Gmsh.tab.cpp.h index 82978edde2cb9b05962940492ae305f9838ead2a..4c4535d797ef14cce5d27ae1b471e59d8b414fb0 100644 --- a/Parser/Gmsh.tab.cpp.h +++ b/Parser/Gmsh.tab.cpp.h @@ -66,102 +66,101 @@ typedef union { #define tDelete 313 #define tCoherence 314 #define tView 315 -#define tOffset 316 -#define tAttractor 317 -#define tLayers 318 -#define tScalarTetrahedron 319 -#define tVectorTetrahedron 320 -#define tTensorTetrahedron 321 -#define tScalarTriangle 322 -#define tVectorTriangle 323 -#define tTensorTriangle 324 -#define tScalarLine 325 -#define tVectorLine 326 -#define tTensorLine 327 -#define tScalarPoint 328 -#define tVectorPoint 329 -#define tTensorPoint 330 -#define tBSpline 331 -#define tNurbs 332 -#define tOrder 333 -#define tWith 334 -#define tBounds 335 -#define tKnots 336 -#define tColor 337 -#define tOptions 338 -#define tFor 339 -#define tEndFor 340 -#define tScript 341 -#define tExit 342 -#define tMerge 343 -#define tB_SPLINE_SURFACE_WITH_KNOTS 344 -#define tB_SPLINE_CURVE_WITH_KNOTS 345 -#define tCARTESIAN_POINT 346 -#define tTRUE 347 -#define tFALSE 348 -#define tUNSPECIFIED 349 -#define tU 350 -#define tV 351 -#define tEDGE_CURVE 352 -#define tVERTEX_POINT 353 -#define tORIENTED_EDGE 354 -#define tPLANE 355 -#define tFACE_OUTER_BOUND 356 -#define tEDGE_LOOP 357 -#define tADVANCED_FACE 358 -#define tVECTOR 359 -#define tDIRECTION 360 -#define tAXIS2_PLACEMENT_3D 361 -#define tISO 362 -#define tENDISO 363 -#define tENDSEC 364 -#define tDATA 365 -#define tHEADER 366 -#define tFILE_DESCRIPTION 367 -#define tFILE_SCHEMA 368 -#define tFILE_NAME 369 -#define tMANIFOLD_SOLID_BREP 370 -#define tCLOSED_SHELL 371 -#define tADVANCED_BREP_SHAPE_REPRESENTATION 372 -#define tFACE_BOUND 373 -#define tCYLINDRICAL_SURFACE 374 -#define tCONICAL_SURFACE 375 -#define tCIRCLE 376 -#define tTRIMMED_CURVE 377 -#define tGEOMETRIC_SET 378 -#define tCOMPOSITE_CURVE_SEGMENT 379 -#define tCONTINUOUS 380 -#define tCOMPOSITE_CURVE 381 -#define tTOROIDAL_SURFACE 382 -#define tPRODUCT_DEFINITION 383 -#define tPRODUCT_DEFINITION_SHAPE 384 -#define tSHAPE_DEFINITION_REPRESENTATION 385 -#define tELLIPSE 386 -#define tTrimmed 387 -#define tSolid 388 -#define tEndSolid 389 -#define tVertex 390 -#define tFacet 391 -#define tNormal 392 -#define tOuter 393 -#define tLoopSTL 394 -#define tEndLoop 395 -#define tEndFacet 396 -#define tAFFECTPLUS 397 -#define tAFFECTMINUS 398 -#define tAFFECTTIMES 399 -#define tAFFECTDIVIDE 400 -#define tAND 401 -#define tOR 402 -#define tNOTEQUAL 403 -#define tEQUAL 404 -#define tAPPROXEQUAL 405 -#define tLESSOREQUAL 406 -#define tGREATEROREQUAL 407 -#define tCROSSPRODUCT 408 -#define UNARYPREC 409 -#define tPLUSPLUS 410 -#define tMINUSMINUS 411 +#define tAttractor 316 +#define tLayers 317 +#define tScalarTetrahedron 318 +#define tVectorTetrahedron 319 +#define tTensorTetrahedron 320 +#define tScalarTriangle 321 +#define tVectorTriangle 322 +#define tTensorTriangle 323 +#define tScalarLine 324 +#define tVectorLine 325 +#define tTensorLine 326 +#define tScalarPoint 327 +#define tVectorPoint 328 +#define tTensorPoint 329 +#define tBSpline 330 +#define tNurbs 331 +#define tOrder 332 +#define tWith 333 +#define tBounds 334 +#define tKnots 335 +#define tColor 336 +#define tOptions 337 +#define tFor 338 +#define tEndFor 339 +#define tScript 340 +#define tExit 341 +#define tMerge 342 +#define tB_SPLINE_SURFACE_WITH_KNOTS 343 +#define tB_SPLINE_CURVE_WITH_KNOTS 344 +#define tCARTESIAN_POINT 345 +#define tTRUE 346 +#define tFALSE 347 +#define tUNSPECIFIED 348 +#define tU 349 +#define tV 350 +#define tEDGE_CURVE 351 +#define tVERTEX_POINT 352 +#define tORIENTED_EDGE 353 +#define tPLANE 354 +#define tFACE_OUTER_BOUND 355 +#define tEDGE_LOOP 356 +#define tADVANCED_FACE 357 +#define tVECTOR 358 +#define tDIRECTION 359 +#define tAXIS2_PLACEMENT_3D 360 +#define tISO 361 +#define tENDISO 362 +#define tENDSEC 363 +#define tDATA 364 +#define tHEADER 365 +#define tFILE_DESCRIPTION 366 +#define tFILE_SCHEMA 367 +#define tFILE_NAME 368 +#define tMANIFOLD_SOLID_BREP 369 +#define tCLOSED_SHELL 370 +#define tADVANCED_BREP_SHAPE_REPRESENTATION 371 +#define tFACE_BOUND 372 +#define tCYLINDRICAL_SURFACE 373 +#define tCONICAL_SURFACE 374 +#define tCIRCLE 375 +#define tTRIMMED_CURVE 376 +#define tGEOMETRIC_SET 377 +#define tCOMPOSITE_CURVE_SEGMENT 378 +#define tCONTINUOUS 379 +#define tCOMPOSITE_CURVE 380 +#define tTOROIDAL_SURFACE 381 +#define tPRODUCT_DEFINITION 382 +#define tPRODUCT_DEFINITION_SHAPE 383 +#define tSHAPE_DEFINITION_REPRESENTATION 384 +#define tELLIPSE 385 +#define tTrimmed 386 +#define tSolid 387 +#define tEndSolid 388 +#define tVertex 389 +#define tFacet 390 +#define tNormal 391 +#define tOuter 392 +#define tLoopSTL 393 +#define tEndLoop 394 +#define tEndFacet 395 +#define tAFFECTPLUS 396 +#define tAFFECTMINUS 397 +#define tAFFECTTIMES 398 +#define tAFFECTDIVIDE 399 +#define tAND 400 +#define tOR 401 +#define tNOTEQUAL 402 +#define tEQUAL 403 +#define tAPPROXEQUAL 404 +#define tLESSOREQUAL 405 +#define tGREATEROREQUAL 406 +#define tCROSSPRODUCT 407 +#define UNARYPREC 408 +#define tPLUSPLUS 409 +#define tMINUSMINUS 410 extern YYSTYPE yylval; diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index 26adef63b19afd1d1b414cc705d9e3dba94e0ef9..6b2ca8e198b22beaec9fc247647868efe611ec90 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -1,4 +1,4 @@ -%{ /* $Id: Gmsh.y,v 1.20 2000-12-06 23:01:55 geuzaine Exp $ */ +%{ /* $Id: Gmsh.y,v 1.21 2000-12-07 00:55:17 geuzaine Exp $ */ #include <stdarg.h> @@ -79,7 +79,7 @@ void vyyerror (char *fmt, ...); %token tUsing tBump tProgression %token tRotate tTranslate tSymmetry tDilate tExtrude tDuplicata %token tLoop tInclude tRecombine tDelete tCoherence -%token tView tOffset tAttractor tLayers +%token tView tAttractor tLayers %token tScalarTetrahedron tVectorTetrahedron tTensorTetrahedron %token tScalarTriangle tVectorTriangle tTensorTriangle %token tScalarLine tVectorLine tTensorLine @@ -397,7 +397,7 @@ View : { EndView(1, Force_ViewNumber,yyname,$2,0.,0.,0.); } - | tView tBIGSTR tOffset VExpr '{' Views '}' tEND + | tView tBIGSTR tSTRING VExpr '{' Views '}' tEND { EndView(1, Force_ViewNumber,yyname,$2,$4[0],$4[1],$4[2]); } @@ -1511,6 +1511,9 @@ Option : Printf { } + + /* -------- Strings -------- */ + | tSTRING '.' tSTRING tAFFECT tBIGSTR tEND { if(!(pStrCat = Get_StringOptionCategory($1))) @@ -1523,6 +1526,25 @@ Option : } } } + + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING tAFFECT tBIGSTR tEND + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pStrOpt = Get_StringViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown String Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + *pStrOpt = $10 ; + } + } + } + + /* -------- Numbers -------- */ + | tSTRING '.' tSTRING tAFFECT FExpr tEND { if(!(pNumCat = Get_NumberOptionCategory($1))) @@ -1540,6 +1562,27 @@ Option : } } } + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING tAFFECT FExpr tEND + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt = $10 ; break ; + case GMSH_FLOAT : *(float*)pNumOpt = (float)$10 ; break ; + case GMSH_LONG : *(long*)pNumOpt = (long)$10 ; break ; + case GMSH_INT : *(int*)pNumOpt = (int)$10 ; break ; + } + } + } + } + | tSTRING '.' tSTRING tAFFECTPLUS FExpr tEND { if(!(pNumCat = Get_NumberOptionCategory($1))) @@ -1557,6 +1600,27 @@ Option : } } } + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING tAFFECTPLUS FExpr tEND + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt += $10 ; break ; + case GMSH_FLOAT : *(float*)pNumOpt += (float)$10 ; break ; + case GMSH_LONG : *(long*)pNumOpt += (long)$10 ; break ; + case GMSH_INT : *(int*)pNumOpt += (int)$10 ; break ; + } + } + } + } + | tSTRING '.' tSTRING tAFFECTMINUS FExpr tEND { if(!(pNumCat = Get_NumberOptionCategory($1))) @@ -1574,6 +1638,27 @@ Option : } } } + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING tAFFECTMINUS FExpr tEND + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt -= $10 ; break ; + case GMSH_FLOAT : *(float*)pNumOpt -= (float)$10 ; break ; + case GMSH_LONG : *(long*)pNumOpt -= (long)$10 ; break ; + case GMSH_INT : *(int*)pNumOpt -= (int)$10 ; break ; + } + } + } + } + | tSTRING '.' tSTRING tAFFECTTIMES FExpr tEND { if(!(pNumCat = Get_NumberOptionCategory($1))) @@ -1591,6 +1676,27 @@ Option : } } } + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING tAFFECT FExpr tEND + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt *= $10 ; break ; + case GMSH_FLOAT : *(float*)pNumOpt *= (float)$10 ; break ; + case GMSH_LONG : *(long*)pNumOpt *= (long)$10 ; break ; + case GMSH_INT : *(int*)pNumOpt *= (int)$10 ; break ; + } + } + } + } + | tSTRING '.' tSTRING tAFFECTDIVIDE FExpr tEND { if(!(pNumCat = Get_NumberOptionCategory($1))) @@ -1608,6 +1714,27 @@ Option : } } } + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING tAFFECTDIVIDE FExpr tEND + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt /= $10 ; break ; + case GMSH_FLOAT : *(float*)pNumOpt /= (float)$10 ; break ; + case GMSH_LONG : *(long*)pNumOpt /= (long)$10 ; break ; + case GMSH_INT : *(int*)pNumOpt /= (int)$10 ; break ; + } + } + } + } + | tSTRING '.' tSTRING tPLUSPLUS tEND { if(!(pNumCat = Get_NumberOptionCategory($1))) @@ -1625,6 +1752,27 @@ Option : } } } + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING tPLUSPLUS FExpr tEND + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt += 1. ; break ; + case GMSH_FLOAT : *(float*)pNumOpt += 1. ; break ; + case GMSH_LONG : *(long*)pNumOpt += 1 ; break ; + case GMSH_INT : *(int*)pNumOpt += 1 ; break ; + } + } + } + } + | tSTRING '.' tSTRING tMINUSMINUS tEND { if(!(pNumCat = Get_NumberOptionCategory($1))) @@ -1642,6 +1790,29 @@ Option : } } } + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING tMINUSMINUS FExpr tEND + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt -= 1. ; break ; + case GMSH_FLOAT : *(float*)pNumOpt -= 1. ; break ; + case GMSH_LONG : *(long*)pNumOpt -= 1 ; break ; + case GMSH_INT : *(int*)pNumOpt -= 1 ; break ; + } + } + } + } + + /* -------- Arrays -------- */ + | tSTRING '.' tSTRING tAFFECT VExpr tEND { if(!(pArrCat = Get_ArrayOptionCategory($1))) @@ -1652,21 +1823,50 @@ Option : else{ switch(i){ case GMSH_DOUBLE : - for(j=0 ; j<4; j++) ((double*)pNumOpt)[j] = $5[j] ; + for(j=0 ; j<4; j++) ((double*)pArrOpt)[j] = $5[j] ; + break ; + case GMSH_FLOAT : + for(j=0 ; j<4; j++) ((float*)pArrOpt)[j] = (float)$5[j] ; + break ; + case GMSH_LONG : + for(j=0 ; j<4; j++) ((long*)pArrOpt)[j] = (long)$5[j] ; + break ; + case GMSH_INT : + for(j=0 ; j<4; j++) ((int*)pArrOpt)[j] = (int)$5[j] ; + break ; + } + } + } + } + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING tAFFECT VExpr tEND + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pArrOpt = Get_ArrayViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown Array Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + switch(i){ + case GMSH_DOUBLE : + for(j=0 ; j<3; j++) ((double*)pArrOpt)[j] = $10[j] ; break ; case GMSH_FLOAT : - for(j=0 ; j<4; j++) ((float*)pNumOpt)[j] = (float)$5[j] ; + for(j=0 ; j<3; j++) ((float*)pArrOpt)[j] = (float)$10[j] ; break ; case GMSH_LONG : - for(j=0 ; j<4; j++) ((long*)pNumOpt)[j] = (long)$5[j] ; + for(j=0 ; j<3; j++) ((long*)pArrOpt)[j] = (long)$10[j] ; break ; case GMSH_INT : - for(j=0 ; j<4; j++) ((int*)pNumOpt)[j] = (int)$5[j] ; + for(j=0 ; j<3; j++) ((int*)pArrOpt)[j] = (int)$10[j] ; break ; } } } } + | tSTRING '.' tSTRING tAFFECTPLUS VExpr tEND { if(!(pArrCat = Get_ArrayOptionCategory($1))) @@ -1677,21 +1877,50 @@ Option : else{ switch(i){ case GMSH_DOUBLE : - for(j=0 ; j<4; j++) ((double*)pNumOpt)[j] += $5[j] ; + for(j=0 ; j<4; j++) ((double*)pArrOpt)[j] += $5[j] ; + break ; + case GMSH_FLOAT : + for(j=0 ; j<4; j++) ((float*)pArrOpt)[j] += (float)$5[j] ; + break ; + case GMSH_LONG : + for(j=0 ; j<4; j++) ((long*)pArrOpt)[j] += (long)$5[j] ; + break ; + case GMSH_INT : + for(j=0 ; j<4; j++) ((int*)pArrOpt)[j] += (int)$5[j] ; + break ; + } + } + } + } + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING tAFFECTPLUS VExpr tEND + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pArrOpt = Get_ArrayViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown Array Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + switch(i){ + case GMSH_DOUBLE : + for(j=0 ; j<3; j++) ((double*)pArrOpt)[j] += $10[j] ; break ; case GMSH_FLOAT : - for(j=0 ; j<4; j++) ((float*)pNumOpt)[j] += (float)$5[j] ; + for(j=0 ; j<3; j++) ((float*)pArrOpt)[j] += (float)$10[j] ; break ; case GMSH_LONG : - for(j=0 ; j<4; j++) ((long*)pNumOpt)[j] += (long)$5[j] ; + for(j=0 ; j<3; j++) ((long*)pArrOpt)[j] += (long)$10[j] ; break ; case GMSH_INT : - for(j=0 ; j<4; j++) ((int*)pNumOpt)[j] += (int)$5[j] ; + for(j=0 ; j<3; j++) ((int*)pArrOpt)[j] += (int)$10[j] ; break ; } } } } + | tSTRING '.' tSTRING tAFFECTMINUS VExpr tEND { if(!(pArrCat = Get_ArrayOptionCategory($1))) @@ -1702,21 +1931,52 @@ Option : else{ switch(i){ case GMSH_DOUBLE : - for(j=0 ; j<4; j++) ((double*)pNumOpt)[j] -= $5[j] ; + for(j=0 ; j<4; j++) ((double*)pArrOpt)[j] -= $5[j] ; + break ; + case GMSH_FLOAT : + for(j=0 ; j<4; j++) ((float*)pArrOpt)[j] -= (float)$5[j] ; + break ; + case GMSH_LONG : + for(j=0 ; j<4; j++) ((long*)pArrOpt)[j] -= (long)$5[j] ; + break ; + case GMSH_INT : + for(j=0 ; j<4; j++) ((int*)pArrOpt)[j] -= (int)$5[j] ; + break ; + } + } + } + } + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING tAFFECTMINUS VExpr tEND + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pArrOpt = Get_ArrayViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown Array Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + switch(i){ + case GMSH_DOUBLE : + for(j=0 ; j<3; j++) ((double*)pArrOpt)[j] -= $10[j] ; break ; case GMSH_FLOAT : - for(j=0 ; j<4; j++) ((float*)pNumOpt)[j] -= (float)$5[j] ; + for(j=0 ; j<3; j++) ((float*)pArrOpt)[j] -= (float)$10[j] ; break ; case GMSH_LONG : - for(j=0 ; j<4; j++) ((long*)pNumOpt)[j] -= (long)$5[j] ; + for(j=0 ; j<3; j++) ((long*)pArrOpt)[j] -= (long)$10[j] ; break ; case GMSH_INT : - for(j=0 ; j<4; j++) ((int*)pNumOpt)[j] -= (int)$5[j] ; + for(j=0 ; j<3; j++) ((int*)pArrOpt)[j] -= (int)$10[j] ; break ; } } } } + + /* -------- Colors -------- */ + | tSTRING '.' tColor '.' tSTRING tAFFECT Color tEND { if(!(pColCat = Get_ColorOptionCategory($1))) @@ -1729,6 +1989,7 @@ Option : } } } + ; /* --------------- @@ -1835,6 +2096,27 @@ FExpr_Single : } } } + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + switch(i){ + case GMSH_DOUBLE : $$ = *(double*)pNumOpt ; break ; + case GMSH_FLOAT : $$ = (double)(*(float*)pNumOpt) ; break ; + case GMSH_LONG : $$ = (double)(*(long*)pNumOpt) ; break ; + case GMSH_INT : $$ = (double)(*(int*)pNumOpt) ; break ; + } + } + } + } + | tSTRING '.' tSTRING tPLUSPLUS { if(!(pNumCat = Get_NumberOptionCategory($1))) @@ -1852,6 +2134,27 @@ FExpr_Single : } } } + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING tPLUSPLUS + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + switch(i){ + case GMSH_DOUBLE : $$ = (*(double*)pNumOpt += 1.) ; break ; + case GMSH_FLOAT : $$ = (double)(*(float*)pNumOpt += 1.) ; break ; + case GMSH_LONG : $$ = (double)(*(long*)pNumOpt += 1) ; break ; + case GMSH_INT : $$ = (double)(*(int*)pNumOpt += 1) ; break ; + } + } + } + } + | tSTRING '.' tSTRING tMINUSMINUS { if(!(pNumCat = Get_NumberOptionCategory($1))) @@ -1869,6 +2172,26 @@ FExpr_Single : } } } + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING tMINUSMINUS + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pNumOpt = Get_NumberViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown Numeric Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + switch(i){ + case GMSH_DOUBLE : $$ = (*(double*)pNumOpt -= 1.) ; break ; + case GMSH_FLOAT : $$ = (double)(*(float*)pNumOpt -= 1.) ; break ; + case GMSH_LONG : $$ = (double)(*(long*)pNumOpt -= 1) ; break ; + case GMSH_INT : $$ = (double)(*(int*)pNumOpt -= 1) ; break ; + } + } + } + } ; FExpr_Range : @@ -1956,6 +2279,36 @@ VExpr_Single : } } } + | tSTRING '.' tView '[' FExpr ']' '.' tSTRING + { + if(strcmp($1, "Post")) + vyyerror("Unknown View Option Class '%s'", $1); + else{ + if(!(pArrOpt = Get_ArrayViewOption((int)$5, $8, &i))){ + if(i < 0) vyyerror("PostProcessing View %d does not Exist", (int)$5); + else vyyerror("Unknown Array Option '%s.View[%d].%s'", + $1, (int)$5, $8); + } + else{ + switch(i){ + case GMSH_DOUBLE : + for(j=0 ; j<3 ; j++) $$[j] = ((double*)pArrOpt)[j] ; + break ; + case GMSH_FLOAT : + for(j=0 ; j<3 ; j++) $$[j] = (double)((float*)pArrOpt)[j] ; + break ; + case GMSH_LONG : + for(j=0 ; j<3 ; j++) $$[j] = (double)((int*)pArrOpt)[j] ; + break ; + case GMSH_INT : + for(j=0 ; j<3 ; j++) $$[j] = (double)((int*)pArrOpt)[j] ; + break ; + } + $$[3] = 0. ; + $$[4] = 1. ; + } + } + } ; ListOfStrings : diff --git a/Parser/Gmsh.yy.cpp b/Parser/Gmsh.yy.cpp index 19b2371535f9a1b10152659e4eba9dd513f59008..9e543e52b77f2f8c5838da9e3df75a1f9a891867 100644 --- a/Parser/Gmsh.yy.cpp +++ b/Parser/Gmsh.yy.cpp @@ -2,7 +2,7 @@ /* A lexical scanner generated by flex */ /* Scanner skeleton version: - * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.20 2000-12-06 23:01:55 geuzaine Exp $ + * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.21 2000-12-07 00:55:17 geuzaine Exp $ */ #define FLEX_SCANNER @@ -283,116 +283,116 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); *yy_cp = '\0'; \ yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 176 -#define YY_END_OF_BUFFER 177 -static yyconst short int yy_accept[970] = +#define YY_NUM_RULES 175 +#define YY_END_OF_BUFFER 176 +static yyconst short int yy_accept[965] = { 0, - 0, 0, 177, 175, 1, 1, 175, 5, 169, 175, - 6, 175, 175, 175, 175, 175, 170, 14, 2, 175, - 9, 175, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 175, 175, 0, 0, 22, 169, 18, 12, 19, - 10, 20, 11, 0, 172, 0, 0, 0, 0, 3, - 4, 13, 16, 171, 170, 0, 24, 21, 25, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 73, 174, 174, 174, 174, 174, 174, 174, - 111, 114, 105, 108, 174, 174, 174, 174, 174, 174, - 174, 113, 174, 116, 174, 107, 110, 174, 174, 174, - 174, 112, 115, 106, 109, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 17, 23, 0, 0, - 15, 0, 122, 123, 124, 125, 171, 0, 0, 173, - - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 40, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 50, 174, - 174, 174, 174, 174, 174, 100, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 64, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 84, 174, 174, 174, 174, 174, 174, 94, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - - 174, 174, 174, 174, 174, 0, 0, 0, 172, 0, - 0, 171, 174, 26, 174, 174, 174, 174, 174, 174, - 28, 30, 174, 174, 174, 174, 35, 174, 174, 174, - 174, 174, 174, 174, 38, 174, 174, 174, 174, 174, - 39, 139, 174, 174, 174, 174, 174, 174, 0, 174, - 174, 174, 103, 174, 174, 174, 55, 174, 57, 174, - 174, 174, 0, 174, 174, 133, 174, 174, 62, 174, - 63, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 86, 174, 85, 174, 83, 174, 174, 174, - - 174, 93, 174, 174, 174, 174, 174, 97, 174, 99, - 174, 174, 174, 174, 164, 8, 174, 174, 174, 174, - 174, 0, 0, 0, 171, 174, 174, 174, 174, 174, - 174, 174, 32, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 45, 174, 174, - 174, 174, 174, 174, 174, 0, 174, 174, 174, 174, - 174, 174, 56, 174, 174, 58, 0, 174, 60, 174, - 174, 65, 174, 104, 174, 68, 174, 174, 174, 70, - 137, 174, 174, 174, 74, 75, 76, 174, 174, 174, - 174, 82, 174, 174, 174, 174, 174, 174, 174, 174, - - 174, 96, 174, 174, 174, 174, 174, 174, 161, 174, - 174, 163, 168, 174, 0, 0, 174, 174, 174, 174, - 27, 29, 31, 174, 174, 174, 37, 174, 152, 174, - 174, 174, 174, 174, 174, 42, 174, 174, 174, 47, - 48, 174, 174, 174, 174, 0, 145, 174, 174, 101, - 174, 174, 174, 174, 174, 174, 174, 138, 0, 174, - 66, 61, 174, 67, 174, 69, 174, 174, 174, 174, - 79, 174, 174, 81, 174, 90, 87, 174, 174, 174, - 174, 174, 174, 174, 134, 174, 98, 174, 174, 174, - 7, 162, 160, 0, 0, 174, 174, 174, 174, 33, - - 174, 36, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 44, 174, 174, 174, 174, 54, 0, 174, 174, - 52, 174, 174, 174, 174, 174, 174, 0, 59, 174, - 174, 71, 174, 174, 174, 174, 174, 174, 88, 174, - 174, 174, 174, 174, 95, 174, 174, 165, 174, 0, - 0, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 0, - 51, 53, 174, 174, 174, 174, 174, 174, 0, 174, - 174, 174, 174, 72, 174, 174, 174, 89, 174, 174, - 174, 174, 174, 166, 167, 0, 0, 174, 174, 174, - - 174, 34, 174, 174, 174, 174, 174, 174, 174, 174, - 43, 135, 49, 174, 128, 0, 174, 174, 174, 141, - 174, 174, 0, 174, 174, 174, 174, 174, 80, 174, - 174, 174, 174, 92, 174, 0, 0, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 46, - 174, 127, 0, 131, 174, 174, 174, 174, 0, 174, - 174, 174, 78, 174, 174, 174, 174, 174, 174, 0, - 0, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 0, 174, 174, 140, 174, 0, - 174, 174, 174, 77, 174, 174, 174, 91, 174, 121, - - 0, 121, 174, 174, 174, 174, 174, 174, 174, 146, - 174, 174, 174, 174, 0, 174, 174, 174, 143, 174, - 174, 174, 174, 174, 174, 129, 120, 174, 132, 120, - 174, 174, 174, 174, 174, 174, 174, 174, 0, 174, - 174, 154, 174, 126, 174, 174, 174, 153, 174, 174, - 174, 174, 174, 174, 174, 174, 41, 0, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 117, 156, - 150, 174, 0, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 144, 130, 142, 174, 174, - 174, 151, 174, 174, 174, 174, 174, 174, 174, 174, - - 174, 174, 136, 174, 174, 174, 174, 174, 157, 174, - 174, 174, 174, 174, 149, 148, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 174, 174, 174, 155, - 174, 174, 174, 174, 174, 158, 174, 174, 119, 174, - 174, 174, 174, 174, 174, 118, 174, 174, 174, 174, - 174, 174, 174, 174, 159, 174, 174, 147, 0 + 0, 0, 176, 174, 1, 1, 174, 5, 168, 174, + 6, 174, 174, 174, 174, 174, 169, 14, 2, 174, + 9, 174, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 174, 174, 0, 0, 22, 168, 18, 12, 19, + 10, 20, 11, 0, 171, 0, 0, 0, 0, 3, + 4, 13, 16, 170, 169, 0, 24, 21, 25, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 72, 173, 173, 173, 173, 173, 173, 173, 110, + 113, 104, 107, 173, 173, 173, 173, 173, 173, 173, + 112, 173, 115, 173, 106, 109, 173, 173, 173, 173, + 111, 114, 105, 108, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 17, 23, 0, 0, 15, + 0, 121, 122, 123, 124, 170, 0, 0, 172, 173, + + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 40, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 50, 173, 173, + 173, 173, 173, 173, 99, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 64, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 83, + 173, 173, 173, 173, 173, 173, 93, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + + 173, 173, 173, 0, 0, 0, 171, 0, 0, 170, + 173, 26, 173, 173, 173, 173, 173, 173, 28, 30, + 173, 173, 173, 173, 35, 173, 173, 173, 173, 173, + 173, 173, 38, 173, 173, 173, 173, 173, 39, 138, + 173, 173, 173, 173, 173, 173, 0, 173, 173, 173, + 102, 173, 173, 173, 55, 173, 57, 173, 173, 173, + 0, 173, 173, 132, 173, 173, 62, 173, 63, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 85, + 173, 84, 173, 82, 173, 173, 173, 173, 92, 173, + + 173, 173, 173, 173, 96, 173, 98, 173, 173, 173, + 173, 163, 8, 173, 173, 173, 173, 173, 0, 0, + 0, 170, 173, 173, 173, 173, 173, 173, 173, 32, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 45, 173, 173, 173, 173, 173, + 173, 173, 0, 173, 173, 173, 173, 173, 173, 56, + 173, 173, 58, 0, 173, 60, 173, 173, 65, 173, + 103, 173, 68, 173, 173, 69, 136, 173, 173, 173, + 73, 74, 75, 173, 173, 173, 173, 81, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 95, 173, 173, + + 173, 173, 173, 173, 160, 173, 173, 162, 167, 173, + 0, 0, 173, 173, 173, 173, 27, 29, 31, 173, + 173, 173, 37, 173, 151, 173, 173, 173, 173, 173, + 173, 42, 173, 173, 173, 47, 48, 173, 173, 173, + 173, 0, 144, 173, 173, 100, 173, 173, 173, 173, + 173, 173, 173, 137, 0, 173, 66, 61, 173, 67, + 173, 173, 173, 173, 173, 78, 173, 173, 80, 173, + 89, 86, 173, 173, 173, 173, 173, 173, 173, 133, + 173, 97, 173, 173, 173, 7, 161, 159, 0, 0, + 173, 173, 173, 173, 33, 173, 36, 173, 173, 173, + + 173, 173, 173, 173, 173, 173, 44, 173, 173, 173, + 173, 54, 0, 173, 173, 52, 173, 173, 173, 173, + 173, 173, 0, 59, 173, 173, 70, 173, 173, 173, + 173, 173, 173, 87, 173, 173, 173, 173, 173, 94, + 173, 173, 164, 173, 0, 0, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 0, 51, 53, 173, 173, 173, + 173, 173, 173, 0, 173, 173, 173, 173, 71, 173, + 173, 173, 88, 173, 173, 173, 173, 173, 165, 166, + 0, 0, 173, 173, 173, 173, 34, 173, 173, 173, + + 173, 173, 173, 173, 173, 43, 134, 49, 173, 127, + 0, 173, 173, 173, 140, 173, 173, 0, 173, 173, + 173, 173, 173, 79, 173, 173, 173, 173, 91, 173, + 0, 0, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 46, 173, 126, 0, 130, 173, + 173, 173, 173, 0, 173, 173, 173, 77, 173, 173, + 173, 173, 173, 173, 0, 0, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 0, + 173, 173, 139, 173, 0, 173, 173, 173, 76, 173, + 173, 173, 90, 173, 120, 0, 120, 173, 173, 173, + + 173, 173, 173, 173, 145, 173, 173, 173, 173, 0, + 173, 173, 173, 142, 173, 173, 173, 173, 173, 173, + 128, 119, 173, 131, 119, 173, 173, 173, 173, 173, + 173, 173, 173, 0, 173, 173, 153, 173, 125, 173, + 173, 173, 152, 173, 173, 173, 173, 173, 173, 173, + 173, 41, 0, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 116, 155, 149, 173, 0, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 143, 129, 141, 173, 173, 173, 150, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 135, 173, 173, + + 173, 173, 173, 156, 173, 173, 173, 173, 173, 148, + 147, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 154, 173, 173, 173, 173, 173, + 157, 173, 173, 118, 173, 173, 173, 173, 173, 173, + 117, 173, 173, 173, 173, 173, 173, 173, 173, 158, + 173, 173, 146, 0 } ; static yyconst int yy_ec[256] = @@ -439,229 +439,227 @@ static yyconst int yy_meta[75] = 3, 3, 1, 1 } ; -static yyconst short int yy_base[975] = +static yyconst short int yy_base[970] = { 0, - 0, 0, 1231, 49, 50, 1232, 55, 52, 68, 73, + 0, 0, 1226, 49, 50, 1227, 55, 52, 68, 73, 53, 65, 78, 79, 111, 93, 130, 71, 77, 87, 109, 117, 123, 131, 176, 138, 178, 135, 175, 181, - 184, 81, 125, 209, 218, 186, 222, 238, 214, 278, - 313, 217, 273, 232, 263, 243, 248, 306, 279, 297, - 318, 300, 336, 1192, 1192, 1232, 366, 1232, 1232, 1232, - 1232, 1232, 1232, 1216, 371, 1215, 1214, 126, 1213, 1232, - 1232, 1232, 1232, 376, 391, 400, 1232, 1232, 1232, 0, - 72, 1180, 1186, 1190, 1169, 1162, 115, 1181, 1155, 1176, - 1148, 1155, 1174, 1173, 1174, 81, 1176, 1143, 1151, 1158, - - 1142, 310, 1164, 1165, 1145, 1144, 1139, 1171, 1165, 1172, - 1139, 1144, 188, 1170, 1160, 1143, 1131, 1130, 1126, 1152, - 1165, 1125, 1149, 1134, 1123, 1147, 1111, 1121, 1120, 115, - 1143, 1114, 1125, 1112, 1144, 1120, 1107, 1120, 1148, 1133, - 1105, 1097, 0, 1118, 117, 121, 1115, 1099, 1106, 1140, - 0, 0, 0, 0, 1094, 1097, 1100, 1101, 1094, 1093, - 1097, 0, 1116, 0, 1123, 0, 0, 1093, 170, 1095, - 191, 0, 0, 0, 0, 1098, 1092, 1083, 1096, 1096, - 1085, 1076, 1080, 1077, 1084, 1077, 1232, 1232, 1104, 1099, - 1232, 417, 1232, 1232, 1232, 1232, 422, 437, 406, 442, - - 1102, 1072, 1113, 1095, 1094, 292, 1073, 1072, 1067, 1072, - 1091, 1068, 1065, 1085, 1100, 1084, 1085, 1091, 1090, 1061, - 1061, 1054, 1066, 1063, 1054, 1052, 1057, 1089, 1084, 1057, - 1060, 1050, 1080, 1075, 225, 1048, 1076, 1037, 0, 1038, - 1074, 1073, 1034, 1037, 1045, 0, 1061, 1069, 1033, 1083, - 1034, 1025, 1063, 1036, 1033, 1034, 1072, 1023, 1053, 1028, - 1015, 1031, 1053, 1014, 1021, 1024, 1040, 1049, 1025, 1008, - 1012, 1011, 1017, 1009, 1013, 1006, 1017, 1012, 1026, 1010, - 1005, 1005, 1003, 993, 1004, 998, 1019, 1020, 998, 993, - 993, 991, 1009, 1008, 979, 980, 990, 406, 992, 982, - - 229, 984, 989, 984, 974, 998, 1000, 452, 463, 472, - 477, 482, 996, 0, 1000, 997, 1019, 972, 975, 982, - 0, 1015, 980, 971, 993, 974, 0, 998, 990, 996, - 985, 996, 984, 952, 0, 969, 959, 952, 951, 956, - 0, 0, 988, 946, 945, 953, 961, 970, 976, 979, - 943, 943, 0, 936, 954, 953, 0, 936, 0, 972, - 971, 931, 982, 928, 929, 0, 929, 926, 0, 978, - 0, 962, 936, 930, 922, 950, 932, 923, 919, 955, - 939, 921, 922, 925, 911, 912, 909, 910, 914, 906, - 919, 943, 0, 907, 0, 908, 0, 918, 913, 934, - - 929, 0, 898, 903, 906, 923, 932, 0, 899, 0, - 908, 895, 894, 888, 0, 0, 900, 903, 887, 898, - 896, 917, 920, 487, 492, 915, 920, 917, 895, 877, - 881, 880, 0, 888, 878, 906, 871, 895, 907, 907, - 892, 908, 904, 871, 877, 874, 873, 0, 872, 883, - 870, 869, 870, 221, 880, 879, 893, 66, 853, 864, - 273, 484, 0, 874, 875, 0, 900, 860, 0, 846, - 854, 0, 872, 0, 847, 0, 866, 840, 845, 0, - 0, 879, 850, 851, 0, 0, 0, 847, 847, 849, - 845, 0, 849, 830, 842, 843, 827, 866, 864, 270, - - 837, 0, 850, 843, 834, 835, 824, 826, 0, 828, - 824, 0, 0, 811, 844, 854, 842, 850, 851, 837, - 0, 0, 859, 807, 819, 835, 0, 839, 0, 821, - 837, 833, 827, 807, 798, 0, 803, 792, 830, 0, - 0, 811, 817, 821, 830, 819, 0, 798, 797, 0, - 800, 815, 809, 823, 826, 823, 808, 0, 830, 792, - 0, 0, 810, 0, 816, 0, 777, 800, 774, 790, - 0, 773, 780, 0, 810, 0, 0, 782, 770, 810, - 806, 774, 781, 777, 0, 780, 0, 774, 764, 768, - 0, 0, 0, 782, 792, 780, 795, 789, 785, 0, - - 757, 0, 790, 793, 775, 773, 765, 781, 772, 757, - 758, 0, 771, 741, 767, 768, 0, 794, 738, 751, - 0, 759, 759, 759, 763, 767, 765, 782, 0, 768, - 767, 0, 744, 727, 732, 724, 728, 760, 0, 715, - 751, 736, 723, 716, 0, 743, 714, 0, 727, 741, - 749, 739, 727, 746, 750, 708, 723, 734, 739, 741, - 727, 741, 704, 700, 710, 726, 712, 717, 721, 744, - 0, 0, 721, 729, 730, 727, 726, 727, 735, 702, - 701, 722, 690, 0, 689, 692, 716, 0, 695, 717, - 684, 687, 702, 0, 0, 696, 706, 694, 346, 703, - - 706, 0, 150, 680, 698, 40, 69, 174, 156, 164, - 0, 0, 0, 204, 0, 236, 243, 239, 244, 0, - 266, 258, 316, 296, 310, 317, 305, 302, 0, 333, - 325, 331, 310, 0, 363, 355, 369, 357, 360, 377, - 374, 384, 370, 383, 390, 406, 416, 403, 409, 0, - 380, 0, 432, 0, 413, 431, 440, 430, 457, 436, - 448, 455, 0, 424, 475, 470, 474, 461, 479, 0, - 490, 525, 490, 493, 493, 486, 483, 484, 490, 504, - 497, 512, 493, 476, 535, 525, 512, 0, 524, 538, - 519, 525, 524, 0, 525, 518, 515, 0, 518, 1232, - - 0, 0, 522, 534, 599, 535, 520, 536, 534, 0, - 527, 544, 528, 512, 554, 534, 532, 533, 1232, 544, - 549, 541, 537, 551, 553, 0, 1232, 533, 0, 0, - 546, 556, 561, 549, 543, 562, 546, 538, 580, 549, - 561, 0, 567, 0, 563, 564, 573, 0, 561, 571, - 565, 589, 574, 589, 595, 584, 0, 609, 589, 589, - 579, 587, 592, 605, 601, 584, 589, 607, 0, 587, - 0, 608, 623, 612, 603, 616, 610, 606, 616, 621, - 629, 616, 600, 609, 627, 1232, 0, 0, 612, 615, - 605, 0, 616, 629, 615, 613, 631, 634, 633, 625, - - 623, 636, 0, 634, 634, 637, 640, 630, 621, 643, - 625, 626, 634, 641, 0, 0, 637, 640, 640, 647, - 651, 655, 653, 645, 658, 650, 639, 652, 666, 663, - 653, 655, 660, 653, 657, 656, 658, 657, 663, 0, - 673, 674, 675, 663, 667, 0, 669, 666, 0, 666, - 667, 682, 670, 688, 676, 0, 672, 673, 684, 693, - 680, 677, 683, 689, 0, 684, 686, 0, 1232, 721, - 724, 727, 730, 733 + 184, 81, 125, 209, 218, 186, 222, 234, 214, 274, + 309, 232, 269, 221, 240, 264, 260, 302, 293, 263, + 314, 315, 317, 1187, 1187, 1227, 355, 1227, 1227, 1227, + 1227, 1227, 1227, 1211, 361, 1210, 1209, 126, 1208, 1227, + 1227, 1227, 1227, 366, 381, 390, 1227, 1227, 1227, 0, + 72, 1175, 1181, 1185, 1164, 1157, 115, 1176, 1150, 1171, + 1143, 1150, 1169, 1168, 1169, 81, 1171, 1138, 1146, 1153, + + 1137, 353, 1159, 1160, 1140, 1139, 1134, 1166, 1160, 1167, + 1134, 1139, 188, 1165, 1155, 1138, 1126, 1125, 1121, 1147, + 1160, 1120, 1144, 1129, 1118, 1142, 1106, 1116, 1115, 115, + 1138, 1109, 1120, 1107, 1139, 1103, 1116, 1144, 1129, 1101, + 1093, 0, 1114, 117, 121, 1111, 1095, 1102, 1136, 0, + 0, 0, 0, 1090, 1093, 1096, 1097, 1090, 1089, 1093, + 0, 1112, 0, 1119, 0, 0, 1089, 170, 1091, 191, + 0, 0, 0, 0, 1094, 1088, 1079, 1092, 1092, 1081, + 1072, 1076, 1073, 1080, 1073, 1227, 1227, 1100, 1095, 1227, + 407, 1227, 1227, 1227, 1227, 412, 427, 432, 437, 1098, + + 1068, 1109, 1091, 1090, 292, 1069, 1068, 1063, 1068, 1087, + 1064, 1061, 1081, 1096, 1080, 1081, 1087, 1086, 1057, 1057, + 1050, 1062, 1059, 1050, 1048, 1053, 1085, 1080, 1053, 1056, + 1046, 1076, 1071, 232, 1044, 1072, 1033, 0, 1034, 1070, + 1069, 1030, 1033, 1041, 0, 1057, 1065, 1029, 1079, 1030, + 1021, 1059, 1032, 1029, 1030, 1068, 1019, 1049, 1024, 1011, + 1027, 1049, 1018, 1021, 1037, 1046, 1022, 1005, 1009, 1008, + 1014, 1006, 1010, 1003, 1014, 1009, 1023, 1007, 1002, 1002, + 1000, 990, 1001, 995, 1016, 1017, 995, 990, 990, 988, + 1006, 1005, 976, 977, 987, 401, 989, 979, 258, 981, + + 986, 981, 971, 995, 997, 447, 454, 463, 468, 473, + 993, 0, 997, 994, 1016, 969, 972, 979, 0, 1012, + 977, 968, 990, 971, 0, 995, 987, 993, 982, 993, + 981, 949, 0, 966, 956, 949, 948, 953, 0, 0, + 985, 943, 942, 950, 958, 967, 973, 976, 940, 940, + 0, 933, 951, 950, 0, 933, 0, 969, 968, 928, + 979, 925, 926, 0, 926, 923, 0, 975, 0, 959, + 933, 927, 919, 947, 921, 917, 953, 937, 919, 920, + 923, 909, 910, 907, 908, 912, 904, 917, 941, 0, + 905, 0, 906, 0, 916, 911, 932, 927, 0, 896, + + 901, 904, 921, 930, 0, 897, 0, 906, 893, 892, + 886, 0, 0, 898, 901, 885, 896, 894, 915, 918, + 478, 483, 913, 918, 915, 893, 875, 879, 878, 0, + 886, 876, 904, 869, 893, 905, 905, 890, 906, 902, + 869, 875, 872, 871, 0, 870, 881, 868, 867, 868, + 294, 878, 877, 891, 66, 851, 862, 256, 195, 0, + 872, 873, 0, 898, 858, 0, 844, 852, 0, 870, + 0, 845, 0, 864, 844, 0, 0, 878, 849, 850, + 0, 0, 0, 846, 846, 848, 844, 0, 848, 829, + 841, 842, 826, 865, 863, 307, 836, 0, 849, 842, + + 833, 834, 823, 825, 0, 827, 823, 0, 0, 810, + 843, 853, 841, 849, 850, 836, 0, 0, 858, 806, + 818, 834, 0, 838, 0, 820, 836, 832, 826, 806, + 797, 0, 802, 791, 829, 0, 0, 810, 816, 820, + 829, 818, 0, 797, 796, 0, 799, 814, 808, 822, + 825, 822, 807, 0, 829, 791, 0, 0, 809, 0, + 815, 776, 799, 773, 789, 0, 772, 779, 0, 809, + 0, 0, 781, 769, 809, 805, 773, 780, 776, 0, + 779, 0, 773, 763, 767, 0, 0, 0, 781, 791, + 779, 794, 788, 784, 0, 756, 0, 789, 792, 774, + + 772, 764, 780, 771, 756, 757, 0, 770, 740, 766, + 767, 0, 793, 737, 750, 0, 758, 758, 758, 762, + 766, 764, 781, 0, 767, 766, 0, 743, 726, 731, + 723, 727, 759, 0, 714, 750, 735, 722, 715, 0, + 742, 713, 0, 726, 740, 748, 738, 726, 745, 749, + 707, 722, 733, 738, 740, 726, 740, 703, 699, 709, + 725, 711, 716, 720, 743, 0, 0, 720, 728, 729, + 726, 725, 726, 734, 701, 700, 721, 689, 0, 688, + 691, 715, 0, 694, 716, 683, 686, 701, 0, 0, + 695, 705, 693, 338, 703, 708, 0, 150, 684, 704, + + 681, 684, 700, 661, 31, 0, 0, 0, 84, 0, + 184, 189, 210, 216, 0, 234, 229, 277, 261, 302, + 325, 302, 293, 0, 333, 344, 343, 320, 0, 358, + 350, 364, 361, 363, 387, 386, 388, 388, 389, 394, + 399, 410, 399, 422, 0, 392, 0, 442, 0, 426, + 444, 478, 462, 488, 467, 479, 478, 0, 447, 472, + 467, 471, 458, 476, 0, 487, 514, 489, 502, 502, + 494, 491, 492, 500, 504, 497, 512, 493, 476, 530, + 520, 507, 0, 519, 533, 514, 520, 519, 0, 520, + 513, 510, 0, 513, 1227, 0, 0, 517, 529, 588, + + 530, 515, 531, 529, 0, 523, 540, 524, 508, 550, + 530, 527, 528, 1227, 539, 544, 536, 532, 546, 548, + 0, 1227, 528, 0, 0, 541, 551, 556, 544, 538, + 557, 541, 533, 575, 548, 570, 0, 576, 0, 572, + 573, 582, 0, 571, 571, 565, 589, 574, 589, 590, + 579, 0, 604, 584, 584, 574, 582, 587, 600, 596, + 579, 584, 602, 0, 582, 0, 603, 618, 607, 598, + 612, 606, 602, 612, 617, 625, 611, 595, 604, 622, + 1227, 0, 0, 607, 610, 600, 0, 611, 624, 610, + 608, 626, 629, 628, 620, 618, 631, 0, 629, 631, + + 634, 637, 627, 618, 640, 620, 621, 629, 636, 0, + 0, 632, 635, 635, 642, 646, 650, 648, 640, 653, + 645, 634, 647, 661, 658, 648, 650, 655, 648, 652, + 651, 653, 652, 658, 0, 668, 669, 670, 658, 662, + 0, 664, 661, 0, 661, 662, 677, 665, 683, 671, + 0, 667, 668, 679, 688, 675, 672, 678, 684, 0, + 679, 681, 0, 1227, 716, 719, 722, 725, 728 } ; -static yyconst short int yy_def[975] = +static yyconst short int yy_def[970] = { 0, - 969, 1, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 969, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - - 970, 970, 970, 970, 970, 969, 969, 969, 969, 969, - 969, 969, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 969, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 969, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 969, 969, 969, 969, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 969, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 969, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 969, 969, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 969, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 969, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 969, 969, 970, 970, 970, 970, 970, - - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 969, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 969, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 969, - 969, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 969, - 970, 970, 970, 970, 970, 970, 970, 970, 969, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 969, 969, 970, 970, 970, - - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 969, 970, 970, 970, 970, - 970, 970, 969, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 969, 969, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 969, 970, 970, 970, 970, 970, 969, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 971, - 969, 972, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 969, 970, 970, 970, 970, 969, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 969, - - 973, 970, 970, 970, 974, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 969, 970, 970, 970, 969, 970, - 970, 970, 970, 970, 970, 970, 969, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 969, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 969, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 969, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 969, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, - 970, 970, 970, 970, 970, 970, 970, 970, 0, 969, - 969, 969, 969, 969 + 964, 1, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 965, + + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + + 965, 965, 965, 964, 964, 964, 964, 964, 964, 964, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 964, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 964, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 964, 964, + 964, 964, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 964, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 964, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 964, 964, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 964, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 964, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 964, 964, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 964, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 964, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 964, 964, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 964, 965, 965, 965, 965, 965, + 965, 965, 965, 964, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 964, 964, 965, 965, 965, 965, 965, 965, 965, 965, + + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 964, 965, 965, 965, 965, 965, 965, 964, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 964, 964, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 964, 965, 965, + 965, 965, 965, 964, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 966, 964, 967, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 964, + 965, 965, 965, 965, 964, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 964, 968, 965, 965, 965, 969, + + 965, 965, 965, 965, 965, 965, 965, 965, 965, 964, + 965, 965, 965, 964, 965, 965, 965, 965, 965, 965, + 965, 964, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 964, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 964, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 964, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 964, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 965, 965, 965, 965, 965, 965, 965, + 965, 965, 965, 0, 964, 964, 964, 964, 964 } ; -static yyconst short int yy_nxt[1307] = +static yyconst short int yy_nxt[1302] = { 0, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 17, 17, 17, 17, 18, 19, @@ -671,145 +669,145 @@ static yyconst short int yy_nxt[1307] = 32, 32, 32, 45, 46, 32, 32, 32, 47, 32, 48, 49, 32, 32, 32, 50, 32, 32, 51, 32, 32, 32, 52, 53, 54, 54, 56, 54, 54, 58, - 54, 57, 57, 57, 57, 57, 59, 60, 747, 62, + 54, 57, 57, 57, 57, 57, 59, 60, 746, 62, 54, 55, 55, 54, 55, 55, 54, 55, 54, 61, - 63, 70, 54, 54, 54, 71, 88, 55, 77, 201, - 55, 748, 54, 55, 72, 55, 217, 218, 54, 55, + 63, 70, 54, 54, 54, 71, 88, 55, 77, 200, + 55, 747, 54, 55, 72, 55, 216, 217, 54, 55, 55, 55, 64, 83, 65, 65, 65, 65, 65, 55, - 78, 548, 549, 202, 54, 55, 54, 195, 79, 66, + 78, 544, 545, 201, 54, 55, 54, 194, 79, 66, 73, 74, 54, 75, 75, 75, 75, 75, 81, 82, 88, 55, 67, 68, 69, 54, 88, 76, 114, 55, - 88, 103, 190, 88, 208, 83, 115, 83, 84, 104, - 257, 89, 55, 83, 272, 743, 258, 83, 274, 90, - 83, 209, 275, 76, 116, 125, 273, 85, 86, 87, - 744, 105, 91, 117, 118, 106, 119, 749, 92, 93, + 88, 103, 189, 88, 207, 83, 115, 83, 84, 104, + 256, 89, 55, 83, 270, 738, 257, 83, 272, 90, + 83, 208, 273, 76, 116, 125, 271, 85, 86, 87, + 739, 105, 91, 117, 118, 106, 119, 748, 92, 93, 88, 88, 120, 88, 108, 107, 88, 94, 121, 88, - 95, 88, 109, 96, 110, 750, 293, 83, 83, 290, - 83, 751, 97, 83, 123, 98, 83, 291, 83, 99, - 294, 752, 100, 101, 88, 349, 111, 102, 112, 88, - 126, 131, 88, 88, 124, 238, 543, 88, 113, 753, - 239, 83, 122, 134, 240, 544, 83, 88, 127, 83, - 83, 135, 128, 88, 83, 350, 129, 147, 88, 754, - 130, 132, 139, 88, 83, 148, 136, 140, 755, 133, - 83, 149, 170, 756, 137, 83, 138, 141, 88, 178, - 83, 416, 180, 417, 142, 143, 144, 552, 88, 145, - - 171, 757, 146, 88, 88, 83, 758, 172, 150, 181, - 553, 173, 151, 174, 175, 83, 152, 318, 153, 154, - 83, 83, 88, 179, 582, 54, 759, 155, 583, 156, - 176, 88, 319, 320, 177, 157, 760, 761, 88, 83, - 158, 159, 55, 88, 762, 160, 184, 162, 83, 161, - 163, 164, 165, 166, 167, 83, 763, 188, 185, 182, - 83, 54, 168, 764, 765, 766, 224, 183, 225, 226, - 739, 186, 187, 767, 740, 227, 768, 169, 55, 57, - 57, 57, 57, 57, 65, 65, 65, 65, 65, 197, - 197, 197, 197, 197, 769, 770, 771, 772, 192, 773, - - 774, 775, 74, 198, 75, 75, 75, 75, 75, 199, - 199, 776, 777, 200, 200, 200, 200, 200, 76, 200, - 200, 200, 200, 200, 192, 778, 308, 308, 779, 198, - 309, 309, 309, 309, 309, 197, 197, 197, 197, 197, - 780, 781, 782, 783, 76, 784, 311, 311, 785, 310, - 312, 312, 312, 312, 312, 200, 200, 200, 200, 200, - 411, 786, 787, 788, 412, 309, 309, 309, 309, 309, - 789, 413, 790, 791, 792, 310, 309, 309, 309, 309, - 309, 424, 424, 793, 794, 425, 425, 425, 425, 425, - 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, - - 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, - 554, 795, 796, 797, 798, 799, 801, 803, 804, 805, - 555, 806, 807, 808, 556, 800, 800, 809, 800, 800, - 800, 800, 800, 800, 800, 800, 800, 800, 810, 811, - 812, 813, 814, 800, 800, 800, 800, 800, 815, 816, - 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, - 828, 829, 831, 832, 833, 834, 835, 836, 837, 838, - 839, 840, 800, 841, 842, 843, 844, 845, 846, 847, - 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, - 858, 859, 860, 861, 862, 863, 864, 800, 800, 827, - - 827, 865, 827, 827, 827, 827, 827, 827, 827, 827, - 827, 827, 866, 867, 868, 869, 870, 827, 827, 827, - 827, 827, 871, 872, 873, 874, 875, 876, 877, 878, - 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, - 889, 890, 891, 892, 893, 894, 827, 895, 896, 897, + 95, 88, 109, 96, 110, 749, 291, 83, 83, 288, + 83, 550, 97, 83, 123, 98, 83, 289, 83, 99, + 292, 551, 100, 101, 88, 552, 111, 102, 112, 88, + 126, 131, 347, 88, 124, 237, 88, 88, 113, 750, + 238, 83, 122, 134, 239, 751, 83, 88, 127, 88, + 83, 135, 128, 83, 83, 88, 129, 146, 138, 752, + 130, 132, 348, 139, 83, 147, 83, 753, 177, 133, + 548, 148, 83, 140, 136, 88, 137, 754, 88, 88, + 141, 142, 143, 549, 88, 144, 170, 169, 145, 88, + + 178, 755, 83, 171, 149, 83, 83, 172, 150, 173, + 174, 83, 151, 179, 152, 153, 83, 316, 88, 539, + 413, 180, 414, 154, 184, 155, 175, 88, 540, 756, + 176, 156, 317, 318, 88, 83, 157, 158, 187, 88, + 54, 159, 54, 161, 83, 160, 162, 163, 164, 165, + 166, 83, 757, 758, 759, 181, 83, 55, 167, 55, + 183, 577, 734, 182, 760, 578, 735, 185, 57, 57, + 57, 57, 57, 168, 65, 65, 65, 65, 65, 196, + 196, 196, 196, 196, 761, 762, 763, 186, 191, 764, + 765, 766, 74, 197, 75, 75, 75, 75, 75, 198, + + 198, 767, 768, 199, 199, 199, 199, 199, 76, 223, + 769, 224, 225, 770, 191, 771, 306, 306, 226, 197, + 307, 307, 307, 307, 307, 196, 196, 196, 196, 196, + 772, 773, 774, 775, 76, 776, 309, 309, 777, 308, + 310, 310, 310, 310, 310, 199, 199, 199, 199, 199, + 199, 199, 199, 199, 199, 408, 778, 779, 780, 409, + 307, 307, 307, 307, 307, 308, 410, 307, 307, 307, + 307, 307, 421, 421, 781, 782, 422, 422, 422, 422, + 422, 310, 310, 310, 310, 310, 310, 310, 310, 310, + 310, 422, 422, 422, 422, 422, 422, 422, 422, 422, + + 422, 783, 784, 785, 786, 787, 788, 789, 790, 791, + 792, 793, 794, 796, 795, 795, 798, 795, 795, 795, + 795, 795, 795, 795, 795, 795, 795, 799, 800, 801, + 802, 803, 795, 795, 795, 795, 795, 804, 805, 806, + 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, + 817, 818, 819, 820, 821, 823, 824, 826, 827, 828, + 829, 795, 830, 831, 832, 833, 834, 835, 836, 837, + 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, + 848, 849, 850, 851, 852, 853, 795, 795, 822, 822, + 854, 822, 822, 822, 822, 822, 822, 822, 822, 822, + + 822, 855, 856, 857, 858, 859, 822, 822, 822, 822, + 822, 860, 861, 862, 863, 864, 865, 866, 867, 868, + 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, + 879, 880, 881, 882, 883, 822, 884, 885, 886, 887, + 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, - 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, - 918, 827, 827, 919, 920, 921, 922, 923, 924, 925, + 822, 822, 908, 909, 910, 911, 912, 913, 914, 915, + 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, - 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, - 966, 967, 968, 80, 800, 746, 800, 802, 745, 802, - 827, 742, 827, 830, 741, 830, 738, 737, 736, 735, - 734, 733, 732, 731, 730, 729, 728, 727, 726, 725, - 724, 723, 722, 721, 720, 719, 718, 717, 716, 715, - 714, 713, 712, 711, 710, 709, 708, 707, 706, 705, - 704, 703, 702, 701, 700, 699, 698, 697, 696, 695, - 694, 693, 692, 691, 690, 689, 688, 687, 686, 685, - 684, 683, 682, 681, 680, 679, 678, 677, 676, 675, - - 674, 673, 672, 671, 670, 669, 668, 667, 666, 665, - 664, 663, 662, 661, 660, 659, 658, 657, 656, 655, - 654, 653, 652, 651, 650, 649, 648, 647, 646, 645, - 644, 643, 642, 641, 640, 639, 638, 637, 636, 635, - 634, 633, 632, 631, 630, 629, 628, 627, 626, 625, - 624, 623, 622, 621, 620, 619, 618, 617, 616, 615, - 614, 613, 612, 611, 610, 609, 608, 607, 606, 605, - 604, 603, 602, 601, 600, 599, 598, 597, 596, 595, - 594, 593, 592, 591, 590, 589, 588, 587, 586, 585, - 584, 581, 580, 579, 578, 577, 576, 575, 574, 573, - - 572, 571, 570, 569, 568, 567, 566, 565, 564, 563, - 562, 561, 560, 559, 558, 557, 551, 550, 547, 546, - 545, 542, 541, 540, 539, 538, 537, 536, 535, 534, - 533, 532, 531, 530, 529, 528, 527, 526, 525, 524, - 523, 522, 521, 520, 519, 518, 517, 516, 515, 514, - 513, 512, 511, 510, 509, 508, 507, 506, 505, 504, - 503, 502, 501, 500, 499, 498, 497, 496, 495, 494, - 493, 492, 491, 490, 489, 488, 487, 486, 485, 484, - 483, 482, 481, 480, 479, 478, 477, 476, 475, 474, - 473, 472, 471, 470, 469, 468, 467, 466, 465, 464, - - 463, 462, 461, 460, 459, 458, 457, 456, 455, 454, - 453, 452, 451, 450, 449, 448, 447, 446, 445, 444, - 443, 442, 441, 440, 439, 438, 437, 436, 435, 434, - 433, 432, 431, 430, 429, 428, 427, 426, 423, 422, - 421, 420, 419, 418, 415, 414, 410, 409, 408, 407, - 406, 405, 404, 403, 402, 401, 400, 399, 398, 397, - 396, 395, 394, 393, 392, 391, 390, 389, 388, 387, - 386, 385, 384, 383, 382, 381, 380, 379, 378, 377, - 376, 375, 374, 373, 372, 371, 370, 369, 368, 367, - 366, 365, 364, 363, 362, 361, 360, 359, 358, 357, - - 356, 355, 354, 353, 352, 351, 348, 347, 346, 345, - 344, 343, 342, 341, 340, 339, 338, 337, 336, 335, - 334, 333, 332, 331, 330, 329, 328, 327, 326, 325, - 324, 323, 322, 321, 317, 316, 315, 314, 313, 307, - 306, 305, 304, 303, 302, 301, 300, 299, 298, 297, - 296, 295, 292, 289, 288, 287, 286, 285, 284, 283, - 282, 281, 280, 279, 278, 277, 276, 271, 270, 269, - 268, 267, 266, 265, 264, 263, 262, 261, 260, 259, - 256, 255, 254, 253, 252, 251, 250, 249, 248, 247, - 246, 245, 244, 243, 242, 241, 237, 236, 235, 234, - - 233, 232, 231, 230, 229, 228, 223, 222, 221, 220, - 219, 216, 215, 214, 213, 212, 211, 210, 201, 207, - 206, 205, 204, 203, 196, 194, 193, 191, 190, 189, - 969, 3, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - - 969, 969, 969, 969, 969, 969 + 956, 957, 958, 959, 960, 961, 962, 963, 80, 795, + 745, 795, 797, 744, 797, 822, 743, 822, 825, 742, + 825, 741, 740, 737, 736, 733, 732, 731, 730, 729, + 728, 727, 726, 725, 724, 723, 722, 721, 720, 719, + 718, 717, 716, 715, 714, 713, 712, 711, 710, 709, + 708, 707, 706, 705, 704, 703, 702, 701, 700, 699, + 698, 697, 696, 695, 694, 693, 692, 691, 690, 689, + 688, 687, 686, 685, 684, 683, 682, 681, 680, 679, + 678, 677, 676, 675, 674, 673, 672, 671, 670, 669, + + 668, 667, 666, 665, 664, 663, 662, 661, 660, 659, + 658, 657, 656, 655, 654, 653, 652, 651, 650, 649, + 648, 647, 646, 645, 644, 643, 642, 641, 640, 639, + 638, 637, 636, 635, 634, 633, 632, 631, 630, 629, + 628, 627, 626, 625, 624, 623, 622, 621, 620, 619, + 618, 617, 616, 615, 614, 613, 612, 611, 610, 609, + 608, 607, 606, 605, 604, 603, 602, 601, 600, 599, + 598, 597, 596, 595, 594, 593, 592, 591, 590, 589, + 588, 587, 586, 585, 584, 583, 582, 581, 580, 579, + 576, 575, 574, 573, 572, 571, 570, 569, 568, 567, + + 566, 565, 564, 563, 562, 561, 560, 559, 558, 557, + 556, 555, 554, 553, 547, 546, 543, 542, 541, 538, + 537, 536, 535, 534, 533, 532, 531, 530, 529, 528, + 527, 526, 525, 524, 523, 522, 521, 520, 519, 518, + 517, 516, 515, 514, 513, 512, 511, 510, 509, 508, + 507, 506, 505, 504, 503, 502, 501, 500, 499, 498, + 497, 496, 495, 494, 493, 492, 491, 490, 489, 488, + 487, 486, 485, 484, 483, 482, 481, 480, 479, 478, + 477, 476, 475, 474, 473, 472, 471, 470, 469, 468, + 467, 466, 465, 464, 463, 462, 461, 460, 459, 458, + + 457, 456, 455, 454, 453, 452, 451, 450, 449, 448, + 447, 446, 445, 444, 443, 442, 441, 440, 439, 438, + 437, 436, 435, 434, 433, 432, 431, 430, 429, 428, + 427, 426, 425, 424, 423, 420, 419, 418, 417, 416, + 415, 412, 411, 407, 406, 405, 404, 403, 402, 401, + 400, 399, 398, 397, 396, 395, 394, 393, 392, 391, + 390, 389, 388, 387, 386, 385, 384, 383, 382, 381, + 380, 379, 378, 377, 376, 375, 374, 373, 372, 371, + 370, 369, 368, 367, 366, 365, 364, 363, 362, 361, + 360, 359, 358, 357, 356, 355, 354, 353, 352, 351, + + 350, 349, 346, 345, 344, 343, 342, 341, 340, 339, + 338, 337, 336, 335, 334, 333, 332, 331, 330, 329, + 328, 327, 326, 325, 324, 323, 322, 321, 320, 319, + 315, 314, 313, 312, 311, 305, 304, 303, 302, 301, + 300, 299, 298, 297, 296, 295, 294, 293, 290, 287, + 286, 285, 284, 283, 282, 281, 280, 279, 278, 277, + 276, 275, 274, 269, 268, 267, 266, 265, 264, 263, + 262, 261, 260, 259, 258, 255, 254, 253, 252, 251, + 250, 249, 248, 247, 246, 245, 244, 243, 242, 241, + 240, 236, 235, 234, 233, 232, 231, 230, 229, 228, + + 227, 222, 221, 220, 219, 218, 215, 214, 213, 212, + 211, 210, 209, 200, 206, 205, 204, 203, 202, 195, + 193, 192, 190, 189, 188, 964, 3, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + + 964 } ; -static yyconst short int yy_chk[1307] = +static yyconst short int yy_chk[1302] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -819,142 +817,142 @@ static yyconst short int yy_chk[1307] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 5, 7, 8, 11, 10, - 7, 9, 9, 9, 9, 9, 12, 13, 706, 14, + 7, 9, 9, 9, 9, 9, 12, 13, 705, 14, 12, 4, 5, 9, 8, 11, 18, 7, 10, 13, 14, 16, 19, 13, 14, 16, 32, 12, 20, 81, - 9, 707, 20, 18, 16, 10, 96, 96, 16, 19, + 9, 709, 20, 18, 16, 10, 96, 96, 16, 19, 13, 14, 15, 32, 15, 15, 15, 15, 15, 20, - 21, 458, 458, 81, 21, 16, 15, 68, 22, 15, + 21, 455, 455, 81, 21, 16, 15, 68, 22, 15, 16, 17, 22, 17, 17, 17, 17, 17, 23, 23, 33, 21, 15, 15, 15, 17, 24, 17, 28, 22, 28, 26, 68, 26, 87, 23, 28, 33, 23, 26, - 130, 24, 17, 24, 145, 703, 130, 28, 146, 24, - 26, 87, 146, 17, 28, 33, 145, 23, 23, 23, - 703, 26, 24, 28, 28, 26, 28, 708, 24, 25, + 130, 24, 17, 24, 144, 698, 130, 28, 145, 24, + 26, 87, 145, 17, 28, 33, 144, 23, 23, 23, + 698, 26, 24, 28, 28, 26, 28, 711, 24, 25, 29, 25, 29, 27, 27, 26, 30, 25, 30, 31, - 25, 36, 27, 25, 27, 709, 171, 29, 25, 169, - 27, 710, 25, 30, 31, 25, 31, 169, 36, 25, - 171, 714, 25, 25, 34, 235, 27, 25, 27, 39, - 34, 35, 42, 35, 31, 113, 454, 37, 27, 716, - 113, 34, 30, 36, 113, 454, 39, 44, 34, 42, - 35, 37, 34, 38, 37, 235, 34, 39, 46, 717, - 34, 35, 38, 47, 44, 39, 37, 38, 718, 35, - 38, 39, 42, 719, 37, 46, 37, 38, 45, 44, - 47, 301, 46, 301, 38, 38, 38, 461, 43, 38, - - 43, 721, 38, 40, 49, 45, 722, 43, 40, 47, - 461, 43, 40, 43, 43, 43, 40, 206, 40, 40, - 40, 49, 50, 45, 500, 52, 723, 40, 500, 40, - 43, 48, 206, 206, 43, 40, 724, 725, 41, 50, - 40, 40, 52, 51, 726, 40, 49, 41, 48, 40, - 41, 41, 41, 41, 41, 41, 727, 53, 50, 48, - 51, 53, 41, 728, 730, 731, 102, 48, 102, 102, - 699, 51, 52, 732, 699, 102, 733, 41, 53, 57, - 57, 57, 57, 57, 65, 65, 65, 65, 65, 74, - 74, 74, 74, 74, 735, 736, 737, 738, 65, 739, - - 740, 741, 75, 74, 75, 75, 75, 75, 75, 76, - 76, 742, 743, 76, 76, 76, 76, 76, 75, 199, - 199, 199, 199, 199, 65, 744, 192, 192, 745, 74, - 192, 192, 192, 192, 192, 197, 197, 197, 197, 197, - 746, 747, 748, 749, 75, 751, 198, 198, 753, 197, - 198, 198, 198, 198, 198, 200, 200, 200, 200, 200, - 298, 755, 756, 757, 298, 308, 308, 308, 308, 308, - 758, 298, 759, 760, 761, 197, 309, 309, 309, 309, - 309, 310, 310, 762, 764, 310, 310, 310, 310, 310, - 311, 311, 311, 311, 311, 312, 312, 312, 312, 312, - - 424, 424, 424, 424, 424, 425, 425, 425, 425, 425, - 462, 765, 766, 767, 768, 769, 771, 773, 774, 775, - 462, 776, 777, 778, 462, 772, 772, 779, 772, 772, - 772, 772, 772, 772, 772, 772, 772, 772, 780, 781, - 782, 783, 784, 772, 772, 772, 772, 772, 785, 786, - 787, 789, 790, 791, 792, 793, 795, 796, 797, 799, - 803, 804, 806, 807, 808, 809, 811, 812, 813, 814, - 815, 816, 772, 817, 818, 820, 821, 822, 823, 824, - 825, 828, 831, 832, 833, 834, 835, 836, 837, 838, - 839, 840, 841, 843, 845, 846, 847, 772, 772, 805, - - 805, 849, 805, 805, 805, 805, 805, 805, 805, 805, - 805, 805, 850, 851, 852, 853, 854, 805, 805, 805, - 805, 805, 855, 856, 858, 859, 860, 861, 862, 863, - 864, 865, 866, 867, 868, 870, 872, 873, 874, 875, - 876, 877, 878, 879, 880, 881, 805, 882, 883, 884, - 885, 889, 890, 891, 893, 894, 895, 896, 897, 898, - 899, 900, 901, 902, 904, 905, 906, 907, 908, 909, - 910, 805, 805, 911, 912, 913, 914, 917, 918, 919, + 25, 36, 27, 25, 27, 712, 170, 29, 25, 168, + 27, 459, 25, 30, 31, 25, 31, 168, 36, 25, + 170, 459, 25, 25, 34, 459, 27, 25, 27, 39, + 34, 35, 234, 35, 31, 113, 44, 37, 27, 713, + 113, 34, 30, 36, 113, 714, 39, 42, 34, 38, + 35, 37, 34, 44, 37, 45, 34, 39, 38, 716, + 34, 35, 234, 38, 42, 39, 38, 717, 44, 35, + 458, 39, 45, 38, 37, 47, 37, 718, 50, 46, + 38, 38, 38, 458, 43, 38, 43, 42, 38, 40, + + 45, 719, 47, 43, 40, 50, 46, 43, 40, 43, + 43, 43, 40, 46, 40, 40, 40, 205, 49, 451, + 299, 47, 299, 40, 50, 40, 43, 48, 451, 720, + 43, 40, 205, 205, 41, 49, 40, 40, 53, 51, + 52, 40, 53, 41, 48, 40, 41, 41, 41, 41, + 41, 41, 721, 722, 723, 48, 51, 52, 41, 53, + 49, 496, 694, 48, 725, 496, 694, 51, 57, 57, + 57, 57, 57, 41, 65, 65, 65, 65, 65, 74, + 74, 74, 74, 74, 726, 727, 728, 52, 65, 730, + 731, 732, 75, 74, 75, 75, 75, 75, 75, 76, + + 76, 733, 734, 76, 76, 76, 76, 76, 75, 102, + 735, 102, 102, 736, 65, 737, 191, 191, 102, 74, + 191, 191, 191, 191, 191, 196, 196, 196, 196, 196, + 738, 739, 740, 741, 75, 742, 197, 197, 743, 196, + 197, 197, 197, 197, 197, 198, 198, 198, 198, 198, + 199, 199, 199, 199, 199, 296, 744, 746, 748, 296, + 306, 306, 306, 306, 306, 196, 296, 307, 307, 307, + 307, 307, 308, 308, 750, 751, 308, 308, 308, 308, + 308, 309, 309, 309, 309, 309, 310, 310, 310, 310, + 310, 421, 421, 421, 421, 421, 422, 422, 422, 422, + + 422, 752, 753, 754, 755, 756, 757, 759, 760, 761, + 762, 763, 764, 766, 767, 767, 768, 767, 767, 767, + 767, 767, 767, 767, 767, 767, 767, 769, 770, 771, + 772, 773, 767, 767, 767, 767, 767, 774, 775, 776, + 777, 778, 779, 780, 781, 782, 784, 785, 786, 787, + 788, 790, 791, 792, 794, 798, 799, 801, 802, 803, + 804, 767, 806, 807, 808, 809, 810, 811, 812, 813, + 815, 816, 817, 818, 819, 820, 823, 826, 827, 828, + 829, 830, 831, 832, 833, 834, 767, 767, 800, 800, + 835, 800, 800, 800, 800, 800, 800, 800, 800, 800, + + 800, 836, 838, 840, 841, 842, 800, 800, 800, 800, + 800, 844, 845, 846, 847, 848, 849, 850, 851, 853, + 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, + 865, 867, 868, 869, 870, 800, 871, 872, 873, 874, + 875, 876, 877, 878, 879, 880, 884, 885, 886, 888, + 889, 890, 891, 892, 893, 894, 895, 896, 897, 899, + 800, 800, 900, 901, 902, 903, 904, 905, 906, 907, + 908, 909, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, - 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, - - 941, 942, 943, 944, 945, 947, 948, 950, 951, 952, - 953, 954, 955, 957, 958, 959, 960, 961, 962, 963, - 964, 966, 967, 970, 971, 705, 971, 972, 704, 972, - 973, 701, 973, 974, 700, 974, 698, 697, 696, 693, - 692, 691, 690, 689, 687, 686, 685, 683, 682, 681, - 680, 679, 678, 677, 676, 675, 674, 673, 670, 669, - 668, 667, 666, 665, 664, 663, 662, 661, 660, 659, - 658, 657, 656, 655, 654, 653, 652, 651, 650, 649, - 647, 646, 644, 643, 642, 641, 640, 638, 637, 636, - 635, 634, 633, 631, 630, 628, 627, 626, 625, 624, - - 623, 622, 620, 619, 618, 616, 615, 614, 613, 611, - 610, 609, 608, 607, 606, 605, 604, 603, 601, 599, - 598, 597, 596, 595, 594, 590, 589, 588, 586, 584, - 583, 582, 581, 580, 579, 578, 575, 573, 572, 570, - 569, 568, 567, 565, 563, 560, 559, 557, 556, 555, - 554, 553, 552, 551, 549, 548, 546, 545, 544, 543, - 542, 539, 538, 537, 535, 534, 533, 532, 531, 530, - 528, 526, 525, 524, 523, 520, 519, 518, 517, 516, - 515, 514, 511, 510, 508, 507, 506, 505, 504, 503, - 501, 499, 498, 497, 496, 495, 494, 493, 491, 490, - - 489, 488, 484, 483, 482, 479, 478, 477, 475, 473, - 471, 470, 468, 467, 465, 464, 460, 459, 457, 456, - 455, 453, 452, 451, 450, 449, 447, 446, 445, 444, - 443, 442, 441, 440, 439, 438, 437, 436, 435, 434, - 432, 431, 430, 429, 428, 427, 426, 423, 422, 421, - 420, 419, 418, 417, 414, 413, 412, 411, 409, 407, - 406, 405, 404, 403, 401, 400, 399, 398, 396, 394, - 392, 391, 390, 389, 388, 387, 386, 385, 384, 383, - 382, 381, 380, 379, 378, 377, 376, 375, 374, 373, - 372, 370, 368, 367, 365, 364, 363, 362, 361, 360, - - 358, 356, 355, 354, 352, 351, 350, 349, 348, 347, - 346, 345, 344, 343, 340, 339, 338, 337, 336, 334, - 333, 332, 331, 330, 329, 328, 326, 325, 324, 323, - 322, 320, 319, 318, 317, 316, 315, 313, 307, 306, - 305, 304, 303, 302, 300, 299, 297, 296, 295, 294, - 293, 292, 291, 290, 289, 288, 287, 286, 285, 284, - 283, 282, 281, 280, 279, 278, 277, 276, 275, 274, - 273, 272, 271, 270, 269, 268, 267, 266, 265, 264, - 263, 262, 261, 260, 259, 258, 257, 256, 255, 254, - 253, 252, 251, 250, 249, 248, 247, 245, 244, 243, - - 242, 241, 240, 238, 237, 236, 234, 233, 232, 231, - 230, 229, 228, 227, 226, 225, 224, 223, 222, 221, - 220, 219, 218, 217, 216, 215, 214, 213, 212, 211, - 210, 209, 208, 207, 205, 204, 203, 202, 201, 190, - 189, 186, 185, 184, 183, 182, 181, 180, 179, 178, - 177, 176, 170, 168, 165, 163, 161, 160, 159, 158, - 157, 156, 155, 150, 149, 148, 147, 144, 142, 141, - 140, 139, 138, 137, 136, 135, 134, 133, 132, 131, - 129, 128, 127, 126, 125, 124, 123, 122, 121, 120, - 119, 118, 117, 116, 115, 114, 112, 111, 110, 109, - - 108, 107, 106, 105, 104, 103, 101, 100, 99, 98, - 97, 95, 94, 93, 92, 91, 90, 89, 88, 86, - 85, 84, 83, 82, 69, 67, 66, 64, 55, 54, - 3, 969, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, - - 969, 969, 969, 969, 969, 969 + 930, 931, 932, 933, 934, 936, 937, 938, 939, 940, + + 942, 943, 945, 946, 947, 948, 949, 950, 952, 953, + 954, 955, 956, 957, 958, 959, 961, 962, 965, 966, + 704, 966, 967, 703, 967, 968, 702, 968, 969, 701, + 969, 700, 699, 696, 695, 693, 692, 691, 688, 687, + 686, 685, 684, 682, 681, 680, 678, 677, 676, 675, + 674, 673, 672, 671, 670, 669, 668, 665, 664, 663, + 662, 661, 660, 659, 658, 657, 656, 655, 654, 653, + 652, 651, 650, 649, 648, 647, 646, 645, 644, 642, + 641, 639, 638, 637, 636, 635, 633, 632, 631, 630, + 629, 628, 626, 625, 623, 622, 621, 620, 619, 618, + + 617, 615, 614, 613, 611, 610, 609, 608, 606, 605, + 604, 603, 602, 601, 600, 599, 598, 596, 594, 593, + 592, 591, 590, 589, 585, 584, 583, 581, 579, 578, + 577, 576, 575, 574, 573, 570, 568, 567, 565, 564, + 563, 562, 561, 559, 556, 555, 553, 552, 551, 550, + 549, 548, 547, 545, 544, 542, 541, 540, 539, 538, + 535, 534, 533, 531, 530, 529, 528, 527, 526, 524, + 522, 521, 520, 519, 516, 515, 514, 513, 512, 511, + 510, 507, 506, 504, 503, 502, 501, 500, 499, 497, + 495, 494, 493, 492, 491, 490, 489, 487, 486, 485, + + 484, 480, 479, 478, 475, 474, 472, 470, 468, 467, + 465, 464, 462, 461, 457, 456, 454, 453, 452, 450, + 449, 448, 447, 446, 444, 443, 442, 441, 440, 439, + 438, 437, 436, 435, 434, 433, 432, 431, 429, 428, + 427, 426, 425, 424, 423, 420, 419, 418, 417, 416, + 415, 414, 411, 410, 409, 408, 406, 404, 403, 402, + 401, 400, 398, 397, 396, 395, 393, 391, 389, 388, + 387, 386, 385, 384, 383, 382, 381, 380, 379, 378, + 377, 376, 375, 374, 373, 372, 371, 370, 368, 366, + 365, 363, 362, 361, 360, 359, 358, 356, 354, 353, + + 352, 350, 349, 348, 347, 346, 345, 344, 343, 342, + 341, 338, 337, 336, 335, 334, 332, 331, 330, 329, + 328, 327, 326, 324, 323, 322, 321, 320, 318, 317, + 316, 315, 314, 313, 311, 305, 304, 303, 302, 301, + 300, 298, 297, 295, 294, 293, 292, 291, 290, 289, + 288, 287, 286, 285, 284, 283, 282, 281, 280, 279, + 278, 277, 276, 275, 274, 273, 272, 271, 270, 269, + 268, 267, 266, 265, 264, 263, 262, 261, 260, 259, + 258, 257, 256, 255, 254, 253, 252, 251, 250, 249, + 248, 247, 246, 244, 243, 242, 241, 240, 239, 237, + + 236, 235, 233, 232, 231, 230, 229, 228, 227, 226, + 225, 224, 223, 222, 221, 220, 219, 218, 217, 216, + 215, 214, 213, 212, 211, 210, 209, 208, 207, 206, + 204, 203, 202, 201, 200, 189, 188, 185, 184, 183, + 182, 181, 180, 179, 178, 177, 176, 175, 169, 167, + 164, 162, 160, 159, 158, 157, 156, 155, 154, 149, + 148, 147, 146, 143, 141, 140, 139, 138, 137, 136, + 135, 134, 133, 132, 131, 129, 128, 127, 126, 125, + 124, 123, 122, 121, 120, 119, 118, 117, 116, 115, + 114, 112, 111, 110, 109, 108, 107, 106, 105, 104, + + 103, 101, 100, 99, 98, 97, 95, 94, 93, 92, + 91, 90, 89, 88, 86, 85, 84, 83, 82, 69, + 67, 66, 64, 55, 54, 3, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + 964, 964, 964, 964, 964, 964, 964, 964, 964, 964, + + 964 } ; static yy_state_type yy_last_accepting_state; @@ -1012,7 +1010,7 @@ void skipline(void); && ferror( yyin ) ) \ YY_FATAL_ERROR( "input in flex scanner failed" ); -#line 1016 "Gmsh.yy.cpp" +#line 1014 "Gmsh.yy.cpp" /* Macros after this point can all be overridden by user definitions in * section 1. @@ -1166,7 +1164,7 @@ YY_DECL #line 60 "Gmsh.l" -#line 1170 "Gmsh.yy.cpp" +#line 1168 "Gmsh.yy.cpp" if ( yy_init ) { @@ -1217,13 +1215,13 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 970 ) + if ( yy_current_state >= 965 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_base[yy_current_state] != 1232 ); + while ( yy_base[yy_current_state] != 1227 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -1592,37 +1590,37 @@ return tNurbs; case 69: YY_RULE_SETUP #line 144 "Gmsh.l" -return tOffset; +return tOrder; YY_BREAK case 70: YY_RULE_SETUP #line 145 "Gmsh.l" -return tOrder; +return tOptions; YY_BREAK case 71: YY_RULE_SETUP -#line 146 "Gmsh.l" -return tOptions; +#line 147 "Gmsh.l" +return tPhysical; YY_BREAK case 72: YY_RULE_SETUP #line 148 "Gmsh.l" -return tPhysical; +return tPi; YY_BREAK case 73: YY_RULE_SETUP #line 149 "Gmsh.l" -return tPi; +return tPlane; YY_BREAK case 74: YY_RULE_SETUP #line 150 "Gmsh.l" -return tPlane; +return tPoint; YY_BREAK case 75: YY_RULE_SETUP #line 151 "Gmsh.l" -return tPoint; +return tProgression; YY_BREAK case 76: YY_RULE_SETUP @@ -1632,495 +1630,490 @@ return tProgression; case 77: YY_RULE_SETUP #line 153 "Gmsh.l" -return tProgression; +return tParametric; YY_BREAK case 78: YY_RULE_SETUP #line 154 "Gmsh.l" -return tParametric; +return tPrintf ; YY_BREAK case 79: YY_RULE_SETUP -#line 155 "Gmsh.l" -return tPrintf ; +#line 156 "Gmsh.l" +return tRecombine; YY_BREAK case 80: YY_RULE_SETUP #line 157 "Gmsh.l" -return tRecombine; +return tRotate; YY_BREAK case 81: YY_RULE_SETUP #line 158 "Gmsh.l" -return tRotate; +return tRuled; YY_BREAK case 82: YY_RULE_SETUP -#line 159 "Gmsh.l" -return tRuled; +#line 160 "Gmsh.l" +return tSqrt ; YY_BREAK case 83: YY_RULE_SETUP #line 161 "Gmsh.l" -return tSqrt ; +return tSin ; YY_BREAK case 84: YY_RULE_SETUP #line 162 "Gmsh.l" -return tSin ; +return tSinh ; YY_BREAK case 85: YY_RULE_SETUP #line 163 "Gmsh.l" -return tSinh ; +return tPhysical; YY_BREAK case 86: YY_RULE_SETUP #line 164 "Gmsh.l" -return tPhysical; +return tSpline; YY_BREAK case 87: YY_RULE_SETUP #line 165 "Gmsh.l" -return tSpline; +return tSurface; YY_BREAK case 88: YY_RULE_SETUP #line 166 "Gmsh.l" -return tSurface; +return tSymmetry; YY_BREAK case 89: YY_RULE_SETUP #line 167 "Gmsh.l" -return tSymmetry; +return tScript; YY_BREAK case 90: YY_RULE_SETUP -#line 168 "Gmsh.l" -return tScript; +#line 169 "Gmsh.l" +return tTransfinite; YY_BREAK case 91: YY_RULE_SETUP #line 170 "Gmsh.l" -return tTransfinite; +return tTranslate; YY_BREAK case 92: YY_RULE_SETUP #line 171 "Gmsh.l" -return tTranslate; +return tTanh ; YY_BREAK case 93: YY_RULE_SETUP #line 172 "Gmsh.l" -return tTanh ; +return tTan; YY_BREAK case 94: YY_RULE_SETUP #line 173 "Gmsh.l" -return tTan; +return tTrimmed; YY_BREAK case 95: YY_RULE_SETUP -#line 174 "Gmsh.l" -return tTrimmed; +#line 175 "Gmsh.l" +return tUsing; YY_BREAK case 96: YY_RULE_SETUP -#line 176 "Gmsh.l" -return tUsing; +#line 177 "Gmsh.l" +return tView; YY_BREAK case 97: YY_RULE_SETUP #line 178 "Gmsh.l" -return tView; +return tVolume; YY_BREAK case 98: YY_RULE_SETUP -#line 179 "Gmsh.l" -return tVolume; +#line 180 "Gmsh.l" +return tWith; YY_BREAK case 99: YY_RULE_SETUP -#line 181 "Gmsh.l" -return tWith; +#line 182 "Gmsh.l" +return tFor; YY_BREAK case 100: YY_RULE_SETUP #line 183 "Gmsh.l" -return tFor; +return tEndFor; YY_BREAK case 101: YY_RULE_SETUP #line 184 "Gmsh.l" -return tEndFor; +return tScript; YY_BREAK case 102: YY_RULE_SETUP #line 185 "Gmsh.l" -return tScript; +return tExit; YY_BREAK case 103: YY_RULE_SETUP #line 186 "Gmsh.l" -return tExit; +return tMerge; YY_BREAK case 104: YY_RULE_SETUP -#line 187 "Gmsh.l" -return tMerge; +#line 188 "Gmsh.l" +return tScalarTetrahedron; YY_BREAK case 105: YY_RULE_SETUP #line 189 "Gmsh.l" -return tScalarTetrahedron; +return tVectorTetrahedron; YY_BREAK case 106: YY_RULE_SETUP #line 190 "Gmsh.l" -return tVectorTetrahedron; +return tTensorTetrahedron; YY_BREAK case 107: YY_RULE_SETUP #line 191 "Gmsh.l" -return tTensorTetrahedron; +return tScalarTriangle; YY_BREAK case 108: YY_RULE_SETUP #line 192 "Gmsh.l" -return tScalarTriangle; +return tVectorTriangle; YY_BREAK case 109: YY_RULE_SETUP #line 193 "Gmsh.l" -return tVectorTriangle; +return tTensorTriangle; YY_BREAK case 110: YY_RULE_SETUP #line 194 "Gmsh.l" -return tTensorTriangle; +return tScalarLine; YY_BREAK case 111: YY_RULE_SETUP #line 195 "Gmsh.l" -return tScalarLine; +return tVectorLine; YY_BREAK case 112: YY_RULE_SETUP #line 196 "Gmsh.l" -return tVectorLine; +return tTensorLine; YY_BREAK case 113: YY_RULE_SETUP #line 197 "Gmsh.l" -return tTensorLine; +return tScalarPoint; YY_BREAK case 114: YY_RULE_SETUP #line 198 "Gmsh.l" -return tScalarPoint; +return tVectorPoint; YY_BREAK case 115: YY_RULE_SETUP #line 199 "Gmsh.l" -return tVectorPoint; +return tTensorPoint; YY_BREAK case 116: YY_RULE_SETUP -#line 200 "Gmsh.l" -return tTensorPoint; +#line 202 "Gmsh.l" +return tCARTESIAN_POINT; YY_BREAK case 117: YY_RULE_SETUP #line 203 "Gmsh.l" -return tCARTESIAN_POINT; +return tB_SPLINE_SURFACE_WITH_KNOTS; YY_BREAK case 118: YY_RULE_SETUP #line 204 "Gmsh.l" -return tB_SPLINE_SURFACE_WITH_KNOTS; +return tB_SPLINE_CURVE_WITH_KNOTS; YY_BREAK case 119: YY_RULE_SETUP #line 205 "Gmsh.l" -return tB_SPLINE_CURVE_WITH_KNOTS; +return tUNSPECIFIED; YY_BREAK case 120: YY_RULE_SETUP #line 206 "Gmsh.l" -return tUNSPECIFIED; +return tCONTINUOUS; YY_BREAK case 121: YY_RULE_SETUP #line 207 "Gmsh.l" -return tCONTINUOUS; +return tFALSE; YY_BREAK case 122: YY_RULE_SETUP #line 208 "Gmsh.l" -return tFALSE; +return tTRUE; YY_BREAK case 123: YY_RULE_SETUP #line 209 "Gmsh.l" -return tTRUE; +return tU; YY_BREAK case 124: YY_RULE_SETUP #line 210 "Gmsh.l" -return tU; +return tV; YY_BREAK case 125: YY_RULE_SETUP #line 211 "Gmsh.l" -return tV; +return tORIENTED_EDGE; YY_BREAK case 126: YY_RULE_SETUP #line 212 "Gmsh.l" -return tORIENTED_EDGE; +return tEDGE_CURVE; YY_BREAK case 127: YY_RULE_SETUP #line 213 "Gmsh.l" -return tEDGE_CURVE; +return tEDGE_LOOP; YY_BREAK case 128: YY_RULE_SETUP #line 214 "Gmsh.l" -return tEDGE_LOOP; +return tVERTEX_POINT; YY_BREAK case 129: YY_RULE_SETUP #line 215 "Gmsh.l" -return tVERTEX_POINT; +return tFACE_OUTER_BOUND; YY_BREAK case 130: YY_RULE_SETUP #line 216 "Gmsh.l" -return tFACE_OUTER_BOUND; +return tFACE_BOUND; YY_BREAK case 131: YY_RULE_SETUP #line 217 "Gmsh.l" -return tFACE_BOUND; +return tADVANCED_FACE; YY_BREAK case 132: YY_RULE_SETUP #line 218 "Gmsh.l" -return tADVANCED_FACE; +return tLine; YY_BREAK case 133: YY_RULE_SETUP #line 219 "Gmsh.l" -return tLine; +return tVECTOR; YY_BREAK case 134: YY_RULE_SETUP #line 220 "Gmsh.l" -return tVECTOR; +return tDIRECTION; YY_BREAK case 135: YY_RULE_SETUP #line 221 "Gmsh.l" -return tDIRECTION; +return tAXIS2_PLACEMENT_3D; YY_BREAK case 136: YY_RULE_SETUP #line 222 "Gmsh.l" -return tAXIS2_PLACEMENT_3D; +return tPLANE; YY_BREAK case 137: YY_RULE_SETUP #line 223 "Gmsh.l" -return tPLANE; +return tHEADER; YY_BREAK case 138: YY_RULE_SETUP #line 224 "Gmsh.l" -return tHEADER; +return tDATA; YY_BREAK case 139: YY_RULE_SETUP #line 225 "Gmsh.l" -return tDATA; +return tFILE_SCHEMA; YY_BREAK case 140: YY_RULE_SETUP #line 226 "Gmsh.l" -return tFILE_SCHEMA; +return tFILE_NAME; YY_BREAK case 141: YY_RULE_SETUP #line 227 "Gmsh.l" -return tFILE_NAME; +return tFILE_DESCRIPTION; YY_BREAK case 142: YY_RULE_SETUP #line 228 "Gmsh.l" -return tFILE_DESCRIPTION; +return tISO; YY_BREAK case 143: YY_RULE_SETUP #line 229 "Gmsh.l" -return tISO; +return tENDISO; YY_BREAK case 144: YY_RULE_SETUP #line 230 "Gmsh.l" -return tENDISO; +return tENDSEC; YY_BREAK case 145: YY_RULE_SETUP #line 231 "Gmsh.l" -return tENDSEC; +return tCLOSED_SHELL; YY_BREAK case 146: YY_RULE_SETUP #line 232 "Gmsh.l" -return tCLOSED_SHELL; +return tADVANCED_BREP_SHAPE_REPRESENTATION; YY_BREAK case 147: YY_RULE_SETUP #line 233 "Gmsh.l" -return tADVANCED_BREP_SHAPE_REPRESENTATION; +return tMANIFOLD_SOLID_BREP; YY_BREAK case 148: YY_RULE_SETUP #line 234 "Gmsh.l" -return tMANIFOLD_SOLID_BREP; +return tCYLINDRICAL_SURFACE; YY_BREAK case 149: YY_RULE_SETUP #line 235 "Gmsh.l" -return tCYLINDRICAL_SURFACE; +return tCONICAL_SURFACE; YY_BREAK case 150: YY_RULE_SETUP #line 236 "Gmsh.l" -return tCONICAL_SURFACE; +return tTOROIDAL_SURFACE; YY_BREAK case 151: YY_RULE_SETUP #line 237 "Gmsh.l" -return tTOROIDAL_SURFACE; +return tCIRCLE; YY_BREAK case 152: YY_RULE_SETUP #line 238 "Gmsh.l" -return tCIRCLE; +return tTRIMMED_CURVE; YY_BREAK case 153: YY_RULE_SETUP #line 239 "Gmsh.l" -return tTRIMMED_CURVE; +return tGEOMETRIC_SET; YY_BREAK case 154: YY_RULE_SETUP #line 240 "Gmsh.l" -return tGEOMETRIC_SET; +return tCOMPOSITE_CURVE_SEGMENT; YY_BREAK case 155: YY_RULE_SETUP #line 241 "Gmsh.l" -return tCOMPOSITE_CURVE_SEGMENT; +return tCOMPOSITE_CURVE; YY_BREAK case 156: YY_RULE_SETUP #line 242 "Gmsh.l" -return tCOMPOSITE_CURVE; +return tPRODUCT_DEFINITION; YY_BREAK case 157: YY_RULE_SETUP #line 243 "Gmsh.l" -return tPRODUCT_DEFINITION; +return tPRODUCT_DEFINITION_SHAPE; YY_BREAK case 158: YY_RULE_SETUP #line 244 "Gmsh.l" -return tPRODUCT_DEFINITION_SHAPE; +return tSHAPE_DEFINITION_REPRESENTATION; YY_BREAK case 159: YY_RULE_SETUP -#line 245 "Gmsh.l" -return tSHAPE_DEFINITION_REPRESENTATION; +#line 246 "Gmsh.l" +return tVertex; YY_BREAK case 160: YY_RULE_SETUP #line 247 "Gmsh.l" -return tVertex; +return tFacet; YY_BREAK case 161: YY_RULE_SETUP #line 248 "Gmsh.l" -return tFacet; +return tNormal; YY_BREAK case 162: YY_RULE_SETUP #line 249 "Gmsh.l" -return tNormal; +return tOuter; YY_BREAK case 163: YY_RULE_SETUP #line 250 "Gmsh.l" -return tOuter; +return tLoopSTL; YY_BREAK case 164: YY_RULE_SETUP #line 251 "Gmsh.l" -return tLoopSTL; +return tEndLoop; YY_BREAK case 165: YY_RULE_SETUP #line 252 "Gmsh.l" -return tEndLoop; +return tEndFacet; YY_BREAK case 166: YY_RULE_SETUP #line 253 "Gmsh.l" -return tEndFacet; +{skipline();return tEndSolid;} YY_BREAK case 167: YY_RULE_SETUP #line 254 "Gmsh.l" -{skipline();return tEndSolid;} - YY_BREAK -case 168: -YY_RULE_SETUP -#line 255 "Gmsh.l" {skipline();return tSolid;} YY_BREAK -case 169: +case 168: YY_RULE_SETUP -#line 257 "Gmsh.l" +#line 256 "Gmsh.l" {yylval.d = (double)atoi((char*)(yytext+1)); return tDOUBLE;} YY_BREAK +case 169: +#line 259 "Gmsh.l" case 170: #line 260 "Gmsh.l" case 171: #line 261 "Gmsh.l" case 172: -#line 262 "Gmsh.l" -case 173: YY_RULE_SETUP -#line 262 "Gmsh.l" +#line 261 "Gmsh.l" {yylval.d = atof((char *)yytext); return tDOUBLE;} YY_BREAK -case 174: +case 173: YY_RULE_SETUP -#line 264 "Gmsh.l" +#line 263 "Gmsh.l" {yylval.c = strsave((char*)yytext); return tSTRING;} YY_BREAK -case 175: +case 174: YY_RULE_SETUP -#line 266 "Gmsh.l" +#line 265 "Gmsh.l" return yytext[0]; YY_BREAK -case 176: +case 175: YY_RULE_SETUP -#line 268 "Gmsh.l" +#line 267 "Gmsh.l" ECHO; YY_BREAK -#line 2124 "Gmsh.yy.cpp" +#line 2117 "Gmsh.yy.cpp" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -2412,7 +2405,7 @@ static yy_state_type yy_get_previous_state() while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 970 ) + if ( yy_current_state >= 965 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2447,11 +2440,11 @@ yy_state_type yy_current_state; while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 970 ) + if ( yy_current_state >= 965 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 969); + yy_is_jam = (yy_current_state == 964); return yy_is_jam ? 0 : yy_current_state; } @@ -3006,7 +2999,7 @@ int main() return 0; } #endif -#line 268 "Gmsh.l" +#line 267 "Gmsh.l" #undef yywrap diff --git a/demos/demo-02.geo b/demos/demo-02.geo index b4fc600243beb30ef580dd572fbc72b1470e8a2c..0e0bb11100757c5ae448f4d66ff490960d50cc1c 100644 --- a/demos/demo-02.geo +++ b/demos/demo-02.geo @@ -42,17 +42,8 @@ Physical Volume (1) = {41} ; line to get the full list of available options. */ Options{ - General{ - Rotation0 = 10; - Color{ - Background = Red; - } - } - Geometry{ - Color{ - Points = Orange; - Lines = Blue; - } - } + General.Rotation0 = 10; + General.Color.Background = Red; + Geometry.Color.Points = Orange; }