diff --git a/Parser/Gmsh.l b/Parser/Gmsh.l index 8bc140ff9e4695aecf7e4ba4f5c48a4744f31ea1..93715e0ad5fc6a41f8c87b45dce6c9bc4ca1d6a7 100644 --- a/Parser/Gmsh.l +++ b/Parser/Gmsh.l @@ -134,6 +134,7 @@ EndIf return tEndIf; Euclidian return tEuclidian; Error return tError; Exit return tExit; +Exists return tExists; Fabs return tFabs; Field return tField; @@ -240,6 +241,7 @@ Translate return tTranslate; Tanh return tTanh; Tan return tTan; Today return tToday; +TotalMemory return tTotalMemory; UndefineConstant return tUndefineConstant; Using return tUsing; diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index 3cb00fb4cce9b6528bc0b7cf46ae632bf9893817..b3f6c97c023ec34f5205039d6620b08c544cb35b 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -124,115 +124,117 @@ tSetChanged = 305, tToday = 306, tOnelabAction = 307, - tCpu = 308, - tMemory = 309, - tSyncModel = 310, - tCreateTopology = 311, - tCreateTopologyNoHoles = 312, - tDistanceFunction = 313, - tDefineConstant = 314, - tUndefineConstant = 315, - tPoint = 316, - tCircle = 317, - tEllipse = 318, - tLine = 319, - tSphere = 320, - tPolarSphere = 321, - tSurface = 322, - tSpline = 323, - tVolume = 324, - tCharacteristic = 325, - tLength = 326, - tParametric = 327, - tElliptic = 328, - tRefineMesh = 329, - tAdaptMesh = 330, - tRelocateMesh = 331, - tPlane = 332, - tRuled = 333, - tTransfinite = 334, - tComplex = 335, - tPhysical = 336, - tCompound = 337, - tPeriodic = 338, - tUsing = 339, - tPlugin = 340, - tDegenerated = 341, - tRecursive = 342, - tRotate = 343, - tTranslate = 344, - tSymmetry = 345, - tDilate = 346, - tExtrude = 347, - tLevelset = 348, - tRecombine = 349, - tSmoother = 350, - tSplit = 351, - tDelete = 352, - tCoherence = 353, - tIntersect = 354, - tMeshAlgorithm = 355, - tReverse = 356, - tLayers = 357, - tScaleLast = 358, - tHole = 359, - tAlias = 360, - tAliasWithOptions = 361, - tCopyOptions = 362, - tQuadTriAddVerts = 363, - tQuadTriNoNewVerts = 364, - tQuadTriSngl = 365, - tQuadTriDbl = 366, - tRecombLaterals = 367, - tTransfQuadTri = 368, - tText2D = 369, - tText3D = 370, - tInterpolationScheme = 371, - tTime = 372, - tCombine = 373, - tBSpline = 374, - tBezier = 375, - tNurbs = 376, - tNurbsOrder = 377, - tNurbsKnots = 378, - tColor = 379, - tColorTable = 380, - tFor = 381, - tIn = 382, - tEndFor = 383, - tIf = 384, - tEndIf = 385, - tExit = 386, - tAbort = 387, - tField = 388, - tReturn = 389, - tCall = 390, - tFunction = 391, - tShow = 392, - tHide = 393, - tGetValue = 394, - tGetEnv = 395, - tGetString = 396, - tHomology = 397, - tCohomology = 398, - tBetti = 399, - tSetOrder = 400, - tGMSH_MAJOR_VERSION = 401, - tGMSH_MINOR_VERSION = 402, - tGMSH_PATCH_VERSION = 403, - tAFFECTDIVIDE = 404, - tAFFECTTIMES = 405, - tAFFECTMINUS = 406, - tAFFECTPLUS = 407, - tOR = 408, - tAND = 409, - tNOTEQUAL = 410, - tEQUAL = 411, - tGREATEROREQUAL = 412, - tLESSOREQUAL = 413, - UNARYPREC = 414, - tMINUSMINUS = 415, - tPLUSPLUS = 416 + tSyncModel = 308, + tCpu = 309, + tMemory = 310, + tTotalMemory = 311, + tCreateTopology = 312, + tCreateTopologyNoHoles = 313, + tDistanceFunction = 314, + tDefineConstant = 315, + tUndefineConstant = 316, + tPoint = 317, + tCircle = 318, + tEllipse = 319, + tLine = 320, + tSphere = 321, + tPolarSphere = 322, + tSurface = 323, + tSpline = 324, + tVolume = 325, + tCharacteristic = 326, + tLength = 327, + tParametric = 328, + tElliptic = 329, + tRefineMesh = 330, + tAdaptMesh = 331, + tRelocateMesh = 332, + tPlane = 333, + tRuled = 334, + tTransfinite = 335, + tComplex = 336, + tPhysical = 337, + tCompound = 338, + tPeriodic = 339, + tUsing = 340, + tPlugin = 341, + tDegenerated = 342, + tRecursive = 343, + tRotate = 344, + tTranslate = 345, + tSymmetry = 346, + tDilate = 347, + tExtrude = 348, + tLevelset = 349, + tRecombine = 350, + tSmoother = 351, + tSplit = 352, + tDelete = 353, + tCoherence = 354, + tIntersect = 355, + tMeshAlgorithm = 356, + tReverse = 357, + tLayers = 358, + tScaleLast = 359, + tHole = 360, + tAlias = 361, + tAliasWithOptions = 362, + tCopyOptions = 363, + tQuadTriAddVerts = 364, + tQuadTriNoNewVerts = 365, + tQuadTriSngl = 366, + tQuadTriDbl = 367, + tRecombLaterals = 368, + tTransfQuadTri = 369, + tText2D = 370, + tText3D = 371, + tInterpolationScheme = 372, + tTime = 373, + tCombine = 374, + tBSpline = 375, + tBezier = 376, + tNurbs = 377, + tNurbsOrder = 378, + tNurbsKnots = 379, + tColor = 380, + tColorTable = 381, + tFor = 382, + tIn = 383, + tEndFor = 384, + tIf = 385, + tEndIf = 386, + tExit = 387, + tAbort = 388, + tField = 389, + tReturn = 390, + tCall = 391, + tFunction = 392, + tShow = 393, + tHide = 394, + tGetValue = 395, + tGetEnv = 396, + tGetString = 397, + tHomology = 398, + tCohomology = 399, + tBetti = 400, + tSetOrder = 401, + tExists = 402, + tGMSH_MAJOR_VERSION = 403, + tGMSH_MINOR_VERSION = 404, + tGMSH_PATCH_VERSION = 405, + tAFFECTDIVIDE = 406, + tAFFECTTIMES = 407, + tAFFECTMINUS = 408, + tAFFECTPLUS = 409, + tOR = 410, + tAND = 411, + tNOTEQUAL = 412, + tEQUAL = 413, + tGREATEROREQUAL = 414, + tLESSOREQUAL = 415, + UNARYPREC = 416, + tMINUSMINUS = 417, + tPLUSPLUS = 418 }; #endif /* Tokens. */ @@ -286,115 +288,117 @@ #define tSetChanged 305 #define tToday 306 #define tOnelabAction 307 -#define tCpu 308 -#define tMemory 309 -#define tSyncModel 310 -#define tCreateTopology 311 -#define tCreateTopologyNoHoles 312 -#define tDistanceFunction 313 -#define tDefineConstant 314 -#define tUndefineConstant 315 -#define tPoint 316 -#define tCircle 317 -#define tEllipse 318 -#define tLine 319 -#define tSphere 320 -#define tPolarSphere 321 -#define tSurface 322 -#define tSpline 323 -#define tVolume 324 -#define tCharacteristic 325 -#define tLength 326 -#define tParametric 327 -#define tElliptic 328 -#define tRefineMesh 329 -#define tAdaptMesh 330 -#define tRelocateMesh 331 -#define tPlane 332 -#define tRuled 333 -#define tTransfinite 334 -#define tComplex 335 -#define tPhysical 336 -#define tCompound 337 -#define tPeriodic 338 -#define tUsing 339 -#define tPlugin 340 -#define tDegenerated 341 -#define tRecursive 342 -#define tRotate 343 -#define tTranslate 344 -#define tSymmetry 345 -#define tDilate 346 -#define tExtrude 347 -#define tLevelset 348 -#define tRecombine 349 -#define tSmoother 350 -#define tSplit 351 -#define tDelete 352 -#define tCoherence 353 -#define tIntersect 354 -#define tMeshAlgorithm 355 -#define tReverse 356 -#define tLayers 357 -#define tScaleLast 358 -#define tHole 359 -#define tAlias 360 -#define tAliasWithOptions 361 -#define tCopyOptions 362 -#define tQuadTriAddVerts 363 -#define tQuadTriNoNewVerts 364 -#define tQuadTriSngl 365 -#define tQuadTriDbl 366 -#define tRecombLaterals 367 -#define tTransfQuadTri 368 -#define tText2D 369 -#define tText3D 370 -#define tInterpolationScheme 371 -#define tTime 372 -#define tCombine 373 -#define tBSpline 374 -#define tBezier 375 -#define tNurbs 376 -#define tNurbsOrder 377 -#define tNurbsKnots 378 -#define tColor 379 -#define tColorTable 380 -#define tFor 381 -#define tIn 382 -#define tEndFor 383 -#define tIf 384 -#define tEndIf 385 -#define tExit 386 -#define tAbort 387 -#define tField 388 -#define tReturn 389 -#define tCall 390 -#define tFunction 391 -#define tShow 392 -#define tHide 393 -#define tGetValue 394 -#define tGetEnv 395 -#define tGetString 396 -#define tHomology 397 -#define tCohomology 398 -#define tBetti 399 -#define tSetOrder 400 -#define tGMSH_MAJOR_VERSION 401 -#define tGMSH_MINOR_VERSION 402 -#define tGMSH_PATCH_VERSION 403 -#define tAFFECTDIVIDE 404 -#define tAFFECTTIMES 405 -#define tAFFECTMINUS 406 -#define tAFFECTPLUS 407 -#define tOR 408 -#define tAND 409 -#define tNOTEQUAL 410 -#define tEQUAL 411 -#define tGREATEROREQUAL 412 -#define tLESSOREQUAL 413 -#define UNARYPREC 414 -#define tMINUSMINUS 415 -#define tPLUSPLUS 416 +#define tSyncModel 308 +#define tCpu 309 +#define tMemory 310 +#define tTotalMemory 311 +#define tCreateTopology 312 +#define tCreateTopologyNoHoles 313 +#define tDistanceFunction 314 +#define tDefineConstant 315 +#define tUndefineConstant 316 +#define tPoint 317 +#define tCircle 318 +#define tEllipse 319 +#define tLine 320 +#define tSphere 321 +#define tPolarSphere 322 +#define tSurface 323 +#define tSpline 324 +#define tVolume 325 +#define tCharacteristic 326 +#define tLength 327 +#define tParametric 328 +#define tElliptic 329 +#define tRefineMesh 330 +#define tAdaptMesh 331 +#define tRelocateMesh 332 +#define tPlane 333 +#define tRuled 334 +#define tTransfinite 335 +#define tComplex 336 +#define tPhysical 337 +#define tCompound 338 +#define tPeriodic 339 +#define tUsing 340 +#define tPlugin 341 +#define tDegenerated 342 +#define tRecursive 343 +#define tRotate 344 +#define tTranslate 345 +#define tSymmetry 346 +#define tDilate 347 +#define tExtrude 348 +#define tLevelset 349 +#define tRecombine 350 +#define tSmoother 351 +#define tSplit 352 +#define tDelete 353 +#define tCoherence 354 +#define tIntersect 355 +#define tMeshAlgorithm 356 +#define tReverse 357 +#define tLayers 358 +#define tScaleLast 359 +#define tHole 360 +#define tAlias 361 +#define tAliasWithOptions 362 +#define tCopyOptions 363 +#define tQuadTriAddVerts 364 +#define tQuadTriNoNewVerts 365 +#define tQuadTriSngl 366 +#define tQuadTriDbl 367 +#define tRecombLaterals 368 +#define tTransfQuadTri 369 +#define tText2D 370 +#define tText3D 371 +#define tInterpolationScheme 372 +#define tTime 373 +#define tCombine 374 +#define tBSpline 375 +#define tBezier 376 +#define tNurbs 377 +#define tNurbsOrder 378 +#define tNurbsKnots 379 +#define tColor 380 +#define tColorTable 381 +#define tFor 382 +#define tIn 383 +#define tEndFor 384 +#define tIf 385 +#define tEndIf 386 +#define tExit 387 +#define tAbort 388 +#define tField 389 +#define tReturn 390 +#define tCall 391 +#define tFunction 392 +#define tShow 393 +#define tHide 394 +#define tGetValue 395 +#define tGetEnv 396 +#define tGetString 397 +#define tHomology 398 +#define tCohomology 399 +#define tBetti 400 +#define tSetOrder 401 +#define tExists 402 +#define tGMSH_MAJOR_VERSION 403 +#define tGMSH_MINOR_VERSION 404 +#define tGMSH_PATCH_VERSION 405 +#define tAFFECTDIVIDE 406 +#define tAFFECTTIMES 407 +#define tAFFECTMINUS 408 +#define tAFFECTPLUS 409 +#define tOR 410 +#define tAND 411 +#define tNOTEQUAL 412 +#define tEQUAL 413 +#define tGREATEROREQUAL 414 +#define tLESSOREQUAL 415 +#define UNARYPREC 416 +#define tMINUSMINUS 417 +#define tPLUSPLUS 418 @@ -524,7 +528,7 @@ typedef union YYSTYPE List_T *l; } /* Line 193 of yacc.c. */ -#line 528 "Gmsh.tab.cpp" +#line 532 "Gmsh.tab.cpp" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -537,7 +541,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 541 "Gmsh.tab.cpp" +#line 545 "Gmsh.tab.cpp" #ifdef short # undef short @@ -752,20 +756,20 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 5 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 8679 +#define YYLAST 8801 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 182 +#define YYNTOKENS 184 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 93 /* YYNRULES -- Number of rules. */ -#define YYNRULES 479 +#define YYNRULES 481 /* YYNRULES -- Number of states. */ -#define YYNSTATES 1665 +#define YYNSTATES 1670 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 416 +#define YYMAXUTOK 418 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -776,16 +780,16 @@ static const yytype_uint8 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, 167, 2, 177, 2, 166, 2, 2, - 172, 173, 164, 162, 178, 163, 176, 165, 2, 2, + 2, 2, 2, 169, 2, 179, 2, 168, 2, 2, + 174, 175, 166, 164, 180, 165, 178, 167, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 158, 2, 159, 153, 2, 2, 2, 2, 2, 2, + 160, 2, 161, 155, 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, 174, 2, 175, 171, 2, 2, 2, 2, 2, + 2, 176, 2, 177, 173, 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, 179, 2, 180, 181, 2, 2, 2, + 2, 2, 2, 181, 2, 182, 183, 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, @@ -813,8 +817,8 @@ static const yytype_uint8 yytranslate[] = 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, 147, 148, 149, 150, 151, 152, 154, 155, - 156, 157, 160, 161, 168, 169, 170 + 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, + 156, 157, 158, 159, 162, 163, 170, 171, 172 }; #if YYDEBUG @@ -861,343 +865,346 @@ static const yytype_uint16 yyprhs[] = 2142, 2147, 2152, 2157, 2162, 2167, 2172, 2177, 2182, 2187, 2194, 2199, 2204, 2209, 2214, 2219, 2224, 2229, 2236, 2243, 2250, 2255, 2257, 2259, 2261, 2263, 2265, 2267, 2269, 2271, - 2273, 2275, 2280, 2285, 2288, 2294, 2298, 2305, 2310, 2318, - 2325, 2332, 2339, 2344, 2346, 2349, 2352, 2356, 2360, 2372, - 2382, 2390, 2398, 2400, 2404, 2406, 2408, 2411, 2415, 2420, - 2426, 2428, 2430, 2433, 2437, 2441, 2447, 2452, 2455, 2458, - 2461, 2464, 2470, 2476, 2482, 2488, 2490, 2492, 2496, 2500, - 2505, 2512, 2519, 2521, 2523, 2527, 2531, 2541, 2549, 2551, - 2557, 2561, 2568, 2570, 2574, 2576, 2578, 2582, 2589, 2591, - 2593, 2595, 2600, 2607, 2614, 2621, 2626, 2631, 2640, 2645, - 2650, 2655, 2660, 2667, 2674, 2676, 2680, 2686, 2692, 2694 + 2273, 2275, 2277, 2282, 2287, 2292, 2295, 2301, 2305, 2312, + 2317, 2325, 2332, 2339, 2346, 2351, 2353, 2356, 2359, 2363, + 2367, 2379, 2389, 2397, 2405, 2407, 2411, 2413, 2415, 2418, + 2422, 2427, 2433, 2435, 2437, 2440, 2444, 2448, 2454, 2459, + 2462, 2465, 2468, 2471, 2477, 2483, 2489, 2495, 2497, 2499, + 2503, 2507, 2512, 2519, 2526, 2528, 2530, 2534, 2538, 2548, + 2556, 2558, 2564, 2568, 2575, 2577, 2581, 2583, 2585, 2589, + 2596, 2598, 2600, 2602, 2607, 2614, 2621, 2628, 2633, 2638, + 2647, 2652, 2657, 2662, 2667, 2674, 2681, 2683, 2687, 2693, + 2699, 2701 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { - 183, 0, -1, 184, -1, 1, 6, -1, -1, 184, - 185, -1, 188, -1, 187, -1, 206, -1, 220, -1, - 225, -1, 229, -1, 230, -1, 231, -1, 234, -1, - 254, -1, 255, -1, 233, -1, 232, -1, 228, -1, - 257, -1, 159, -1, 159, 159, -1, 37, 172, 270, - 173, 6, -1, 38, 172, 270, 173, 6, -1, 37, - 172, 270, 173, 186, 270, 6, -1, 37, 172, 270, - 178, 266, 173, 6, -1, 38, 172, 270, 178, 266, - 173, 6, -1, 37, 172, 270, 178, 266, 173, 186, - 270, 6, -1, 4, 270, 179, 189, 180, 6, -1, - 105, 4, 174, 258, 175, 6, -1, 106, 4, 174, - 258, 175, 6, -1, 107, 4, 174, 258, 178, 258, - 175, 6, -1, -1, 189, 192, -1, 189, 196, -1, - 189, 199, -1, 189, 201, -1, 189, 202, -1, 258, - -1, 190, 178, 258, -1, 258, -1, 191, 178, 258, - -1, -1, -1, 4, 193, 172, 190, 173, 194, 179, - 191, 180, 6, -1, 270, -1, 195, 178, 270, -1, - -1, 114, 172, 258, 178, 258, 178, 258, 173, 197, - 179, 195, 180, 6, -1, 270, -1, 198, 178, 270, - -1, -1, 115, 172, 258, 178, 258, 178, 258, 178, - 258, 173, 200, 179, 198, 180, 6, -1, 116, 179, - 262, 180, 179, 262, 180, 6, -1, 116, 179, 262, - 180, 179, 262, 180, 179, 262, 180, 179, 262, 180, - 6, -1, -1, 117, 203, 179, 191, 180, 6, -1, - 7, -1, 152, -1, 151, -1, 150, -1, 149, -1, - 170, -1, 169, -1, 59, 174, 208, 175, 6, -1, - 60, 174, 211, 175, 6, -1, 274, 204, 263, 6, - -1, 4, 174, 175, 204, 263, 6, -1, 4, 174, - 258, 175, 204, 258, 6, -1, 4, 172, 258, 173, - 204, 258, 6, -1, 4, 174, 179, 266, 180, 175, - 204, 263, 6, -1, 4, 172, 179, 266, 180, 173, - 204, 263, 6, -1, 274, 205, 6, -1, 4, 174, - 258, 175, 205, 6, -1, 274, 7, 271, 6, -1, - 4, 176, 4, 7, 271, 6, -1, 4, 174, 258, - 175, 176, 4, 7, 271, 6, -1, 4, 176, 4, - 204, 258, 6, -1, 4, 174, 258, 175, 176, 4, - 204, 258, 6, -1, 4, 176, 4, 205, 6, -1, - 4, 174, 258, 175, 176, 4, 205, 6, -1, 4, - 176, 124, 176, 4, 7, 267, 6, -1, 4, 174, - 258, 175, 176, 124, 176, 4, 7, 267, 6, -1, - 4, 176, 125, 7, 268, 6, -1, 4, 174, 258, - 175, 176, 125, 7, 268, 6, -1, 4, 133, 7, - 258, 6, -1, 133, 174, 258, 175, 7, 4, 6, - -1, 133, 174, 258, 175, 176, 4, 7, 258, 6, - -1, 133, 174, 258, 175, 176, 4, 7, 271, 6, - -1, 133, 174, 258, 175, 176, 4, 7, 179, 266, - 180, 6, -1, 133, 174, 258, 175, 176, 4, 6, - -1, 85, 172, 4, 173, 176, 4, 7, 258, 6, - -1, 85, 172, 4, 173, 176, 4, 7, 271, 6, - -1, -1, 178, -1, -1, 208, 207, 274, -1, 208, - 207, 274, 7, 258, -1, -1, 208, 207, 274, 7, - 179, 258, 209, 213, 180, -1, 208, 207, 274, 7, - 271, -1, -1, 208, 207, 274, 7, 179, 271, 210, - 215, 180, -1, -1, 211, 207, 270, -1, 258, 7, - 271, -1, 212, 178, 258, 7, 271, -1, -1, 213, - 214, -1, 178, 4, 263, -1, 178, 4, 179, 212, - 180, -1, 178, 4, 271, -1, -1, 215, 216, -1, - 178, 4, 258, -1, 178, 4, 271, -1, 178, 4, - 179, 272, 180, -1, 258, -1, 271, -1, -1, 127, - 65, 179, 258, 180, -1, -1, 77, 260, -1, 61, - 172, 258, 173, 7, 260, 6, -1, -1, 81, 61, - 221, 172, 217, 173, 7, 263, 6, -1, 70, 71, - 263, 7, 258, 6, -1, 64, 172, 258, 173, 7, - 263, 6, -1, 86, 64, 263, 6, -1, 68, 172, - 258, 173, 7, 263, 6, -1, 62, 172, 258, 173, - 7, 263, 219, 6, -1, 63, 172, 258, 173, 7, - 263, 219, 6, -1, 119, 172, 258, 173, 7, 263, - 6, -1, 120, 172, 258, 173, 7, 263, 6, -1, - 121, 172, 258, 173, 7, 263, 123, 263, 122, 258, - 6, -1, 64, 4, 172, 258, 173, 7, 263, 6, - -1, 82, 64, 172, 258, 173, 7, 263, 6, -1, - -1, 81, 64, 222, 172, 217, 173, 7, 263, 6, - -1, 77, 67, 172, 258, 173, 7, 263, 6, -1, - 78, 67, 172, 258, 173, 7, 263, 218, 6, -1, - 12, 13, 6, -1, 13, 67, 258, 6, -1, 72, - 67, 172, 258, 173, 7, 5, 5, 5, 6, -1, - 65, 172, 258, 173, 7, 263, 6, -1, 66, 172, - 258, 173, 7, 263, 6, -1, 67, 4, 172, 258, - 173, 7, 263, 6, -1, 82, 67, 172, 258, 173, - 7, 263, 6, -1, 82, 67, 172, 258, 173, 7, - 263, 4, 179, 262, 180, 6, -1, -1, 81, 67, - 223, 172, 217, 173, 7, 263, 6, -1, 80, 69, - 172, 258, 173, 7, 263, 6, -1, 69, 172, 258, - 173, 7, 263, 6, -1, 82, 69, 172, 258, 173, - 7, 263, 6, -1, -1, 81, 69, 224, 172, 217, - 173, 7, 263, 6, -1, 89, 260, 179, 226, 180, - -1, 88, 179, 260, 178, 260, 178, 258, 180, 179, - 226, 180, -1, 90, 260, 179, 226, 180, -1, 91, - 179, 260, 178, 258, 180, 179, 226, 180, -1, 91, - 179, 260, 178, 260, 180, 179, 226, 180, -1, 4, - 179, 226, 180, -1, 99, 64, 179, 266, 180, 67, - 179, 258, 180, -1, 96, 64, 172, 258, 173, 179, - 266, 180, 6, -1, 227, -1, 225, -1, -1, 227, - 220, -1, 227, 61, 179, 266, 180, 6, -1, 227, - 64, 179, 266, 180, 6, -1, 227, 67, 179, 266, - 180, 6, -1, 227, 69, 179, 266, 180, 6, -1, - 93, 77, 172, 258, 173, 7, 263, 6, -1, 93, - 61, 172, 258, 173, 7, 179, 262, 180, 6, -1, - 93, 77, 172, 258, 173, 7, 179, 260, 178, 260, - 178, 266, 180, 6, -1, 93, 77, 172, 258, 173, - 7, 179, 260, 178, 260, 178, 260, 178, 266, 180, - 6, -1, 93, 65, 172, 258, 173, 7, 179, 260, - 178, 266, 180, 6, -1, 93, 4, 172, 258, 173, - 7, 263, 6, -1, 93, 4, 172, 258, 173, 7, - 5, 6, -1, 93, 4, 179, 258, 180, 6, -1, - 93, 4, 172, 258, 173, 7, 179, 260, 178, 260, - 178, 266, 180, 6, -1, 97, 179, 227, 180, -1, - 97, 133, 174, 258, 175, 6, -1, 97, 4, 174, - 258, 175, 6, -1, 97, 4, 6, -1, 97, 4, - 4, 6, -1, 124, 267, 179, 227, 180, -1, 87, - 124, 267, 179, 227, 180, -1, 137, 5, 6, -1, - 138, 5, 6, -1, 137, 179, 227, 180, -1, 87, - 137, 179, 227, 180, -1, 138, 179, 227, 180, -1, - 87, 138, 179, 227, 180, -1, 4, 271, 6, -1, - 4, 4, 174, 258, 175, 270, 6, -1, 4, 4, - 4, 174, 258, 175, 6, -1, 4, 258, 6, -1, - 85, 172, 4, 173, 176, 4, 6, -1, 118, 4, - 6, -1, 131, 6, -1, 132, 6, -1, 55, 6, - -1, 48, 6, -1, 48, 179, 258, 178, 258, 178, - 258, 178, 258, 178, 258, 178, 258, 180, 6, -1, - 49, 6, -1, 50, 6, -1, 56, 6, -1, 57, - 6, -1, 74, 6, -1, 75, 179, 266, 180, 179, - 266, 180, 179, 262, 180, 179, 258, 178, 258, 180, - 6, -1, 145, 258, 6, -1, 126, 172, 258, 8, - 258, 173, -1, 126, 172, 258, 8, 258, 8, 258, - 173, -1, 126, 4, 127, 179, 258, 8, 258, 180, - -1, 126, 4, 127, 179, 258, 8, 258, 8, 258, - 180, -1, 128, -1, 136, 4, -1, 134, -1, 135, - 4, 6, -1, 129, 172, 258, 173, -1, 130, -1, - 92, 260, 179, 227, 180, -1, 92, 179, 260, 178, - 260, 178, 258, 180, 179, 227, 180, -1, 92, 179, - 260, 178, 260, 178, 260, 178, 258, 180, 179, 227, - 180, -1, -1, 92, 260, 179, 227, 235, 248, 180, - -1, -1, 92, 179, 260, 178, 260, 178, 258, 180, - 179, 227, 236, 248, 180, -1, -1, 92, 179, 260, - 178, 260, 178, 260, 178, 258, 180, 179, 227, 237, - 248, 180, -1, -1, 92, 179, 227, 238, 248, 180, - -1, 92, 61, 179, 258, 178, 260, 180, 6, -1, - 92, 64, 179, 258, 178, 260, 180, 6, -1, 92, - 67, 179, 258, 178, 260, 180, 6, -1, 92, 61, - 179, 258, 178, 260, 178, 260, 178, 258, 180, 6, - -1, 92, 64, 179, 258, 178, 260, 178, 260, 178, - 258, 180, 6, -1, 92, 67, 179, 258, 178, 260, - 178, 260, 178, 258, 180, 6, -1, 92, 61, 179, - 258, 178, 260, 178, 260, 178, 260, 178, 258, 180, - 6, -1, 92, 64, 179, 258, 178, 260, 178, 260, - 178, 260, 178, 258, 180, 6, -1, 92, 67, 179, - 258, 178, 260, 178, 260, 178, 260, 178, 258, 180, - 6, -1, -1, 92, 61, 179, 258, 178, 260, 180, - 239, 179, 248, 180, 6, -1, -1, 92, 64, 179, - 258, 178, 260, 180, 240, 179, 248, 180, 6, -1, - -1, 92, 67, 179, 258, 178, 260, 180, 241, 179, - 248, 180, 6, -1, -1, 92, 61, 179, 258, 178, - 260, 178, 260, 178, 258, 180, 242, 179, 248, 180, - 6, -1, -1, 92, 64, 179, 258, 178, 260, 178, - 260, 178, 258, 180, 243, 179, 248, 180, 6, -1, - -1, 92, 67, 179, 258, 178, 260, 178, 260, 178, - 258, 180, 244, 179, 248, 180, 6, -1, -1, 92, - 61, 179, 258, 178, 260, 178, 260, 178, 260, 178, - 258, 180, 245, 179, 248, 180, 6, -1, -1, 92, - 64, 179, 258, 178, 260, 178, 260, 178, 260, 178, - 258, 180, 246, 179, 248, 180, 6, -1, -1, 92, - 67, 179, 258, 178, 260, 178, 260, 178, 260, 178, - 258, 180, 247, 179, 248, 180, 6, -1, 249, -1, - 248, 249, -1, 102, 179, 258, 180, 6, -1, 102, - 179, 263, 178, 263, 180, 6, -1, 102, 179, 263, - 178, 263, 178, 263, 180, 6, -1, 103, 6, -1, - 94, 6, -1, 110, 6, -1, 110, 112, 6, -1, - 111, 6, -1, 111, 112, 6, -1, 108, 6, -1, - 108, 112, 6, -1, 109, 6, -1, 109, 112, 6, - -1, 104, 172, 258, 173, 7, 263, 84, 258, 6, - -1, 84, 4, 174, 258, 175, 6, -1, -1, 84, - 4, 258, -1, -1, 4, -1, -1, 7, 263, -1, - -1, 7, 258, -1, 79, 64, 264, 7, 258, 250, - 6, -1, 79, 67, 264, 252, 251, 6, -1, 73, - 67, 179, 258, 180, 7, 263, 6, -1, 79, 69, - 264, 252, 6, -1, 113, 264, 6, -1, 100, 67, - 179, 266, 180, 258, 6, -1, 94, 67, 264, 253, - 6, -1, 94, 69, 264, 6, -1, 95, 67, 263, - 7, 258, 6, -1, 83, 64, 263, 7, 263, 6, - -1, 83, 67, 258, 179, 266, 180, 7, 258, 179, - 266, 180, 6, -1, 61, 179, 266, 180, 127, 67, - 179, 258, 180, 6, -1, 64, 179, 266, 180, 127, - 67, 179, 258, 180, 6, -1, 61, 179, 266, 180, - 127, 69, 179, 258, 180, 6, -1, 64, 179, 266, - 180, 127, 69, 179, 258, 180, 6, -1, 67, 179, - 266, 180, 127, 69, 179, 258, 180, 6, -1, 101, - 67, 264, 6, -1, 101, 64, 264, 6, -1, 76, - 61, 264, 6, -1, 76, 64, 264, 6, -1, 76, - 67, 264, 6, -1, 98, 6, -1, 98, 4, 6, - -1, 98, 61, 179, 266, 180, 6, -1, 142, -1, - 143, -1, 144, -1, 256, 6, -1, 256, 179, 263, - 180, 6, -1, 256, 179, 263, 178, 263, 180, 6, - -1, 256, 172, 263, 173, 179, 263, 178, 263, 180, - 6, -1, 259, -1, 172, 258, 173, -1, 163, 258, - -1, 162, 258, -1, 167, 258, -1, 258, 163, 258, - -1, 258, 162, 258, -1, 258, 164, 258, -1, 258, - 165, 258, -1, 258, 166, 258, -1, 258, 171, 258, - -1, 258, 158, 258, -1, 258, 159, 258, -1, 258, - 161, 258, -1, 258, 160, 258, -1, 258, 157, 258, - -1, 258, 156, 258, -1, 258, 155, 258, -1, 258, - 154, 258, -1, 258, 153, 258, 8, 258, -1, 14, - 172, 258, 173, -1, 15, 172, 258, 173, -1, 16, - 172, 258, 173, -1, 17, 172, 258, 173, -1, 18, - 172, 258, 173, -1, 19, 172, 258, 173, -1, 20, - 172, 258, 173, -1, 21, 172, 258, 173, -1, 22, - 172, 258, 173, -1, 24, 172, 258, 173, -1, 25, - 172, 258, 178, 258, 173, -1, 26, 172, 258, 173, - -1, 27, 172, 258, 173, -1, 28, 172, 258, 173, - -1, 29, 172, 258, 173, -1, 30, 172, 258, 173, - -1, 31, 172, 258, 173, -1, 32, 172, 258, 173, - -1, 33, 172, 258, 178, 258, 173, -1, 34, 172, - 258, 178, 258, 173, -1, 35, 172, 258, 178, 258, - 173, -1, 23, 172, 258, 173, -1, 14, 174, 258, - 175, -1, 15, 174, 258, 175, -1, 16, 174, 258, - 175, -1, 17, 174, 258, 175, -1, 18, 174, 258, - 175, -1, 19, 174, 258, 175, -1, 20, 174, 258, - 175, -1, 21, 174, 258, 175, -1, 22, 174, 258, - 175, -1, 24, 174, 258, 175, -1, 25, 174, 258, - 178, 258, 175, -1, 26, 174, 258, 175, -1, 27, - 174, 258, 175, -1, 28, 174, 258, 175, -1, 29, - 174, 258, 175, -1, 30, 174, 258, 175, -1, 31, - 174, 258, 175, -1, 32, 174, 258, 175, -1, 33, - 174, 258, 178, 258, 175, -1, 34, 174, 258, 178, - 258, 175, -1, 35, 174, 258, 178, 258, 175, -1, - 23, 174, 258, 175, -1, 3, -1, 9, -1, 10, - -1, 11, -1, 146, -1, 147, -1, 148, -1, 53, - -1, 54, -1, 274, -1, 4, 174, 258, 175, -1, - 177, 4, 174, 175, -1, 274, 205, -1, 4, 174, - 258, 175, 205, -1, 4, 176, 4, -1, 4, 174, - 258, 175, 176, 4, -1, 4, 176, 4, 205, -1, - 4, 174, 258, 175, 176, 4, 205, -1, 139, 172, - 270, 178, 258, 173, -1, 45, 172, 270, 178, 270, - 173, -1, 46, 172, 270, 178, 270, 173, -1, 47, - 172, 272, 173, -1, 261, -1, 163, 260, -1, 162, - 260, -1, 260, 163, 260, -1, 260, 162, 260, -1, - 179, 258, 178, 258, 178, 258, 178, 258, 178, 258, - 180, -1, 179, 258, 178, 258, 178, 258, 178, 258, - 180, -1, 179, 258, 178, 258, 178, 258, 180, -1, - 172, 258, 178, 258, 178, 258, 173, -1, 263, -1, - 262, 178, 263, -1, 258, -1, 265, -1, 179, 180, - -1, 179, 266, 180, -1, 163, 179, 266, 180, -1, - 258, 164, 179, 266, 180, -1, 263, -1, 5, -1, - 163, 265, -1, 258, 164, 265, -1, 258, 8, 258, - -1, 258, 8, 258, 8, 258, -1, 61, 179, 258, - 180, -1, 61, 5, -1, 64, 5, -1, 67, 5, - -1, 69, 5, -1, 81, 61, 179, 266, 180, -1, - 81, 64, 179, 266, 180, -1, 81, 67, 179, 266, - 180, -1, 81, 69, 179, 266, 180, -1, 225, -1, - 234, -1, 4, 174, 175, -1, 4, 172, 173, -1, - 36, 174, 4, 175, -1, 4, 174, 179, 266, 180, - 175, -1, 4, 172, 179, 266, 180, 173, -1, 258, - -1, 265, -1, 266, 178, 258, -1, 266, 178, 265, - -1, 179, 258, 178, 258, 178, 258, 178, 258, 180, - -1, 179, 258, 178, 258, 178, 258, 180, -1, 4, - -1, 4, 176, 124, 176, 4, -1, 179, 269, 180, - -1, 4, 174, 258, 175, 176, 125, -1, 267, -1, - 269, 178, 267, -1, 271, -1, 274, -1, 4, 176, - 4, -1, 4, 174, 258, 175, 176, 4, -1, 5, - -1, 51, -1, 52, -1, 140, 172, 270, 173, -1, - 141, 172, 270, 178, 270, 173, -1, 41, 172, 270, - 178, 270, 173, -1, 41, 174, 270, 178, 270, 175, - -1, 42, 172, 270, 173, -1, 43, 172, 270, 173, - -1, 44, 172, 270, 178, 270, 178, 270, 173, -1, - 39, 172, 272, 173, -1, 39, 174, 272, 175, -1, - 40, 172, 270, 173, -1, 40, 174, 270, 175, -1, - 40, 172, 270, 178, 266, 173, -1, 40, 174, 270, - 178, 266, 175, -1, 270, -1, 272, 178, 270, -1, - 4, 181, 179, 258, 180, -1, 273, 181, 179, 258, - 180, -1, 4, -1, 273, -1 + 185, 0, -1, 186, -1, 1, 6, -1, -1, 186, + 187, -1, 190, -1, 189, -1, 208, -1, 222, -1, + 227, -1, 231, -1, 232, -1, 233, -1, 236, -1, + 256, -1, 257, -1, 235, -1, 234, -1, 230, -1, + 259, -1, 161, -1, 161, 161, -1, 37, 174, 272, + 175, 6, -1, 38, 174, 272, 175, 6, -1, 37, + 174, 272, 175, 188, 272, 6, -1, 37, 174, 272, + 180, 268, 175, 6, -1, 38, 174, 272, 180, 268, + 175, 6, -1, 37, 174, 272, 180, 268, 175, 188, + 272, 6, -1, 4, 272, 181, 191, 182, 6, -1, + 106, 4, 176, 260, 177, 6, -1, 107, 4, 176, + 260, 177, 6, -1, 108, 4, 176, 260, 180, 260, + 177, 6, -1, -1, 191, 194, -1, 191, 198, -1, + 191, 201, -1, 191, 203, -1, 191, 204, -1, 260, + -1, 192, 180, 260, -1, 260, -1, 193, 180, 260, + -1, -1, -1, 4, 195, 174, 192, 175, 196, 181, + 193, 182, 6, -1, 272, -1, 197, 180, 272, -1, + -1, 115, 174, 260, 180, 260, 180, 260, 175, 199, + 181, 197, 182, 6, -1, 272, -1, 200, 180, 272, + -1, -1, 116, 174, 260, 180, 260, 180, 260, 180, + 260, 175, 202, 181, 200, 182, 6, -1, 117, 181, + 264, 182, 181, 264, 182, 6, -1, 117, 181, 264, + 182, 181, 264, 182, 181, 264, 182, 181, 264, 182, + 6, -1, -1, 118, 205, 181, 193, 182, 6, -1, + 7, -1, 154, -1, 153, -1, 152, -1, 151, -1, + 172, -1, 171, -1, 60, 176, 210, 177, 6, -1, + 61, 176, 213, 177, 6, -1, 276, 206, 265, 6, + -1, 4, 176, 177, 206, 265, 6, -1, 4, 176, + 260, 177, 206, 260, 6, -1, 4, 174, 260, 175, + 206, 260, 6, -1, 4, 176, 181, 268, 182, 177, + 206, 265, 6, -1, 4, 174, 181, 268, 182, 175, + 206, 265, 6, -1, 276, 207, 6, -1, 4, 176, + 260, 177, 207, 6, -1, 276, 7, 273, 6, -1, + 4, 178, 4, 7, 273, 6, -1, 4, 176, 260, + 177, 178, 4, 7, 273, 6, -1, 4, 178, 4, + 206, 260, 6, -1, 4, 176, 260, 177, 178, 4, + 206, 260, 6, -1, 4, 178, 4, 207, 6, -1, + 4, 176, 260, 177, 178, 4, 207, 6, -1, 4, + 178, 125, 178, 4, 7, 269, 6, -1, 4, 176, + 260, 177, 178, 125, 178, 4, 7, 269, 6, -1, + 4, 178, 126, 7, 270, 6, -1, 4, 176, 260, + 177, 178, 126, 7, 270, 6, -1, 4, 134, 7, + 260, 6, -1, 134, 176, 260, 177, 7, 4, 6, + -1, 134, 176, 260, 177, 178, 4, 7, 260, 6, + -1, 134, 176, 260, 177, 178, 4, 7, 273, 6, + -1, 134, 176, 260, 177, 178, 4, 7, 181, 268, + 182, 6, -1, 134, 176, 260, 177, 178, 4, 6, + -1, 86, 174, 4, 175, 178, 4, 7, 260, 6, + -1, 86, 174, 4, 175, 178, 4, 7, 273, 6, + -1, -1, 180, -1, -1, 210, 209, 276, -1, 210, + 209, 276, 7, 260, -1, -1, 210, 209, 276, 7, + 181, 260, 211, 215, 182, -1, 210, 209, 276, 7, + 273, -1, -1, 210, 209, 276, 7, 181, 273, 212, + 217, 182, -1, -1, 213, 209, 272, -1, 260, 7, + 273, -1, 214, 180, 260, 7, 273, -1, -1, 215, + 216, -1, 180, 4, 265, -1, 180, 4, 181, 214, + 182, -1, 180, 4, 273, -1, -1, 217, 218, -1, + 180, 4, 260, -1, 180, 4, 273, -1, 180, 4, + 181, 274, 182, -1, 260, -1, 273, -1, -1, 128, + 66, 181, 260, 182, -1, -1, 78, 262, -1, 62, + 174, 260, 175, 7, 262, 6, -1, -1, 82, 62, + 223, 174, 219, 175, 7, 265, 6, -1, 71, 72, + 265, 7, 260, 6, -1, 65, 174, 260, 175, 7, + 265, 6, -1, 87, 65, 265, 6, -1, 69, 174, + 260, 175, 7, 265, 6, -1, 63, 174, 260, 175, + 7, 265, 221, 6, -1, 64, 174, 260, 175, 7, + 265, 221, 6, -1, 120, 174, 260, 175, 7, 265, + 6, -1, 121, 174, 260, 175, 7, 265, 6, -1, + 122, 174, 260, 175, 7, 265, 124, 265, 123, 260, + 6, -1, 65, 4, 174, 260, 175, 7, 265, 6, + -1, 83, 65, 174, 260, 175, 7, 265, 6, -1, + -1, 82, 65, 224, 174, 219, 175, 7, 265, 6, + -1, 78, 68, 174, 260, 175, 7, 265, 6, -1, + 79, 68, 174, 260, 175, 7, 265, 220, 6, -1, + 12, 13, 6, -1, 13, 68, 260, 6, -1, 73, + 68, 174, 260, 175, 7, 5, 5, 5, 6, -1, + 66, 174, 260, 175, 7, 265, 6, -1, 67, 174, + 260, 175, 7, 265, 6, -1, 68, 4, 174, 260, + 175, 7, 265, 6, -1, 83, 68, 174, 260, 175, + 7, 265, 6, -1, 83, 68, 174, 260, 175, 7, + 265, 4, 181, 264, 182, 6, -1, -1, 82, 68, + 225, 174, 219, 175, 7, 265, 6, -1, 81, 70, + 174, 260, 175, 7, 265, 6, -1, 70, 174, 260, + 175, 7, 265, 6, -1, 83, 70, 174, 260, 175, + 7, 265, 6, -1, -1, 82, 70, 226, 174, 219, + 175, 7, 265, 6, -1, 90, 262, 181, 228, 182, + -1, 89, 181, 262, 180, 262, 180, 260, 182, 181, + 228, 182, -1, 91, 262, 181, 228, 182, -1, 92, + 181, 262, 180, 260, 182, 181, 228, 182, -1, 92, + 181, 262, 180, 262, 182, 181, 228, 182, -1, 4, + 181, 228, 182, -1, 100, 65, 181, 268, 182, 68, + 181, 260, 182, -1, 97, 65, 174, 260, 175, 181, + 268, 182, 6, -1, 229, -1, 227, -1, -1, 229, + 222, -1, 229, 62, 181, 268, 182, 6, -1, 229, + 65, 181, 268, 182, 6, -1, 229, 68, 181, 268, + 182, 6, -1, 229, 70, 181, 268, 182, 6, -1, + 94, 78, 174, 260, 175, 7, 265, 6, -1, 94, + 62, 174, 260, 175, 7, 181, 264, 182, 6, -1, + 94, 78, 174, 260, 175, 7, 181, 262, 180, 262, + 180, 268, 182, 6, -1, 94, 78, 174, 260, 175, + 7, 181, 262, 180, 262, 180, 262, 180, 268, 182, + 6, -1, 94, 66, 174, 260, 175, 7, 181, 262, + 180, 268, 182, 6, -1, 94, 4, 174, 260, 175, + 7, 265, 6, -1, 94, 4, 174, 260, 175, 7, + 5, 6, -1, 94, 4, 181, 260, 182, 6, -1, + 94, 4, 174, 260, 175, 7, 181, 262, 180, 262, + 180, 268, 182, 6, -1, 98, 181, 229, 182, -1, + 98, 134, 176, 260, 177, 6, -1, 98, 4, 176, + 260, 177, 6, -1, 98, 4, 6, -1, 98, 4, + 4, 6, -1, 125, 269, 181, 229, 182, -1, 88, + 125, 269, 181, 229, 182, -1, 138, 5, 6, -1, + 139, 5, 6, -1, 138, 181, 229, 182, -1, 88, + 138, 181, 229, 182, -1, 139, 181, 229, 182, -1, + 88, 139, 181, 229, 182, -1, 4, 273, 6, -1, + 4, 4, 176, 260, 177, 272, 6, -1, 4, 4, + 4, 176, 260, 177, 6, -1, 4, 260, 6, -1, + 86, 174, 4, 175, 178, 4, 6, -1, 119, 4, + 6, -1, 132, 6, -1, 133, 6, -1, 53, 6, + -1, 48, 6, -1, 48, 181, 260, 180, 260, 180, + 260, 180, 260, 180, 260, 180, 260, 182, 6, -1, + 49, 6, -1, 50, 6, -1, 57, 6, -1, 58, + 6, -1, 75, 6, -1, 76, 181, 268, 182, 181, + 268, 182, 181, 264, 182, 181, 260, 180, 260, 182, + 6, -1, 146, 260, 6, -1, 127, 174, 260, 8, + 260, 175, -1, 127, 174, 260, 8, 260, 8, 260, + 175, -1, 127, 4, 128, 181, 260, 8, 260, 182, + -1, 127, 4, 128, 181, 260, 8, 260, 8, 260, + 182, -1, 129, -1, 137, 4, -1, 135, -1, 136, + 4, 6, -1, 130, 174, 260, 175, -1, 131, -1, + 93, 262, 181, 229, 182, -1, 93, 181, 262, 180, + 262, 180, 260, 182, 181, 229, 182, -1, 93, 181, + 262, 180, 262, 180, 262, 180, 260, 182, 181, 229, + 182, -1, -1, 93, 262, 181, 229, 237, 250, 182, + -1, -1, 93, 181, 262, 180, 262, 180, 260, 182, + 181, 229, 238, 250, 182, -1, -1, 93, 181, 262, + 180, 262, 180, 262, 180, 260, 182, 181, 229, 239, + 250, 182, -1, -1, 93, 181, 229, 240, 250, 182, + -1, 93, 62, 181, 260, 180, 262, 182, 6, -1, + 93, 65, 181, 260, 180, 262, 182, 6, -1, 93, + 68, 181, 260, 180, 262, 182, 6, -1, 93, 62, + 181, 260, 180, 262, 180, 262, 180, 260, 182, 6, + -1, 93, 65, 181, 260, 180, 262, 180, 262, 180, + 260, 182, 6, -1, 93, 68, 181, 260, 180, 262, + 180, 262, 180, 260, 182, 6, -1, 93, 62, 181, + 260, 180, 262, 180, 262, 180, 262, 180, 260, 182, + 6, -1, 93, 65, 181, 260, 180, 262, 180, 262, + 180, 262, 180, 260, 182, 6, -1, 93, 68, 181, + 260, 180, 262, 180, 262, 180, 262, 180, 260, 182, + 6, -1, -1, 93, 62, 181, 260, 180, 262, 182, + 241, 181, 250, 182, 6, -1, -1, 93, 65, 181, + 260, 180, 262, 182, 242, 181, 250, 182, 6, -1, + -1, 93, 68, 181, 260, 180, 262, 182, 243, 181, + 250, 182, 6, -1, -1, 93, 62, 181, 260, 180, + 262, 180, 262, 180, 260, 182, 244, 181, 250, 182, + 6, -1, -1, 93, 65, 181, 260, 180, 262, 180, + 262, 180, 260, 182, 245, 181, 250, 182, 6, -1, + -1, 93, 68, 181, 260, 180, 262, 180, 262, 180, + 260, 182, 246, 181, 250, 182, 6, -1, -1, 93, + 62, 181, 260, 180, 262, 180, 262, 180, 262, 180, + 260, 182, 247, 181, 250, 182, 6, -1, -1, 93, + 65, 181, 260, 180, 262, 180, 262, 180, 262, 180, + 260, 182, 248, 181, 250, 182, 6, -1, -1, 93, + 68, 181, 260, 180, 262, 180, 262, 180, 262, 180, + 260, 182, 249, 181, 250, 182, 6, -1, 251, -1, + 250, 251, -1, 103, 181, 260, 182, 6, -1, 103, + 181, 265, 180, 265, 182, 6, -1, 103, 181, 265, + 180, 265, 180, 265, 182, 6, -1, 104, 6, -1, + 95, 6, -1, 111, 6, -1, 111, 113, 6, -1, + 112, 6, -1, 112, 113, 6, -1, 109, 6, -1, + 109, 113, 6, -1, 110, 6, -1, 110, 113, 6, + -1, 105, 174, 260, 175, 7, 265, 85, 260, 6, + -1, 85, 4, 176, 260, 177, 6, -1, -1, 85, + 4, 260, -1, -1, 4, -1, -1, 7, 265, -1, + -1, 7, 260, -1, 80, 65, 266, 7, 260, 252, + 6, -1, 80, 68, 266, 254, 253, 6, -1, 74, + 68, 181, 260, 182, 7, 265, 6, -1, 80, 70, + 266, 254, 6, -1, 114, 266, 6, -1, 101, 68, + 181, 268, 182, 260, 6, -1, 95, 68, 266, 255, + 6, -1, 95, 70, 266, 6, -1, 96, 68, 265, + 7, 260, 6, -1, 84, 65, 265, 7, 265, 6, + -1, 84, 68, 260, 181, 268, 182, 7, 260, 181, + 268, 182, 6, -1, 62, 181, 268, 182, 128, 68, + 181, 260, 182, 6, -1, 65, 181, 268, 182, 128, + 68, 181, 260, 182, 6, -1, 62, 181, 268, 182, + 128, 70, 181, 260, 182, 6, -1, 65, 181, 268, + 182, 128, 70, 181, 260, 182, 6, -1, 68, 181, + 268, 182, 128, 70, 181, 260, 182, 6, -1, 102, + 68, 266, 6, -1, 102, 65, 266, 6, -1, 77, + 62, 266, 6, -1, 77, 65, 266, 6, -1, 77, + 68, 266, 6, -1, 99, 6, -1, 99, 4, 6, + -1, 99, 62, 181, 268, 182, 6, -1, 143, -1, + 144, -1, 145, -1, 258, 6, -1, 258, 181, 265, + 182, 6, -1, 258, 181, 265, 180, 265, 182, 6, + -1, 258, 174, 265, 175, 181, 265, 180, 265, 182, + 6, -1, 261, -1, 174, 260, 175, -1, 165, 260, + -1, 164, 260, -1, 169, 260, -1, 260, 165, 260, + -1, 260, 164, 260, -1, 260, 166, 260, -1, 260, + 167, 260, -1, 260, 168, 260, -1, 260, 173, 260, + -1, 260, 160, 260, -1, 260, 161, 260, -1, 260, + 163, 260, -1, 260, 162, 260, -1, 260, 159, 260, + -1, 260, 158, 260, -1, 260, 157, 260, -1, 260, + 156, 260, -1, 260, 155, 260, 8, 260, -1, 14, + 174, 260, 175, -1, 15, 174, 260, 175, -1, 16, + 174, 260, 175, -1, 17, 174, 260, 175, -1, 18, + 174, 260, 175, -1, 19, 174, 260, 175, -1, 20, + 174, 260, 175, -1, 21, 174, 260, 175, -1, 22, + 174, 260, 175, -1, 24, 174, 260, 175, -1, 25, + 174, 260, 180, 260, 175, -1, 26, 174, 260, 175, + -1, 27, 174, 260, 175, -1, 28, 174, 260, 175, + -1, 29, 174, 260, 175, -1, 30, 174, 260, 175, + -1, 31, 174, 260, 175, -1, 32, 174, 260, 175, + -1, 33, 174, 260, 180, 260, 175, -1, 34, 174, + 260, 180, 260, 175, -1, 35, 174, 260, 180, 260, + 175, -1, 23, 174, 260, 175, -1, 14, 176, 260, + 177, -1, 15, 176, 260, 177, -1, 16, 176, 260, + 177, -1, 17, 176, 260, 177, -1, 18, 176, 260, + 177, -1, 19, 176, 260, 177, -1, 20, 176, 260, + 177, -1, 21, 176, 260, 177, -1, 22, 176, 260, + 177, -1, 24, 176, 260, 177, -1, 25, 176, 260, + 180, 260, 177, -1, 26, 176, 260, 177, -1, 27, + 176, 260, 177, -1, 28, 176, 260, 177, -1, 29, + 176, 260, 177, -1, 30, 176, 260, 177, -1, 31, + 176, 260, 177, -1, 32, 176, 260, 177, -1, 33, + 176, 260, 180, 260, 177, -1, 34, 176, 260, 180, + 260, 177, -1, 35, 176, 260, 180, 260, 177, -1, + 23, 176, 260, 177, -1, 3, -1, 9, -1, 10, + -1, 11, -1, 148, -1, 149, -1, 150, -1, 54, + -1, 55, -1, 56, -1, 276, -1, 4, 176, 260, + 177, -1, 147, 174, 276, 175, -1, 179, 4, 176, + 177, -1, 276, 207, -1, 4, 176, 260, 177, 207, + -1, 4, 178, 4, -1, 4, 176, 260, 177, 178, + 4, -1, 4, 178, 4, 207, -1, 4, 176, 260, + 177, 178, 4, 207, -1, 140, 174, 272, 180, 260, + 175, -1, 45, 174, 272, 180, 272, 175, -1, 46, + 174, 272, 180, 272, 175, -1, 47, 174, 274, 175, + -1, 263, -1, 165, 262, -1, 164, 262, -1, 262, + 165, 262, -1, 262, 164, 262, -1, 181, 260, 180, + 260, 180, 260, 180, 260, 180, 260, 182, -1, 181, + 260, 180, 260, 180, 260, 180, 260, 182, -1, 181, + 260, 180, 260, 180, 260, 182, -1, 174, 260, 180, + 260, 180, 260, 175, -1, 265, -1, 264, 180, 265, + -1, 260, -1, 267, -1, 181, 182, -1, 181, 268, + 182, -1, 165, 181, 268, 182, -1, 260, 166, 181, + 268, 182, -1, 265, -1, 5, -1, 165, 267, -1, + 260, 166, 267, -1, 260, 8, 260, -1, 260, 8, + 260, 8, 260, -1, 62, 181, 260, 182, -1, 62, + 5, -1, 65, 5, -1, 68, 5, -1, 70, 5, + -1, 82, 62, 181, 268, 182, -1, 82, 65, 181, + 268, 182, -1, 82, 68, 181, 268, 182, -1, 82, + 70, 181, 268, 182, -1, 227, -1, 236, -1, 4, + 176, 177, -1, 4, 174, 175, -1, 36, 176, 4, + 177, -1, 4, 176, 181, 268, 182, 177, -1, 4, + 174, 181, 268, 182, 175, -1, 260, -1, 267, -1, + 268, 180, 260, -1, 268, 180, 267, -1, 181, 260, + 180, 260, 180, 260, 180, 260, 182, -1, 181, 260, + 180, 260, 180, 260, 182, -1, 4, -1, 4, 178, + 125, 178, 4, -1, 181, 271, 182, -1, 4, 176, + 260, 177, 178, 126, -1, 269, -1, 271, 180, 269, + -1, 273, -1, 276, -1, 4, 178, 4, -1, 4, + 176, 260, 177, 178, 4, -1, 5, -1, 51, -1, + 52, -1, 141, 174, 272, 175, -1, 142, 174, 272, + 180, 272, 175, -1, 41, 174, 272, 180, 272, 175, + -1, 41, 176, 272, 180, 272, 177, -1, 42, 174, + 272, 175, -1, 43, 174, 272, 175, -1, 44, 174, + 272, 180, 272, 180, 272, 175, -1, 39, 174, 274, + 175, -1, 39, 176, 274, 177, -1, 40, 174, 272, + 175, -1, 40, 176, 272, 177, -1, 40, 174, 272, + 180, 268, 175, -1, 40, 176, 272, 180, 268, 177, + -1, 272, -1, 274, 180, 272, -1, 4, 183, 181, + 260, 182, -1, 275, 183, 181, 260, 182, -1, 4, + -1, 275, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 172, 172, 173, 178, 180, 184, 185, 186, 187, - 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, - 198, 202, 206, 213, 218, 223, 237, 250, 263, 291, - 305, 318, 331, 350, 355, 356, 357, 358, 359, 363, - 365, 370, 372, 378, 482, 377, 500, 507, 518, 517, - 535, 542, 553, 552, 569, 586, 609, 608, 622, 623, - 624, 625, 626, 630, 631, 637, 639, 641, 703, 733, - 768, 802, 850, 897, 912, 928, 937, 943, 952, 970, - 988, 997, 1009, 1014, 1022, 1042, 1065, 1076, 1084, 1106, - 1129, 1155, 1176, 1188, 1202, 1202, 1204, 1206, 1215, 1225, - 1224, 1236, 1246, 1245, 1259, 1261, 1269, 1275, 1282, 1283, - 1287, 1298, 1313, 1323, 1324, 1329, 1337, 1346, 1364, 1368, - 1379, 1382, 1395, 1398, 1408, 1432, 1431, 1451, 1473, 1491, - 1512, 1530, 1560, 1590, 1608, 1626, 1652, 1670, 1689, 1688, - 1711, 1729, 1768, 1774, 1780, 1787, 1812, 1837, 1854, 1873, - 1908, 1907, 1931, 1949, 1966, 1983, 1982, 2008, 2013, 2018, - 2023, 2028, 2033, 2056, 2062, 2073, 2074, 2079, 2082, 2086, - 2109, 2132, 2155, 2183, 2204, 2230, 2251, 2273, 2293, 2405, - 2424, 2462, 2571, 2580, 2586, 2601, 2629, 2646, 2655, 2669, - 2675, 2681, 2690, 2699, 2708, 2722, 2775, 2792, 2807, 2826, - 2838, 2862, 2866, 2871, 2878, 2884, 2889, 2895, 2903, 2907, - 2911, 2916, 2971, 2984, 3001, 3018, 3039, 3060, 3095, 3103, - 3109, 3116, 3120, 3129, 3137, 3145, 3154, 3153, 3168, 3167, - 3182, 3181, 3196, 3195, 3209, 3216, 3223, 3230, 3237, 3244, - 3251, 3258, 3265, 3273, 3272, 3286, 3285, 3299, 3298, 3312, - 3311, 3325, 3324, 3338, 3337, 3351, 3350, 3364, 3363, 3377, - 3376, 3393, 3396, 3402, 3414, 3434, 3458, 3463, 3467, 3471, - 3475, 3479, 3483, 3487, 3491, 3495, 3499, 3518, 3531, 3534, - 3550, 3553, 3570, 3573, 3579, 3582, 3589, 3645, 3715, 3720, - 3787, 3823, 3831, 3874, 3913, 3933, 3960, 4000, 4023, 4046, - 4050, 4054, 4077, 4116, 4155, 4176, 4197, 4224, 4228, 4238, - 4273, 4274, 4275, 4279, 4285, 4297, 4315, 4343, 4344, 4345, - 4346, 4347, 4348, 4349, 4350, 4351, 4358, 4359, 4360, 4361, - 4362, 4363, 4364, 4365, 4366, 4367, 4368, 4369, 4370, 4371, - 4372, 4373, 4374, 4375, 4376, 4377, 4378, 4379, 4380, 4381, - 4382, 4383, 4384, 4385, 4386, 4387, 4388, 4389, 4390, 4393, - 4394, 4395, 4396, 4397, 4398, 4399, 4400, 4401, 4402, 4403, - 4404, 4405, 4406, 4407, 4408, 4409, 4410, 4411, 4412, 4413, - 4414, 4423, 4424, 4425, 4426, 4427, 4428, 4429, 4430, 4431, - 4435, 4453, 4471, 4483, 4500, 4521, 4526, 4531, 4541, 4551, - 4556, 4565, 4570, 4597, 4601, 4605, 4609, 4613, 4620, 4624, - 4628, 4632, 4639, 4644, 4651, 4656, 4660, 4665, 4669, 4677, - 4688, 4692, 4704, 4712, 4720, 4727, 4737, 4757, 4761, 4765, - 4769, 4773, 4802, 4831, 4860, 4889, 4899, 4909, 4922, 4934, - 4946, 4965, 4986, 4991, 4995, 4999, 5011, 5015, 5027, 5034, - 5044, 5048, 5063, 5068, 5075, 5079, 5092, 5100, 5111, 5115, - 5123, 5129, 5137, 5145, 5154, 5162, 5176, 5190, 5202, 5219, - 5235, 5240, 5244, 5264, 5286, 5291, 5297, 5306, 5319, 5322 + 0, 173, 173, 174, 179, 181, 185, 186, 187, 188, + 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 203, 207, 214, 219, 224, 238, 251, 264, 292, + 306, 319, 332, 351, 356, 357, 358, 359, 360, 364, + 366, 371, 373, 379, 483, 378, 501, 508, 519, 518, + 536, 543, 554, 553, 570, 587, 610, 609, 623, 624, + 625, 626, 627, 631, 632, 638, 640, 642, 704, 734, + 769, 803, 851, 898, 913, 929, 938, 944, 953, 971, + 989, 998, 1010, 1015, 1023, 1043, 1066, 1077, 1085, 1107, + 1130, 1156, 1177, 1189, 1203, 1203, 1205, 1207, 1216, 1226, + 1225, 1237, 1247, 1246, 1260, 1262, 1270, 1276, 1283, 1284, + 1288, 1299, 1314, 1324, 1325, 1330, 1338, 1347, 1365, 1369, + 1380, 1383, 1396, 1399, 1409, 1433, 1432, 1452, 1474, 1492, + 1513, 1531, 1561, 1591, 1609, 1627, 1653, 1671, 1690, 1689, + 1712, 1730, 1769, 1775, 1781, 1788, 1813, 1838, 1855, 1874, + 1909, 1908, 1932, 1950, 1967, 1984, 1983, 2009, 2014, 2019, + 2024, 2029, 2034, 2057, 2063, 2074, 2075, 2080, 2083, 2087, + 2110, 2133, 2156, 2184, 2205, 2231, 2252, 2274, 2294, 2406, + 2425, 2463, 2572, 2581, 2587, 2602, 2630, 2647, 2656, 2670, + 2676, 2682, 2691, 2700, 2709, 2723, 2776, 2793, 2808, 2827, + 2839, 2863, 2867, 2872, 2879, 2885, 2890, 2896, 2904, 2908, + 2912, 2917, 2972, 2985, 3002, 3019, 3040, 3061, 3096, 3104, + 3110, 3117, 3121, 3130, 3138, 3146, 3155, 3154, 3169, 3168, + 3183, 3182, 3197, 3196, 3210, 3217, 3224, 3231, 3238, 3245, + 3252, 3259, 3266, 3274, 3273, 3287, 3286, 3300, 3299, 3313, + 3312, 3326, 3325, 3339, 3338, 3352, 3351, 3365, 3364, 3378, + 3377, 3394, 3397, 3403, 3415, 3435, 3459, 3464, 3468, 3472, + 3476, 3480, 3484, 3488, 3492, 3496, 3500, 3519, 3532, 3535, + 3551, 3554, 3571, 3574, 3580, 3583, 3590, 3646, 3716, 3721, + 3788, 3824, 3832, 3875, 3914, 3934, 3961, 4001, 4024, 4047, + 4051, 4055, 4078, 4117, 4156, 4177, 4198, 4225, 4229, 4239, + 4274, 4275, 4276, 4280, 4286, 4298, 4316, 4344, 4345, 4346, + 4347, 4348, 4349, 4350, 4351, 4352, 4359, 4360, 4361, 4362, + 4363, 4364, 4365, 4366, 4367, 4368, 4369, 4370, 4371, 4372, + 4373, 4374, 4375, 4376, 4377, 4378, 4379, 4380, 4381, 4382, + 4383, 4384, 4385, 4386, 4387, 4388, 4389, 4390, 4391, 4394, + 4395, 4396, 4397, 4398, 4399, 4400, 4401, 4402, 4403, 4404, + 4405, 4406, 4407, 4408, 4409, 4410, 4411, 4412, 4413, 4414, + 4415, 4424, 4425, 4426, 4427, 4428, 4429, 4430, 4431, 4432, + 4433, 4437, 4454, 4472, 4477, 4489, 4506, 4527, 4532, 4537, + 4547, 4557, 4562, 4571, 4576, 4603, 4607, 4611, 4615, 4619, + 4626, 4630, 4634, 4638, 4645, 4650, 4657, 4662, 4666, 4671, + 4675, 4683, 4694, 4698, 4710, 4718, 4726, 4733, 4743, 4763, + 4767, 4771, 4775, 4779, 4808, 4837, 4866, 4895, 4905, 4915, + 4928, 4940, 4952, 4971, 4992, 4997, 5001, 5005, 5017, 5021, + 5033, 5040, 5050, 5054, 5069, 5074, 5081, 5085, 5098, 5106, + 5117, 5121, 5129, 5135, 5143, 5151, 5160, 5168, 5182, 5196, + 5208, 5225, 5241, 5246, 5250, 5270, 5292, 5297, 5303, 5312, + 5325, 5328 }; #endif @@ -1214,13 +1221,13 @@ static const char *const yytname[] = "tHypot", "tList", "tPrintf", "tError", "tStr", "tSprintf", "tStrCat", "tStrPrefix", "tStrRelative", "tStrReplace", "tStrFind", "tStrCmp", "tTextAttributes", "tBoundingBox", "tDraw", "tSetChanged", "tToday", - "tOnelabAction", "tCpu", "tMemory", "tSyncModel", "tCreateTopology", - "tCreateTopologyNoHoles", "tDistanceFunction", "tDefineConstant", - "tUndefineConstant", "tPoint", "tCircle", "tEllipse", "tLine", "tSphere", - "tPolarSphere", "tSurface", "tSpline", "tVolume", "tCharacteristic", - "tLength", "tParametric", "tElliptic", "tRefineMesh", "tAdaptMesh", - "tRelocateMesh", "tPlane", "tRuled", "tTransfinite", "tComplex", - "tPhysical", "tCompound", "tPeriodic", "tUsing", "tPlugin", + "tOnelabAction", "tSyncModel", "tCpu", "tMemory", "tTotalMemory", + "tCreateTopology", "tCreateTopologyNoHoles", "tDistanceFunction", + "tDefineConstant", "tUndefineConstant", "tPoint", "tCircle", "tEllipse", + "tLine", "tSphere", "tPolarSphere", "tSurface", "tSpline", "tVolume", + "tCharacteristic", "tLength", "tParametric", "tElliptic", "tRefineMesh", + "tAdaptMesh", "tRelocateMesh", "tPlane", "tRuled", "tTransfinite", + "tComplex", "tPhysical", "tCompound", "tPeriodic", "tUsing", "tPlugin", "tDegenerated", "tRecursive", "tRotate", "tTranslate", "tSymmetry", "tDilate", "tExtrude", "tLevelset", "tRecombine", "tSmoother", "tSplit", "tDelete", "tCoherence", "tIntersect", "tMeshAlgorithm", "tReverse", @@ -1232,7 +1239,7 @@ static const char *const yytname[] = "tIn", "tEndFor", "tIf", "tEndIf", "tExit", "tAbort", "tField", "tReturn", "tCall", "tFunction", "tShow", "tHide", "tGetValue", "tGetEnv", "tGetString", "tHomology", "tCohomology", "tBetti", - "tSetOrder", "tGMSH_MAJOR_VERSION", "tGMSH_MINOR_VERSION", + "tSetOrder", "tExists", "tGMSH_MAJOR_VERSION", "tGMSH_MINOR_VERSION", "tGMSH_PATCH_VERSION", "tAFFECTDIVIDE", "tAFFECTTIMES", "tAFFECTMINUS", "tAFFECTPLUS", "'?'", "tOR", "tAND", "tNOTEQUAL", "tEQUAL", "'<'", "'>'", "tGREATEROREQUAL", "tLESSOREQUAL", "'+'", "'-'", "'*'", "'/'", "'%'", @@ -1280,64 +1287,65 @@ static const yytype_uint16 yytoknum[] = 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, - 405, 406, 407, 63, 408, 409, 410, 411, 60, 62, - 412, 413, 43, 45, 42, 47, 37, 33, 414, 415, - 416, 94, 40, 41, 91, 93, 46, 35, 44, 123, - 125, 126 + 405, 406, 407, 408, 409, 63, 410, 411, 412, 413, + 60, 62, 414, 415, 43, 45, 42, 47, 37, 33, + 416, 417, 418, 94, 40, 41, 91, 93, 46, 35, + 44, 123, 125, 126 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint16 yyr1[] = { - 0, 182, 183, 183, 184, 184, 185, 185, 185, 185, - 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, - 185, 186, 186, 187, 187, 187, 187, 187, 187, 188, - 188, 188, 188, 189, 189, 189, 189, 189, 189, 190, - 190, 191, 191, 193, 194, 192, 195, 195, 197, 196, - 198, 198, 200, 199, 201, 201, 203, 202, 204, 204, - 204, 204, 204, 205, 205, 206, 206, 206, 206, 206, - 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, - 206, 206, 206, 206, 206, 206, 206, 206, 206, 206, - 206, 206, 206, 206, 207, 207, 208, 208, 208, 209, - 208, 208, 210, 208, 211, 211, 212, 212, 213, 213, - 214, 214, 214, 215, 215, 216, 216, 216, 217, 217, - 218, 218, 219, 219, 220, 221, 220, 220, 220, 220, - 220, 220, 220, 220, 220, 220, 220, 220, 222, 220, - 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, - 223, 220, 220, 220, 220, 224, 220, 225, 225, 225, - 225, 225, 225, 225, 225, 226, 226, 227, 227, 227, - 227, 227, 227, 228, 228, 228, 228, 228, 228, 228, - 228, 228, 229, 229, 229, 229, 229, 230, 230, 231, - 231, 231, 231, 231, 231, 232, 232, 232, 232, 232, - 232, 232, 232, 232, 232, 232, 232, 232, 232, 232, - 232, 232, 232, 233, 233, 233, 233, 233, 233, 233, - 233, 233, 233, 234, 234, 234, 235, 234, 236, 234, - 237, 234, 238, 234, 234, 234, 234, 234, 234, 234, - 234, 234, 234, 239, 234, 240, 234, 241, 234, 242, - 234, 243, 234, 244, 234, 245, 234, 246, 234, 247, - 234, 248, 248, 249, 249, 249, 249, 249, 249, 249, - 249, 249, 249, 249, 249, 249, 249, 249, 250, 250, - 251, 251, 252, 252, 253, 253, 254, 254, 254, 254, - 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, - 254, 254, 254, 254, 254, 254, 254, 255, 255, 255, - 256, 256, 256, 257, 257, 257, 257, 258, 258, 258, - 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, - 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, - 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, - 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, - 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, - 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, - 258, 259, 259, 259, 259, 259, 259, 259, 259, 259, - 259, 259, 259, 259, 259, 259, 259, 259, 259, 259, - 259, 259, 259, 260, 260, 260, 260, 260, 261, 261, - 261, 261, 262, 262, 263, 263, 263, 263, 263, 263, - 264, 264, 265, 265, 265, 265, 265, 265, 265, 265, - 265, 265, 265, 265, 265, 265, 265, 265, 265, 265, - 265, 265, 266, 266, 266, 266, 267, 267, 267, 267, - 268, 268, 269, 269, 270, 270, 270, 270, 271, 271, - 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, - 271, 271, 271, 271, 272, 272, 273, 273, 274, 274 + 0, 184, 185, 185, 186, 186, 187, 187, 187, 187, + 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, + 187, 188, 188, 189, 189, 189, 189, 189, 189, 190, + 190, 190, 190, 191, 191, 191, 191, 191, 191, 192, + 192, 193, 193, 195, 196, 194, 197, 197, 199, 198, + 200, 200, 202, 201, 203, 203, 205, 204, 206, 206, + 206, 206, 206, 207, 207, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 209, 209, 210, 210, 210, 211, + 210, 210, 212, 210, 213, 213, 214, 214, 215, 215, + 216, 216, 216, 217, 217, 218, 218, 218, 219, 219, + 220, 220, 221, 221, 222, 223, 222, 222, 222, 222, + 222, 222, 222, 222, 222, 222, 222, 222, 224, 222, + 222, 222, 222, 222, 222, 222, 222, 222, 222, 222, + 225, 222, 222, 222, 222, 226, 222, 227, 227, 227, + 227, 227, 227, 227, 227, 228, 228, 229, 229, 229, + 229, 229, 229, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 231, 231, 231, 231, 231, 232, 232, 233, + 233, 233, 233, 233, 233, 234, 234, 234, 234, 234, + 234, 234, 234, 234, 234, 234, 234, 234, 234, 234, + 234, 234, 234, 235, 235, 235, 235, 235, 235, 235, + 235, 235, 235, 236, 236, 236, 237, 236, 238, 236, + 239, 236, 240, 236, 236, 236, 236, 236, 236, 236, + 236, 236, 236, 241, 236, 242, 236, 243, 236, 244, + 236, 245, 236, 246, 236, 247, 236, 248, 236, 249, + 236, 250, 250, 251, 251, 251, 251, 251, 251, 251, + 251, 251, 251, 251, 251, 251, 251, 251, 252, 252, + 253, 253, 254, 254, 255, 255, 256, 256, 256, 256, + 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, + 256, 256, 256, 256, 256, 256, 256, 257, 257, 257, + 258, 258, 258, 259, 259, 259, 259, 260, 260, 260, + 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, + 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, + 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, + 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, + 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, + 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, + 260, 261, 261, 261, 261, 261, 261, 261, 261, 261, + 261, 261, 261, 261, 261, 261, 261, 261, 261, 261, + 261, 261, 261, 261, 261, 262, 262, 262, 262, 262, + 263, 263, 263, 263, 264, 264, 265, 265, 265, 265, + 265, 265, 266, 266, 267, 267, 267, 267, 267, 267, + 267, 267, 267, 267, 267, 267, 267, 267, 267, 267, + 267, 267, 267, 267, 268, 268, 268, 268, 269, 269, + 269, 269, 270, 270, 271, 271, 272, 272, 272, 272, + 273, 273, 273, 273, 273, 273, 273, 273, 273, 273, + 273, 273, 273, 273, 273, 273, 274, 274, 275, 275, + 276, 276 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1382,15 +1390,16 @@ static const yytype_uint8 yyr2[] = 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, 4, 4, 4, 4, 4, 4, 4, 6, 6, 6, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 4, 4, 2, 5, 3, 6, 4, 7, 6, - 6, 6, 4, 1, 2, 2, 3, 3, 11, 9, - 7, 7, 1, 3, 1, 1, 2, 3, 4, 5, - 1, 1, 2, 3, 3, 5, 4, 2, 2, 2, - 2, 5, 5, 5, 5, 1, 1, 3, 3, 4, - 6, 6, 1, 1, 3, 3, 9, 7, 1, 5, - 3, 6, 1, 3, 1, 1, 3, 6, 1, 1, - 1, 4, 6, 6, 6, 4, 4, 8, 4, 4, - 4, 4, 6, 6, 1, 3, 5, 5, 1, 1 + 1, 1, 4, 4, 4, 2, 5, 3, 6, 4, + 7, 6, 6, 6, 4, 1, 2, 2, 3, 3, + 11, 9, 7, 7, 1, 3, 1, 1, 2, 3, + 4, 5, 1, 1, 2, 3, 3, 5, 4, 2, + 2, 2, 2, 5, 5, 5, 5, 1, 1, 3, + 3, 4, 6, 6, 1, 1, 3, 3, 9, 7, + 1, 5, 3, 6, 1, 3, 1, 1, 3, 6, + 1, 1, 1, 4, 6, 6, 6, 4, 4, 8, + 4, 4, 4, 4, 6, 6, 1, 3, 5, 5, + 1, 1 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1398,7 +1407,7 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 0, 0, 0, 2, 3, 1, 478, 0, 0, 0, + 0, 0, 0, 2, 3, 1, 480, 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, 0, 0, 0, @@ -1408,2289 +1417,2315 @@ static const yytype_uint16 yydefact[] = 222, 0, 0, 0, 219, 0, 0, 0, 0, 310, 311, 312, 0, 5, 7, 6, 8, 9, 10, 19, 11, 12, 13, 18, 17, 14, 15, 16, 0, 20, - 479, 0, 381, 478, 458, 382, 383, 384, 0, 0, + 481, 0, 381, 480, 460, 382, 383, 384, 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, 0, 459, - 460, 388, 389, 0, 0, 0, 0, 385, 386, 387, - 0, 0, 0, 0, 0, 0, 0, 167, 0, 0, - 317, 0, 454, 390, 0, 0, 0, 0, 204, 0, - 206, 207, 203, 208, 209, 96, 104, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 461, + 462, 388, 389, 390, 0, 0, 0, 0, 0, 385, + 386, 387, 0, 0, 0, 0, 0, 0, 0, 167, + 0, 0, 317, 0, 456, 391, 0, 0, 0, 0, + 204, 0, 206, 207, 203, 208, 209, 96, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 210, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 125, 138, 150, 155, 0, 0, + 0, 0, 0, 0, 0, 210, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 125, 138, 150, 155, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 405, 0, 0, 0, + 0, 0, 167, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 167, 0, 307, 0, 0, 0, + 0, 0, 0, 0, 0, 480, 423, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 437, 438, 416, 422, + 0, 417, 391, 0, 0, 0, 0, 450, 0, 0, + 0, 0, 0, 201, 202, 0, 0, 218, 0, 167, + 0, 167, 480, 0, 313, 0, 0, 0, 58, 62, + 61, 60, 59, 64, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, - 167, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 167, 0, 307, 0, 0, 0, 0, 0, - 0, 0, 0, 478, 421, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 435, 436, 414, 420, 0, 415, - 390, 0, 0, 0, 0, 448, 0, 0, 0, 0, - 0, 201, 202, 0, 0, 218, 0, 167, 0, 167, - 478, 0, 313, 0, 0, 0, 58, 62, 61, 60, - 59, 64, 63, 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, 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, 0, 0, 0, 0, 0, 320, 319, - 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 166, 0, 165, 0, 198, 0, 0, 0, 0, + 0, 320, 319, 321, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 166, 0, 165, 0, 198, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 33, 195, 393, 142, 0, 478, 0, 454, 455, - 0, 0, 94, 94, 0, 0, 442, 443, 0, 0, + 0, 0, 0, 0, 33, 195, 395, 142, 0, 480, + 0, 456, 457, 0, 0, 94, 94, 0, 0, 444, + 445, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 282, 282, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 167, 167, + 0, 407, 406, 0, 0, 0, 0, 167, 167, 0, + 0, 0, 0, 0, 0, 0, 232, 0, 167, 0, + 0, 0, 0, 0, 284, 0, 0, 0, 0, 185, + 0, 0, 0, 308, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 429, 0, 430, 431, + 432, 0, 0, 0, 0, 0, 319, 424, 0, 418, + 0, 0, 0, 290, 200, 0, 0, 0, 0, 0, + 167, 0, 0, 0, 0, 220, 189, 0, 190, 0, + 0, 212, 0, 0, 0, 0, 0, 73, 0, 0, + 397, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 282, 282, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 167, 167, 0, 405, 404, - 0, 0, 0, 0, 167, 167, 0, 0, 0, 0, - 0, 0, 0, 232, 0, 167, 0, 0, 0, 0, - 0, 284, 0, 0, 0, 0, 185, 0, 0, 0, - 308, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 427, 0, 428, 429, 430, 0, 0, - 0, 0, 0, 319, 422, 0, 416, 0, 0, 0, - 290, 200, 0, 0, 0, 0, 0, 167, 0, 0, - 0, 0, 220, 189, 0, 190, 0, 0, 212, 0, - 0, 0, 0, 0, 73, 0, 0, 395, 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, 476, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 480, 0, 0, 318, 58, 0, 0, 0, + 58, 0, 0, 0, 0, 0, 162, 0, 0, 0, + 0, 168, 0, 0, 335, 334, 333, 332, 328, 329, + 331, 330, 323, 322, 324, 325, 326, 327, 0, 143, + 0, 0, 0, 0, 0, 0, 0, 0, 95, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 474, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 318, 58, 0, 0, 0, 58, 0, 0, 0, 0, - 0, 162, 0, 0, 0, 0, 168, 0, 0, 335, - 334, 333, 332, 328, 329, 331, 330, 323, 322, 324, - 325, 326, 327, 0, 143, 0, 0, 0, 0, 0, - 0, 0, 0, 95, 0, 0, 0, 0, 0, 0, + 0, 304, 305, 306, 0, 0, 0, 0, 280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 304, 305, 306, 0, - 0, 0, 0, 280, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 129, 167, 0, 0, - 0, 0, 0, 407, 406, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 226, 0, 0, 0, 0, 0, - 0, 0, 293, 0, 0, 186, 0, 0, 182, 0, - 0, 0, 303, 302, 0, 0, 0, 438, 0, 437, - 0, 0, 395, 0, 0, 0, 0, 0, 0, 0, - 318, 417, 424, 0, 324, 423, 0, 0, 0, 0, - 0, 0, 0, 0, 221, 0, 191, 193, 0, 0, - 0, 0, 75, 67, 0, 391, 397, 337, 359, 338, - 360, 339, 361, 340, 362, 341, 363, 342, 364, 343, - 365, 344, 366, 345, 367, 358, 380, 346, 368, 0, - 0, 348, 370, 349, 371, 350, 372, 351, 373, 352, - 374, 353, 375, 354, 376, 0, 0, 0, 0, 0, - 0, 468, 0, 469, 470, 0, 471, 0, 0, 0, - 465, 466, 0, 0, 0, 402, 86, 0, 461, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, - 0, 0, 0, 0, 392, 0, 0, 0, 0, 476, - 0, 43, 0, 0, 0, 56, 0, 34, 35, 36, - 37, 38, 0, 456, 23, 21, 0, 0, 24, 0, - 0, 65, 478, 97, 66, 105, 0, 444, 445, 0, + 0, 129, 167, 0, 0, 0, 0, 0, 409, 408, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 226, + 0, 0, 0, 0, 0, 0, 0, 293, 0, 0, + 186, 0, 0, 182, 0, 0, 0, 303, 302, 0, + 0, 0, 440, 0, 439, 0, 0, 397, 0, 0, + 0, 0, 0, 0, 0, 318, 419, 426, 0, 324, + 425, 0, 0, 0, 0, 0, 0, 0, 0, 221, + 0, 191, 193, 0, 0, 0, 0, 75, 67, 0, + 392, 399, 337, 359, 338, 360, 339, 361, 340, 362, + 341, 363, 342, 364, 343, 365, 344, 366, 345, 367, + 358, 380, 346, 368, 0, 0, 348, 370, 349, 371, + 350, 372, 351, 373, 352, 374, 353, 375, 354, 376, + 0, 0, 0, 0, 0, 0, 470, 0, 471, 472, + 0, 473, 0, 0, 0, 467, 468, 0, 0, 0, + 404, 86, 0, 463, 0, 393, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, + 394, 0, 0, 0, 0, 478, 0, 43, 0, 0, + 0, 56, 0, 34, 35, 36, 37, 38, 0, 458, + 23, 21, 0, 0, 24, 0, 0, 65, 97, 66, + 105, 0, 446, 447, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 278, 283, 281, - 0, 289, 0, 0, 118, 119, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 192, 194, 0, 0, - 0, 157, 159, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 261, 0, - 223, 0, 0, 0, 0, 0, 0, 285, 292, 0, + 0, 0, 278, 283, 281, 0, 289, 0, 0, 118, + 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 192, 194, 0, 0, 0, 157, 159, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 391, 439, 426, 0, 0, 0, 0, 418, 0, - 0, 0, 0, 0, 0, 0, 187, 0, 0, 0, - 0, 0, 0, 314, 477, 0, 0, 394, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 475, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, - 0, 0, 0, 0, 0, 74, 76, 78, 0, 0, - 452, 0, 84, 0, 0, 0, 0, 336, 0, 0, - 0, 0, 0, 29, 0, 22, 0, 0, 0, 0, - 0, 0, 0, 0, 122, 122, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 127, 0, 0, 0, - 0, 0, 0, 0, 287, 0, 0, 0, 0, 0, - 0, 0, 0, 295, 0, 0, 188, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 267, 0, 266, 0, - 272, 0, 274, 0, 268, 0, 270, 0, 233, 262, - 0, 0, 0, 180, 0, 0, 0, 294, 0, 184, - 183, 309, 0, 0, 30, 31, 0, 0, 0, 0, - 431, 432, 433, 434, 425, 419, 0, 0, 0, 449, - 0, 0, 0, 213, 0, 0, 0, 0, 197, 396, - 196, 347, 369, 355, 377, 356, 378, 357, 379, 472, - 473, 463, 464, 0, 400, 401, 399, 462, 0, 70, - 0, 58, 0, 0, 0, 0, 69, 0, 0, 0, - 450, 0, 0, 0, 0, 0, 0, 0, 0, 412, - 0, 0, 25, 26, 0, 27, 0, 0, 98, 101, - 124, 0, 0, 0, 0, 0, 0, 128, 0, 0, - 145, 146, 0, 0, 130, 153, 0, 0, 0, 0, - 120, 0, 286, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 199, 0, 0, 0, 0, 167, 167, 0, - 243, 0, 245, 0, 247, 0, 414, 0, 0, 273, - 275, 269, 271, 0, 0, 227, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 291, 0, 441, 440, 396, - 133, 134, 0, 0, 0, 0, 87, 91, 0, 0, - 315, 398, 0, 0, 0, 0, 0, 81, 0, 0, - 82, 0, 453, 169, 170, 171, 172, 0, 39, 0, - 0, 0, 0, 0, 41, 457, 0, 0, 99, 102, - 0, 0, 123, 131, 132, 136, 0, 0, 147, 0, - 0, 288, 0, 140, 0, 0, 279, 152, 0, 0, - 0, 0, 137, 0, 148, 154, 0, 0, 0, 0, - 411, 0, 410, 0, 0, 0, 234, 0, 0, 235, - 0, 0, 236, 0, 0, 0, 0, 0, 0, 0, - 179, 0, 0, 178, 0, 0, 0, 173, 0, 0, - 32, 0, 0, 447, 0, 215, 214, 0, 0, 0, - 0, 467, 72, 71, 77, 79, 0, 85, 0, 44, - 0, 0, 0, 413, 0, 0, 0, 28, 0, 108, - 113, 0, 0, 0, 0, 0, 0, 0, 0, 141, - 126, 139, 151, 156, 0, 0, 92, 93, 167, 0, - 160, 161, 0, 0, 0, 0, 0, 0, 0, 263, - 0, 0, 167, 0, 0, 0, 0, 0, 164, 163, - 0, 0, 0, 0, 88, 89, 0, 0, 451, 0, - 40, 0, 0, 0, 42, 57, 0, 0, 0, 297, - 299, 298, 300, 301, 144, 0, 0, 0, 0, 0, - 0, 409, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 277, 0, 0, 0, 228, 0, 0, 174, 0, - 0, 0, 446, 216, 0, 316, 83, 0, 0, 0, - 0, 0, 0, 100, 109, 0, 103, 114, 0, 0, - 0, 0, 158, 0, 249, 0, 0, 251, 0, 0, - 253, 0, 0, 0, 264, 0, 224, 0, 167, 0, - 0, 0, 135, 90, 0, 48, 0, 54, 0, 0, - 0, 0, 0, 121, 149, 296, 408, 237, 0, 0, - 244, 238, 0, 0, 246, 239, 0, 0, 248, 0, - 0, 0, 230, 0, 177, 0, 0, 0, 0, 0, - 0, 0, 0, 110, 112, 0, 115, 116, 0, 0, - 255, 0, 257, 0, 259, 265, 276, 229, 225, 0, - 0, 0, 0, 45, 0, 52, 0, 0, 0, 442, - 0, 0, 0, 240, 0, 0, 241, 0, 0, 242, - 0, 0, 181, 0, 175, 0, 46, 0, 0, 205, - 0, 111, 0, 117, 0, 0, 0, 0, 0, 0, - 0, 231, 0, 0, 0, 0, 0, 0, 106, 211, - 250, 0, 252, 0, 254, 0, 176, 47, 49, 0, - 50, 0, 0, 0, 0, 0, 0, 0, 55, 107, - 256, 258, 260, 51, 53 + 0, 0, 0, 261, 0, 223, 0, 0, 0, 0, + 0, 0, 285, 292, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 392, 441, 428, 0, + 0, 0, 0, 420, 0, 0, 0, 0, 0, 0, + 0, 187, 0, 0, 0, 0, 0, 0, 314, 479, + 0, 0, 396, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 477, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 68, 0, 0, 0, 0, 0, + 74, 76, 78, 0, 0, 454, 0, 84, 0, 0, + 0, 0, 336, 0, 0, 0, 0, 0, 29, 0, + 22, 0, 0, 0, 0, 0, 0, 0, 0, 122, + 122, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 127, 0, 0, 0, 0, 0, 0, 0, 287, + 0, 0, 0, 0, 0, 0, 0, 0, 295, 0, + 0, 188, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 267, 0, 266, 0, 272, 0, 274, 0, 268, + 0, 270, 0, 233, 262, 0, 0, 0, 180, 0, + 0, 0, 294, 0, 184, 183, 309, 0, 0, 30, + 31, 0, 0, 0, 0, 433, 434, 435, 436, 427, + 421, 0, 0, 0, 451, 0, 0, 0, 213, 0, + 0, 0, 0, 197, 398, 196, 347, 369, 355, 377, + 356, 378, 357, 379, 474, 475, 465, 466, 0, 402, + 403, 401, 464, 0, 70, 0, 58, 0, 0, 0, + 0, 69, 0, 0, 0, 452, 0, 0, 0, 0, + 0, 0, 0, 0, 414, 0, 0, 25, 26, 0, + 27, 0, 0, 98, 101, 124, 0, 0, 0, 0, + 0, 0, 128, 0, 0, 145, 146, 0, 0, 130, + 153, 0, 0, 0, 0, 120, 0, 286, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 199, 0, 0, + 0, 0, 167, 167, 0, 243, 0, 245, 0, 247, + 0, 416, 0, 0, 273, 275, 269, 271, 0, 0, + 227, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 291, 0, 443, 442, 398, 133, 134, 0, 0, 0, + 0, 87, 91, 0, 0, 315, 400, 0, 0, 0, + 0, 0, 81, 0, 0, 82, 0, 455, 169, 170, + 171, 172, 0, 39, 0, 0, 0, 0, 0, 41, + 459, 0, 0, 99, 102, 0, 0, 123, 131, 132, + 136, 0, 0, 147, 0, 0, 288, 0, 140, 0, + 0, 279, 152, 0, 0, 0, 0, 137, 0, 148, + 154, 0, 0, 0, 0, 413, 0, 412, 0, 0, + 0, 234, 0, 0, 235, 0, 0, 236, 0, 0, + 0, 0, 0, 0, 0, 179, 0, 0, 178, 0, + 0, 0, 173, 0, 0, 32, 0, 0, 449, 0, + 215, 214, 0, 0, 0, 0, 469, 72, 71, 77, + 79, 0, 85, 0, 44, 0, 0, 0, 415, 0, + 0, 0, 28, 0, 108, 113, 0, 0, 0, 0, + 0, 0, 0, 0, 141, 126, 139, 151, 156, 0, + 0, 92, 93, 167, 0, 160, 161, 0, 0, 0, + 0, 0, 0, 0, 263, 0, 0, 167, 0, 0, + 0, 0, 0, 164, 163, 0, 0, 0, 0, 88, + 89, 0, 0, 453, 0, 40, 0, 0, 0, 42, + 57, 0, 0, 0, 297, 299, 298, 300, 301, 144, + 0, 0, 0, 0, 0, 0, 411, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 277, 0, 0, 0, + 228, 0, 0, 174, 0, 0, 0, 448, 216, 0, + 316, 83, 0, 0, 0, 0, 0, 0, 100, 109, + 0, 103, 114, 0, 0, 0, 0, 158, 0, 249, + 0, 0, 251, 0, 0, 253, 0, 0, 0, 264, + 0, 224, 0, 167, 0, 0, 0, 135, 90, 0, + 48, 0, 54, 0, 0, 0, 0, 0, 121, 149, + 296, 410, 237, 0, 0, 244, 238, 0, 0, 246, + 239, 0, 0, 248, 0, 0, 0, 230, 0, 177, + 0, 0, 0, 0, 0, 0, 0, 0, 110, 112, + 0, 115, 116, 0, 0, 255, 0, 257, 0, 259, + 265, 276, 229, 225, 0, 0, 0, 0, 45, 0, + 52, 0, 0, 0, 444, 0, 0, 0, 240, 0, + 0, 241, 0, 0, 242, 0, 0, 181, 0, 175, + 0, 46, 0, 0, 205, 0, 111, 0, 117, 0, + 0, 0, 0, 0, 0, 0, 231, 0, 0, 0, + 0, 0, 0, 106, 211, 250, 0, 252, 0, 254, + 0, 176, 47, 49, 0, 50, 0, 0, 0, 0, + 0, 0, 0, 55, 107, 256, 258, 260, 51, 53 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 2, 3, 83, 876, 84, 85, 643, 1297, 1303, - 867, 1038, 1449, 1615, 868, 1568, 1649, 869, 1617, 870, - 871, 1042, 303, 403, 86, 654, 412, 1399, 1400, 413, - 1598, 1457, 1504, 1458, 1507, 913, 1325, 1204, 626, 443, - 444, 445, 446, 264, 382, 383, 89, 90, 91, 92, - 93, 94, 265, 951, 1527, 1589, 712, 1347, 1350, 1353, - 1548, 1552, 1556, 1604, 1607, 1610, 947, 948, 1073, 910, - 683, 721, 96, 97, 98, 99, 266, 160, 459, 224, - 1188, 267, 268, 269, 517, 277, 853, 1031, 592, 408, - 593, 100, 270 + -1, 2, 3, 83, 882, 84, 85, 648, 1302, 1308, + 873, 1043, 1454, 1620, 874, 1573, 1654, 875, 1622, 876, + 877, 1047, 305, 406, 86, 659, 415, 1404, 1405, 416, + 1603, 1462, 1509, 1463, 1512, 918, 1330, 1209, 631, 446, + 447, 448, 449, 266, 385, 386, 89, 90, 91, 92, + 93, 94, 267, 956, 1532, 1594, 717, 1352, 1355, 1358, + 1553, 1557, 1561, 1609, 1612, 1615, 952, 953, 1078, 915, + 688, 726, 96, 97, 98, 99, 268, 162, 462, 226, + 1193, 269, 270, 271, 520, 279, 859, 1036, 595, 411, + 596, 100, 272 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -1244 +#define YYPACT_NINF -1242 static const yytype_int16 yypact[] = { - 4778, 46, 67, 4888, -1244, -1244, 96, 64, -56, 8, - 35, 25, 205, 210, 214, 265, 268, 111, 115, -91, - 125, 132, 10, 163, 174, 6, 189, 231, 344, 382, - 397, 428, 327, 488, 438, 480, 536, 444, 223, 606, - 105, 434, 545, -81, 454, -70, -70, 476, 166, 260, - 121, 621, 642, 26, 47, 659, 643, 106, 726, 727, - 746, 2741, 750, 566, 575, 593, 16, 19, -1244, 596, - -1244, 767, 768, 610, -1244, 783, 787, 20, 21, -1244, - -1244, -1244, 4243, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, 29, -1244, - 619, 97, -1244, 5, -1244, -1244, -1244, -1244, 54, 303, - 321, 340, 358, 446, 504, 537, 583, 616, 623, 627, - 646, 649, 660, 663, 674, 689, 706, 707, 710, 714, - 717, 720, 723, 652, 655, 666, 669, 670, 677, -1244, - -1244, -1244, -1244, 862, 713, 729, 732, -1244, -1244, -1244, - 4243, 4243, 4243, 3815, 1947, 37, 921, 525, 687, 651, - -1244, 780, 902, 235, 925, 4243, 404, 404, -1244, 4243, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, 4243, 4032, 4243, - 4243, 775, 4243, 4032, 4243, 4243, 788, 4032, 4243, 4243, - 2935, 805, 826, -1244, 4032, 2741, 2741, 2741, 834, 837, - 2741, 2741, 2741, 860, -1244, -1244, -1244, -1244, 863, 864, - 890, 2935, 4243, 936, 2935, 16, 847, 895, -70, -70, - -70, 4243, 4243, 13, -1244, 78, -70, 923, 930, 939, - 3986, 90, -82, 911, 915, 919, 2741, 2741, 2935, 927, - 28, 792, -1244, 978, -1244, 940, 961, 964, 2741, 2741, - 974, 999, 1021, 322, -1244, 1040, 24, 1090, 1108, 1153, - 407, 3032, 4243, 2313, -1244, -1244, 4451, -1244, 1205, -1244, - -24, 1212, 4243, 4243, 4243, 1043, 4243, 1041, 1094, 4243, - 4243, -1244, -1244, 4243, 1216, -1244, 1217, -1244, 1219, -1244, - -110, 859, -1244, 2935, 2935, 1047, 998, -1244, -1244, -1244, - -1244, -1244, -1244, 2935, 1223, 1057, 4243, 1229, 4243, 4243, - 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, - 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, - 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, - 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, - 4243, 4243, 404, 404, 404, 404, 404, 404, 404, 404, - 404, 404, 404, 404, 4243, 404, 404, 404, 1065, 1065, - 1065, 4032, 7332, 73, 4032, 6527, 269, 1059, 1230, 1066, - 1062, -1244, 1063, 3582, 4243, -1244, 4243, 4243, 4243, 4243, - 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, 4243, - 4243, -1244, -1244, -1244, -1244, 1403, 372, -129, -1244, -1244, - 72, 5773, 169, 218, 7353, 4032, 4511, -1244, 144, 7374, - 7395, 4243, 7416, 722, 7437, 7458, 4243, 725, 7479, 7500, - 1235, 4243, 4243, 734, 1239, 1240, 1243, 4243, 4243, 1246, - 1247, 1247, 4243, 1078, 1093, 1095, 1096, 4243, 4243, 4243, - 1262, 5693, 1097, 1272, 1100, -1244, -1244, 116, -1244, -1244, - 5799, 5825, -70, -70, 525, 525, 118, 4243, 4243, 4243, - 3986, 3986, 4243, 3582, 120, -1244, 4243, 4243, 4243, 4243, - 4243, 1274, 1276, 1277, 4243, 1279, -1244, 4243, 4243, 790, - -1244, 4032, 4032, 4032, 1280, 1283, 4243, 4243, 4243, 154, - 3763, 1286, 1287, -1244, 4243, -1244, -1244, -1244, 1104, 1113, - 1114, 1115, 4032, 1065, -1244, 7521, -1244, 735, 4243, 3129, - -1244, -1244, 7542, 7563, 7584, 1171, 5851, -1244, 1117, 4530, - 7605, 6550, -1244, -1244, 1064, -1244, 1194, 4243, -1244, 1126, - 738, 4243, 1294, 1295, -1244, 4243, 6573, 271, 7626, 6596, - 7647, 6619, 7668, 6642, 7689, 6665, 7710, 6688, 7731, 6711, - 7752, 6734, 7773, 6757, 7794, 6780, 7815, 6803, 7836, 6826, - 5877, 5903, 7857, 6849, 7878, 6872, 7899, 6895, 7920, 6918, - 7941, 6941, 7962, 6964, 7983, 6987, 5929, 5955, 5981, 6007, - 6033, 6059, -1244, 82, 451, 158, 452, 1124, 1125, 1132, - 1134, 1130, 1131, 1133, 234, 1782, 1139, 1137, 1140, 739, - 73, -1244, 2935, 743, 150, 998, 4243, 1306, 1316, 17, - 1144, -1244, -76, 15, 18, 114, -1244, 4937, 4550, 1689, - 1761, 1038, 1038, 177, 177, 177, 177, 258, 258, 1065, - 1065, 1065, 1065, 38, -1244, 4243, 1317, 34, 4032, 1323, - 4032, 4243, 1328, -1244, 1318, 1332, 404, 1333, 4032, 4032, - 1196, 1335, 1337, 8004, 1341, 1224, 1342, 1345, 8025, 1227, - 1348, 1353, 4243, 8046, 4965, 1160, -1244, -1244, -1244, 8067, - 8088, 4243, 2935, 1360, 1359, 8109, 4197, 4197, 4197, 4197, - 8130, 8151, 8172, 2935, 4032, 1195, -1244, -1244, 1315, 1992, - -70, 4243, 4243, -1244, -1244, 1192, 1193, 3986, 6085, 6111, - 6137, 5747, 949, -70, 3373, 8193, 4993, 8214, 8235, 8256, - 4243, 1369, -1244, 4243, 8277, -1244, 7010, 7033, -1244, 744, - 752, 761, -1244, -1244, 7056, 7079, 6163, -1244, 4032, -1244, - 4032, 7102, -24, 1211, 5021, 4032, 4032, 4032, 4032, 765, - -1244, -1244, 4583, 4032, 1065, -1244, 1384, 1387, 1391, 1228, - 4243, 4360, 4243, 4243, -1244, -2, -1244, -1244, 1220, 2935, - 1394, 5049, -1244, -1244, 7125, 43, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, 4243, - 4243, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, 4243, 4243, 4243, 4243, 4243, - 4243, -1244, 404, -1244, -1244, 4032, -1244, 4032, 404, 404, - -1244, -1244, 404, 404, 404, -1244, -1244, 4243, -1244, 404, - 1232, 4243, 1397, 1231, 42, 4243, 1401, 1402, 1869, -1244, - 1404, 1236, 16, 1406, -1244, 4032, 4032, 4032, 4032, -1244, - 4243, -1244, 1242, 1244, 1248, -1244, 1412, -1244, -1244, -1244, - -1244, -1244, 7148, -1244, -1244, 1263, 404, 238, -1244, 365, - 6189, -1244, 1249, 1414, -1244, -1244, -70, 4511, -1244, 877, - 2935, 2935, 1416, 2935, 884, 2935, 2935, 1424, 1363, 2935, - 2935, 2079, 1430, 1433, 4032, 1434, 1435, 2499, -1244, -1244, - 1437, -1244, 1439, 1271, 8508, -1244, 1278, 1281, 1282, 1440, - 1445, 1446, 1453, 774, 1456, 4386, -1244, -1244, 232, 6215, - 6241, -1244, -1244, 5077, 76, -70, -70, -70, 1458, 1457, - 1285, 1459, 1298, 32, 44, 53, 56, 431, -1244, 289, - -1244, 949, 1464, 1474, 1475, 1476, 1477, 8508, -1244, 2098, - 1307, 1479, 1481, 1482, 1422, 4243, 1484, 1485, 4243, 789, - 794, -101, -1244, -1244, 795, 798, 802, 803, -1244, 4243, - 807, 2935, 2935, 2935, 1488, 6267, -1244, 4610, 326, 1490, - 1492, 2935, 1320, -1244, -1244, 1495, 1494, -1244, 1496, 8298, - 7171, 8319, 7194, 8340, 7217, 8361, 7240, -1244, 486, 524, - 1330, 1329, 1336, 1334, 1338, 8382, 1340, 73, 2283, -1244, - 73, 367, 1339, 1499, 2344, -1244, -1244, -1244, 16, 4243, - -1244, 811, -1244, 812, 819, 820, 824, 8508, 1344, 4243, - 4243, 2935, 1346, -1244, 1343, -1244, 1502, 39, 1511, 4243, - 3494, 52, 1349, 1350, 1441, 1441, 2935, 1514, 1351, 1352, - 1515, 1517, 2935, 1354, 1518, 1521, -1244, 1527, 2935, 849, - 2935, 2935, 1534, 1533, -1244, 2935, 1535, 1536, 1538, 1539, - 2935, 2935, 2935, -1244, 1542, 544, -1244, 4243, 4243, 4243, - 1361, 1362, -108, -102, -89, 1376, -1244, 2935, -1244, 4243, - -1244, 1545, -1244, 1547, -1244, 1548, -1244, 1564, -1244, -1244, - 3986, 667, 2838, -1244, 1373, 1392, 3226, -1244, 4032, -1244, - -1244, -1244, 1398, 2475, -1244, -1244, 7263, 1400, 1405, 1572, - -1244, -1244, -1244, -1244, 8508, -1244, 1573, 1575, 1460, -1244, - 4243, 4243, 4243, -1244, 1576, 694, 1409, 1578, -1244, 293, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, 404, -1244, -1244, -1244, -1244, 2935, -1244, - 2935, 998, 4243, 1582, 1586, 17, -1244, 1590, 7286, 16, - -1244, 1591, 1592, 1597, 1598, 4243, 6293, 6319, 866, -1244, - 4243, 1588, -1244, -1244, 404, -1244, 6345, 4197, 8508, -1244, - -1244, 4243, 4243, -70, 1600, 1602, 1604, -1244, 4243, 4243, - -1244, -1244, 1605, 4243, -1244, -1244, 1607, 1608, 1436, 1610, - 1486, 4243, -1244, 1612, 2935, 2935, 2935, 2935, 1613, 1050, - 1615, 4243, -1244, 4197, 5105, 8403, 4639, 525, 525, -70, - 1617, -70, 1618, -70, 1620, 4243, 152, 1449, 8424, -1244, - -1244, -1244, -1244, 5133, 345, -1244, 1622, 2131, 1623, 2935, - -70, 2131, 1625, 891, 4243, -1244, 1628, -1244, -1244, -24, - -1244, -1244, 2935, 4881, 226, 8445, -1244, -1244, 3546, 2935, - -1244, -1244, 1463, 1631, 1633, 1634, 2559, -1244, 1635, 1639, - -1244, 1465, -1244, -1244, -1244, -1244, -1244, 516, 8508, 4243, - 4243, 2935, 1469, 892, 8508, -1244, 1643, 4243, 8508, -1244, - 5161, 5189, 295, -1244, -1244, -1244, 5217, 5245, -1244, 5273, - 1645, -1244, 2935, -1244, 1587, 1651, 8508, -1244, 1652, 1653, - 1654, 1655, -1244, 1472, -1244, -1244, 5720, 3450, 1656, 1487, - -1244, 4243, -1244, 1489, 1493, 439, -1244, 1497, 445, -1244, - 1498, 487, -1244, 1501, 7309, 1658, 2935, 1661, 1504, 4243, - -1244, 3323, 499, -1244, 900, 530, 551, -1244, 1659, 5301, - -1244, 1556, 4243, -1244, 4243, -1244, -1244, 4032, 4145, 1675, - 1505, -1244, -1244, -1244, -1244, -1244, 16, -1244, 1561, -1244, - 4243, 6371, 6397, -1244, 2935, 4243, 1681, -1244, 6423, -1244, - -1244, 1683, 1684, 1685, 1686, 1687, 1688, 901, 1516, -1244, - -1244, -1244, -1244, -1244, 2935, 4032, -1244, -1244, 525, 4909, - -1244, -1244, 3986, 949, 3986, 949, 3986, 949, 1690, -1244, - 904, 2935, -1244, 5329, -70, 1691, 4032, -70, -1244, -1244, - 4243, 5357, 5385, 908, -1244, -1244, 1692, 1695, -1244, 1523, - 8508, 4243, 4243, 912, 8508, -1244, 4243, 916, 920, -1244, - -1244, -1244, -1244, -1244, -1244, 1524, 4243, 934, 957, 1525, - 4243, -1244, 5413, 559, 854, 5441, 571, 1013, 5469, 580, - 1067, -1244, 2935, 1700, 1627, 4422, 1530, 601, -1244, 969, - 620, 4164, -1244, -1244, 1709, -1244, -1244, 4243, 8466, 6449, - 27, 6475, 1715, -1244, -1244, 1716, -1244, -1244, 4243, 5497, - 1718, 1720, -1244, 5525, 1721, 4243, 1722, 1723, 4243, 1729, - 1730, 4243, 1731, 1541, -1244, 4243, -1244, 949, -1244, 4032, - 1733, 3323, -1244, -1244, 975, -1244, 4243, -1244, 2935, 4243, - 2528, 3717, 6501, -1244, -1244, -1244, -1244, -1244, 1543, 5553, - -1244, -1244, 1570, 5581, -1244, -1244, 1571, 5609, -1244, 1734, - 4391, 1222, 4448, 976, -1244, 712, 979, 1745, 1583, 8487, - 984, 5637, 2313, -1244, -1244, 404, 8508, -1244, 4243, 949, - 1749, 949, 1751, 949, 1758, -1244, -1244, -1244, -1244, 949, - 1759, 4032, 1762, -1244, 404, -1244, 1593, 1764, 987, 4488, - 1002, 5665, 1259, -1244, 1595, 1364, -1244, 1596, 1491, -1244, - 1599, 1650, -1244, 1009, -1244, 1010, -1244, 1601, 2935, -1244, - 4243, -1244, 998, -1244, 1765, 1770, 949, 1775, 949, 1779, - 949, -1244, 1780, 404, 1784, 404, 1032, 4424, -1244, -1244, - -1244, 1725, -1244, 2105, -1244, 2287, -1244, -1244, -1244, 1037, - -1244, 1785, 998, 1786, 1787, 1790, 404, 1791, -1244, -1244, - -1244, -1244, -1244, -1244, -1244 + 4870, 43, 9, 4981, -1242, -1242, 2170, 16, 66, -95, + -79, 28, 151, 171, 184, 191, 220, -5, 57, -141, + 74, 103, 8, 121, 130, 7, 138, 163, 305, 187, + 344, 413, 273, 274, 453, 460, 408, 411, 241, 412, + 133, 448, 558, -37, 450, -75, -75, 458, 281, 15, + 3, 587, 599, 11, 70, 618, 616, 470, 674, 690, + 696, 2829, 703, 538, 546, 554, 18, 42, -1242, 562, + -1242, 733, 734, 567, -1242, 740, 744, 25, 26, -1242, + -1242, -1242, 1970, -1242, -1242, -1242, -1242, -1242, -1242, -1242, + -1242, -1242, -1242, -1242, -1242, -1242, -1242, -1242, 36, -1242, + 566, 78, -1242, 17, -1242, -1242, -1242, -1242, 382, 432, + 519, 523, 539, 542, 543, 553, 561, 593, 594, 600, + 609, 610, 613, 633, 637, 646, 647, 664, 668, 679, + 700, 704, 707, 582, 585, 590, 601, 619, 620, -1242, + -1242, -1242, -1242, -1242, 783, 626, 627, 632, 651, -1242, + -1242, -1242, 1970, 1970, 1970, 4098, 3871, 21, 824, 420, + 648, 229, -1242, 652, 831, 126, 837, 1970, 409, 409, + -1242, 1970, -1242, -1242, -1242, -1242, -1242, -1242, -1242, 1970, + 4320, 1970, 1970, 673, 1970, 4320, 1970, 1970, 680, 4320, + 1970, 1970, 3025, 699, 667, -1242, 4320, 2829, 2829, 2829, + 708, 711, 2829, 2829, 2829, 718, -1242, -1242, -1242, -1242, + 722, 738, 739, 3025, 1970, 873, 3025, 18, 716, 742, + -75, -75, -75, 1970, 1970, -81, -1242, 59, -75, 751, + 767, 774, 4147, 81, -122, 766, 782, 790, 2829, 2829, + 3025, 811, 39, 732, -1242, 975, -1242, 805, 814, 818, + 2829, 2829, 859, 891, 894, 579, -1242, 906, 27, 1048, + 1081, 1086, 565, 3123, 1970, 2351, -1242, -1242, 702, -1242, + 1094, -1242, -29, 1104, 1970, 1970, 1970, 933, 1970, 955, + 1004, 1970, 1970, -1242, -1242, 1970, 1164, -1242, 1168, -1242, + 1169, -1242, 91, 865, -1242, 3025, 3025, 1010, 847, -1242, + -1242, -1242, -1242, -1242, -1242, 3025, 1186, 1017, 1970, 1190, + 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, + 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, + 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, + 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, + 1970, 1970, 1970, 1970, 409, 409, 409, 409, 409, 409, + 409, 409, 409, 409, 409, 409, 1970, 409, 409, 409, + 1193, 1022, 1022, 1022, 4320, 7452, 85, 4320, 6647, 100, + 1021, 1195, 1024, 1023, -1242, 1025, 2499, 1970, -1242, 1970, + 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, 1970, + 1970, 1970, 1970, 1970, -1242, -1242, -1242, -1242, 1110, 494, + -84, -1242, -1242, 86, 5893, 221, 375, 7473, 4320, 4605, + -1242, 243, 7494, 7515, 1970, 7536, 713, 7557, 7578, 1970, + 720, 7599, 7620, 1196, 1970, 1970, 723, 1199, 1203, 1204, + 1970, 1970, 1206, 1207, 1207, 1970, 1038, 1041, 1042, 1043, + 1970, 1970, 1970, 1211, 5813, 1044, 1214, 1045, -1242, -1242, + 128, -1242, -1242, 5919, 5945, -75, -75, 420, 420, 164, + 1970, 1970, 1970, 4147, 4147, 1970, 2499, 170, -1242, 1970, + 1970, 1970, 1970, 1970, 1215, 1217, 1218, 1970, 1221, -1242, + 1970, 1970, 1056, -1242, 4320, 4320, 4320, 1222, 1224, 1970, + 1970, 1970, -106, 4050, 1227, 1228, -1242, 1970, -1242, -1242, + -1242, 1052, 1055, 1059, 1061, 4320, 1022, -1242, 7641, -1242, + 729, 1970, 3221, -1242, -1242, 7662, 7683, 7704, 1118, 5971, + -1242, 1065, 4630, 7725, 6670, -1242, -1242, 1248, -1242, 1742, + 1970, -1242, 1072, 756, 1970, 1242, 1243, -1242, 1970, 6693, + 129, 7746, 6716, 7767, 6739, 7788, 6762, 7809, 6785, 7830, + 6808, 7851, 6831, 7872, 6854, 7893, 6877, 7914, 6900, 7935, + 6923, 7956, 6946, 5997, 6023, 7977, 6969, 7998, 6992, 8019, + 7015, 8040, 7038, 8061, 7061, 8082, 7084, 8103, 7107, 6049, + 6075, 6101, 6127, 6153, 6179, -1242, 90, 435, 165, 482, + 1070, 1071, 1077, 1078, 1074, 1082, 1083, 203, 1250, 1084, + 1105, 1101, 1103, 1107, 759, 85, -1242, 3025, 769, 1, + 847, 1970, 1251, 1280, 23, 1111, -1242, -87, 22, 24, + -6, -1242, 5057, 4649, 2476, 881, 807, 807, 754, 754, + 754, 754, 381, 381, 1022, 1022, 1022, 1022, 20, -1242, + 1970, 1283, 51, 4320, 1284, 4320, 1970, 1285, -1242, 1193, + 1286, 409, 1282, 4320, 4320, 1165, 1287, 1290, 8124, 1291, + 1171, 1293, 1294, 8145, 1175, 1297, 1300, 1970, 8166, 5085, + 1127, -1242, -1242, -1242, 8187, 8208, 1970, 3025, 1305, 1314, + 8229, 4487, 4487, 4487, 4487, 8250, 8271, 8292, 3025, 4320, + 1145, -1242, -1242, 2220, 2472, -75, 1970, 1970, -1242, -1242, + 1142, 1143, 4147, 6205, 6231, 6257, 5867, 693, -75, 2535, + 8313, 5113, 8334, 8355, 8376, 1970, 1322, -1242, 1970, 8397, + -1242, 7130, 7153, -1242, 772, 779, 802, -1242, -1242, 7176, + 7199, 6283, -1242, 4320, -1242, 4320, 7222, -29, 1156, 5141, + 4320, 4320, 4320, 4320, 810, -1242, -1242, 4680, 4320, 1022, + -1242, 1327, 1329, 1330, 1160, 1970, 2707, 1970, 1970, -1242, + 40, -1242, -1242, 1158, 3025, 1344, 5169, -1242, -1242, 7245, + 775, -1242, -1242, -1242, -1242, -1242, -1242, -1242, -1242, -1242, + -1242, -1242, -1242, -1242, -1242, -1242, -1242, -1242, -1242, -1242, + -1242, -1242, -1242, -1242, 1970, 1970, -1242, -1242, -1242, -1242, + -1242, -1242, -1242, -1242, -1242, -1242, -1242, -1242, -1242, -1242, + 1970, 1970, 1970, 1970, 1970, 1970, -1242, 409, -1242, -1242, + 4320, -1242, 4320, 409, 409, -1242, -1242, 409, 409, 409, + -1242, -1242, 1970, -1242, 409, -1242, 1176, 1970, 1346, 1177, + 44, 1970, 1350, 1351, 1883, -1242, 1352, 1182, 18, 1354, + -1242, 4320, 4320, 4320, 4320, -1242, 1970, -1242, 1187, 1188, + 1183, -1242, 1357, -1242, -1242, -1242, -1242, -1242, 7268, -1242, + -1242, 1212, 409, 259, -1242, 324, 6309, -1242, 1358, -1242, + -1242, -75, 4605, -1242, 923, 3025, 3025, 1360, 3025, 930, + 3025, 3025, 1365, 1307, 3025, 3025, 1923, 1368, 1371, 4320, + 1372, 1374, 4733, -1242, -1242, 1376, -1242, 1377, 1208, 8628, + -1242, 1213, 1216, 1220, 1379, 1382, 1385, 1393, 828, 1389, + 3468, -1242, -1242, 183, 6335, 6361, -1242, -1242, 5197, -100, + -75, -75, -75, 1396, 1397, 1223, 1415, 1252, 31, 38, + 47, 50, 902, -1242, 235, -1242, 693, 1395, 1421, 1422, + 1424, 1426, 8628, -1242, 2003, 1253, 1430, 1431, 1432, 1375, + 1970, 1433, 1434, 1970, 835, 854, 249, -1242, -1242, 870, + 877, 880, 883, -1242, 1970, 884, 3025, 3025, 3025, 1438, + 6387, -1242, 4700, 330, 1440, 1441, 3025, 1265, -1242, -1242, + 1443, 1444, -1242, 1445, 8418, 7291, 8439, 7314, 8460, 7337, + 8481, 7360, -1242, 333, 502, 1275, 1278, 1272, 1288, 1292, + 8502, 1295, 85, 2092, -1242, 85, 257, 1281, 1453, 2315, + -1242, -1242, -1242, 18, 1970, -1242, 897, -1242, 898, 907, + 910, 914, 8628, 1299, 1970, 1970, 3025, 1298, -1242, 1296, + -1242, 1455, 61, 1460, 1970, 3590, 55, 1302, 1304, 1390, + 1390, 3025, 1465, 1312, 1319, 1469, 1470, 3025, 1324, 1472, + 1474, -1242, 1476, 3025, 915, 3025, 3025, 1482, 1489, -1242, + 3025, 1499, 1500, 1505, 1507, 3025, 3025, 3025, -1242, 1508, + 437, -1242, 1970, 1970, 1970, 1335, 1337, -114, -110, -102, + 1343, -1242, 3025, -1242, 1970, -1242, 1515, -1242, 1516, -1242, + 1517, -1242, 1518, -1242, -1242, 4147, 1237, 2927, -1242, 1345, + 1347, 3319, -1242, 4320, -1242, -1242, -1242, 1349, 3546, -1242, + -1242, 7383, 1313, 1348, 1527, -1242, -1242, -1242, -1242, 8628, + -1242, 1529, 1530, 1409, -1242, 1970, 1970, 1970, -1242, 1532, + 461, 1359, 1534, -1242, 245, -1242, -1242, -1242, -1242, -1242, + -1242, -1242, -1242, -1242, -1242, -1242, -1242, -1242, 409, -1242, + -1242, -1242, -1242, 3025, -1242, 3025, 847, 1970, 1538, 1544, + 23, -1242, 1543, 7406, 18, -1242, 1551, 1552, 1553, 1554, + 1970, 6413, 6439, 919, -1242, 1970, 1546, -1242, -1242, 409, + -1242, 6465, 4487, 8628, -1242, -1242, 1970, 1970, -75, 1555, + 1556, 1558, -1242, 1970, 1970, -1242, -1242, 1561, 1970, -1242, + -1242, 1565, 1566, 1392, 1568, 1447, 1970, -1242, 1572, 3025, + 3025, 3025, 3025, 1574, 1099, 1577, 1970, -1242, 4487, 5225, + 8523, 4973, 420, 420, -75, 1581, -75, 1582, -75, 1583, + 1970, 123, 1391, 8544, -1242, -1242, -1242, -1242, 5253, 292, + -1242, 1588, 94, 1589, 3025, -75, 94, 1592, 924, 1970, + -1242, 1593, -1242, -1242, -29, -1242, -1242, 3025, 5001, 159, + 8565, -1242, -1242, 3644, 3025, -1242, -1242, 1425, 1595, 1596, + 1597, 3773, -1242, 1598, 1600, -1242, 1429, -1242, -1242, -1242, + -1242, -1242, 457, 8628, 1970, 1970, 3025, 1423, 927, 8628, + -1242, 1602, 1970, 8628, -1242, 5281, 5309, 166, -1242, -1242, + -1242, 5337, 5365, -1242, 5393, 1605, -1242, 3025, -1242, 1547, + 1606, 8628, -1242, 1608, 1610, 1612, 1614, -1242, 1446, -1242, + -1242, 5840, 4394, 1615, 1448, -1242, 1970, -1242, 1449, 1450, + 299, -1242, 1457, 342, -1242, 1458, 354, -1242, 1459, 7429, + 1616, 3025, 1618, 1461, 1970, -1242, 3417, 359, -1242, 948, + 366, 377, -1242, 1628, 5421, -1242, 1503, 1970, -1242, 1970, + -1242, -1242, 4320, 4444, 1630, 1462, -1242, -1242, -1242, -1242, + -1242, 18, -1242, 1519, -1242, 1970, 6491, 6517, -1242, 3025, + 1970, 1635, -1242, 6543, -1242, -1242, 1637, 1641, 1642, 1643, + 1648, 1649, 951, 1475, -1242, -1242, -1242, -1242, -1242, 3025, + 4320, -1242, -1242, 420, 5029, -1242, -1242, 4147, 693, 4147, + 693, 4147, 693, 1651, -1242, 962, 3025, -1242, 5449, -75, + 1653, 4320, -75, -1242, -1242, 1970, 5477, 5505, 965, -1242, + -1242, 1654, 1655, -1242, 1483, 8628, 1970, 1970, 966, 8628, + -1242, 1970, 969, 972, -1242, -1242, -1242, -1242, -1242, -1242, + 1484, 1970, 973, 976, 1480, 1970, -1242, 5533, 380, 1387, + 5561, 446, 1399, 5589, 449, 1442, -1242, 3025, 1660, 1584, + 4366, 1486, 454, -1242, 977, 456, 4519, -1242, -1242, 1662, + -1242, -1242, 1970, 8586, 6569, 30, 6595, 1666, -1242, -1242, + 1668, -1242, -1242, 1970, 5617, 1669, 1670, -1242, 5645, 1671, + 1970, 1673, 1675, 1970, 1677, 1678, 1970, 1682, 1492, -1242, + 1970, -1242, 693, -1242, 4320, 1683, 3417, -1242, -1242, 981, + -1242, 1970, -1242, 3025, 1970, 2656, 3817, 6621, -1242, -1242, + -1242, -1242, -1242, 1509, 5673, -1242, -1242, 1510, 5701, -1242, + -1242, 1512, 5729, -1242, 1688, 4539, 1481, 4511, 982, -1242, + 496, 986, 1689, 1521, 8607, 987, 5757, 2351, -1242, -1242, + 409, 8628, -1242, 1970, 693, 1691, 693, 1692, 693, 1697, + -1242, -1242, -1242, -1242, 693, 1698, 4320, 1703, -1242, 409, + -1242, 1533, 1704, 991, 4558, 999, 5785, 1620, -1242, 1535, + 1657, -1242, 1536, 1783, -1242, 1537, 2325, -1242, 1002, -1242, + 1003, -1242, 1540, 3025, -1242, 1970, -1242, 847, -1242, 1705, + 1713, 693, 1721, 693, 1722, 693, -1242, 1727, 409, 1728, + 409, 1006, 4578, -1242, -1242, -1242, 2803, -1242, 3671, -1242, + 3865, -1242, -1242, -1242, 1007, -1242, 1729, 847, 1730, 1731, + 1732, 409, 1733, -1242, -1242, -1242, -1242, -1242, -1242, -1242 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -1244, -1244, -1244, -1244, 754, -1244, -1244, -1244, -1244, 270, - -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -349, -88, -1244, 1389, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -555, -1244, 748, 1801, -1244, - -1244, -1244, -1244, 1, -457, -224, -1244, -1244, -1244, -1244, - -1244, -1244, 1802, -1244, -1244, -1244, -1244, -1244, -1244, -1244, - -1244, -1244, -1244, -1244, -1244, -1244, -923, -849, -1244, -1244, - 1365, -1244, -1244, -1244, -1244, -1244, 248, -1244, -9, -1244, - -1243, 817, 1546, 1163, 985, -200, 632, -1244, 11, -5, - -351, -1244, -3 + -1242, -1242, -1242, -1242, 692, -1242, -1242, -1242, -1242, 246, + -1242, -1242, -1242, -1242, -1242, -1242, -1242, -1242, -1242, -1242, + -1242, -1242, -359, -66, -1242, 1331, -1242, -1242, -1242, -1242, + -1242, -1242, -1242, -1242, -1242, -192, -1242, 691, 1753, -1242, + -1242, -1242, -1242, 2, -461, -231, -1242, -1242, -1242, -1242, + -1242, -1242, 1754, -1242, -1242, -1242, -1242, -1242, -1242, -1242, + -1242, -1242, -1242, -1242, -1242, -1242, -823, -942, -1242, -1242, + 1315, -1242, -1242, -1242, -1242, -1242, 251, -1242, -7, -1242, + -1241, 845, 727, 1191, 1205, -201, 578, -1242, 12, -4, + -351, -1242, -3 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -458 +#define YYTABLE_NINF -460 static const yytype_int16 yytable[] = { - 101, 162, 594, 163, 88, 989, 473, 705, 706, 305, - 186, 165, 604, 304, 181, 454, 1364, 161, 489, 181, - 275, 851, 186, 278, 612, 286, 288, 616, 1111, 503, - 240, 168, 485, 1537, 486, 292, 223, 225, 1100, 231, - 874, 376, 861, 215, 647, 1193, 1021, 406, 104, 648, - 1102, 243, 4, 244, 462, 463, 216, 217, 1200, 1104, - 462, 463, 1106, 534, 537, 536, 501, 5, 301, 302, - 1239, 158, 1240, 462, 463, 1129, 1241, 164, 1242, 1407, - 611, 177, 130, 131, 132, 133, 134, 135, 178, 1243, - 476, 1244, 219, 220, 139, 140, 177, 477, 1109, 102, - 103, 104, 221, 855, 296, 105, 106, 107, 245, 222, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 916, 917, 918, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 1101, 301, 302, 139, 140, 141, - 142, 1453, 862, 863, 864, 865, 1103, 611, 381, 241, - 518, 377, 378, 409, 409, 1105, 1022, 1023, 1107, 211, - 248, 1467, 212, 249, 990, 462, 463, 407, 410, 306, - 166, 307, 182, 145, 146, 187, 158, 182, 236, 183, - 237, 279, 464, 875, 856, 276, 852, 857, 875, 287, - 289, 293, 487, 504, 169, 242, 1538, 167, 294, 457, - 458, 170, 301, 302, 462, 463, 171, 466, 866, 996, - 172, 474, 297, 298, 299, 300, 308, 227, 309, 143, - 228, 698, 699, 229, 1374, 144, 145, 146, 462, 463, - 462, 463, 147, 148, 149, 649, 297, 298, 299, 300, - 650, 714, 462, 463, 159, 821, 1091, 465, 150, 151, - 822, 841, 1109, 152, 232, 845, 301, 302, 153, 475, - 154, 173, 155, 156, 174, 157, 615, 158, 462, 463, - 462, 463, 462, 463, 204, 175, 189, 205, 617, 176, - 206, 542, 207, 858, 700, 1570, 707, 179, 713, 297, - 298, 299, 300, 761, 180, 386, 387, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 519, 398, 399, 301, - 302, 233, 659, 400, 660, 234, 844, 737, 219, 220, - 291, 824, 1355, 738, 1142, 184, 825, 235, 221, 395, - 396, 397, 398, 399, 652, 230, 185, 653, 400, 409, - 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, - 409, 188, 409, 409, 409, 595, 596, 597, 598, 599, - 600, 601, 602, 603, 1171, 1636, 606, 607, 608, 386, - 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 655, 462, 463, 653, 400, 368, 369, - 370, 372, 375, 189, 301, 302, 1375, 835, 406, 104, - 1087, 1047, 822, 405, -455, 190, 659, 411, 297, 298, - 299, 300, 397, 398, 399, 414, 416, 419, 420, 400, - 422, 416, 424, 425, 193, 416, 428, 429, 301, 302, - 301, 302, 416, 130, 131, 132, 133, 134, 135, 191, - -456, 462, 463, 703, 704, 139, 140, 462, 463, 776, - 451, 458, 301, 302, 192, 381, 381, 1110, 508, 460, - 461, 509, -457, 925, 510, 310, 511, 311, 461, 386, - 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 312, 499, 313, 500, 400, 501, 1143, - 1474, 157, 1477, 158, 1480, 198, 194, 462, 463, 513, - 515, 416, 314, 203, 315, 938, 297, 298, 299, 300, - 522, 523, 524, 1359, 526, 939, 846, 529, 530, 380, - 316, 531, 317, 940, 941, 942, 301, 302, 1048, 943, - 944, 945, 946, 659, 145, 146, 645, 199, 646, 195, - 1232, 1233, 196, 158, 546, 197, 548, 549, 550, 551, - 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, - 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, - 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, - 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 200, 462, 463, 201, 1561, 202, 213, 462, 463, 214, - 847, 1108, 605, 44, 45, 46, 47, 1422, 318, 416, - 319, 52, 416, 1424, 55, 1109, 823, 826, 1109, 822, - 827, 1109, 627, 218, 628, 629, 630, 631, 632, 633, - 634, 635, 636, 637, 638, 639, 640, 641, 642, 462, - 463, 883, 1030, 409, 776, 226, 1602, 385, 1605, 1159, - 1608, 462, 463, 513, 659, 1426, 1611, 885, 1168, 663, - 208, 1170, 1172, 209, 668, 210, 320, 1434, 321, 673, - 674, 915, 915, 915, 915, 679, 680, 997, 238, 1389, - 685, 928, 462, 463, 1390, 690, 691, 692, 934, 1160, - 1277, 1278, 659, 1641, 949, 1643, 239, 1645, 1436, 322, - 247, 323, 1109, 462, 463, 708, 709, 710, 368, 369, - 711, 462, 463, 246, 715, 716, 717, 718, 719, 1437, - 250, 251, 724, 462, 463, 726, 727, 1515, 272, 416, - 416, 416, 462, 463, 734, 735, 736, 273, 741, 1518, - 252, 938, 744, 1109, 271, 324, 1109, 325, 1521, 1109, - 416, 939, 1109, 462, 463, 274, 752, 754, 280, 940, - 941, 942, 409, 281, 282, 943, 944, 945, 946, 1529, - 1343, 1344, 462, 463, 283, 741, 998, 284, 326, 771, - 327, 285, 1109, 774, 1109, 328, 1109, 329, 1531, 330, - 295, 331, 7, 8, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 332, 409, - 333, 334, 400, 335, 358, 409, 409, 359, 1177, 409, - 409, 409, 336, 1007, 337, 338, 409, 339, 360, 1010, - 1011, 361, 362, 1012, 1013, 1014, 340, 1255, 341, 363, - 1016, 622, 20, 21, 623, 23, 24, 624, 26, 625, - 28, 342, 29, 343, 848, 538, 384, 34, 35, 364, - 37, 38, 39, 409, 462, 463, 42, 1051, 344, 346, - 345, 347, 348, 997, 349, 365, 350, 1046, 351, 352, - 1591, 353, 354, 872, 355, 356, 416, 357, 416, 880, - 659, 366, 665, 659, 367, 669, 754, 887, 402, 63, - 64, 65, 659, 659, 675, 751, 769, 659, 770, 840, - 901, 659, 659, 843, 963, 379, 1092, 1093, 1094, 907, - 659, 404, 964, 1173, 914, 914, 914, 914, 938, 659, - 452, 965, 416, 659, 1052, 978, 1053, 421, 939, 929, - 930, 1058, 659, 1059, 1084, 933, 940, 941, 942, 401, - 426, 1469, 943, 944, 945, 946, 488, 659, 957, 1127, - 728, 959, 659, 659, 1128, 1130, 659, 431, 1131, 1292, - 659, 659, 1132, 1133, 490, 659, 416, 1135, 416, 1179, - 659, 1180, 1181, 416, 416, 416, 416, 659, 659, 1182, - 1183, 416, 659, 104, 1184, 432, 437, 430, 985, 438, - 987, 988, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 455, 659, 450, 1218, - 400, 453, 442, 938, 1516, 447, 448, 130, 131, 132, - 133, 134, 135, 939, 1301, 1199, 1302, 999, 1000, 139, - 140, 940, 941, 942, 1333, 483, 1334, 943, 944, 945, - 946, 1281, 449, 1001, 1002, 1003, 1004, 1005, 1006, 659, - 1395, 1368, 1396, 416, 456, 416, 7, 8, 1301, 1301, - 1435, 1465, 1482, 478, 1483, 1015, 659, 479, 1494, 1018, - 1301, 480, 1500, 1024, 1502, 505, 1503, 938, 1505, 484, - 1506, 1254, 467, 416, 416, 416, 416, 939, 1037, 468, - 539, 540, 1301, 506, 1510, 940, 941, 942, 469, 491, - 543, 943, 944, 945, 946, 622, 20, 21, 623, 23, - 24, 624, 26, 625, 28, 659, 29, 1511, 145, 146, - 492, 34, 35, 493, 37, 38, 39, 659, 496, 1530, - 42, 938, 416, 1395, 659, 1567, 1590, 659, 507, 1592, - 409, 939, 1301, 418, 1596, 1620, 1285, 1621, 423, 940, - 941, 942, 427, 497, 1282, 943, 944, 945, 946, 433, - 822, 1281, 1623, 63, 64, 65, 1447, 659, 1633, 1632, - 1634, 409, 1309, 1519, 1312, 498, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 1306, 7, 8, 1485, 400, - 1301, 520, 1651, 1123, 502, 1656, 1126, 1657, 521, 525, - 527, 528, 532, 533, 1600, 535, 541, 1134, 1338, 544, - 1345, 545, 1348, 547, 1351, 618, 400, 619, 381, 381, - 620, 157, 672, 621, 766, 676, 677, 1522, 1362, 678, - 686, 1365, 1366, 681, 682, 622, 20, 21, 623, 23, - 24, 624, 26, 625, 28, 687, 29, 688, 689, 693, - 695, 34, 35, 1379, 37, 38, 39, 1178, 696, 697, - 42, 720, 722, 745, 723, 725, 732, 1186, 1187, 733, - 742, 743, 746, 747, 748, 759, 762, 1196, 1198, 768, - 772, 773, 828, 829, 1562, 830, 938, 831, 832, 833, - 838, 834, 849, 63, 64, 65, 939, 837, 839, 854, - 850, 873, 882, 889, 940, 941, 942, 7, 8, 878, - 943, 944, 945, 946, 881, 1234, 1235, 1236, 884, 904, - 886, 417, 890, 938, 891, 1246, 417, 1248, 893, 895, - 417, 894, 896, 939, 898, 899, 609, 417, 1253, 613, - 900, 940, 941, 942, 909, 911, 416, 943, 944, 945, - 946, 924, 931, 932, 767, 958, 622, 20, 21, 623, - 23, 24, 624, 26, 625, 28, 972, 29, 1273, 1274, - 1275, 981, 34, 35, 982, 37, 38, 39, 983, 991, - 993, 42, 1587, 1019, 984, 1017, 1020, 1025, 1026, 644, - 1029, 1028, 1032, 1473, 1039, 1476, 1040, 1479, 1043, 381, - 1286, 1050, 1045, 1056, 514, 1487, 417, 1041, 1490, 842, - 158, 1062, 1063, 1298, 63, 64, 65, 1067, 1304, 1625, - 1068, 1070, 1071, 1074, 1076, 1308, 1075, 1080, 938, 1310, - 1311, 1077, 1081, 1082, 1078, 1079, 1316, 1317, 939, 1083, - 1085, 1319, 1095, 1096, 1097, 1098, 940, 941, 942, 1326, - 1099, 1112, 943, 944, 945, 946, 729, 730, 731, 1336, - 1113, 1337, 1114, 1115, 1116, 1119, 1118, 1120, 1121, 1122, - 1124, 1125, 1139, 1354, 1144, 926, 1145, 749, 1149, 908, - 1147, 1148, 1150, 1161, 1162, 416, 1175, 1164, 1192, 416, - 922, 1165, 1369, 1167, 1163, 1174, 1185, 1195, 1203, 1191, - 1207, 1210, 1565, 1211, 1214, 1190, 1378, 1215, 1201, 1202, - 1208, 1209, 1216, 1213, 417, 1574, 1577, 417, 1221, 1222, - 1237, 1238, 1224, 1225, 1627, 1226, 1227, 1391, 1392, 1231, - 1245, 1249, 1259, 1250, 1251, 1398, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 1252, 1260, 409, 1267, 400, 938, 1269, 1264, 514, 1270, - 1268, 1271, 1276, 1272, 1280, 939, 992, 1279, 1287, 1419, - 1288, 409, 1305, 940, 941, 942, 1290, 1293, 1294, 943, - 944, 945, 946, 1295, 1296, 1616, 1313, 1433, 1314, 513, - 1315, 1318, 1320, 1324, 1321, 1322, 1323, 1638, 1327, 1332, - 1441, 1335, 1442, 1346, 1349, 416, 1352, 1356, 1360, 1363, - 409, 1367, 409, 877, 1370, 879, 1381, 1382, 1450, 1383, - 1384, 1388, 1386, 1454, 1647, 1387, 1650, 1659, 1394, 1397, - 1406, 1414, 1408, 409, 417, 417, 417, 1409, 1410, 1411, - 1412, 1413, 1417, 416, 1429, 1438, 1418, 1663, 1431, 1420, - 1472, 1629, 1475, 1421, 1478, 417, 1423, 1425, 1440, 923, - 1427, 1445, 755, 1432, 416, 1446, 1448, 1455, 1491, 1459, - 1460, 1461, 1462, 1463, 1464, 1466, 1481, 1488, 1495, 1498, - 1499, 1496, 1497, 1508, 1501, 1512, 1524, 1054, 1055, 1528, - 1057, 1525, 1060, 1061, 1509, 1533, 1064, 1065, 1513, 1540, - 1541, 1559, 1579, 969, 1544, 970, 1545, 1547, 1550, 1551, - 974, 975, 976, 977, 938, 1554, 1555, 1558, 980, 1564, - 1585, 434, 435, 436, 939, 1304, 439, 440, 441, 1581, - 1583, 1593, 940, 941, 942, 1603, 1542, 1606, 943, 944, - 945, 946, 1594, 1549, 1609, 1612, 1553, 1534, 1614, 1557, - 1619, 1639, 1618, 1560, 1626, 1628, 1640, 416, 1630, 416, - 1635, 1642, 481, 482, 1569, 1644, 1646, 1571, 836, 1576, - 1648, 1658, 1660, 1661, 494, 495, 1662, 1664, 1136, 1137, - 1138, 1194, 656, 1205, 87, 95, 684, 1289, 1146, 938, - 1008, 417, 1009, 417, 0, 0, 0, 0, 0, 939, - 1599, 755, 888, 0, 0, 0, 1601, 940, 941, 942, - 1631, 0, 0, 943, 944, 945, 946, 0, 0, 416, - 1033, 1034, 1035, 1036, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 417, 1189, 0, - 400, 0, 0, 0, 0, 0, 0, 0, 1637, 0, - 0, 0, 0, 1206, 0, 1027, 0, 0, 0, 1212, - 0, 0, 0, 0, 0, 1217, 0, 1219, 1220, 1069, - 0, 0, 1223, 0, 0, 0, 0, 1228, 1229, 1230, - 0, 417, 0, 417, 0, 1653, 0, 0, 417, 417, - 417, 417, 0, 0, 1247, 0, 417, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 1258, - 0, 0, 400, 1262, 0, 386, 387, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 0, - 102, 290, 0, 400, 0, 0, 105, 106, 107, 0, - 0, 108, 109, 110, 111, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 0, 0, 1283, 0, 1284, 417, 0, - 417, 0, 136, 137, 138, 0, 0, 0, 0, 0, - 141, 142, 0, 0, 7, 8, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 417, 417, - 417, 417, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 1328, 1329, 1330, 1331, 0, 0, 0, 0, 0, - 0, 0, 0, 622, 20, 21, 623, 23, 24, 624, - 26, 625, 28, 0, 29, 0, 0, 417, 0, 34, - 35, 0, 37, 38, 39, 0, 1189, 0, 42, 0, - 0, 0, 0, 0, 0, 1066, 144, 0, 0, 1371, - 0, 0, 0, 147, 148, 149, 1380, 0, 0, 0, - 0, 0, 0, 1263, 1117, 0, 0, 0, 0, 150, - 151, 63, 64, 65, 152, 0, 0, 0, 1393, 262, - 0, 0, 373, 0, 156, 0, 374, 0, 0, 0, - 0, 0, 0, 0, 102, 253, 0, 0, 0, 1189, + 101, 476, 164, 165, 597, 88, 710, 711, 616, 5, + 1114, 188, 183, 492, 607, 242, 457, 617, 163, 234, + 621, 307, 277, 1369, 867, 379, 183, 857, 188, 166, + 288, 290, 506, 179, 170, 306, 1542, 1105, 225, 227, + 180, 233, 294, 488, 1107, 489, 280, 994, 1026, 4, + 465, 466, 479, 1109, 465, 466, 1111, 880, 537, 480, + 539, 1205, 465, 466, 465, 466, 1244, 1198, 1245, 742, + 1246, 238, 1247, 239, 245, 743, 246, 235, 1248, 168, + 1249, 236, 1096, 465, 466, 298, 1412, 179, 217, 221, + 222, 652, 616, 237, 861, 169, 653, 102, 255, 223, + 467, 218, 219, 105, 106, 107, 224, 620, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 257, 521, 247, 1116, 167, 868, 869, 870, 871, 136, + 137, 138, 303, 304, 1106, 243, 380, 381, 141, 142, + 143, 1108, 299, 300, 301, 302, 258, 172, 1458, 259, + 1110, 384, 260, 1112, 261, 412, 412, 1379, 191, 1027, + 1028, 177, 303, 304, 1114, 864, 262, 173, 1472, 850, + 410, 413, 184, 44, 45, 46, 47, 48, 189, 185, + 174, 52, 244, 308, 55, 309, 184, 175, 213, 278, + 160, 214, 872, 862, 858, 863, 289, 291, 507, 171, + 295, 1543, 881, 460, 461, 490, 281, 296, 995, 465, + 466, 469, 881, 465, 466, 477, 176, 703, 704, 299, + 300, 301, 302, 178, 145, 388, 299, 300, 301, 302, + 468, 148, 149, 150, 151, 465, 466, 719, 181, 303, + 304, 299, 300, 301, 302, 193, 847, 161, 473, 1366, + 851, 654, 478, 154, 1176, 826, 655, 540, 475, 504, + 827, 303, 304, 158, 160, 224, 519, 182, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 522, + 401, 402, 465, 466, 545, 186, 403, 303, 304, 766, + 303, 304, 1575, 206, 187, 1360, 207, -457, 705, 208, + -458, 209, 190, 622, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 465, 466, + 465, 466, 403, 293, 465, 466, 197, 191, 1147, 198, + 829, 1380, 199, 229, 712, 830, 230, 465, 466, 231, + 718, 412, 412, 412, 412, 412, 412, 412, 412, 412, + 412, 412, 412, 1092, 412, 412, 412, 613, 598, 599, + 600, 601, 602, 603, 604, 605, 606, 192, 840, 609, + 610, 611, 1641, 827, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 657, 465, + 466, 658, 403, 371, 372, 373, 375, 378, 299, 300, + 301, 302, 194, 409, 104, 1115, 303, 304, 408, 195, + 303, 304, 414, 664, 383, 665, -459, 1134, 303, 304, + 417, 419, 422, 423, 1052, 425, 419, 427, 428, 664, + 419, 431, 432, 1237, 1238, 221, 222, 419, 130, 131, + 132, 133, 134, 135, 196, 223, 465, 466, 708, 709, + 139, 140, 232, 465, 466, 454, 461, 1282, 1283, 384, + 384, 930, 1364, 202, 463, 464, 203, 210, 204, 1427, + 211, 205, 212, 464, 781, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 1053, + 921, 922, 923, 403, 664, 1148, 465, 466, 1164, 44, + 45, 46, 47, 664, 516, 518, 419, 52, 465, 466, + 55, 200, 1429, 465, 466, 525, 526, 527, 201, 529, + 465, 466, 532, 533, 1431, 250, 534, 1114, 251, 1439, + 1114, 465, 466, 1114, 465, 466, 1441, 400, 401, 402, + 146, 147, 660, 852, 403, 658, 310, 1442, 311, 549, + 1520, 551, 552, 553, 554, 555, 556, 557, 558, 559, + 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, + 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, + 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, + 590, 591, 592, 593, 594, 1479, 312, 1482, 313, 1485, + 465, 466, 828, 465, 466, 827, 853, 608, 465, 466, + 465, 466, 215, 216, 1114, 419, 1523, 511, 419, 1526, + 512, 220, 1394, 513, 1534, 514, 1536, 1395, 632, 228, + 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, + 643, 644, 645, 646, 647, 240, 888, 1035, 412, 831, + 465, 466, 832, 1173, 241, 1114, 1175, 1177, 1114, 516, + 650, 1114, 651, 890, 1114, 668, 1596, 160, 252, 1165, + 673, 781, 664, 248, 249, 678, 679, 920, 920, 920, + 920, 684, 685, 314, 253, 315, 690, 316, 933, 317, + 254, 695, 696, 697, 1114, 939, 1114, 273, 1114, 1566, + 521, 954, 274, 318, 1002, 319, 320, 322, 321, 323, + 275, 713, 714, 715, 371, 372, 716, 324, 276, 325, + 720, 721, 722, 723, 724, 326, 282, 327, 729, 283, + 284, 731, 732, 285, 286, 419, 419, 419, 287, 297, + 739, 740, 741, 502, 746, 503, 360, 504, 749, 361, + 159, 1607, 160, 1610, 362, 1613, 419, 328, 330, 329, + 331, 1616, 757, 759, 332, 363, 333, 412, 943, 409, + 104, 1348, 1349, 334, 336, 335, 337, 338, 944, 339, + 366, 746, 1003, 364, 365, 776, 945, 946, 947, 779, + 367, 368, 948, 949, 950, 951, 369, 340, 1646, 341, + 1648, 342, 1650, 343, 130, 131, 132, 133, 134, 135, + 344, 346, 345, 347, 412, 370, 139, 140, 382, 387, + 412, 412, 1182, 404, 412, 412, 412, 405, 348, 1012, + 349, 412, 350, 407, 351, 1015, 1016, 424, 435, 1017, + 1018, 1019, 104, 352, 429, 353, 1021, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 522, 401, + 402, 541, 854, 434, 354, 403, 355, 455, 356, 412, + 357, 358, 440, 359, 1056, 441, 130, 131, 132, 133, + 134, 135, 445, 664, 1051, 670, 450, 458, 139, 140, + 664, 878, 674, 664, 419, 680, 419, 886, 491, 664, + 1002, 756, 451, 452, 759, 892, 146, 147, 398, 399, + 400, 401, 402, 459, 437, 438, 439, 403, 906, 442, + 443, 444, 470, 1097, 1098, 1099, 774, 912, 775, 664, + 481, 846, 919, 919, 919, 919, 303, 304, 471, 664, + 419, 849, 664, 1001, 968, 472, 482, 934, 935, 664, + 1178, 969, 1474, 938, 483, 484, 485, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 962, 497, 498, 964, + 403, 493, 664, 1297, 970, 487, 494, 943, 146, 147, + 664, 1057, 983, 1058, 419, 495, 419, 944, 1063, 496, + 1064, 419, 419, 419, 419, 945, 946, 947, 664, 419, + 1089, 948, 949, 950, 951, 664, 990, 1132, 992, 993, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 664, 499, 1133, 433, 403, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 664, 1204, 1135, 508, 403, 1004, 1005, 664, 453, 1136, + 664, 456, 1137, 664, 664, 1138, 1140, 500, 7, 8, + 501, 1006, 1007, 1008, 1009, 1010, 1011, 1184, 664, 1185, + 1186, 419, 505, 419, 1113, 486, 509, 664, 1286, 1187, + 664, 510, 1188, 1020, 664, 664, 1189, 1223, 1023, 1306, + 523, 1307, 1029, 1338, 664, 1339, 1373, 1400, 1259, 1401, + 524, 528, 419, 419, 419, 419, 649, 1042, 627, 20, + 21, 628, 23, 24, 629, 26, 630, 28, 1306, 29, + 1440, 1306, 531, 1470, 34, 35, 530, 37, 38, 39, + 542, 543, 1487, 42, 1488, 664, 1306, 1499, 1505, 1507, + 546, 1508, 1510, 1306, 1511, 1515, 664, 664, 1516, 1535, + 419, 1400, 664, 1572, 1595, 412, 664, 1306, 1597, 1601, + 535, 1625, 1290, 1626, 536, 538, 63, 64, 65, 827, + 1287, 1628, 664, 1638, 1637, 1639, 1306, 1661, 1656, 1662, + 1452, 544, 547, 548, 550, 403, 412, 612, 1314, 623, + 625, 1317, 624, 677, 159, 681, 1490, 626, 1286, 682, + 683, 1311, 691, 686, 687, 692, 693, 694, 698, 700, + 701, 1128, 725, 727, 1131, 728, 702, 730, 737, 1605, + 738, 747, 748, 750, 1343, 1139, 751, 1350, 733, 1353, + 752, 1356, 753, 764, 384, 384, 767, 773, 777, 778, + 833, 834, 835, 836, 837, 1367, 841, 855, 1370, 1371, + 7, 8, 838, 839, 842, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 1384, + 843, 844, 845, 403, 856, 1183, 160, 879, 860, 891, + 884, 887, 889, 894, 895, 1191, 1192, 896, 898, 899, + 900, 901, 1567, 903, 904, 1201, 1203, 905, 909, 914, + 627, 20, 21, 628, 23, 24, 629, 26, 630, 28, + 916, 29, 943, 929, 936, 937, 34, 35, 963, 37, + 38, 39, 944, 977, 986, 42, 987, 988, 989, 996, + 945, 946, 947, 1239, 1240, 1241, 948, 949, 950, 951, + 998, 1022, 1024, 1251, 1025, 1253, 1030, 1031, 1034, 1033, + 1037, 1044, 1045, 1048, 1046, 1055, 1258, 1061, 63, 64, + 65, 420, 1067, 1050, 419, 1072, 420, 1068, 1073, 1075, + 420, 1076, 1079, 1081, 1080, 421, 1085, 420, 1082, 1086, + 426, 1083, 1087, 1090, 430, 1084, 1278, 1279, 1280, 1088, + 1100, 436, 1117, 1101, 1102, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 1260, + 1478, 1103, 1481, 403, 1484, 384, 1104, 1118, 1291, 1119, + 771, 1120, 1492, 1121, 1123, 1495, 1124, 1125, 1126, 1129, + 1130, 1303, 1144, 1127, 1149, 1150, 1309, 1152, 1154, 1153, + 1166, 1155, 1168, 1313, 517, 1167, 420, 1315, 1316, 1179, + 1180, 1197, 848, 1169, 1321, 1322, 1200, 1170, 1208, 1324, + 1172, 1212, 943, 1190, 1196, 1215, 1216, 1331, 1219, 1195, + 1220, 1221, 944, 1206, 943, 1207, 1226, 1341, 1272, 1342, + 945, 946, 947, 1213, 944, 1227, 948, 949, 950, 951, + 1214, 1359, 945, 946, 947, 1218, 1229, 1230, 948, 949, + 950, 951, 1231, 419, 1232, 1236, 1242, 419, 1243, 1250, + 1374, 1254, 1255, 1256, 1257, 1273, 1264, 943, 1265, 1570, + 1269, 1274, 913, 1277, 1383, 1275, 1276, 944, 1281, 1284, + 1285, 1579, 1582, 927, 1292, 945, 946, 947, 1293, 1295, + 1310, 948, 949, 950, 951, 1396, 1397, 1298, 1299, 1300, + 1301, 1318, 1319, 1403, 1320, 420, 943, 1323, 420, 1521, + 1325, 1361, 1326, 1327, 1328, 1329, 944, 412, 1332, 614, + 1337, 1524, 618, 1340, 945, 946, 947, 1351, 1354, 1357, + 948, 949, 950, 951, 1365, 1368, 412, 1424, 1372, 1375, + 1386, 1387, 1388, 1389, 1399, 1391, 1392, 1393, 1402, 517, + 1411, 1621, 1414, 1413, 1415, 1438, 1416, 516, 1417, 997, + 1418, 1422, 1434, 1643, 1527, 1436, 1445, 1419, 1446, 1423, + 1447, 1425, 1426, 419, 1443, 412, 1450, 412, 1428, 1430, + 1432, 1460, 1437, 1464, 1451, 1453, 1455, 1465, 1466, 1467, + 1652, 1459, 1655, 1664, 1468, 1469, 1471, 1486, 412, 1493, + 1500, 1501, 1517, 1592, 1502, 1513, 1529, 1533, 1538, 1530, + 1545, 419, 1546, 1668, 1564, 1549, 1550, 1552, 1477, 1555, + 1480, 1556, 1483, 1559, 1560, 420, 420, 420, 1563, 1569, + 1584, 1586, 419, 1588, 1590, 1598, 1496, 1608, 1611, 734, + 735, 736, 1599, 1614, 1617, 943, 420, 1503, 1504, 1619, + 1624, 1644, 1506, 760, 1623, 944, 1631, 1633, 1635, 1645, + 754, 1640, 1514, 945, 946, 947, 1518, 1647, 1649, 948, + 949, 950, 951, 1651, 1653, 1663, 1665, 1666, 1667, 1669, + 1059, 1060, 943, 1062, 1199, 1065, 1066, 661, 1539, 1069, + 1070, 1210, 944, 1309, 7, 8, 87, 95, 1294, 689, + 945, 946, 947, 0, 1547, 0, 948, 949, 950, 951, + 0, 1554, 0, 0, 1558, 0, 0, 1562, 0, 0, + 0, 1565, 0, 0, 0, 419, 0, 419, 0, 0, + 0, 0, 1574, 0, 0, 1576, 0, 1581, 0, 0, + 0, 0, 1630, 0, 627, 20, 21, 628, 23, 24, + 629, 26, 630, 28, 0, 29, 0, 0, 0, 0, + 34, 35, 0, 37, 38, 39, 0, 0, 1604, 42, + 0, 1141, 1142, 1143, 1606, 0, 0, 0, 0, 1632, + 0, 1151, 0, 0, 420, 0, 420, 419, 0, 0, + 0, 0, 0, 0, 760, 893, 0, 0, 883, 0, + 885, 0, 63, 64, 65, 0, 0, 0, 943, 0, + 0, 0, 0, 0, 0, 0, 1642, 0, 944, 0, + 0, 0, 0, 0, 0, 0, 945, 946, 947, 1032, + 420, 1194, 948, 949, 950, 951, 0, 0, 0, 0, + 0, 0, 0, 0, 928, 0, 1211, 0, 0, 0, + 0, 0, 1217, 0, 0, 0, 0, 0, 1222, 0, + 1224, 1225, 0, 0, 772, 1228, 0, 0, 0, 1071, + 1233, 1234, 1235, 0, 420, 0, 420, 0, 0, 0, + 0, 420, 420, 420, 420, 0, 0, 1252, 974, 420, + 975, 0, 0, 0, 0, 979, 980, 981, 982, 0, + 0, 0, 1263, 985, 0, 1634, 1267, 0, 0, 0, + 0, 0, 0, 102, 292, 0, 0, 0, 0, 105, + 106, 107, 0, 0, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 0, 0, 0, 1122, + 0, 0, 0, 0, 0, 136, 137, 138, 1288, 0, + 1289, 420, 0, 420, 141, 142, 143, 0, 0, 0, + 0, 0, 0, 0, 0, 1013, 0, 1014, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 420, 420, 420, 420, 403, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1038, 1039, 1040, 1041, + 0, 0, 0, 0, 1333, 1334, 1335, 1336, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 1174, 0, + 420, 0, 0, 0, 0, 0, 0, 0, 0, 1194, + 145, 0, 0, 0, 1074, 0, 0, 148, 149, 150, + 151, 0, 1376, 0, 0, 0, 0, 0, 0, 1385, + 0, 0, 0, 0, 152, 153, 0, 0, 0, 154, + 0, 0, 0, 0, 264, 0, 0, 0, 0, 158, + 0, 1398, 0, 0, 0, 0, 0, 0, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 1194, 102, 103, 104, 403, 0, 0, 105, + 106, 107, 0, 0, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 1435, 0, 0, 130, + 131, 132, 133, 134, 135, 136, 137, 138, 0, 0, + 0, 139, 140, 0, 141, 142, 143, 0, 0, 0, + 0, 0, 7, 8, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1194, 0, 0, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 0, 0, 0, 1194, 403, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1489, 627, 20, 21, 628, 23, 24, 629, 26, + 630, 28, 0, 29, 0, 0, 0, 0, 34, 35, + 0, 37, 38, 39, 144, 0, 0, 42, 0, 0, + 145, 146, 147, 0, 420, 0, 0, 148, 149, 150, + 151, 1181, 0, 0, 0, 0, 0, 0, 1268, 0, + 0, 0, 1528, 0, 152, 153, 0, 0, 0, 154, + 63, 64, 65, 0, 155, 0, 156, 0, 157, 158, + 0, 159, 0, 160, 102, 255, 0, 0, 0, 0, 105, 106, 107, 0, 0, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 255, 0, 0, - 0, 0, 927, 1430, 0, 0, 136, 137, 138, 0, - 0, 0, 0, 0, 141, 142, 0, 0, 0, 938, - 0, 0, 256, 0, 0, 257, 0, 0, 258, 939, - 259, 0, 0, 0, 0, 0, 0, 940, 941, 942, - 0, 1189, 260, 943, 944, 945, 946, 0, 0, 44, - 45, 46, 47, 48, 0, 0, 0, 52, 0, 0, - 55, 1189, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 1484, 0, - 400, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 0, 0, 0, 0, 400, - 144, 0, 0, 0, 0, 0, 0, 147, 148, 149, - 0, 417, 0, 0, 0, 1654, 0, 0, 0, 1169, - 0, 0, 0, 470, 1361, 0, 0, 0, 152, 1523, - 0, 0, 0, 472, 0, 0, 0, 0, 156, 0, - 222, 516, 0, 0, 0, 0, 102, 253, 0, 0, - 0, 0, 105, 106, 107, 0, 0, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 255, - 1176, 0, 0, 0, 0, 1189, 0, 1573, 136, 137, - 138, 0, 1443, 0, 0, 0, 141, 142, 0, 0, - 0, 938, 0, 0, 256, 0, 0, 257, 0, 0, - 258, 939, 259, 0, 0, 0, 0, 0, 0, 940, - 941, 942, 0, 0, 260, 943, 944, 945, 946, 0, - 1468, 44, 45, 46, 47, 48, 0, 0, 0, 52, - 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, - 417, 1489, 0, 0, 417, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1189, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 144, 0, 400, 0, 0, 0, 0, 147, - 148, 149, 0, 0, 0, 0, 0, 1655, 0, 0, - 0, 0, 0, 0, 0, 150, 415, 0, 0, 0, - 152, 1265, 0, 0, 0, 262, 0, 0, 0, 0, - 156, 0, 0, 516, 0, 0, 0, 386, 387, 388, + 123, 124, 125, 126, 127, 128, 129, 257, 1194, 0, + 1578, 0, 0, 0, 0, 0, 136, 137, 138, 0, + 0, 0, 931, 0, 0, 141, 142, 143, 0, 0, + 943, 0, 0, 258, 0, 0, 259, 0, 0, 260, + 944, 261, 0, 0, 0, 0, 0, 0, 945, 946, + 947, 0, 0, 262, 948, 949, 950, 951, 0, 0, + 44, 45, 46, 47, 48, 0, 0, 0, 52, 0, + 0, 55, 0, 420, 0, 0, 0, 420, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1194, 0, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 0, 0, 0, 1563, 400, 1566, 0, 0, 0, - 0, 0, 0, 0, 514, 0, 0, 0, 0, 0, - 0, 102, 253, 104, 0, 0, 0, 105, 106, 107, - 417, 0, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 255, 1385, 0, 130, 131, 132, - 133, 134, 135, 136, 137, 138, 1613, 0, 417, 139, - 140, 141, 142, 1072, 0, 0, 0, 0, 0, 256, - 0, 0, 257, 0, 0, 258, 0, 259, 0, 417, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 260, - 0, 0, 0, 0, 0, 0, 44, 45, 46, 47, - 48, 0, 0, 0, 52, 0, 0, 55, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 0, 0, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 144, 145, 146, - 400, 0, 0, 0, 147, 148, 149, 0, 0, 0, + 399, 400, 401, 402, 7, 8, 0, 0, 403, 0, + 0, 145, 0, 0, 0, 0, 0, 0, 148, 149, + 150, 151, 0, 0, 0, 0, 0, 1636, 0, 0, + 0, 7, 8, 0, 0, 152, 418, 0, 0, 0, + 154, 0, 0, 0, 0, 264, 0, 0, 0, 0, + 158, 0, 0, 519, 627, 20, 21, 628, 23, 24, + 629, 26, 630, 28, 0, 29, 0, 7, 8, 0, + 34, 35, 0, 37, 38, 39, 0, 517, 0, 42, + 0, 627, 20, 21, 628, 23, 24, 629, 26, 630, + 28, 0, 29, 420, 0, 0, 0, 34, 35, 0, + 37, 38, 39, 0, 0, 0, 42, 1448, 0, 0, + 0, 0, 63, 64, 65, 0, 0, 627, 20, 21, + 628, 23, 24, 629, 26, 630, 28, 0, 29, 0, + 0, 420, 0, 34, 35, 0, 37, 38, 39, 63, + 64, 65, 42, 0, 0, 1473, 0, 0, 0, 0, + 0, 0, 420, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 401, 402, 0, 1494, 0, 0, 403, + 0, 0, 0, 0, 932, 63, 64, 65, 0, 102, + 255, 104, 0, 0, 0, 105, 106, 107, 0, 0, + 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 257, 0, 0, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 0, 0, 0, 139, 140, 0, + 141, 142, 143, 0, 0, 0, 0, 955, 258, 7, + 8, 259, 0, 0, 260, 420, 261, 420, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 262, 1568, + 0, 1571, 0, 0, 0, 44, 45, 46, 47, 48, + 0, 0, 0, 52, 0, 0, 55, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 420, 627, + 20, 21, 628, 23, 24, 629, 26, 630, 28, 0, + 29, 0, 0, 0, 0, 34, 35, 420, 37, 38, + 39, 0, 0, 0, 42, 0, 145, 146, 147, 0, + 0, 1618, 0, 148, 149, 150, 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 150, 261, 417, 0, 417, 152, 0, 0, 0, 0, - 262, 0, 0, 0, 0, 156, 0, 1572, 0, 0, - 0, 0, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 0, 417, 0, 0, 0, 0, - 0, 0, 0, 0, 102, 253, 254, 0, 0, 0, - 105, 106, 107, 0, 417, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 255, 0, 0, - 0, 0, 0, 0, 0, 0, 136, 137, 138, 0, - 0, 0, 0, 0, 141, 142, 0, 0, 0, 0, - 0, 0, 256, 0, 0, 257, 0, 0, 258, 0, - 259, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 260, 0, 0, 0, 0, 0, 0, 44, - 45, 46, 47, 48, 0, 0, 0, 52, 0, 0, - 55, 102, 253, 1256, 0, 0, 0, 105, 106, 107, - 0, 0, 108, 109, 110, 111, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 255, 0, 0, 0, 0, 0, - 144, 0, 0, 136, 137, 138, 0, 147, 148, 149, - 0, 141, 142, 0, 0, 0, 0, 0, 0, 256, - 0, 0, 257, 150, 261, 258, 0, 259, 152, 0, - 0, 0, 0, 262, 0, 0, 0, 0, 156, 260, - 263, 0, 0, 0, 0, 0, 44, 45, 46, 47, - 48, 0, 0, 0, 52, 0, 0, 55, 102, 253, + 152, 263, 0, 0, 0, 154, 0, 63, 64, 65, + 264, 0, 102, 255, 256, 158, 0, 1577, 105, 106, + 107, 0, 0, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 257, 0, 0, 0, 0, + 0, 0, 0, 0, 136, 137, 138, 0, 0, 0, + 0, 0, 0, 141, 142, 143, 0, 0, 943, 991, + 0, 258, 0, 0, 259, 0, 0, 260, 944, 261, + 0, 0, 0, 0, 0, 0, 945, 946, 947, 0, + 0, 262, 948, 949, 950, 951, 0, 0, 44, 45, + 46, 47, 48, 0, 0, 0, 52, 0, 0, 55, + 102, 255, 1261, 0, 0, 0, 105, 106, 107, 0, + 0, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 257, 0, 0, 0, 0, 0, 145, + 0, 0, 136, 137, 138, 0, 148, 149, 150, 151, + 0, 141, 142, 143, 0, 1658, 0, 0, 0, 258, + 0, 0, 259, 152, 263, 260, 0, 261, 154, 0, + 0, 0, 0, 264, 0, 0, 0, 0, 158, 262, + 265, 0, 0, 0, 0, 0, 44, 45, 46, 47, + 48, 0, 0, 0, 52, 0, 0, 55, 102, 255, 0, 0, 0, 0, 105, 106, 107, 0, 0, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 255, 0, 0, 0, 0, 0, 144, 0, 0, - 136, 137, 138, 0, 147, 148, 149, 0, 141, 142, - 0, 0, 0, 0, 0, 0, 256, 0, 0, 257, - 150, 261, 258, 0, 259, 152, 0, 0, 0, 0, - 262, 0, 0, 0, 0, 156, 260, 1257, 0, 0, - 0, 0, 0, 44, 45, 46, 47, 48, 0, 0, - 0, 52, 0, 0, 55, 102, 253, 0, 0, 0, - 0, 105, 106, 107, 0, 0, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 255, 0, - 0, 0, 0, 0, 144, 0, 0, 136, 137, 138, - 0, 147, 148, 149, 0, 141, 142, 0, 0, 0, - 0, 0, 0, 256, 0, 0, 257, 150, 261, 258, - 0, 259, 152, 0, 0, 0, 0, 262, 0, 0, - 0, 0, 156, 260, 263, 0, 0, 0, 0, 0, - 44, 45, 46, 47, 48, 0, 0, 0, 52, 0, - 0, 55, 102, 253, 0, 0, 0, 0, 105, 106, - 107, 0, 0, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 255, 0, 0, 0, 0, - 0, 144, 0, 0, 136, 137, 138, 0, 147, 148, - 149, 0, 141, 142, 0, 0, 0, 0, 0, 0, - 256, 0, 0, 257, 150, 415, 258, 0, 259, 152, - 0, 0, 0, 0, 262, 0, 0, 0, 0, 156, - 260, 512, 0, 0, 0, 0, 0, 44, 45, 46, - 47, 48, 0, 0, 0, 52, 0, 0, 55, 102, - 253, 0, 0, 0, 0, 105, 106, 107, 0, 0, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 255, 0, 0, 0, 0, 0, 144, 0, - 0, 136, 137, 138, 0, 147, 148, 149, 0, 141, - 142, 0, 0, 0, 0, 0, 0, 256, 0, 0, - 257, 150, 415, 258, 0, 259, 152, 0, 0, 0, - 0, 262, 0, 0, 0, 0, 156, 260, 753, 0, + 129, 257, 0, 0, 0, 0, 0, 145, 0, 0, + 136, 137, 138, 0, 148, 149, 150, 151, 0, 141, + 142, 143, 0, 0, 0, 0, 0, 258, 0, 0, + 259, 152, 263, 260, 0, 261, 154, 0, 0, 0, + 0, 264, 0, 0, 0, 0, 158, 262, 1262, 0, 0, 0, 0, 0, 44, 45, 46, 47, 48, 0, - 0, 0, 52, 0, 0, 55, 102, 253, 0, 0, + 0, 0, 52, 0, 0, 55, 102, 255, 0, 0, 0, 0, 105, 106, 107, 0, 0, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 255, - 0, 0, 0, 0, 0, 144, 0, 0, 136, 137, - 138, 0, 147, 148, 149, 0, 141, 142, 0, 0, - 0, 0, 0, 0, 256, 7, 8, 257, 150, 261, - 258, 0, 259, 152, 0, 0, 0, 0, 262, 0, - 0, 0, 0, 156, 260, 1261, 0, 0, 0, 0, - 0, 44, 45, 46, 47, 48, 0, 0, 0, 52, - 0, 0, 55, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 622, 20, 21, 623, 23, 24, - 624, 26, 625, 28, 0, 29, 0, 0, 0, 0, - 34, 35, 0, 37, 38, 39, 1416, 0, 0, 42, - 0, 0, 144, 0, 0, 0, 0, 0, 0, 147, - 148, 149, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 470, 1361, 0, 0, 0, - 152, 0, 63, 64, 65, 472, 0, 102, 290, 104, - 156, 0, 222, 105, 106, 107, 0, 0, 108, 109, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 257, + 0, 0, 0, 0, 0, 145, 0, 0, 136, 137, + 138, 0, 148, 149, 150, 151, 0, 141, 142, 143, + 0, 0, 0, 0, 0, 258, 0, 0, 259, 152, + 263, 260, 0, 261, 154, 0, 0, 0, 0, 264, + 0, 0, 0, 0, 158, 262, 265, 0, 0, 0, + 0, 0, 44, 45, 46, 47, 48, 0, 0, 0, + 52, 0, 0, 55, 102, 255, 0, 0, 0, 0, + 105, 106, 107, 0, 0, 108, 109, 110, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 257, 0, 0, + 0, 0, 0, 145, 0, 0, 136, 137, 138, 0, + 148, 149, 150, 151, 0, 141, 142, 143, 0, 0, + 0, 0, 0, 258, 0, 0, 259, 152, 418, 260, + 0, 261, 154, 0, 0, 0, 0, 264, 0, 0, + 0, 0, 158, 262, 515, 0, 0, 0, 0, 0, + 44, 45, 46, 47, 48, 0, 0, 0, 52, 0, + 0, 55, 102, 255, 0, 0, 0, 0, 105, 106, + 107, 0, 0, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 257, 0, 0, 0, 0, + 0, 145, 0, 0, 136, 137, 138, 0, 148, 149, + 150, 151, 0, 141, 142, 143, 0, 0, 0, 0, + 0, 258, 0, 0, 259, 152, 418, 260, 0, 261, + 154, 0, 0, 0, 0, 264, 0, 0, 0, 0, + 158, 262, 758, 0, 0, 0, 0, 0, 44, 45, + 46, 47, 48, 0, 0, 0, 52, 0, 0, 55, + 102, 255, 0, 0, 0, 0, 105, 106, 107, 0, + 0, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 257, 0, 0, 0, 0, 0, 145, + 0, 0, 136, 137, 138, 0, 148, 149, 150, 151, + 0, 141, 142, 143, 0, 0, 0, 0, 0, 258, + 7, 8, 259, 152, 263, 260, 0, 261, 154, 0, + 0, 0, 0, 264, 0, 0, 0, 0, 158, 262, + 1266, 0, 0, 0, 0, 0, 44, 45, 46, 47, + 48, 0, 0, 0, 52, 0, 0, 55, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 627, 20, 21, 628, 23, 24, 629, 26, 630, 28, + 0, 29, 0, 0, 0, 0, 34, 35, 0, 37, + 38, 39, 1270, 0, 0, 42, 0, 145, 0, 0, + 0, 0, 0, 0, 148, 149, 150, 151, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 473, 1366, 0, 0, 0, 154, 0, 63, 64, + 65, 475, 0, 102, 292, 104, 158, 0, 224, 105, + 106, 107, 0, 0, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 0, 0, 0, 130, + 131, 132, 133, 134, 135, 136, 137, 138, 0, 0, + 0, 139, 140, 0, 141, 142, 143, 102, 292, 104, + 1091, 0, 0, 105, 106, 107, 0, 0, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 0, 0, 0, 130, 131, 132, 133, 134, 135, 136, - 137, 138, 0, 0, 0, 139, 140, 141, 142, 102, - 290, 104, 0, 950, 0, 105, 106, 107, 0, 0, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 0, 0, 0, 130, 131, 132, 133, 134, - 135, 136, 137, 138, 7, 8, 0, 139, 140, 141, - 142, 0, 0, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 0, 0, 0, - 0, 400, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 144, 145, 146, 0, 0, 0, 0, - 147, 148, 149, 622, 20, 21, 623, 23, 24, 624, - 26, 625, 28, 0, 29, 0, 150, 151, 0, 34, - 35, 152, 37, 38, 39, 0, 262, 0, 42, 0, - 0, 156, 0, 1197, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 144, 145, 146, 0, 0, - 0, 0, 147, 148, 149, 0, 0, 0, 0, 0, - 0, 63, 64, 65, 0, 0, 0, 0, 150, 151, - 0, 0, 0, 152, 0, 0, 0, 0, 262, 0, - 102, 290, 104, 156, 0, 1377, 105, 106, 107, 0, + 137, 138, 0, 0, 0, 139, 140, 0, 141, 142, + 143, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 401, 402, 0, 0, 0, 0, 403, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 145, 146, 147, 0, 0, 0, 0, 148, 149, 150, + 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 152, 153, 943, 0, 0, 154, + 0, 0, 0, 0, 264, 0, 944, 0, 0, 158, + 0, 1202, 0, 0, 945, 946, 947, 0, 0, 1390, + 948, 949, 950, 951, 145, 146, 147, 0, 0, 0, + 0, 148, 149, 150, 151, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 152, 153, + 0, 0, 0, 154, 0, 0, 0, 0, 264, 0, + 102, 292, 104, 158, 0, 1382, 105, 106, 107, 0, 0, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 0, 0, 0, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 0, 102, 290, 139, 140, - 141, 142, 105, 106, 107, 0, 0, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 136, 137, - 138, 0, 0, 0, 0, 0, 141, 142, 102, 290, - 0, 0, 0, 0, 105, 106, 107, 0, 0, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 0, 0, 0, 0, 0, 144, 145, 146, 0, - 136, 137, 138, 147, 148, 149, 0, 0, 141, 142, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 150, - 151, 0, 0, 0, 152, 0, 0, 0, 0, 262, - 0, 0, 0, 0, 156, 0, 1575, 0, 0, 0, - 0, 0, 144, 0, 0, 0, 0, 0, 0, 147, - 148, 149, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 150, 151, 0, 0, 0, - 152, 0, 0, 0, 0, 262, 0, 0, 739, 0, - 156, 0, 740, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 144, 0, 0, 0, 0, 0, - 0, 147, 148, 149, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 150, 151, 0, - 0, 0, 152, 0, 0, 0, 0, 262, 0, 102, - 290, 0, 156, 0, 371, 105, 106, 107, 0, 0, - 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 136, 137, 138, 0, 102, 253, 0, 0, 141, - 142, 105, 106, 107, 0, 0, 108, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 255, 0, - 0, 0, 0, 0, 0, 0, 0, 136, 137, 138, - 0, 0, 0, 0, 0, 141, 142, 0, 0, 0, - 0, 0, 0, 256, 0, 0, 257, 0, 0, 258, - 0, 259, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 260, 0, 0, 0, 0, 0, 0, - 44, 45, 46, 47, 48, 144, 0, 0, 52, 0, - 0, 55, 147, 148, 149, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 470, 471, - 0, 1444, 0, 152, 0, 0, 0, 0, 472, 0, - 0, 0, 0, 156, 0, 222, 0, 0, 0, 0, - 1532, 144, 0, 0, 0, 0, 0, 0, 147, 148, - 149, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 150, 415, 0, 0, 0, 152, - 102, 290, 104, 0, 262, 0, 105, 106, 107, 156, + 127, 128, 129, 1659, 0, 0, 130, 131, 132, 133, + 134, 135, 136, 137, 138, 0, 0, 0, 139, 140, + 0, 141, 142, 143, 102, 292, 0, 0, 0, 0, + 105, 106, 107, 0, 0, 108, 109, 110, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 136, 137, 138, 0, + 0, 0, 0, 0, 0, 141, 142, 143, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 943, 0, 0, 0, 0, 0, 0, 145, 146, 147, + 944, 0, 0, 0, 148, 149, 150, 151, 945, 946, + 947, 0, 0, 0, 948, 949, 950, 951, 0, 0, + 0, 152, 153, 0, 0, 0, 154, 0, 0, 0, + 0, 264, 0, 0, 0, 0, 158, 0, 1580, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 145, 0, 0, 0, 0, 0, 0, 148, 149, + 150, 151, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 152, 153, 0, 0, 0, + 154, 0, 0, 0, 0, 264, 0, 1660, 376, 0, + 158, 0, 377, 102, 292, 0, 0, 0, 0, 105, + 106, 107, 0, 0, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 136, 137, 138, 0, 0, + 0, 102, 292, 0, 141, 142, 143, 105, 106, 107, + 0, 0, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 136, 137, 138, 0, 0, 0, 0, + 102, 292, 141, 142, 143, 0, 105, 106, 107, 0, 0, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 0, 0, 0, 130, 131, 132, 133, - 134, 135, 136, 137, 138, 0, 102, 290, 139, 140, - 141, 142, 105, 106, 107, 0, 0, 108, 109, 110, - 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 127, 128, 129, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 136, 137, - 138, 0, 0, 0, 0, 0, 141, 142, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 386, 387, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 0, 0, 0, 0, 400, 144, 145, 146, 0, - 0, 0, 0, 147, 148, 149, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 150, - 151, 0, 0, 0, 152, 0, 0, 0, 0, 262, - 0, 0, 7, 8, 156, 0, 0, 0, 0, 0, - 0, 0, 144, 0, 0, 0, 0, 0, 0, 147, - 148, 149, 0, 0, 0, 0, 0, 1586, 7, 8, - 0, 0, 0, 0, 0, 150, 151, 0, 0, 0, - 152, 0, 0, 0, 0, 262, 0, 0, 0, 0, - 156, 622, 20, 21, 623, 23, 24, 624, 26, 625, - 28, 1652, 29, 0, 7, 8, 0, 34, 35, 0, - 37, 38, 39, 0, 0, 0, 42, 622, 20, 21, - 623, 23, 24, 624, 26, 625, 28, 0, 29, 518, - 7, 8, 0, 34, 35, 0, 37, 38, 39, 0, - 0, 0, 42, 0, 0, 0, 0, 0, 0, 63, - 64, 65, 0, 622, 20, 21, 623, 23, 24, 624, - 26, 625, 28, 0, 29, 1622, 518, 0, 0, 34, - 35, 0, 37, 38, 39, 63, 64, 65, 42, 622, - 20, 21, 623, 23, 24, 624, 26, 625, 28, 518, - 29, 0, 0, 0, 0, 34, 35, 0, 37, 38, - 39, 0, 0, 0, 42, 0, 0, 0, 763, 0, - 986, 63, 64, 65, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 860, 0, - 0, 0, 400, 0, 0, 0, 1086, 63, 64, 65, - 0, 0, 0, 0, 0, 0, 0, 386, 387, 388, - 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 979, 0, 0, 0, 400, 0, 0, 0, 0, - 0, 0, 1526, 0, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 519, 398, 399, 1141, 0, - 0, 0, 400, 0, 0, 0, 0, 0, 1588, 0, + 127, 128, 129, 0, 0, 0, 0, 0, 0, 0, + 145, 0, 136, 137, 138, 0, 0, 148, 149, 150, + 151, 141, 142, 143, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 152, 153, 0, 0, 0, 154, + 0, 0, 0, 0, 264, 0, 0, 744, 0, 158, + 0, 745, 0, 0, 0, 0, 0, 0, 145, 0, + 0, 0, 0, 0, 0, 148, 149, 150, 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 658, 398, 399, 0, 0, 0, 0, 400, - 0, 0, 0, 0, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 658, 398, 399, 0, 0, - 0, 0, 400, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 0, 0, 0, - 0, 400, 0, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 0, 0, 0, - 0, 400, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 386, 387, 388, 389, + 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, + 0, 0, 264, 0, 0, 0, 0, 158, 0, 374, + 0, 0, 0, 0, 0, 0, 0, 145, 0, 0, + 0, 0, 0, 0, 148, 149, 150, 151, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 473, 474, 0, 0, 0, 154, 0, 0, 0, + 0, 475, 0, 102, 255, 0, 158, 0, 224, 105, + 106, 107, 0, 0, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 257, 0, 0, 0, + 0, 0, 0, 0, 0, 136, 137, 138, 0, 0, + 0, 0, 0, 0, 141, 142, 143, 0, 7, 8, + 0, 0, 258, 0, 0, 259, 0, 0, 260, 0, + 261, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1421, 0, 262, 0, 0, 0, 0, 0, 0, 44, + 45, 46, 47, 48, 0, 0, 0, 52, 0, 0, + 55, 0, 0, 0, 0, 0, 0, 0, 627, 20, + 21, 628, 23, 24, 629, 26, 630, 28, 0, 29, + 0, 0, 0, 0, 34, 35, 0, 37, 38, 39, + 1449, 0, 0, 42, 0, 0, 0, 0, 0, 0, + 145, 0, 0, 0, 0, 0, 0, 148, 149, 150, + 151, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 152, 418, 63, 64, 65, 154, + 102, 292, 104, 0, 264, 0, 105, 106, 107, 158, + 0, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 7, 8, 1537, 130, 131, 132, 133, + 134, 135, 136, 137, 138, 0, 0, 0, 139, 140, + 0, 141, 142, 143, 0, 1591, 0, 0, 1531, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 0, 0, - 0, 0, 0, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 0, -4, 1, - 0, 400, -4, 0, 0, 0, 0, 0, 0, 0, - -4, -4, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 0, -4, -4, 1341, 0, 1342, - 0, 0, 0, 0, 0, 0, -4, -4, -4, 0, - 0, 0, 0, -4, -4, -4, 0, -4, -4, -4, - -4, -4, -4, -4, -4, -4, -4, -4, -4, 0, + 400, 401, 402, 0, 0, 1627, 521, 403, 0, 0, + 0, 0, 0, 627, 20, 21, 628, 23, 24, 629, + 26, 630, 28, 0, 29, 1657, 0, 0, 0, 34, + 35, 0, 37, 38, 39, 0, 0, 0, 42, 389, + 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, + 400, 401, 402, 521, 0, 0, 0, 403, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 145, 146, 147, + 0, 63, 64, 65, 148, 149, 150, 151, 768, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 152, 153, 0, 0, 0, 154, 866, 0, 0, + 0, 264, 0, 0, 0, 0, 158, 0, 0, 0, + 0, 0, 0, 0, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 984, 0, + 0, 0, 403, 1593, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 1146, 0, + 0, 0, 403, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 663, 401, 402, 0, 0, 0, + 0, 403, 0, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 401, 402, 0, 0, 0, + 0, 403, 0, 0, 0, 0, 0, 0, 0, 0, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 663, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 0, 0, 0, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 0, + 0, 0, 0, 403, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 1077, 0, + 0, 0, 403, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 0, + 0, 0, 0, 403, 0, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 0, + -4, 1, 0, 403, -4, 0, 0, 0, 0, 0, + 0, 0, -4, -4, 0, 0, 0, 0, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, -4, -4, 0, + 0, 0, 0, 0, 0, 0, 0, 0, -4, -4, + -4, 0, 0, -4, 0, 0, 0, -4, -4, 0, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, 0, -4, -4, -4, -4, -4, -4, -4, + -4, -4, -4, -4, -4, 0, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, - 0, 0, 0, -4, -4, -4, 0, 0, 0, 0, - 0, -4, 6, 0, 0, 0, -4, -4, -4, -4, - 7, 8, -4, 0, -4, 0, -4, -4, -4, -4, - -4, -4, -4, -4, -4, -4, -4, 0, 0, 0, - -4, -4, -4, -4, 0, 9, 10, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 11, 12, 13, 0, - 0, 0, 0, 14, 15, 16, 0, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 0, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 0, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 0, 0, 0, 58, 59, 60, 0, 0, 0, 0, - 0, 61, 0, 0, 0, 0, 62, 63, 64, 65, - 0, 0, 66, 0, 67, 0, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 0, 0, 0, - 79, 80, 81, 82, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 0, 0, 0, 1372, - 0, 1373, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 0, 0, 0, 1470, 0, 1471, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 0, 0, 0, 0, 0, 859, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 0, 0, 0, 0, 0, 903, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 0, 0, - 0, 0, 0, 953, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 0, 0, 0, 0, - 0, 973, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 0, 0, 0, 0, 0, 994, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 0, 0, 0, 0, 0, 1090, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 0, 0, 0, 0, 0, 1339, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 0, 0, - 0, 0, 0, 1358, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 0, 0, 0, 0, - 0, 1401, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 0, 0, 0, 0, 0, 1402, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 0, 0, 0, 0, 0, 1403, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 0, 0, 0, 0, 0, 1404, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 0, 0, - 0, 0, 0, 1405, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 0, 0, 0, 0, - 0, 1439, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 0, 0, 0, 0, 0, 1486, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 0, 0, 0, 0, 0, 1492, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 0, 0, 0, 0, 0, 1493, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 0, 0, - 0, 0, 0, 1514, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 0, 0, 0, 0, - 0, 1517, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 0, 0, 0, 0, 0, 1520, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 0, 0, 0, 0, 0, 1543, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 0, 0, 0, 0, 0, 1546, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 0, 0, - 0, 0, 0, 1580, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 0, 0, 0, 0, - 0, 1582, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 0, 0, 0, 0, 0, 1584, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 0, 0, 0, 0, 0, 1597, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 0, 0, 0, 0, 0, 1624, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 0, 0, - 0, 0, 694, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 0, 0, 0, - 0, 400, 0, 0, 0, 0, 0, 0, 0, 1415, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 750, 0, 0, 0, 0, 701, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 0, 0, - 0, 651, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 0, 0, 0, 701, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 0, 0, 0, 702, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 0, 0, 0, 760, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 0, 0, 0, 799, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 0, 0, - 0, 800, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 0, 0, 0, 815, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 0, 0, 0, 816, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 0, 0, 0, 817, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 0, 0, 0, 818, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 0, 0, - 0, 819, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 0, 0, 0, 820, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 0, 0, 0, 935, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 0, 0, 0, 936, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 0, 0, 0, 937, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 0, 0, - 0, 968, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 0, 0, 0, 1049, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 0, 0, 0, 1088, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 0, 0, 0, 1089, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 0, 0, 0, 1140, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 0, 0, - 0, 1299, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 0, 0, 0, 1300, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 0, 0, 0, 1307, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 0, 0, 0, 1451, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 0, 0, 0, 1452, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 0, 0, - 0, 1456, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 0, 0, 0, 1536, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 0, 0, 0, 1539, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 0, 0, 0, 1578, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 614, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 0, 0, 0, - 0, 400, 0, 0, 0, 765, 386, 387, 388, 389, - 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 775, 386, - 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 0, 0, 0, 0, 400, 0, 0, - 0, 778, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 780, 386, 387, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 0, - 0, 0, 0, 400, 0, 0, 0, 782, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 784, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 0, 0, 0, 0, 400, - 0, 0, 0, 786, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 788, 386, 387, 388, + -4, -4, -4, 0, 0, 0, -4, -4, -4, 0, + 0, 0, 0, 0, -4, 6, 0, 0, 0, -4, + -4, -4, -4, 7, 8, -4, 0, -4, 0, -4, + -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, + 0, 0, 0, -4, -4, -4, -4, 0, 9, 10, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, + 12, 13, 0, 0, 14, 0, 0, 0, 15, 16, + 0, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 0, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 0, 41, 42, 43, + 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 0, 0, 0, 58, 59, 60, + 0, 0, 0, 0, 0, 61, 0, 0, 0, 0, + 62, 63, 64, 65, 0, 0, 66, 0, 67, 0, + 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, + 78, 0, 0, 0, 79, 80, 81, 82, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 0, 0, 0, 1346, 0, 1347, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, + 0, 1377, 0, 1378, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 0, 0, 0, 1475, + 0, 1476, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 0, 0, 0, 0, 0, 865, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 0, 0, 0, 0, 0, 908, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 0, 0, 0, 0, 0, 958, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, + 0, 0, 0, 978, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 0, 0, 0, 0, + 0, 999, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 0, 0, 0, 0, 0, 1095, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 0, 0, 0, 0, 0, 1344, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 0, 0, 0, 0, 0, 1363, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, + 0, 0, 0, 1406, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 0, 0, 0, 0, + 0, 1407, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 0, 0, 0, 0, 0, 1408, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 0, 0, 0, 0, 0, 1409, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 0, 0, 0, 0, 0, 1410, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, + 0, 0, 0, 1444, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 0, 0, 0, 0, + 0, 1491, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 0, 0, 0, 0, 0, 1497, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 0, 0, 0, 0, 0, 1498, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 0, 0, 0, 0, 0, 1519, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, + 0, 0, 0, 1522, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 0, 0, 0, 0, + 0, 1525, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 0, 0, 0, 0, 0, 1548, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 0, 0, 0, 0, 0, 1551, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 0, 0, 0, 0, 0, 1585, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, + 0, 0, 0, 1587, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 0, 0, 0, 0, + 0, 1589, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 0, 0, 0, 0, 0, 1602, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 0, 0, 0, 0, 0, 1629, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 0, 0, 0, 0, 699, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 0, + 0, 0, 0, 403, 0, 0, 0, 0, 0, 0, + 0, 1420, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 755, 0, 0, 0, 0, 706, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 0, 0, 0, 656, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 0, 0, 0, 706, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 0, 0, 0, 707, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, + 0, 765, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 0, 0, 0, 804, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 0, 0, 0, 805, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 0, 0, 0, 820, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 0, 0, 0, 821, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, + 0, 822, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 0, 0, 0, 823, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 0, 0, 0, 824, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 0, 0, 0, 825, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 0, 0, 0, 940, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, + 0, 941, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 0, 0, 0, 942, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 0, 0, 0, 973, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 0, 0, 0, 1054, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 0, 0, 0, 1093, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, + 0, 1094, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 0, 0, 0, 1145, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 0, 0, 0, 1304, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 0, 0, 0, 1305, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 0, 0, 0, 1312, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, + 0, 1456, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 0, 0, 0, 1457, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 0, 0, 0, 1461, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 0, 0, 0, 1541, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 0, 0, 0, 1544, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, + 0, 1583, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 619, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 0, + 0, 0, 0, 403, 0, 0, 0, 770, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 780, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 401, 402, 0, 0, 0, 0, 403, + 0, 0, 0, 783, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 785, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 0, 0, 0, 0, 403, 0, 0, 0, 787, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 0, 0, 0, 0, 400, 0, 0, 0, 790, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 792, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 0, 0, 0, - 0, 400, 0, 0, 0, 794, 386, 387, 388, 389, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 789, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 401, 402, 0, 0, 0, + 0, 403, 0, 0, 0, 791, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 793, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 796, 386, - 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 0, 0, 0, 0, 400, 0, 0, - 0, 798, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 802, 386, 387, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 0, - 0, 0, 0, 400, 0, 0, 0, 804, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 806, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 0, 0, 0, 0, 400, - 0, 0, 0, 808, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 810, 386, 387, 388, + 400, 401, 402, 0, 0, 0, 0, 403, 0, 0, + 0, 795, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 797, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 0, + 0, 0, 0, 403, 0, 0, 0, 799, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 801, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 401, 402, 0, 0, 0, 0, 403, + 0, 0, 0, 803, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 807, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 0, 0, 0, 0, 403, 0, 0, 0, 809, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 0, 0, 0, 0, 400, 0, 0, 0, 812, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 814, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 0, 0, 0, - 0, 400, 0, 0, 0, 961, 386, 387, 388, 389, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 811, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 401, 402, 0, 0, 0, + 0, 403, 0, 0, 0, 813, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 815, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 962, 386, - 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 0, 0, 0, 0, 400, 0, 0, - 0, 966, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 967, 386, 387, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 0, - 0, 0, 0, 400, 0, 0, 0, 971, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 0, 0, - 995, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 0, 0, 0, 0, 400, - 0, 0, 0, 1044, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 0, 0, 1152, 386, 387, 388, + 400, 401, 402, 0, 0, 0, 0, 403, 0, 0, + 0, 817, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 819, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 0, + 0, 0, 0, 403, 0, 0, 0, 966, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 967, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 401, 402, 0, 0, 0, 0, 403, + 0, 0, 0, 971, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 972, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 0, 0, 0, 0, 403, 0, 0, 0, 976, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 0, 0, 0, 0, 400, 0, 0, 0, 1154, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 0, 0, 1156, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 0, 0, 0, - 0, 400, 0, 0, 0, 1158, 386, 387, 388, 389, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 0, 0, 1000, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 401, 402, 0, 0, 0, + 0, 403, 0, 0, 0, 1049, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 0, 0, 1157, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 0, 0, 1266, 386, - 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 0, 0, 0, 0, 400, 0, 0, - 0, 1291, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 0, 0, 1428, 386, 387, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 0, - 0, 0, 0, 400, 0, 610, 386, 387, 388, 389, + 400, 401, 402, 0, 0, 0, 0, 403, 0, 0, + 0, 1159, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 0, 0, 1161, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 0, + 0, 0, 0, 403, 0, 0, 0, 1163, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 0, 0, + 1271, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 401, 402, 0, 0, 0, 0, 403, + 0, 0, 0, 1296, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 0, 0, 1433, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 0, 0, 0, 0, 403, 0, 615, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 662, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 657, 386, 387, 388, + 400, 401, 402, 0, 0, 0, 0, 403, 0, 666, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 0, 0, 0, 0, 400, 0, 661, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 662, 386, - 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 0, 0, 0, 0, 400, 0, 664, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 666, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 0, 0, 0, 0, 400, - 0, 667, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 670, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 0, 0, 0, - 0, 400, 0, 671, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 750, 386, 387, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 0, - 0, 0, 0, 400, 0, 756, 386, 387, 388, 389, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 667, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 401, 402, 0, 0, 0, 0, 403, + 0, 669, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 671, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 401, 402, 0, 0, 0, + 0, 403, 0, 672, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 675, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 0, + 0, 0, 0, 403, 0, 676, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 755, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 0, 0, 0, 0, 403, 0, 761, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 762, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 757, 386, 387, 388, + 400, 401, 402, 0, 0, 0, 0, 403, 0, 763, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 0, 0, 0, 0, 400, 0, 758, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 764, 386, - 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 0, 0, 0, 0, 400, 0, 777, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 779, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 0, 0, 0, 0, 400, - 0, 781, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 783, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 0, 0, 0, - 0, 400, 0, 785, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 787, 386, 387, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 0, - 0, 0, 0, 400, 0, 789, 386, 387, 388, 389, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 769, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 401, 402, 0, 0, 0, 0, 403, + 0, 782, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 784, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 401, 402, 0, 0, 0, + 0, 403, 0, 786, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 788, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 0, + 0, 0, 0, 403, 0, 790, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 792, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 0, 0, 0, 0, 403, 0, 794, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 796, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 791, 386, 387, 388, + 400, 401, 402, 0, 0, 0, 0, 403, 0, 798, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 0, 0, 0, 0, 400, 0, 793, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 795, 386, - 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 0, 0, 0, 0, 400, 0, 797, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 801, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 0, 0, 0, 0, 400, - 0, 803, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 805, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 0, 0, 0, - 0, 400, 0, 807, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 809, 386, 387, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 0, - 0, 0, 0, 400, 0, 811, 386, 387, 388, 389, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 800, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 401, 402, 0, 0, 0, 0, 403, + 0, 802, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 806, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 401, 402, 0, 0, 0, + 0, 403, 0, 808, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 810, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 0, + 0, 0, 0, 403, 0, 812, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 814, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 0, 0, 0, 0, 403, 0, 816, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 818, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 813, 386, 387, 388, + 400, 401, 402, 0, 0, 0, 0, 403, 0, 897, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 0, 0, 0, 0, 400, 0, 892, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 897, 386, - 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 0, 0, 0, 0, 400, 0, 902, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 905, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 0, 0, 0, 0, 400, - 0, 906, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 912, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 0, 0, 0, - 0, 400, 0, 919, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 920, 386, 387, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 0, - 0, 0, 0, 400, 0, 921, 386, 387, 388, 389, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 902, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 401, 402, 0, 0, 0, 0, 403, + 0, 907, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 910, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 401, 402, 0, 0, 0, + 0, 403, 0, 911, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 917, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 0, + 0, 0, 0, 403, 0, 924, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 925, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 0, 0, 0, 0, 403, 0, 926, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 957, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 952, 386, 387, 388, + 400, 401, 402, 0, 0, 0, 0, 403, 0, 959, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 0, 0, 0, 0, 400, 0, 954, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 955, 386, - 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 0, 0, 0, 0, 400, 0, 956, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 960, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 0, 0, 0, 0, 400, - 0, 1151, 386, 387, 388, 389, 390, 391, 392, 393, - 394, 395, 396, 397, 398, 399, 0, 0, 0, 0, - 400, 0, 1153, 386, 387, 388, 389, 390, 391, 392, - 393, 394, 395, 396, 397, 398, 399, 0, 0, 0, - 0, 400, 0, 1155, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 0, 0, - 0, 0, 400, 0, 1157, 386, 387, 388, 389, 390, - 391, 392, 393, 394, 395, 396, 397, 398, 399, 0, - 0, 0, 0, 400, 0, 1166, 386, 387, 388, 389, + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 960, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 401, 402, 0, 0, 0, 0, 403, + 0, 961, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 965, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 401, 402, 0, 0, 0, + 0, 403, 0, 1156, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 0, 0, + 0, 0, 403, 0, 1158, 389, 390, 391, 392, 393, + 394, 395, 396, 397, 398, 399, 400, 401, 402, 0, + 0, 0, 0, 403, 0, 1160, 389, 390, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, + 0, 0, 0, 0, 403, 0, 1162, 389, 390, 391, + 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, + 402, 0, 0, 0, 0, 403, 0, 1171, 389, 390, + 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, + 401, 402, 0, 0, 0, 0, 403, 0, 1345, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, - 0, 0, 0, 0, 400, 0, 1340, 386, 387, 388, + 400, 401, 402, 0, 0, 0, 0, 403, 0, 1362, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 0, 0, 0, 0, 400, 0, 1357, 386, 387, - 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, - 398, 399, 0, 0, 0, 0, 400, 0, 1376, 386, - 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, - 397, 398, 399, 0, 0, 0, 0, 400, 0, 1535, - 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, - 396, 397, 398, 399, 0, 0, 0, 0, 400, 0, - 1595, 386, 387, 388, 389, 390, 391, 392, 393, 394, - 395, 396, 397, 398, 399, 0, 0, 0, 0, 400 + 399, 400, 401, 402, 0, 0, 0, 0, 403, 0, + 1381, 389, 390, 391, 392, 393, 394, 395, 396, 397, + 398, 399, 400, 401, 402, 0, 0, 0, 0, 403, + 0, 1540, 389, 390, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 400, 401, 402, 0, 0, 0, 0, + 403, 0, 1600, 389, 390, 391, 392, 393, 394, 395, + 396, 397, 398, 399, 400, 401, 402, 0, 0, 0, + 0, 403 }; static const yytype_int16 yycheck[] = { - 3, 6, 353, 6, 3, 7, 230, 464, 465, 4, - 4, 67, 363, 101, 4, 215, 1259, 6, 242, 4, - 4, 4, 4, 4, 373, 5, 5, 376, 951, 5, - 4, 6, 4, 6, 6, 6, 45, 46, 6, 48, - 6, 4, 4, 124, 173, 6, 4, 4, 5, 178, - 6, 4, 6, 6, 162, 163, 137, 138, 6, 6, - 162, 163, 6, 287, 174, 289, 176, 0, 169, 170, - 178, 181, 180, 162, 163, 176, 178, 13, 180, 1322, - 7, 172, 39, 40, 41, 42, 43, 44, 179, 178, - 172, 180, 162, 163, 51, 52, 172, 179, 947, 3, - 4, 5, 172, 179, 7, 9, 10, 11, 61, 179, + 3, 232, 6, 6, 355, 3, 467, 468, 7, 0, + 952, 4, 4, 244, 365, 4, 217, 376, 6, 4, + 379, 4, 4, 1264, 4, 4, 4, 4, 4, 13, + 5, 5, 5, 174, 6, 101, 6, 6, 45, 46, + 181, 48, 6, 4, 6, 6, 4, 7, 4, 6, + 164, 165, 174, 6, 164, 165, 6, 6, 289, 181, + 291, 6, 164, 165, 164, 165, 180, 6, 182, 175, + 180, 68, 182, 70, 4, 181, 6, 62, 180, 174, + 182, 66, 182, 164, 165, 7, 1327, 174, 125, 164, + 165, 175, 7, 78, 181, 174, 180, 3, 4, 174, + 181, 138, 139, 9, 10, 11, 181, 7, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 8, 62, 956, 68, 115, 116, 117, 118, 45, + 46, 47, 171, 172, 113, 134, 125, 126, 54, 55, + 56, 113, 151, 152, 153, 154, 62, 6, 1399, 65, + 113, 159, 68, 113, 70, 168, 169, 8, 174, 125, + 126, 176, 171, 172, 1116, 181, 82, 6, 1419, 178, + 168, 169, 174, 89, 90, 91, 92, 93, 181, 181, + 6, 97, 181, 176, 100, 178, 174, 6, 65, 181, + 183, 68, 182, 181, 181, 181, 181, 181, 181, 181, + 174, 181, 161, 220, 221, 176, 174, 181, 178, 164, + 165, 228, 161, 164, 165, 232, 6, 458, 459, 151, + 152, 153, 154, 176, 140, 6, 151, 152, 153, 154, + 181, 147, 148, 149, 150, 164, 165, 478, 174, 171, + 172, 151, 152, 153, 154, 68, 615, 6, 164, 165, + 619, 175, 181, 169, 7, 175, 180, 176, 174, 178, + 180, 171, 172, 179, 183, 181, 182, 174, 155, 156, + 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, + 167, 168, 164, 165, 298, 174, 173, 171, 172, 530, + 171, 172, 1543, 62, 174, 182, 65, 181, 180, 68, + 181, 70, 174, 379, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, 164, 165, + 164, 165, 173, 82, 164, 165, 62, 174, 8, 65, + 175, 182, 68, 62, 180, 180, 65, 164, 165, 68, + 180, 354, 355, 356, 357, 358, 359, 360, 361, 362, + 363, 364, 365, 180, 367, 368, 369, 370, 356, 357, + 358, 359, 360, 361, 362, 363, 364, 72, 175, 367, + 368, 369, 1623, 180, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, 177, 164, + 165, 180, 173, 152, 153, 154, 155, 156, 151, 152, + 153, 154, 68, 4, 5, 180, 171, 172, 167, 6, + 171, 172, 171, 180, 4, 182, 181, 178, 171, 172, + 179, 180, 181, 182, 175, 184, 185, 186, 187, 180, + 189, 190, 191, 6, 7, 164, 165, 196, 39, 40, + 41, 42, 43, 44, 181, 174, 164, 165, 465, 466, + 51, 52, 181, 164, 165, 214, 473, 6, 7, 467, + 468, 702, 180, 65, 223, 224, 68, 65, 70, 180, + 68, 70, 70, 232, 550, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, 175, + 692, 693, 694, 173, 180, 175, 164, 165, 175, 89, + 90, 91, 92, 180, 263, 264, 265, 97, 164, 165, + 100, 68, 180, 164, 165, 274, 275, 276, 68, 278, + 164, 165, 281, 282, 180, 65, 285, 1479, 68, 180, + 1482, 164, 165, 1485, 164, 165, 180, 166, 167, 168, + 141, 142, 177, 619, 173, 180, 174, 180, 176, 308, + 180, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, + 349, 350, 351, 352, 353, 1428, 174, 1430, 176, 1432, + 164, 165, 177, 164, 165, 180, 620, 366, 164, 165, + 164, 165, 174, 65, 1566, 374, 180, 62, 377, 180, + 65, 181, 175, 68, 180, 70, 180, 180, 387, 181, + 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, + 399, 400, 401, 402, 403, 68, 659, 858, 661, 177, + 164, 165, 180, 1022, 65, 1607, 1025, 1026, 1610, 418, + 176, 1613, 178, 661, 1616, 424, 180, 183, 4, 177, + 429, 747, 180, 65, 68, 434, 435, 691, 692, 693, + 694, 440, 441, 174, 4, 176, 445, 174, 705, 176, + 4, 450, 451, 452, 1646, 712, 1648, 4, 1650, 1532, + 8, 718, 174, 174, 780, 176, 174, 174, 176, 176, + 174, 470, 471, 472, 473, 474, 475, 174, 174, 176, + 479, 480, 481, 482, 483, 174, 174, 176, 487, 6, + 6, 490, 491, 176, 4, 494, 495, 496, 4, 183, + 499, 500, 501, 174, 503, 176, 174, 178, 507, 174, + 181, 1584, 183, 1586, 174, 1588, 515, 174, 174, 176, + 176, 1594, 521, 522, 174, 174, 176, 780, 85, 4, + 5, 1242, 1243, 174, 174, 176, 176, 174, 95, 176, + 7, 540, 780, 174, 174, 544, 103, 104, 105, 548, + 174, 174, 109, 110, 111, 112, 174, 174, 1631, 176, + 1633, 174, 1635, 176, 39, 40, 41, 42, 43, 44, + 174, 174, 176, 176, 827, 174, 51, 52, 4, 181, + 833, 834, 1033, 181, 837, 838, 839, 6, 174, 827, + 176, 844, 174, 6, 176, 833, 834, 174, 181, 837, + 838, 839, 5, 174, 174, 176, 844, 155, 156, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, + 168, 6, 621, 174, 174, 173, 176, 4, 174, 882, + 176, 174, 174, 176, 891, 174, 39, 40, 41, 42, + 43, 44, 174, 180, 882, 182, 174, 181, 51, 52, + 180, 650, 182, 180, 653, 182, 655, 656, 176, 180, + 976, 182, 174, 174, 663, 664, 141, 142, 164, 165, + 166, 167, 168, 181, 197, 198, 199, 173, 677, 202, + 203, 204, 181, 940, 941, 942, 180, 686, 182, 180, + 174, 182, 691, 692, 693, 694, 171, 172, 181, 180, + 699, 182, 180, 178, 182, 181, 174, 706, 707, 180, + 1026, 182, 1423, 712, 174, 238, 239, 160, 161, 162, + 163, 164, 165, 166, 167, 168, 725, 250, 251, 728, + 173, 6, 180, 1184, 182, 174, 181, 85, 141, 142, + 180, 68, 182, 70, 743, 181, 745, 95, 68, 181, + 70, 750, 751, 752, 753, 103, 104, 105, 180, 758, + 182, 109, 110, 111, 112, 180, 765, 182, 767, 768, + 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, + 165, 166, 167, 168, 180, 176, 182, 192, 173, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + 180, 1055, 182, 5, 173, 804, 805, 180, 213, 182, + 180, 216, 182, 180, 180, 182, 182, 176, 12, 13, + 176, 820, 821, 822, 823, 824, 825, 180, 180, 182, + 182, 830, 176, 832, 182, 240, 5, 180, 1154, 182, + 180, 5, 182, 842, 180, 180, 182, 182, 847, 180, + 6, 182, 851, 4, 180, 6, 182, 180, 1115, 182, + 6, 178, 861, 862, 863, 864, 6, 866, 62, 63, + 64, 65, 66, 67, 68, 69, 70, 71, 180, 73, + 182, 180, 128, 182, 78, 79, 181, 81, 82, 83, + 295, 296, 180, 87, 182, 180, 180, 182, 182, 180, + 305, 182, 180, 180, 182, 182, 180, 180, 182, 182, + 909, 180, 180, 182, 182, 1168, 180, 180, 182, 182, + 6, 180, 1176, 182, 6, 6, 120, 121, 122, 180, + 1168, 182, 180, 180, 182, 182, 180, 180, 182, 182, + 1391, 181, 6, 176, 4, 173, 1199, 4, 1202, 178, + 176, 1208, 7, 7, 181, 6, 1437, 182, 1274, 6, + 6, 1199, 174, 7, 7, 174, 174, 174, 7, 175, + 6, 970, 7, 6, 973, 7, 181, 6, 6, 1580, + 6, 4, 4, 181, 1238, 984, 181, 1244, 182, 1246, + 181, 1248, 181, 125, 1242, 1243, 181, 175, 6, 6, + 180, 180, 175, 175, 180, 1262, 6, 6, 1265, 1266, + 12, 13, 180, 180, 180, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, 1283, + 175, 180, 175, 173, 4, 1034, 183, 4, 177, 7, + 6, 6, 6, 128, 7, 1044, 1045, 7, 7, 128, + 7, 7, 1533, 128, 7, 1054, 1055, 7, 181, 4, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 6, 73, 85, 178, 182, 182, 78, 79, 6, 81, + 82, 83, 95, 177, 7, 87, 7, 7, 178, 181, + 103, 104, 105, 1092, 1093, 1094, 109, 110, 111, 112, + 6, 175, 6, 1102, 177, 1104, 6, 6, 176, 7, + 6, 174, 174, 6, 181, 7, 1115, 7, 120, 121, + 122, 180, 7, 161, 1123, 7, 185, 70, 7, 7, + 189, 7, 6, 175, 7, 180, 7, 196, 175, 7, + 185, 175, 7, 4, 189, 175, 1145, 1146, 1147, 6, + 4, 196, 7, 6, 181, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, 182, + 1427, 6, 1429, 173, 1431, 1423, 174, 6, 1177, 7, + 182, 7, 1439, 7, 181, 1442, 6, 6, 6, 6, + 6, 1190, 4, 68, 4, 4, 1195, 182, 4, 6, + 175, 6, 180, 1202, 263, 177, 265, 1206, 1207, 178, + 7, 6, 617, 175, 1213, 1214, 6, 175, 78, 1218, + 175, 6, 85, 174, 178, 6, 6, 1226, 6, 181, + 6, 5, 95, 181, 85, 181, 4, 1236, 175, 1238, + 103, 104, 105, 181, 95, 6, 109, 110, 111, 112, + 181, 1250, 103, 104, 105, 181, 7, 7, 109, 110, + 111, 112, 7, 1262, 7, 7, 181, 1266, 181, 176, + 1269, 6, 6, 6, 6, 177, 181, 85, 181, 1536, + 181, 4, 687, 124, 1283, 6, 6, 95, 6, 180, + 6, 1545, 1546, 698, 6, 103, 104, 105, 4, 6, + 4, 109, 110, 111, 112, 1304, 1305, 6, 6, 6, + 6, 6, 6, 1312, 6, 374, 85, 6, 377, 182, + 5, 180, 6, 181, 6, 128, 95, 1580, 6, 374, + 6, 182, 377, 6, 103, 104, 105, 6, 6, 6, + 109, 110, 111, 112, 6, 6, 1599, 1346, 6, 6, + 175, 6, 6, 6, 181, 7, 6, 178, 6, 418, + 5, 1599, 6, 66, 6, 1364, 6, 1366, 6, 774, + 6, 6, 6, 1627, 182, 7, 123, 181, 1377, 181, + 1379, 182, 182, 1382, 6, 1638, 6, 1640, 181, 181, + 181, 6, 181, 6, 182, 126, 1395, 6, 6, 6, + 1638, 1400, 1640, 1657, 6, 6, 181, 6, 1661, 6, + 6, 6, 182, 182, 181, 181, 6, 181, 6, 85, + 4, 1420, 4, 1661, 182, 6, 6, 6, 1427, 6, + 1429, 6, 1431, 6, 6, 494, 495, 496, 6, 6, + 181, 181, 1441, 181, 6, 6, 1445, 6, 6, 494, + 495, 496, 181, 6, 6, 85, 515, 1456, 1457, 6, + 6, 6, 1461, 522, 181, 95, 181, 181, 181, 6, + 515, 181, 1471, 103, 104, 105, 1475, 6, 6, 109, + 110, 111, 112, 6, 6, 6, 6, 6, 6, 6, + 895, 896, 85, 898, 1052, 900, 901, 416, 1502, 904, + 905, 1060, 95, 1502, 12, 13, 3, 3, 1180, 444, + 103, 104, 105, -1, 1513, -1, 109, 110, 111, 112, + -1, 1520, -1, -1, 1523, -1, -1, 1526, -1, -1, + -1, 1530, -1, -1, -1, 1534, -1, 1536, -1, -1, + -1, -1, 1541, -1, -1, 1544, -1, 1546, -1, -1, + -1, -1, 182, -1, 62, 63, 64, 65, 66, 67, + 68, 69, 70, 71, -1, 73, -1, -1, -1, -1, + 78, 79, -1, 81, 82, 83, -1, -1, 1577, 87, + -1, 986, 987, 988, 1583, -1, -1, -1, -1, 182, + -1, 996, -1, -1, 653, -1, 655, 1596, -1, -1, + -1, -1, -1, -1, 663, 664, -1, -1, 653, -1, + 655, -1, 120, 121, 122, -1, -1, -1, 85, -1, + -1, -1, -1, -1, -1, -1, 1625, -1, 95, -1, + -1, -1, -1, -1, -1, -1, 103, 104, 105, 6, + 699, 1046, 109, 110, 111, 112, -1, -1, -1, -1, + -1, -1, -1, -1, 699, -1, 1061, -1, -1, -1, + -1, -1, 1067, -1, -1, -1, -1, -1, 1073, -1, + 1075, 1076, -1, -1, 182, 1080, -1, -1, -1, 6, + 1085, 1086, 1087, -1, 743, -1, 745, -1, -1, -1, + -1, 750, 751, 752, 753, -1, -1, 1102, 743, 758, + 745, -1, -1, -1, -1, 750, 751, 752, 753, -1, + -1, -1, 1117, 758, -1, 182, 1121, -1, -1, -1, + -1, -1, -1, 3, 4, -1, -1, -1, -1, 9, + 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, -1, -1, -1, 6, + -1, -1, -1, -1, -1, 45, 46, 47, 1173, -1, + 1175, 830, -1, 832, 54, 55, 56, -1, -1, -1, + -1, -1, -1, -1, -1, 830, -1, 832, 155, 156, + 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, + 167, 168, 861, 862, 863, 864, 173, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 861, 862, 863, 864, + -1, -1, -1, -1, 1229, 1230, 1231, 1232, 155, 156, + 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, + 167, 168, -1, -1, -1, -1, 173, -1, 6, -1, + 909, -1, -1, -1, -1, -1, -1, -1, -1, 1264, + 140, -1, -1, -1, 909, -1, -1, 147, 148, 149, + 150, -1, 1277, -1, -1, -1, -1, -1, -1, 1284, + -1, -1, -1, -1, 164, 165, -1, -1, -1, 169, + -1, -1, -1, -1, 174, -1, -1, -1, -1, 179, + -1, 1306, -1, -1, -1, -1, -1, -1, 155, 156, + 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, + 167, 168, 1327, 3, 4, 5, 173, -1, -1, 9, + 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, 1361, -1, -1, 39, + 40, 41, 42, 43, 44, 45, 46, 47, -1, -1, + -1, 51, 52, -1, 54, 55, 56, -1, -1, -1, + -1, -1, 12, 13, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1399, -1, -1, 155, 156, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, + 168, -1, -1, -1, 1419, 173, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1436, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, -1, 73, -1, -1, -1, -1, 78, 79, + -1, 81, 82, 83, 134, -1, -1, 87, -1, -1, + 140, 141, 142, -1, 1123, -1, -1, 147, 148, 149, + 150, 6, -1, -1, -1, -1, -1, -1, 1123, -1, + -1, -1, 1487, -1, 164, 165, -1, -1, -1, 169, + 120, 121, 122, -1, 174, -1, 176, -1, 178, 179, + -1, 181, -1, 183, 3, 4, -1, -1, -1, -1, + 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 1543, -1, + 1545, -1, -1, -1, -1, -1, 45, 46, 47, -1, + -1, -1, 182, -1, -1, 54, 55, 56, -1, -1, + 85, -1, -1, 62, -1, -1, 65, -1, -1, 68, + 95, 70, -1, -1, -1, -1, -1, -1, 103, 104, + 105, -1, -1, 82, 109, 110, 111, 112, -1, -1, + 89, 90, 91, 92, 93, -1, -1, -1, 97, -1, + -1, 100, -1, 1262, -1, -1, -1, 1266, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1623, -1, + 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, + 165, 166, 167, 168, 12, 13, -1, -1, 173, -1, + -1, 140, -1, -1, -1, -1, -1, -1, 147, 148, + 149, 150, -1, -1, -1, -1, -1, 182, -1, -1, + -1, 12, 13, -1, -1, 164, 165, -1, -1, -1, + 169, -1, -1, -1, -1, 174, -1, -1, -1, -1, + 179, -1, -1, 182, 62, 63, 64, 65, 66, 67, + 68, 69, 70, 71, -1, 73, -1, 12, 13, -1, + 78, 79, -1, 81, 82, 83, -1, 1366, -1, 87, + -1, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, -1, 73, 1382, -1, -1, -1, 78, 79, -1, + 81, 82, 83, -1, -1, -1, 87, 1382, -1, -1, + -1, -1, 120, 121, 122, -1, -1, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, -1, 73, -1, + -1, 1420, -1, 78, 79, -1, 81, 82, 83, 120, + 121, 122, 87, -1, -1, 1420, -1, -1, -1, -1, + -1, -1, 1441, 157, 158, 159, 160, 161, 162, 163, + 164, 165, 166, 167, 168, -1, 1441, -1, -1, 173, + -1, -1, -1, -1, 182, 120, 121, 122, -1, 3, + 4, 5, -1, -1, -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 687, 688, 689, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 112, 169, 170, 51, 52, 53, - 54, 1394, 114, 115, 116, 117, 112, 7, 157, 133, - 8, 124, 125, 166, 167, 112, 124, 125, 112, 64, - 64, 1414, 67, 67, 176, 162, 163, 166, 167, 174, - 172, 176, 172, 140, 141, 179, 181, 172, 67, 179, - 69, 172, 179, 159, 179, 179, 179, 179, 159, 179, - 179, 172, 174, 179, 179, 179, 179, 172, 179, 218, - 219, 6, 169, 170, 162, 163, 6, 226, 180, 176, - 6, 230, 149, 150, 151, 152, 172, 61, 174, 133, - 64, 455, 456, 67, 8, 139, 140, 141, 162, 163, - 162, 163, 146, 147, 148, 173, 149, 150, 151, 152, - 178, 475, 162, 163, 6, 173, 180, 179, 162, 163, - 178, 610, 1111, 167, 4, 614, 169, 170, 172, 179, - 174, 6, 176, 177, 6, 179, 7, 181, 162, 163, - 162, 163, 162, 163, 61, 174, 172, 64, 376, 174, - 67, 296, 69, 179, 178, 1538, 178, 172, 178, 149, - 150, 151, 152, 527, 172, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, 169, - 170, 61, 178, 171, 180, 65, 176, 173, 162, 163, - 82, 173, 180, 179, 8, 172, 178, 77, 172, 162, - 163, 164, 165, 166, 175, 179, 172, 178, 171, 352, - 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, - 363, 172, 365, 366, 367, 354, 355, 356, 357, 358, - 359, 360, 361, 362, 7, 1618, 365, 366, 367, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 175, 162, 163, 178, 171, 150, 151, - 152, 153, 154, 172, 169, 170, 180, 173, 4, 5, - 178, 173, 178, 165, 179, 71, 178, 169, 149, 150, - 151, 152, 164, 165, 166, 177, 178, 179, 180, 171, - 182, 183, 184, 185, 6, 187, 188, 189, 169, 170, - 169, 170, 194, 39, 40, 41, 42, 43, 44, 67, - 179, 162, 163, 462, 463, 51, 52, 162, 163, 547, - 212, 470, 169, 170, 67, 464, 465, 178, 61, 221, - 222, 64, 179, 697, 67, 172, 69, 174, 230, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, 172, 172, 174, 174, 171, 176, 173, - 1423, 179, 1425, 181, 1427, 67, 179, 162, 163, 261, - 262, 263, 172, 69, 174, 84, 149, 150, 151, 152, - 272, 273, 274, 178, 276, 94, 614, 279, 280, 4, - 172, 283, 174, 102, 103, 104, 169, 170, 173, 108, - 109, 110, 111, 178, 140, 141, 174, 67, 176, 61, - 6, 7, 64, 181, 306, 67, 308, 309, 310, 311, - 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, - 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, - 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, - 64, 162, 163, 67, 1527, 69, 172, 162, 163, 64, - 615, 180, 364, 88, 89, 90, 91, 178, 172, 371, - 174, 96, 374, 178, 99, 1474, 175, 175, 1477, 178, - 178, 1480, 384, 179, 386, 387, 388, 389, 390, 391, - 392, 393, 394, 395, 396, 397, 398, 399, 400, 162, - 163, 654, 852, 656, 742, 179, 1579, 6, 1581, 173, - 1583, 162, 163, 415, 178, 178, 1589, 656, 1017, 421, - 64, 1020, 1021, 67, 426, 69, 172, 178, 174, 431, - 432, 686, 687, 688, 689, 437, 438, 775, 67, 173, - 442, 700, 162, 163, 178, 447, 448, 449, 707, 175, - 6, 7, 178, 1626, 713, 1628, 64, 1630, 178, 172, - 67, 174, 1561, 162, 163, 467, 468, 469, 470, 471, - 472, 162, 163, 64, 476, 477, 478, 479, 480, 178, - 4, 4, 484, 162, 163, 487, 488, 178, 172, 491, - 492, 493, 162, 163, 496, 497, 498, 172, 500, 178, - 4, 84, 504, 1602, 4, 172, 1605, 174, 178, 1608, - 512, 94, 1611, 162, 163, 172, 518, 519, 172, 102, - 103, 104, 775, 6, 6, 108, 109, 110, 111, 178, - 1237, 1238, 162, 163, 174, 537, 775, 4, 172, 541, - 174, 4, 1641, 545, 1643, 172, 1645, 174, 178, 172, - 181, 174, 12, 13, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 172, 822, - 174, 172, 171, 174, 172, 828, 829, 172, 1028, 832, - 833, 834, 172, 822, 174, 172, 839, 174, 172, 828, - 829, 172, 172, 832, 833, 834, 172, 180, 174, 172, - 839, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 172, 72, 174, 616, 6, 179, 77, 78, 7, - 80, 81, 82, 876, 162, 163, 86, 886, 172, 172, - 174, 174, 172, 971, 174, 172, 172, 876, 174, 172, - 178, 174, 172, 645, 174, 172, 648, 174, 650, 651, - 178, 172, 180, 178, 172, 180, 658, 659, 6, 119, - 120, 121, 178, 178, 180, 180, 178, 178, 180, 180, - 672, 178, 178, 180, 180, 4, 935, 936, 937, 681, - 178, 6, 180, 1021, 686, 687, 688, 689, 84, 178, - 4, 180, 694, 178, 67, 180, 69, 172, 94, 701, - 702, 67, 178, 69, 180, 707, 102, 103, 104, 179, - 172, 1418, 108, 109, 110, 111, 174, 178, 720, 180, - 180, 723, 178, 178, 180, 180, 178, 172, 180, 1179, - 178, 178, 180, 180, 6, 178, 738, 180, 740, 178, - 178, 180, 180, 745, 746, 747, 748, 178, 178, 180, - 180, 753, 178, 5, 180, 179, 172, 190, 760, 172, - 762, 763, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, 179, 178, 211, 180, - 171, 214, 172, 84, 180, 172, 172, 39, 40, 41, - 42, 43, 44, 94, 178, 1050, 180, 799, 800, 51, - 52, 102, 103, 104, 4, 238, 6, 108, 109, 110, - 111, 1149, 172, 815, 816, 817, 818, 819, 820, 178, - 178, 180, 180, 825, 179, 827, 12, 13, 178, 178, - 180, 180, 178, 172, 180, 837, 178, 172, 180, 841, - 178, 172, 180, 845, 178, 5, 180, 84, 178, 172, - 180, 1110, 179, 855, 856, 857, 858, 94, 860, 179, - 293, 294, 178, 5, 180, 102, 103, 104, 179, 179, - 303, 108, 109, 110, 111, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 178, 72, 180, 140, 141, - 179, 77, 78, 179, 80, 81, 82, 178, 174, 180, - 86, 84, 904, 178, 178, 180, 180, 178, 5, 180, - 1163, 94, 178, 178, 180, 178, 1171, 180, 183, 102, - 103, 104, 187, 174, 1163, 108, 109, 110, 111, 194, - 178, 1269, 180, 119, 120, 121, 1386, 178, 178, 180, - 180, 1194, 1197, 180, 1203, 174, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 1194, 12, 13, 1432, 171, - 178, 6, 180, 965, 174, 178, 968, 180, 6, 176, - 179, 127, 6, 6, 1575, 6, 179, 979, 1233, 6, - 1239, 174, 1241, 4, 1243, 176, 171, 7, 1237, 1238, - 174, 179, 7, 180, 180, 6, 6, 180, 1257, 6, - 172, 1260, 1261, 7, 7, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 172, 72, 172, 172, 7, - 173, 77, 78, 1278, 80, 81, 82, 1029, 6, 179, - 86, 7, 6, 179, 7, 6, 6, 1039, 1040, 6, - 4, 4, 179, 179, 179, 124, 179, 1049, 1050, 173, - 6, 6, 178, 178, 1528, 173, 84, 173, 178, 178, - 173, 178, 6, 119, 120, 121, 94, 178, 178, 175, - 4, 4, 4, 127, 102, 103, 104, 12, 13, 6, - 108, 109, 110, 111, 6, 1087, 1088, 1089, 6, 179, - 7, 178, 7, 84, 7, 1097, 183, 1099, 7, 7, - 187, 127, 7, 94, 127, 7, 371, 194, 1110, 374, - 7, 102, 103, 104, 4, 6, 1118, 108, 109, 110, - 111, 176, 180, 180, 180, 6, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 175, 72, 1140, 1141, - 1142, 7, 77, 78, 7, 80, 81, 82, 7, 179, - 6, 86, 180, 6, 176, 173, 175, 6, 6, 6, - 174, 7, 6, 1422, 172, 1424, 172, 1426, 6, 1418, - 1172, 7, 159, 7, 261, 1434, 263, 179, 1437, 612, - 181, 7, 69, 1185, 119, 120, 121, 7, 1190, 180, - 7, 7, 7, 6, 173, 1197, 7, 7, 84, 1201, - 1202, 173, 7, 7, 173, 173, 1208, 1209, 94, 6, - 4, 1213, 4, 6, 179, 6, 102, 103, 104, 1221, - 172, 7, 108, 109, 110, 111, 491, 492, 493, 1231, - 6, 1233, 7, 7, 7, 6, 179, 6, 6, 67, - 6, 6, 4, 1245, 4, 180, 4, 512, 4, 682, - 180, 6, 6, 173, 175, 1257, 7, 173, 6, 1261, - 693, 173, 1264, 173, 178, 176, 172, 6, 77, 176, - 6, 6, 1531, 6, 6, 179, 1278, 6, 179, 179, - 179, 179, 5, 179, 371, 1540, 1541, 374, 4, 6, - 179, 179, 7, 7, 180, 7, 7, 1299, 1300, 7, - 174, 6, 179, 6, 6, 1307, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - 6, 179, 1575, 173, 171, 84, 4, 179, 415, 6, - 175, 6, 6, 123, 6, 94, 769, 178, 6, 1341, - 4, 1594, 4, 102, 103, 104, 6, 6, 6, 108, - 109, 110, 111, 6, 6, 1594, 6, 1359, 6, 1361, - 6, 6, 5, 127, 6, 179, 6, 1622, 6, 6, - 1372, 6, 1374, 6, 6, 1377, 6, 178, 6, 6, - 1633, 6, 1635, 648, 6, 650, 173, 6, 1390, 6, - 6, 176, 7, 1395, 1633, 6, 1635, 1652, 179, 6, - 5, 179, 65, 1656, 491, 492, 493, 6, 6, 6, - 6, 6, 6, 1415, 6, 6, 179, 1656, 7, 180, - 1422, 180, 1424, 180, 1426, 512, 179, 179, 122, 694, - 179, 6, 519, 179, 1436, 180, 125, 6, 1440, 6, - 6, 6, 6, 6, 6, 179, 6, 6, 6, 1451, - 1452, 6, 179, 179, 1456, 180, 6, 890, 891, 179, - 893, 84, 895, 896, 1466, 6, 899, 900, 1470, 4, - 4, 180, 179, 738, 6, 740, 6, 6, 6, 6, - 745, 746, 747, 748, 84, 6, 6, 6, 753, 6, - 6, 195, 196, 197, 94, 1497, 200, 201, 202, 179, - 179, 6, 102, 103, 104, 6, 1508, 6, 108, 109, - 110, 111, 179, 1515, 6, 6, 1518, 1497, 6, 1521, - 6, 6, 179, 1525, 179, 179, 6, 1529, 179, 1531, - 179, 6, 236, 237, 1536, 6, 6, 1539, 6, 1541, - 6, 6, 6, 6, 248, 249, 6, 6, 981, 982, - 983, 1047, 413, 1055, 3, 3, 441, 1175, 991, 84, - 825, 648, 827, 650, -1, -1, -1, -1, -1, 94, - 1572, 658, 659, -1, -1, -1, 1578, 102, 103, 104, - 180, -1, -1, 108, 109, 110, 111, -1, -1, 1591, - 855, 856, 857, 858, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, 694, 1041, -1, - 171, -1, -1, -1, -1, -1, -1, -1, 1620, -1, - -1, -1, -1, 1056, -1, 6, -1, -1, -1, 1062, - -1, -1, -1, -1, -1, 1068, -1, 1070, 1071, 904, - -1, -1, 1075, -1, -1, -1, -1, 1080, 1081, 1082, - -1, 738, -1, 740, -1, 180, -1, -1, 745, 746, - 747, 748, -1, -1, 1097, -1, 753, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, 1112, - -1, -1, 171, 1116, -1, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, -1, - 3, 4, -1, 171, -1, -1, 9, 10, 11, -1, + 34, 35, 36, -1, -1, 39, 40, 41, 42, 43, + 44, 45, 46, 47, -1, -1, -1, 51, 52, -1, + 54, 55, 56, -1, -1, -1, -1, 182, 62, 12, + 13, 65, -1, -1, 68, 1534, 70, 1536, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 82, 1534, + -1, 1536, -1, -1, -1, 89, 90, 91, 92, 93, + -1, -1, -1, 97, -1, -1, 100, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1577, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, -1, + 73, -1, -1, -1, -1, 78, 79, 1596, 81, 82, + 83, -1, -1, -1, 87, -1, 140, 141, 142, -1, + -1, 1596, -1, 147, 148, 149, 150, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 164, 165, -1, -1, -1, 169, -1, 120, 121, 122, + 174, -1, 3, 4, 5, 179, -1, 181, 9, 10, + 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, -1, -1, -1, -1, + -1, -1, -1, -1, 45, 46, 47, -1, -1, -1, + -1, -1, -1, 54, 55, 56, -1, -1, 85, 182, + -1, 62, -1, -1, 65, -1, -1, 68, 95, 70, + -1, -1, -1, -1, -1, -1, 103, 104, 105, -1, + -1, 82, 109, 110, 111, 112, -1, -1, 89, 90, + 91, 92, 93, -1, -1, -1, 97, -1, -1, 100, + 3, 4, 5, -1, -1, -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, -1, -1, 1168, -1, 1170, 825, -1, - 827, -1, 45, 46, 47, -1, -1, -1, -1, -1, - 53, 54, -1, -1, 12, 13, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 855, 856, - 857, 858, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, 1224, 1225, 1226, 1227, -1, -1, -1, -1, -1, - -1, -1, -1, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, -1, 72, -1, -1, 904, -1, 77, - 78, -1, 80, 81, 82, -1, 1259, -1, 86, -1, - -1, -1, -1, -1, -1, 6, 139, -1, -1, 1272, - -1, -1, -1, 146, 147, 148, 1279, -1, -1, -1, - -1, -1, -1, 1118, 6, -1, -1, -1, -1, 162, - 163, 119, 120, 121, 167, -1, -1, -1, 1301, 172, - -1, -1, 175, -1, 177, -1, 179, -1, -1, -1, - -1, -1, -1, -1, 3, 4, -1, -1, -1, 1322, - 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, -1, -1, - -1, -1, 180, 1356, -1, -1, 45, 46, 47, -1, - -1, -1, -1, -1, 53, 54, -1, -1, -1, 84, - -1, -1, 61, -1, -1, 64, -1, -1, 67, 94, - 69, -1, -1, -1, -1, -1, -1, 102, 103, 104, - -1, 1394, 81, 108, 109, 110, 111, -1, -1, 88, - 89, 90, 91, 92, -1, -1, -1, 96, -1, -1, - 99, 1414, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, 1431, -1, - 171, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, -1, -1, -1, -1, 171, - 139, -1, -1, -1, -1, -1, -1, 146, 147, 148, - -1, 1118, -1, -1, -1, 180, -1, -1, -1, 6, - -1, -1, -1, 162, 163, -1, -1, -1, 167, 1482, - -1, -1, -1, 172, -1, -1, -1, -1, 177, -1, - 179, 180, -1, -1, -1, -1, 3, 4, -1, -1, + 33, 34, 35, 36, -1, -1, -1, -1, -1, 140, + -1, -1, 45, 46, 47, -1, 147, 148, 149, 150, + -1, 54, 55, 56, -1, 182, -1, -1, -1, 62, + -1, -1, 65, 164, 165, 68, -1, 70, 169, -1, + -1, -1, -1, 174, -1, -1, -1, -1, 179, 82, + 181, -1, -1, -1, -1, -1, 89, 90, 91, 92, + 93, -1, -1, -1, 97, -1, -1, 100, 3, 4, + -1, -1, -1, -1, 9, 10, 11, -1, -1, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, -1, -1, -1, -1, -1, 140, -1, -1, + 45, 46, 47, -1, 147, 148, 149, 150, -1, 54, + 55, 56, -1, -1, -1, -1, -1, 62, -1, -1, + 65, 164, 165, 68, -1, 70, 169, -1, -1, -1, + -1, 174, -1, -1, -1, -1, 179, 82, 181, -1, + -1, -1, -1, -1, 89, 90, 91, 92, 93, -1, + -1, -1, 97, -1, -1, 100, 3, 4, -1, -1, -1, -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 6, -1, -1, -1, -1, 1538, -1, 1540, 45, 46, - 47, -1, 1377, -1, -1, -1, 53, 54, -1, -1, - -1, 84, -1, -1, 61, -1, -1, 64, -1, -1, - 67, 94, 69, -1, -1, -1, -1, -1, -1, 102, - 103, 104, -1, -1, 81, 108, 109, 110, 111, -1, - 1415, 88, 89, 90, 91, 92, -1, -1, -1, 96, - -1, -1, 99, -1, -1, -1, -1, -1, -1, -1, - 1257, 1436, -1, -1, 1261, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1618, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, 139, -1, 171, -1, -1, -1, -1, 146, - 147, 148, -1, -1, -1, -1, -1, 180, -1, -1, - -1, -1, -1, -1, -1, 162, 163, -1, -1, -1, - 167, 6, -1, -1, -1, 172, -1, -1, -1, -1, - 177, -1, -1, 180, -1, -1, -1, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, -1, -1, -1, 1529, 171, 1531, -1, -1, -1, - -1, -1, -1, -1, 1361, -1, -1, -1, -1, -1, - -1, 3, 4, 5, -1, -1, -1, 9, 10, 11, - 1377, -1, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 6, -1, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 1591, -1, 1415, 51, - 52, 53, 54, 84, -1, -1, -1, -1, -1, 61, - -1, -1, 64, -1, -1, 67, -1, 69, -1, 1436, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 81, - -1, -1, -1, -1, -1, -1, 88, 89, 90, 91, - 92, -1, -1, -1, 96, -1, -1, 99, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - -1, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, 139, 140, 141, - 171, -1, -1, -1, 146, 147, 148, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 162, 163, 1529, -1, 1531, 167, -1, -1, -1, -1, - 172, -1, -1, -1, -1, 177, -1, 179, -1, -1, - -1, -1, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, -1, 1572, -1, -1, -1, -1, - -1, -1, -1, -1, 3, 4, 5, -1, -1, -1, - 9, 10, 11, -1, 1591, 14, 15, 16, 17, 18, + -1, -1, -1, -1, -1, 140, -1, -1, 45, 46, + 47, -1, 147, 148, 149, 150, -1, 54, 55, 56, + -1, -1, -1, -1, -1, 62, -1, -1, 65, 164, + 165, 68, -1, 70, 169, -1, -1, -1, -1, 174, + -1, -1, -1, -1, 179, 82, 181, -1, -1, -1, + -1, -1, 89, 90, 91, 92, 93, -1, -1, -1, + 97, -1, -1, 100, 3, 4, -1, -1, -1, -1, + 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, -1, -1, - -1, -1, -1, -1, -1, -1, 45, 46, 47, -1, - -1, -1, -1, -1, 53, 54, -1, -1, -1, -1, - -1, -1, 61, -1, -1, 64, -1, -1, 67, -1, - 69, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 81, -1, -1, -1, -1, -1, -1, 88, - 89, 90, 91, 92, -1, -1, -1, 96, -1, -1, - 99, 3, 4, 5, -1, -1, -1, 9, 10, 11, - -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, -1, -1, -1, -1, -1, - 139, -1, -1, 45, 46, 47, -1, 146, 147, 148, - -1, 53, 54, -1, -1, -1, -1, -1, -1, 61, - -1, -1, 64, 162, 163, 67, -1, 69, 167, -1, - -1, -1, -1, 172, -1, -1, -1, -1, 177, 81, - 179, -1, -1, -1, -1, -1, 88, 89, 90, 91, - 92, -1, -1, -1, 96, -1, -1, 99, 3, 4, - -1, -1, -1, -1, 9, 10, 11, -1, -1, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, -1, -1, -1, -1, -1, 139, -1, -1, - 45, 46, 47, -1, 146, 147, 148, -1, 53, 54, - -1, -1, -1, -1, -1, -1, 61, -1, -1, 64, - 162, 163, 67, -1, 69, 167, -1, -1, -1, -1, - 172, -1, -1, -1, -1, 177, 81, 179, -1, -1, - -1, -1, -1, 88, 89, 90, 91, 92, -1, -1, - -1, 96, -1, -1, 99, 3, 4, -1, -1, -1, - -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, -1, - -1, -1, -1, -1, 139, -1, -1, 45, 46, 47, - -1, 146, 147, 148, -1, 53, 54, -1, -1, -1, - -1, -1, -1, 61, -1, -1, 64, 162, 163, 67, - -1, 69, 167, -1, -1, -1, -1, 172, -1, -1, - -1, -1, 177, 81, 179, -1, -1, -1, -1, -1, - 88, 89, 90, 91, 92, -1, -1, -1, 96, -1, - -1, 99, 3, 4, -1, -1, -1, -1, 9, 10, + -1, -1, -1, 140, -1, -1, 45, 46, 47, -1, + 147, 148, 149, 150, -1, 54, 55, 56, -1, -1, + -1, -1, -1, 62, -1, -1, 65, 164, 165, 68, + -1, 70, 169, -1, -1, -1, -1, 174, -1, -1, + -1, -1, 179, 82, 181, -1, -1, -1, -1, -1, + 89, 90, 91, 92, 93, -1, -1, -1, 97, -1, + -1, 100, 3, 4, -1, -1, -1, -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, -1, -1, -1, -1, - -1, 139, -1, -1, 45, 46, 47, -1, 146, 147, - 148, -1, 53, 54, -1, -1, -1, -1, -1, -1, - 61, -1, -1, 64, 162, 163, 67, -1, 69, 167, - -1, -1, -1, -1, 172, -1, -1, -1, -1, 177, - 81, 179, -1, -1, -1, -1, -1, 88, 89, 90, - 91, 92, -1, -1, -1, 96, -1, -1, 99, 3, - 4, -1, -1, -1, -1, 9, 10, 11, -1, -1, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, -1, -1, -1, -1, -1, 139, -1, - -1, 45, 46, 47, -1, 146, 147, 148, -1, 53, - 54, -1, -1, -1, -1, -1, -1, 61, -1, -1, - 64, 162, 163, 67, -1, 69, 167, -1, -1, -1, - -1, 172, -1, -1, -1, -1, 177, 81, 179, -1, - -1, -1, -1, -1, 88, 89, 90, 91, 92, -1, - -1, -1, 96, -1, -1, 99, 3, 4, -1, -1, - -1, -1, 9, 10, 11, -1, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - -1, -1, -1, -1, -1, 139, -1, -1, 45, 46, - 47, -1, 146, 147, 148, -1, 53, 54, -1, -1, - -1, -1, -1, -1, 61, 12, 13, 64, 162, 163, - 67, -1, 69, 167, -1, -1, -1, -1, 172, -1, - -1, -1, -1, 177, 81, 179, -1, -1, -1, -1, - -1, 88, 89, 90, 91, 92, -1, -1, -1, 96, - -1, -1, 99, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, -1, 72, -1, -1, -1, -1, - 77, 78, -1, 80, 81, 82, 6, -1, -1, 86, - -1, -1, 139, -1, -1, -1, -1, -1, -1, 146, - 147, 148, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 162, 163, -1, -1, -1, - 167, -1, 119, 120, 121, 172, -1, 3, 4, 5, - 177, -1, 179, 9, 10, 11, -1, -1, 14, 15, + -1, 140, -1, -1, 45, 46, 47, -1, 147, 148, + 149, 150, -1, 54, 55, 56, -1, -1, -1, -1, + -1, 62, -1, -1, 65, 164, 165, 68, -1, 70, + 169, -1, -1, -1, -1, 174, -1, -1, -1, -1, + 179, 82, 181, -1, -1, -1, -1, -1, 89, 90, + 91, 92, 93, -1, -1, -1, 97, -1, -1, 100, + 3, 4, -1, -1, -1, -1, 9, 10, 11, -1, + -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, -1, -1, -1, -1, -1, 140, + -1, -1, 45, 46, 47, -1, 147, 148, 149, 150, + -1, 54, 55, 56, -1, -1, -1, -1, -1, 62, + 12, 13, 65, 164, 165, 68, -1, 70, 169, -1, + -1, -1, -1, 174, -1, -1, -1, -1, 179, 82, + 181, -1, -1, -1, -1, -1, 89, 90, 91, 92, + 93, -1, -1, -1, 97, -1, -1, 100, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + -1, 73, -1, -1, -1, -1, 78, 79, -1, 81, + 82, 83, 6, -1, -1, 87, -1, 140, -1, -1, + -1, -1, -1, -1, 147, 148, 149, 150, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 164, 165, -1, -1, -1, 169, -1, 120, 121, + 122, 174, -1, 3, 4, 5, 179, -1, 181, 9, + 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, -1, -1, -1, 39, + 40, 41, 42, 43, 44, 45, 46, 47, -1, -1, + -1, 51, 52, -1, 54, 55, 56, 3, 4, 5, + 182, -1, -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, -1, -1, -1, 39, 40, 41, 42, 43, 44, 45, - 46, 47, -1, -1, -1, 51, 52, 53, 54, 3, - 4, 5, -1, 180, -1, 9, 10, 11, -1, -1, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, -1, -1, -1, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 12, 13, -1, 51, 52, 53, - 54, -1, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, -1, -1, -1, - -1, 171, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 139, 140, 141, -1, -1, -1, -1, - 146, 147, 148, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, -1, 72, -1, 162, 163, -1, 77, - 78, 167, 80, 81, 82, -1, 172, -1, 86, -1, - -1, 177, -1, 179, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 139, 140, 141, -1, -1, - -1, -1, 146, 147, 148, -1, -1, -1, -1, -1, - -1, 119, 120, 121, -1, -1, -1, -1, 162, 163, - -1, -1, -1, 167, -1, -1, -1, -1, 172, -1, - 3, 4, 5, 177, -1, 179, 9, 10, 11, -1, + 46, 47, -1, -1, -1, 51, 52, -1, 54, 55, + 56, 155, 156, 157, 158, 159, 160, 161, 162, 163, + 164, 165, 166, 167, 168, -1, -1, -1, -1, 173, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 140, 141, 142, -1, -1, -1, -1, 147, 148, 149, + 150, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 164, 165, 85, -1, -1, 169, + -1, -1, -1, -1, 174, -1, 95, -1, -1, 179, + -1, 181, -1, -1, 103, 104, 105, -1, -1, 6, + 109, 110, 111, 112, 140, 141, 142, -1, -1, -1, + -1, 147, 148, 149, 150, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 164, 165, + -1, -1, -1, 169, -1, -1, -1, -1, 174, -1, + 3, 4, 5, 179, -1, 181, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, -1, -1, -1, 39, 40, 41, 42, - 43, 44, 45, 46, 47, -1, 3, 4, 51, 52, - 53, 54, 9, 10, 11, -1, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 45, 46, - 47, -1, -1, -1, -1, -1, 53, 54, 3, 4, - -1, -1, -1, -1, 9, 10, 11, -1, -1, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, -1, -1, -1, -1, -1, 139, 140, 141, -1, - 45, 46, 47, 146, 147, 148, -1, -1, 53, 54, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 162, - 163, -1, -1, -1, 167, -1, -1, -1, -1, 172, - -1, -1, -1, -1, 177, -1, 179, -1, -1, -1, - -1, -1, 139, -1, -1, -1, -1, -1, -1, 146, - 147, 148, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 162, 163, -1, -1, -1, - 167, -1, -1, -1, -1, 172, -1, -1, 175, -1, - 177, -1, 179, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 139, -1, -1, -1, -1, -1, - -1, 146, 147, 148, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 162, 163, -1, - -1, -1, 167, -1, -1, -1, -1, 172, -1, 3, - 4, -1, 177, -1, 179, 9, 10, 11, -1, -1, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 45, 46, 47, -1, 3, 4, -1, -1, 53, - 54, 9, 10, 11, -1, -1, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, -1, - -1, -1, -1, -1, -1, -1, -1, 45, 46, 47, - -1, -1, -1, -1, -1, 53, 54, -1, -1, -1, - -1, -1, -1, 61, -1, -1, 64, -1, -1, 67, - -1, 69, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 81, -1, -1, -1, -1, -1, -1, - 88, 89, 90, 91, 92, 139, -1, -1, 96, -1, - -1, 99, 146, 147, 148, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 162, 163, - -1, 6, -1, 167, -1, -1, -1, -1, 172, -1, - -1, -1, -1, 177, -1, 179, -1, -1, -1, -1, - 6, 139, -1, -1, -1, -1, -1, -1, 146, 147, - 148, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 162, 163, -1, -1, -1, 167, - 3, 4, 5, -1, 172, -1, 9, 10, 11, 177, + 33, 34, 35, 182, -1, -1, 39, 40, 41, 42, + 43, 44, 45, 46, 47, -1, -1, -1, 51, 52, + -1, 54, 55, 56, 3, 4, -1, -1, -1, -1, + 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 45, 46, 47, -1, + -1, -1, -1, -1, -1, 54, 55, 56, 155, 156, + 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + 85, -1, -1, -1, -1, -1, -1, 140, 141, 142, + 95, -1, -1, -1, 147, 148, 149, 150, 103, 104, + 105, -1, -1, -1, 109, 110, 111, 112, -1, -1, + -1, 164, 165, -1, -1, -1, 169, -1, -1, -1, + -1, 174, -1, -1, -1, -1, 179, -1, 181, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 140, -1, -1, -1, -1, -1, -1, 147, 148, + 149, 150, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 164, 165, -1, -1, -1, + 169, -1, -1, -1, -1, 174, -1, 182, 177, -1, + 179, -1, 181, 3, 4, -1, -1, -1, -1, 9, + 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 45, 46, 47, -1, -1, + -1, 3, 4, -1, 54, 55, 56, 9, 10, 11, + -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 45, 46, 47, -1, -1, -1, -1, + 3, 4, 54, 55, 56, -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, -1, -1, -1, 39, 40, 41, 42, - 43, 44, 45, 46, 47, -1, 3, 4, 51, 52, - 53, 54, 9, 10, 11, -1, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 45, 46, - 47, -1, -1, -1, -1, -1, 53, 54, 153, 154, - 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, 153, 154, 155, + 33, 34, 35, -1, -1, -1, -1, -1, -1, -1, + 140, -1, 45, 46, 47, -1, -1, 147, 148, 149, + 150, 54, 55, 56, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 164, 165, -1, -1, -1, 169, + -1, -1, -1, -1, 174, -1, -1, 177, -1, 179, + -1, 181, -1, -1, -1, -1, -1, -1, 140, -1, + -1, -1, -1, -1, -1, 147, 148, 149, 150, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 164, 165, -1, -1, -1, 169, -1, -1, + -1, -1, 174, -1, -1, -1, -1, 179, -1, 181, + -1, -1, -1, -1, -1, -1, -1, 140, -1, -1, + -1, -1, -1, -1, 147, 148, 149, 150, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 164, 165, -1, -1, -1, 169, -1, -1, -1, + -1, 174, -1, 3, 4, -1, 179, -1, 181, 9, + 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, 36, -1, -1, -1, + -1, -1, -1, -1, -1, 45, 46, 47, -1, -1, + -1, -1, -1, -1, 54, 55, 56, -1, 12, 13, + -1, -1, 62, -1, -1, 65, -1, -1, 68, -1, + 70, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 6, -1, 82, -1, -1, -1, -1, -1, -1, 89, + 90, 91, 92, 93, -1, -1, -1, 97, -1, -1, + 100, -1, -1, -1, -1, -1, -1, -1, 62, 63, + 64, 65, 66, 67, 68, 69, 70, 71, -1, 73, + -1, -1, -1, -1, 78, 79, -1, 81, 82, 83, + 6, -1, -1, 87, -1, -1, -1, -1, -1, -1, + 140, -1, -1, -1, -1, -1, -1, 147, 148, 149, + 150, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 164, 165, 120, 121, 122, 169, + 3, 4, 5, -1, 174, -1, 9, 10, 11, 179, + -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 12, 13, 6, 39, 40, 41, 42, + 43, 44, 45, 46, 47, -1, -1, -1, 51, 52, + -1, 54, 55, 56, -1, 6, -1, -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, -1, -1, -1, -1, 171, 139, 140, 141, -1, - -1, -1, -1, 146, 147, 148, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 162, - 163, -1, -1, -1, 167, -1, -1, -1, -1, 172, - -1, -1, 12, 13, 177, -1, -1, -1, -1, -1, - -1, -1, 139, -1, -1, -1, -1, -1, -1, 146, - 147, 148, -1, -1, -1, -1, -1, 6, 12, 13, - -1, -1, -1, -1, -1, 162, 163, -1, -1, -1, - 167, -1, -1, -1, -1, 172, -1, -1, -1, -1, - 177, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 7, 72, -1, 12, 13, -1, 77, 78, -1, - 80, 81, 82, -1, -1, -1, 86, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, -1, 72, 8, - 12, 13, -1, 77, 78, -1, 80, 81, 82, -1, - -1, -1, 86, -1, -1, -1, -1, -1, -1, 119, - 120, 121, -1, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, -1, 72, 7, 8, -1, -1, 77, - 78, -1, 80, 81, 82, 119, 120, 121, 86, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 8, - 72, -1, -1, -1, -1, 77, 78, -1, 80, 81, - 82, -1, -1, -1, 86, -1, -1, -1, 8, -1, - 180, 119, 120, 121, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 8, -1, - -1, -1, 171, -1, -1, -1, 180, 119, 120, 121, - -1, -1, -1, -1, -1, -1, -1, 153, 154, 155, + 166, 167, 168, -1, -1, 7, 8, 173, -1, -1, + -1, -1, -1, 62, 63, 64, 65, 66, 67, 68, + 69, 70, 71, -1, 73, 7, -1, -1, -1, 78, + 79, -1, 81, 82, 83, -1, -1, -1, 87, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, 8, -1, -1, -1, 171, -1, -1, -1, -1, - -1, -1, 180, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 8, -1, - -1, -1, 171, -1, -1, -1, -1, -1, 180, -1, + 166, 167, 168, 8, -1, -1, -1, 173, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 140, 141, 142, + -1, 120, 121, 122, 147, 148, 149, 150, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, -1, -1, -1, -1, 171, - -1, -1, -1, -1, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, -1, -1, -1, - -1, 171, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, -1, -1, -1, - -1, 171, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 153, 154, 155, 156, + -1, 164, 165, -1, -1, -1, 169, 8, -1, -1, + -1, 174, -1, -1, -1, -1, 179, -1, -1, -1, + -1, -1, -1, -1, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, 8, -1, + -1, -1, 173, 182, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, 8, -1, + -1, -1, 173, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, -1, -1, -1, + -1, 173, -1, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, -1, -1, -1, + -1, 173, -1, -1, -1, -1, -1, -1, -1, -1, + 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, -1, -1, -1, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, -1, + -1, -1, -1, 173, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, 85, -1, + -1, -1, 173, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, -1, + -1, -1, -1, 173, -1, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, -1, + 0, 1, -1, 173, 4, -1, -1, -1, -1, -1, + -1, -1, 12, 13, -1, -1, -1, -1, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, - -1, -1, -1, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, -1, 0, 1, - -1, 171, 4, -1, -1, -1, -1, -1, -1, -1, - 12, 13, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, -1, 37, 38, 178, -1, 180, - -1, -1, -1, -1, -1, -1, 48, 49, 50, -1, - -1, -1, -1, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, -1, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, -1, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - -1, -1, -1, 105, 106, 107, -1, -1, -1, -1, - -1, 113, 4, -1, -1, -1, 118, 119, 120, 121, - 12, 13, 124, -1, 126, -1, 128, 129, 130, 131, - 132, 133, 134, 135, 136, 137, 138, -1, -1, -1, - 142, 143, 144, 145, -1, 37, 38, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 48, 49, 50, -1, - -1, -1, -1, 55, 56, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, -1, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, -1, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - -1, -1, -1, 105, 106, 107, -1, -1, -1, -1, - -1, 113, -1, -1, -1, -1, 118, 119, 120, 121, - -1, -1, 124, -1, 126, -1, 128, 129, 130, 131, - 132, 133, 134, 135, 136, 137, 138, -1, -1, -1, - 142, 143, 144, 145, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, -1, -1, -1, 178, - -1, 180, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, -1, -1, -1, 178, -1, 180, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, -1, -1, -1, -1, -1, 180, 153, 154, + 167, 168, -1, -1, -1, -1, 173, 37, 38, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 48, 49, + 50, -1, -1, 53, -1, -1, -1, 57, 58, -1, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, -1, 73, 74, 75, 76, 77, 78, 79, + 80, 81, 82, 83, 84, -1, 86, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, -1, -1, -1, 106, 107, 108, -1, + -1, -1, -1, -1, 114, 4, -1, -1, -1, 119, + 120, 121, 122, 12, 13, 125, -1, 127, -1, 129, + 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, + -1, -1, -1, 143, 144, 145, 146, -1, 37, 38, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, + 49, 50, -1, -1, 53, -1, -1, -1, 57, 58, + -1, 60, 61, 62, 63, 64, 65, 66, 67, 68, + 69, 70, 71, -1, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, -1, 86, 87, 88, + 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, + 99, 100, 101, 102, -1, -1, -1, 106, 107, 108, + -1, -1, -1, -1, -1, 114, -1, -1, -1, -1, + 119, 120, 121, 122, -1, -1, 125, -1, 127, -1, + 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, + 139, -1, -1, -1, 143, 144, 145, 146, 155, 156, + 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + -1, -1, -1, 180, -1, 182, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, -1, -1, + -1, 180, -1, 182, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, -1, -1, -1, 180, + -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - -1, -1, -1, -1, -1, 180, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, - -1, -1, -1, 180, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, -1, -1, -1, -1, - -1, 180, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, -1, -1, -1, -1, -1, 180, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, -1, -1, -1, -1, -1, 180, 153, 154, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, -1, -1, + -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, -1, -1, -1, -1, + -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - -1, -1, -1, -1, -1, 180, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, - -1, -1, -1, 180, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, -1, -1, -1, -1, - -1, 180, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, -1, -1, -1, -1, -1, 180, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, -1, -1, -1, -1, -1, 180, 153, 154, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, -1, -1, + -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, -1, -1, -1, -1, + -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - -1, -1, -1, -1, -1, 180, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, - -1, -1, -1, 180, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, -1, -1, -1, -1, - -1, 180, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, -1, -1, -1, -1, -1, 180, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, -1, -1, -1, -1, -1, 180, 153, 154, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, -1, -1, + -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, -1, -1, -1, -1, + -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - -1, -1, -1, -1, -1, 180, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, - -1, -1, -1, 180, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, -1, -1, -1, -1, - -1, 180, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, -1, -1, -1, -1, -1, 180, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, -1, -1, -1, -1, -1, 180, 153, 154, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, -1, -1, + -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, -1, -1, -1, -1, + -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - -1, -1, -1, -1, -1, 180, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, - -1, -1, -1, 180, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, -1, -1, -1, -1, - -1, 180, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, -1, -1, -1, -1, -1, 180, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, -1, -1, -1, -1, -1, 180, 153, 154, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, -1, -1, + -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, -1, -1, -1, -1, + -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - -1, -1, -1, -1, -1, 180, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, -1, -1, -1, -1, -1, 182, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, - -1, -1, 179, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, -1, -1, -1, - -1, 171, -1, -1, -1, -1, -1, -1, -1, 179, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - 173, -1, -1, -1, -1, 178, 153, 154, 155, 156, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + -1, -1, -1, -1, 181, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, -1, + -1, -1, -1, 173, -1, -1, -1, -1, -1, -1, + -1, 181, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, 175, -1, -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, - -1, 178, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, -1, -1, -1, 178, 153, 154, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - -1, -1, -1, 178, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, -1, -1, -1, 178, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, -1, -1, -1, 178, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, -1, -1, + -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, - -1, 178, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, -1, -1, -1, 178, 153, 154, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - -1, -1, -1, 178, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, -1, -1, -1, 178, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, -1, -1, -1, 178, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, -1, -1, + -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, - -1, 178, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, -1, -1, -1, 178, 153, 154, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - -1, -1, -1, 178, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, -1, -1, -1, 178, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, -1, -1, -1, 178, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, -1, -1, + -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, - -1, 178, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, -1, -1, -1, 178, 153, 154, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - -1, -1, -1, 178, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, -1, -1, -1, 178, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, -1, -1, -1, 178, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, -1, -1, + -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, - -1, 178, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, -1, -1, -1, 178, 153, 154, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - -1, -1, -1, 178, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, -1, -1, -1, 178, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, -1, -1, -1, 178, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, -1, -1, + -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, -1, -1, - -1, 178, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, -1, -1, -1, 178, 153, 154, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - -1, -1, -1, 178, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, -1, -1, -1, 178, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, 175, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, -1, -1, -1, - -1, 171, -1, -1, -1, 175, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, -1, -1, -1, 180, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, -1, -1, + -1, 180, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, 177, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, -1, + -1, -1, -1, 173, -1, -1, -1, 177, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, 175, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, -1, -1, -1, -1, 171, -1, -1, - -1, 175, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, 175, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, -1, - -1, -1, -1, 171, -1, -1, -1, 175, 153, 154, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + 177, 155, 156, 157, 158, 159, 160, 161, 162, 163, + 164, 165, 166, 167, 168, -1, -1, -1, -1, 173, + -1, -1, -1, 177, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, 177, 155, 156, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, + 168, -1, -1, -1, -1, 173, -1, -1, -1, 177, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - 175, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, -1, -1, -1, -1, 171, - -1, -1, -1, 175, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, 175, 153, 154, 155, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, 177, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, -1, -1, -1, + -1, 173, -1, -1, -1, 177, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, 177, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, -1, -1, -1, -1, 171, -1, -1, -1, 175, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, 175, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, -1, -1, -1, - -1, 171, -1, -1, -1, 175, 153, 154, 155, 156, + 166, 167, 168, -1, -1, -1, -1, 173, -1, -1, + -1, 177, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, 177, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, -1, + -1, -1, -1, 173, -1, -1, -1, 177, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, 175, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, -1, -1, -1, -1, 171, -1, -1, - -1, 175, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, 175, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, -1, - -1, -1, -1, 171, -1, -1, -1, 175, 153, 154, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + 177, 155, 156, 157, 158, 159, 160, 161, 162, 163, + 164, 165, 166, 167, 168, -1, -1, -1, -1, 173, + -1, -1, -1, 177, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, 177, 155, 156, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, + 168, -1, -1, -1, -1, 173, -1, -1, -1, 177, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - 175, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, -1, -1, -1, -1, 171, - -1, -1, -1, 175, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, 175, 153, 154, 155, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, 177, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, -1, -1, -1, + -1, 173, -1, -1, -1, 177, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, 177, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, -1, -1, -1, -1, 171, -1, -1, -1, 175, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, 175, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, -1, -1, -1, - -1, 171, -1, -1, -1, 175, 153, 154, 155, 156, + 166, 167, 168, -1, -1, -1, -1, 173, -1, -1, + -1, 177, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, 177, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, -1, + -1, -1, -1, 173, -1, -1, -1, 177, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, 175, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, -1, -1, -1, -1, 171, -1, -1, - -1, 175, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, 175, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, -1, - -1, -1, -1, 171, -1, -1, -1, 175, 153, 154, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + 177, 155, 156, 157, 158, 159, 160, 161, 162, 163, + 164, 165, 166, 167, 168, -1, -1, -1, -1, 173, + -1, -1, -1, 177, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, 177, 155, 156, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, + 168, -1, -1, -1, -1, 173, -1, -1, -1, 177, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, -1, -1, - 175, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, -1, -1, -1, -1, 171, - -1, -1, -1, 175, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, -1, -1, 175, 153, 154, 155, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + -1, -1, 177, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, -1, -1, -1, + -1, 173, -1, -1, -1, 177, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, -1, -1, 177, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, -1, -1, -1, -1, 171, -1, -1, -1, 175, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - -1, -1, 175, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, -1, -1, -1, - -1, 171, -1, -1, -1, 175, 153, 154, 155, 156, + 166, 167, 168, -1, -1, -1, -1, 173, -1, -1, + -1, 177, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, -1, -1, 177, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, -1, + -1, -1, -1, 173, -1, -1, -1, 177, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, -1, -1, 175, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, -1, -1, -1, -1, 171, -1, -1, - -1, 175, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, -1, -1, 175, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, -1, - -1, -1, -1, 171, -1, 173, 153, 154, 155, 156, + 167, 168, -1, -1, -1, -1, 173, -1, -1, -1, + 177, 155, 156, 157, 158, 159, 160, 161, 162, 163, + 164, 165, 166, 167, 168, -1, -1, -1, -1, 173, + -1, -1, -1, 177, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, -1, -1, 177, 155, 156, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, + 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, 173, 153, 154, 155, + 167, 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, -1, -1, -1, -1, 171, -1, 173, 153, 154, + 166, 167, 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, 173, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, -1, -1, -1, -1, 171, -1, 173, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - 173, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, -1, -1, -1, -1, 171, - -1, 173, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, 173, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, -1, -1, -1, - -1, 171, -1, 173, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, 173, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, -1, - -1, -1, -1, 171, -1, 173, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, + 164, 165, 166, 167, 168, -1, -1, -1, -1, 173, + -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, -1, -1, -1, + -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, -1, + -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, + 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, 173, 153, 154, 155, + 167, 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, -1, -1, -1, -1, 171, -1, 173, 153, 154, + 166, 167, 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, 173, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, -1, -1, -1, -1, 171, -1, 173, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - 173, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, -1, -1, -1, -1, 171, - -1, 173, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, 173, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, -1, -1, -1, - -1, 171, -1, 173, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, 173, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, -1, - -1, -1, -1, 171, -1, 173, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, + 164, 165, 166, 167, 168, -1, -1, -1, -1, 173, + -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, -1, -1, -1, + -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, -1, + -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, + 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, 173, 153, 154, 155, + 167, 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, -1, -1, -1, -1, 171, -1, 173, 153, 154, + 166, 167, 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, 173, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, -1, -1, -1, -1, 171, -1, 173, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - 173, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, -1, -1, -1, -1, 171, - -1, 173, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, 173, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, -1, -1, -1, - -1, 171, -1, 173, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, 173, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, -1, - -1, -1, -1, 171, -1, 173, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, + 164, 165, 166, 167, 168, -1, -1, -1, -1, 173, + -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, -1, -1, -1, + -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, -1, + -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, + 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, 173, 153, 154, 155, + 167, 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, -1, -1, -1, -1, 171, -1, 173, 153, 154, + 166, 167, 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, 173, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, -1, -1, -1, -1, 171, -1, 173, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - 173, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, -1, -1, -1, -1, 171, - -1, 173, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, 173, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, -1, -1, -1, - -1, 171, -1, 173, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, 173, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, -1, - -1, -1, -1, 171, -1, 173, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, + 164, 165, 166, 167, 168, -1, -1, -1, -1, 173, + -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, -1, -1, -1, + -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, -1, + -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, + 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, 173, 153, 154, 155, + 167, 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, -1, -1, -1, -1, 171, -1, 173, 153, 154, + 166, 167, 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, 173, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, -1, -1, -1, -1, 171, -1, 173, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - 173, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, -1, -1, -1, -1, 171, - -1, 173, 153, 154, 155, 156, 157, 158, 159, 160, - 161, 162, 163, 164, 165, 166, -1, -1, -1, -1, - 171, -1, 173, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, 164, 165, 166, -1, -1, -1, - -1, 171, -1, 173, 153, 154, 155, 156, 157, 158, - 159, 160, 161, 162, 163, 164, 165, 166, -1, -1, - -1, -1, 171, -1, 173, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, 164, 165, 166, -1, - -1, -1, -1, 171, -1, 173, 153, 154, 155, 156, + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, + 164, 165, 166, 167, 168, -1, -1, -1, -1, 173, + -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, -1, -1, -1, + -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, + 161, 162, 163, 164, 165, 166, 167, 168, -1, -1, + -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, 166, 167, 168, -1, + -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, + 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, + -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, + 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, + 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - -1, -1, -1, -1, 171, -1, 173, 153, 154, 155, + 167, 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, - 166, -1, -1, -1, -1, 171, -1, 173, 153, 154, + 166, 167, 168, -1, -1, -1, -1, 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, - 165, 166, -1, -1, -1, -1, 171, -1, 173, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - 164, 165, 166, -1, -1, -1, -1, 171, -1, 173, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 163, 164, 165, 166, -1, -1, -1, -1, 171, -1, - 173, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, -1, -1, -1, -1, 171 + 165, 166, 167, 168, -1, -1, -1, -1, 173, -1, + 175, 155, 156, 157, 158, 159, 160, 161, 162, 163, + 164, 165, 166, 167, 168, -1, -1, -1, -1, 173, + -1, 175, 155, 156, 157, 158, 159, 160, 161, 162, + 163, 164, 165, 166, 167, 168, -1, -1, -1, -1, + 173, -1, 175, 155, 156, 157, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, -1, -1, -1, + -1, 173 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint16 yystos[] = { - 0, 1, 183, 184, 6, 0, 4, 12, 13, 37, - 38, 48, 49, 50, 55, 56, 57, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 105, 106, - 107, 113, 118, 119, 120, 121, 124, 126, 128, 129, - 130, 131, 132, 133, 134, 135, 136, 137, 138, 142, - 143, 144, 145, 185, 187, 188, 206, 220, 225, 228, - 229, 230, 231, 232, 233, 234, 254, 255, 256, 257, - 273, 274, 3, 4, 5, 9, 10, 11, 14, 15, + 0, 1, 185, 186, 6, 0, 4, 12, 13, 37, + 38, 48, 49, 50, 53, 57, 58, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 73, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 106, 107, + 108, 114, 119, 120, 121, 122, 125, 127, 129, 130, + 131, 132, 133, 134, 135, 136, 137, 138, 139, 143, + 144, 145, 146, 187, 189, 190, 208, 222, 227, 230, + 231, 232, 233, 234, 235, 236, 256, 257, 258, 259, + 275, 276, 3, 4, 5, 9, 10, 11, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 39, 40, 41, 42, 43, 44, 45, 46, 47, 51, - 52, 53, 54, 133, 139, 140, 141, 146, 147, 148, - 162, 163, 167, 172, 174, 176, 177, 179, 181, 258, - 259, 270, 271, 274, 13, 67, 172, 172, 6, 179, - 6, 6, 6, 6, 6, 174, 174, 172, 179, 172, - 172, 4, 172, 179, 172, 172, 4, 179, 172, 172, - 71, 67, 67, 6, 179, 61, 64, 67, 67, 67, - 64, 67, 69, 69, 61, 64, 67, 69, 64, 67, - 69, 64, 67, 172, 64, 124, 137, 138, 179, 162, - 163, 172, 179, 260, 261, 260, 179, 61, 64, 67, - 179, 260, 4, 61, 65, 77, 67, 69, 67, 64, - 4, 133, 179, 4, 6, 61, 64, 67, 64, 67, - 4, 4, 4, 4, 5, 36, 61, 64, 67, 69, - 81, 163, 172, 179, 225, 234, 258, 263, 264, 265, - 274, 4, 172, 172, 172, 4, 179, 267, 4, 172, - 172, 6, 6, 174, 4, 4, 5, 179, 5, 179, - 4, 258, 6, 172, 179, 181, 7, 149, 150, 151, - 152, 169, 170, 204, 205, 4, 174, 176, 172, 174, - 172, 174, 172, 174, 172, 174, 172, 174, 172, 174, - 172, 174, 172, 174, 172, 174, 172, 174, 172, 174, - 172, 174, 172, 174, 172, 174, 172, 174, 172, 174, - 172, 174, 172, 174, 172, 174, 172, 174, 172, 174, - 172, 174, 172, 174, 172, 174, 172, 174, 172, 172, - 172, 172, 172, 172, 7, 172, 172, 172, 258, 258, - 258, 179, 258, 175, 179, 258, 4, 124, 125, 4, - 4, 225, 226, 227, 179, 6, 153, 154, 155, 156, - 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, - 171, 179, 6, 205, 6, 258, 4, 270, 271, 274, - 270, 258, 208, 211, 258, 163, 258, 265, 266, 258, - 258, 172, 258, 266, 258, 258, 172, 266, 258, 258, - 263, 172, 179, 266, 264, 264, 264, 172, 172, 264, - 264, 264, 172, 221, 222, 223, 224, 172, 172, 172, - 263, 258, 4, 263, 267, 179, 179, 260, 260, 260, - 258, 258, 162, 163, 179, 179, 260, 179, 179, 179, - 162, 163, 172, 227, 260, 179, 172, 179, 172, 172, - 172, 264, 264, 263, 172, 4, 6, 174, 174, 227, - 6, 179, 179, 179, 264, 264, 174, 174, 174, 172, - 174, 176, 174, 5, 179, 5, 5, 5, 61, 64, - 67, 69, 179, 258, 265, 258, 180, 266, 8, 164, - 6, 6, 258, 258, 258, 176, 258, 179, 127, 258, - 258, 258, 6, 6, 227, 6, 227, 174, 6, 263, - 263, 179, 271, 263, 6, 174, 258, 4, 258, 258, - 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, - 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, - 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, - 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, - 258, 258, 270, 272, 272, 270, 270, 270, 270, 270, - 270, 270, 270, 270, 272, 258, 270, 270, 270, 266, - 173, 7, 204, 266, 175, 7, 204, 205, 176, 7, - 174, 180, 61, 64, 67, 69, 220, 258, 258, 258, - 258, 258, 258, 258, 258, 258, 258, 258, 258, 258, - 258, 258, 258, 189, 6, 174, 176, 173, 178, 173, - 178, 178, 175, 178, 207, 175, 207, 173, 164, 178, - 180, 173, 173, 258, 173, 180, 173, 173, 258, 180, - 173, 173, 7, 258, 258, 180, 6, 6, 6, 258, - 258, 7, 7, 252, 252, 258, 172, 172, 172, 172, - 258, 258, 258, 7, 179, 173, 6, 179, 227, 227, - 178, 178, 178, 260, 260, 226, 226, 178, 258, 258, - 258, 258, 238, 178, 227, 258, 258, 258, 258, 258, - 7, 253, 6, 7, 258, 6, 258, 258, 180, 266, - 266, 266, 6, 6, 258, 258, 258, 173, 179, 175, - 179, 258, 4, 4, 258, 179, 179, 179, 179, 266, - 173, 180, 258, 179, 258, 265, 173, 173, 173, 124, - 178, 227, 179, 8, 173, 175, 180, 180, 173, 178, - 180, 258, 6, 6, 258, 175, 205, 173, 175, 173, - 175, 173, 175, 173, 175, 173, 175, 173, 175, 173, - 175, 173, 175, 173, 175, 173, 175, 173, 175, 178, - 178, 173, 175, 173, 175, 173, 175, 173, 175, 173, - 175, 173, 175, 173, 175, 178, 178, 178, 178, 178, - 178, 173, 178, 175, 173, 178, 175, 178, 178, 178, - 173, 173, 178, 178, 178, 173, 6, 178, 173, 178, - 180, 204, 263, 180, 176, 204, 205, 271, 258, 6, - 4, 4, 179, 268, 175, 179, 179, 179, 179, 180, - 8, 4, 114, 115, 116, 117, 180, 192, 196, 199, - 201, 202, 258, 4, 6, 159, 186, 266, 6, 266, - 258, 6, 4, 274, 6, 270, 7, 258, 265, 127, - 7, 7, 173, 7, 127, 7, 7, 173, 127, 7, - 7, 258, 173, 180, 179, 173, 173, 258, 263, 4, - 251, 6, 173, 217, 258, 271, 217, 217, 217, 173, - 173, 173, 263, 266, 176, 227, 180, 180, 260, 258, - 258, 180, 180, 258, 260, 178, 178, 178, 84, 94, - 102, 103, 104, 108, 109, 110, 111, 248, 249, 260, - 180, 235, 173, 180, 173, 173, 173, 258, 6, 258, - 173, 175, 175, 180, 180, 180, 175, 175, 178, 266, - 266, 175, 175, 180, 266, 266, 266, 266, 180, 8, - 266, 7, 7, 7, 176, 258, 180, 258, 258, 7, - 176, 179, 263, 6, 180, 175, 176, 205, 270, 258, - 258, 258, 258, 258, 258, 258, 258, 270, 266, 266, - 270, 270, 270, 270, 270, 258, 270, 173, 258, 6, - 175, 4, 124, 125, 258, 6, 6, 6, 7, 174, - 267, 269, 6, 266, 266, 266, 266, 258, 193, 172, - 172, 179, 203, 6, 175, 159, 270, 173, 173, 178, - 7, 260, 67, 69, 263, 263, 7, 263, 67, 69, - 263, 263, 7, 69, 263, 263, 6, 7, 7, 266, - 7, 7, 84, 250, 6, 7, 173, 173, 173, 173, - 7, 7, 7, 6, 180, 4, 180, 178, 178, 178, - 180, 180, 260, 260, 260, 4, 6, 179, 6, 172, - 6, 112, 6, 112, 6, 112, 6, 112, 180, 249, - 178, 248, 7, 6, 7, 7, 7, 6, 179, 6, - 6, 6, 67, 258, 6, 6, 258, 180, 180, 176, - 180, 180, 180, 180, 258, 180, 263, 263, 263, 4, - 178, 8, 8, 173, 4, 4, 263, 180, 6, 4, - 6, 173, 175, 173, 175, 173, 175, 173, 175, 173, - 175, 173, 175, 178, 173, 173, 173, 173, 204, 6, - 204, 7, 204, 205, 176, 7, 6, 267, 258, 178, - 180, 180, 180, 180, 180, 172, 258, 258, 262, 263, - 179, 176, 6, 6, 186, 6, 258, 179, 258, 271, - 6, 179, 179, 77, 219, 219, 263, 6, 179, 179, - 6, 6, 263, 179, 6, 6, 5, 263, 180, 263, - 263, 4, 6, 263, 7, 7, 7, 7, 263, 263, - 263, 7, 6, 7, 258, 258, 258, 179, 179, 178, - 180, 178, 180, 178, 180, 174, 258, 263, 258, 6, - 6, 6, 6, 258, 260, 180, 5, 179, 263, 179, - 179, 179, 263, 266, 179, 6, 175, 173, 175, 4, - 6, 6, 123, 258, 258, 258, 6, 6, 7, 178, - 6, 205, 270, 263, 263, 271, 258, 6, 4, 268, - 6, 175, 267, 6, 6, 6, 6, 190, 258, 178, - 178, 178, 180, 191, 258, 4, 270, 178, 258, 271, - 258, 258, 260, 6, 6, 6, 258, 258, 6, 258, - 5, 6, 179, 6, 127, 218, 258, 6, 263, 263, - 263, 263, 6, 4, 6, 6, 258, 258, 271, 180, - 173, 178, 180, 226, 226, 260, 6, 239, 260, 6, - 240, 260, 6, 241, 258, 180, 178, 173, 180, 178, - 6, 163, 260, 6, 262, 260, 260, 6, 180, 258, - 6, 263, 178, 180, 8, 180, 173, 179, 258, 271, - 263, 173, 6, 6, 6, 6, 7, 6, 176, 173, - 178, 258, 258, 263, 179, 178, 180, 6, 258, 209, - 210, 180, 180, 180, 180, 180, 5, 262, 65, 6, - 6, 6, 6, 6, 179, 179, 6, 6, 179, 258, - 180, 180, 178, 179, 178, 179, 178, 179, 175, 6, - 263, 7, 179, 258, 178, 180, 178, 178, 6, 180, - 122, 258, 258, 266, 6, 6, 180, 267, 125, 194, - 258, 178, 178, 262, 258, 6, 178, 213, 215, 6, - 6, 6, 6, 6, 6, 180, 179, 262, 266, 226, - 178, 180, 258, 260, 248, 258, 260, 248, 258, 260, - 248, 6, 178, 180, 263, 227, 180, 260, 6, 266, - 260, 258, 180, 180, 180, 6, 6, 179, 258, 258, - 180, 258, 178, 180, 214, 178, 180, 216, 179, 258, - 180, 180, 180, 258, 180, 178, 180, 180, 178, 180, - 180, 178, 180, 263, 6, 84, 180, 236, 179, 178, - 180, 178, 6, 6, 191, 173, 178, 6, 179, 178, - 4, 4, 258, 180, 6, 6, 180, 6, 242, 258, - 6, 6, 243, 258, 6, 6, 244, 258, 6, 180, - 258, 248, 227, 266, 6, 260, 266, 180, 197, 258, - 262, 258, 179, 263, 271, 179, 258, 271, 178, 179, - 180, 179, 180, 179, 180, 6, 6, 180, 180, 237, - 180, 178, 180, 6, 179, 173, 180, 180, 212, 258, - 272, 258, 248, 6, 245, 248, 6, 246, 248, 6, - 247, 248, 6, 266, 6, 195, 270, 200, 179, 6, - 178, 180, 7, 180, 180, 180, 179, 180, 179, 180, - 179, 180, 180, 178, 180, 179, 262, 258, 271, 6, - 6, 248, 6, 248, 6, 248, 6, 270, 6, 198, - 270, 180, 7, 180, 180, 180, 178, 180, 6, 271, - 6, 6, 6, 270, 6 + 52, 54, 55, 56, 134, 140, 141, 142, 147, 148, + 149, 150, 164, 165, 169, 174, 176, 178, 179, 181, + 183, 260, 261, 272, 273, 276, 13, 68, 174, 174, + 6, 181, 6, 6, 6, 6, 6, 176, 176, 174, + 181, 174, 174, 4, 174, 181, 174, 174, 4, 181, + 174, 174, 72, 68, 68, 6, 181, 62, 65, 68, + 68, 68, 65, 68, 70, 70, 62, 65, 68, 70, + 65, 68, 70, 65, 68, 174, 65, 125, 138, 139, + 181, 164, 165, 174, 181, 262, 263, 262, 181, 62, + 65, 68, 181, 262, 4, 62, 66, 78, 68, 70, + 68, 65, 4, 134, 181, 4, 6, 62, 65, 68, + 65, 68, 4, 4, 4, 4, 5, 36, 62, 65, + 68, 70, 82, 165, 174, 181, 227, 236, 260, 265, + 266, 267, 276, 4, 174, 174, 174, 4, 181, 269, + 4, 174, 174, 6, 6, 176, 4, 4, 5, 181, + 5, 181, 4, 260, 6, 174, 181, 183, 7, 151, + 152, 153, 154, 171, 172, 206, 207, 4, 176, 178, + 174, 176, 174, 176, 174, 176, 174, 176, 174, 176, + 174, 176, 174, 176, 174, 176, 174, 176, 174, 176, + 174, 176, 174, 176, 174, 176, 174, 176, 174, 176, + 174, 176, 174, 176, 174, 176, 174, 176, 174, 176, + 174, 176, 174, 176, 174, 176, 174, 176, 174, 176, + 174, 174, 174, 174, 174, 174, 7, 174, 174, 174, + 174, 260, 260, 260, 181, 260, 177, 181, 260, 4, + 125, 126, 4, 4, 227, 228, 229, 181, 6, 155, + 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, + 166, 167, 168, 173, 181, 6, 207, 6, 260, 4, + 272, 273, 276, 272, 260, 210, 213, 260, 165, 260, + 267, 268, 260, 260, 174, 260, 268, 260, 260, 174, + 268, 260, 260, 265, 174, 181, 268, 266, 266, 266, + 174, 174, 266, 266, 266, 174, 223, 224, 225, 226, + 174, 174, 174, 265, 260, 4, 265, 269, 181, 181, + 262, 262, 262, 260, 260, 164, 165, 181, 181, 262, + 181, 181, 181, 164, 165, 174, 229, 262, 181, 174, + 181, 174, 174, 174, 266, 266, 265, 174, 4, 6, + 176, 176, 229, 6, 181, 181, 181, 266, 266, 176, + 176, 176, 174, 176, 178, 176, 5, 181, 5, 5, + 5, 62, 65, 68, 70, 181, 260, 267, 260, 182, + 268, 8, 166, 6, 6, 260, 260, 260, 178, 260, + 181, 128, 260, 260, 260, 6, 6, 229, 6, 229, + 176, 6, 265, 265, 181, 273, 265, 6, 176, 260, + 4, 260, 260, 260, 260, 260, 260, 260, 260, 260, + 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, + 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, + 260, 260, 260, 260, 260, 260, 260, 260, 260, 260, + 260, 260, 260, 260, 260, 272, 274, 274, 272, 272, + 272, 272, 272, 272, 272, 272, 272, 274, 260, 272, + 272, 272, 4, 276, 268, 175, 7, 206, 268, 177, + 7, 206, 207, 178, 7, 176, 182, 62, 65, 68, + 70, 222, 260, 260, 260, 260, 260, 260, 260, 260, + 260, 260, 260, 260, 260, 260, 260, 260, 191, 6, + 176, 178, 175, 180, 175, 180, 180, 177, 180, 209, + 177, 209, 175, 166, 180, 182, 175, 175, 260, 175, + 182, 175, 175, 260, 182, 175, 175, 7, 260, 260, + 182, 6, 6, 6, 260, 260, 7, 7, 254, 254, + 260, 174, 174, 174, 174, 260, 260, 260, 7, 181, + 175, 6, 181, 229, 229, 180, 180, 180, 262, 262, + 228, 228, 180, 260, 260, 260, 260, 240, 180, 229, + 260, 260, 260, 260, 260, 7, 255, 6, 7, 260, + 6, 260, 260, 182, 268, 268, 268, 6, 6, 260, + 260, 260, 175, 181, 177, 181, 260, 4, 4, 260, + 181, 181, 181, 181, 268, 175, 182, 260, 181, 260, + 267, 175, 175, 175, 125, 180, 229, 181, 8, 175, + 177, 182, 182, 175, 180, 182, 260, 6, 6, 260, + 177, 207, 175, 177, 175, 177, 175, 177, 175, 177, + 175, 177, 175, 177, 175, 177, 175, 177, 175, 177, + 175, 177, 175, 177, 180, 180, 175, 177, 175, 177, + 175, 177, 175, 177, 175, 177, 175, 177, 175, 177, + 180, 180, 180, 180, 180, 180, 175, 180, 177, 175, + 180, 177, 180, 180, 180, 175, 175, 180, 180, 180, + 175, 6, 180, 175, 180, 175, 182, 206, 265, 182, + 178, 206, 207, 273, 260, 6, 4, 4, 181, 270, + 177, 181, 181, 181, 181, 182, 8, 4, 115, 116, + 117, 118, 182, 194, 198, 201, 203, 204, 260, 4, + 6, 161, 188, 268, 6, 268, 260, 6, 276, 6, + 272, 7, 260, 267, 128, 7, 7, 175, 7, 128, + 7, 7, 175, 128, 7, 7, 260, 175, 182, 181, + 175, 175, 260, 265, 4, 253, 6, 175, 219, 260, + 273, 219, 219, 219, 175, 175, 175, 265, 268, 178, + 229, 182, 182, 262, 260, 260, 182, 182, 260, 262, + 180, 180, 180, 85, 95, 103, 104, 105, 109, 110, + 111, 112, 250, 251, 262, 182, 237, 175, 182, 175, + 175, 175, 260, 6, 260, 175, 177, 177, 182, 182, + 182, 177, 177, 180, 268, 268, 177, 177, 182, 268, + 268, 268, 268, 182, 8, 268, 7, 7, 7, 178, + 260, 182, 260, 260, 7, 178, 181, 265, 6, 182, + 177, 178, 207, 272, 260, 260, 260, 260, 260, 260, + 260, 260, 272, 268, 268, 272, 272, 272, 272, 272, + 260, 272, 175, 260, 6, 177, 4, 125, 126, 260, + 6, 6, 6, 7, 176, 269, 271, 6, 268, 268, + 268, 268, 260, 195, 174, 174, 181, 205, 6, 177, + 161, 272, 175, 175, 180, 7, 262, 68, 70, 265, + 265, 7, 265, 68, 70, 265, 265, 7, 70, 265, + 265, 6, 7, 7, 268, 7, 7, 85, 252, 6, + 7, 175, 175, 175, 175, 7, 7, 7, 6, 182, + 4, 182, 180, 180, 180, 182, 182, 262, 262, 262, + 4, 6, 181, 6, 174, 6, 113, 6, 113, 6, + 113, 6, 113, 182, 251, 180, 250, 7, 6, 7, + 7, 7, 6, 181, 6, 6, 6, 68, 260, 6, + 6, 260, 182, 182, 178, 182, 182, 182, 182, 260, + 182, 265, 265, 265, 4, 180, 8, 8, 175, 4, + 4, 265, 182, 6, 4, 6, 175, 177, 175, 177, + 175, 177, 175, 177, 175, 177, 175, 177, 180, 175, + 175, 175, 175, 206, 6, 206, 7, 206, 207, 178, + 7, 6, 269, 260, 180, 182, 182, 182, 182, 182, + 174, 260, 260, 264, 265, 181, 178, 6, 6, 188, + 6, 260, 181, 260, 273, 6, 181, 181, 78, 221, + 221, 265, 6, 181, 181, 6, 6, 265, 181, 6, + 6, 5, 265, 182, 265, 265, 4, 6, 265, 7, + 7, 7, 7, 265, 265, 265, 7, 6, 7, 260, + 260, 260, 181, 181, 180, 182, 180, 182, 180, 182, + 176, 260, 265, 260, 6, 6, 6, 6, 260, 262, + 182, 5, 181, 265, 181, 181, 181, 265, 268, 181, + 6, 177, 175, 177, 4, 6, 6, 124, 260, 260, + 260, 6, 6, 7, 180, 6, 207, 272, 265, 265, + 273, 260, 6, 4, 270, 6, 177, 269, 6, 6, + 6, 6, 192, 260, 180, 180, 180, 182, 193, 260, + 4, 272, 180, 260, 273, 260, 260, 262, 6, 6, + 6, 260, 260, 6, 260, 5, 6, 181, 6, 128, + 220, 260, 6, 265, 265, 265, 265, 6, 4, 6, + 6, 260, 260, 273, 182, 175, 180, 182, 228, 228, + 262, 6, 241, 262, 6, 242, 262, 6, 243, 260, + 182, 180, 175, 182, 180, 6, 165, 262, 6, 264, + 262, 262, 6, 182, 260, 6, 265, 180, 182, 8, + 182, 175, 181, 260, 273, 265, 175, 6, 6, 6, + 6, 7, 6, 178, 175, 180, 260, 260, 265, 181, + 180, 182, 6, 260, 211, 212, 182, 182, 182, 182, + 182, 5, 264, 66, 6, 6, 6, 6, 6, 181, + 181, 6, 6, 181, 260, 182, 182, 180, 181, 180, + 181, 180, 181, 177, 6, 265, 7, 181, 260, 180, + 182, 180, 180, 6, 182, 123, 260, 260, 268, 6, + 6, 182, 269, 126, 196, 260, 180, 180, 264, 260, + 6, 180, 215, 217, 6, 6, 6, 6, 6, 6, + 182, 181, 264, 268, 228, 180, 182, 260, 262, 250, + 260, 262, 250, 260, 262, 250, 6, 180, 182, 265, + 229, 182, 262, 6, 268, 262, 260, 182, 182, 182, + 6, 6, 181, 260, 260, 182, 260, 180, 182, 216, + 180, 182, 218, 181, 260, 182, 182, 182, 260, 182, + 180, 182, 182, 180, 182, 182, 180, 182, 265, 6, + 85, 182, 238, 181, 180, 182, 180, 6, 6, 193, + 175, 180, 6, 181, 180, 4, 4, 260, 182, 6, + 6, 182, 6, 244, 260, 6, 6, 245, 260, 6, + 6, 246, 260, 6, 182, 260, 250, 229, 268, 6, + 262, 268, 182, 199, 260, 264, 260, 181, 265, 273, + 181, 260, 273, 180, 181, 182, 181, 182, 181, 182, + 6, 6, 182, 182, 239, 182, 180, 182, 6, 181, + 175, 182, 182, 214, 260, 274, 260, 250, 6, 247, + 250, 6, 248, 250, 6, 249, 250, 6, 268, 6, + 197, 272, 202, 181, 6, 180, 182, 7, 182, 182, + 182, 181, 182, 181, 182, 181, 182, 182, 180, 182, + 181, 264, 260, 273, 6, 6, 250, 6, 250, 6, + 250, 6, 272, 6, 200, 272, 182, 7, 182, 182, + 182, 180, 182, 6, 273, 6, 6, 6, 272, 6 }; #define yyerrok (yyerrstatus = 0) @@ -4505,101 +4540,101 @@ yyreduce: switch (yyn) { case 3: -#line 173 "Gmsh.y" +#line 174 "Gmsh.y" { yyerrok; return 1; ;} break; case 6: -#line 184 "Gmsh.y" +#line 185 "Gmsh.y" { return 1; ;} break; case 7: -#line 185 "Gmsh.y" +#line 186 "Gmsh.y" { return 1; ;} break; case 8: -#line 186 "Gmsh.y" +#line 187 "Gmsh.y" { return 1; ;} break; case 9: -#line 187 "Gmsh.y" +#line 188 "Gmsh.y" { return 1; ;} break; case 10: -#line 188 "Gmsh.y" +#line 189 "Gmsh.y" { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} break; case 11: -#line 189 "Gmsh.y" +#line 190 "Gmsh.y" { return 1; ;} break; case 12: -#line 190 "Gmsh.y" +#line 191 "Gmsh.y" { return 1; ;} break; case 13: -#line 191 "Gmsh.y" +#line 192 "Gmsh.y" { return 1; ;} break; case 14: -#line 192 "Gmsh.y" +#line 193 "Gmsh.y" { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} break; case 15: -#line 193 "Gmsh.y" +#line 194 "Gmsh.y" { return 1; ;} break; case 16: -#line 194 "Gmsh.y" +#line 195 "Gmsh.y" { return 1; ;} break; case 17: -#line 195 "Gmsh.y" +#line 196 "Gmsh.y" { return 1; ;} break; case 18: -#line 196 "Gmsh.y" +#line 197 "Gmsh.y" { return 1; ;} break; case 19: -#line 197 "Gmsh.y" +#line 198 "Gmsh.y" { return 1; ;} break; case 20: -#line 198 "Gmsh.y" +#line 199 "Gmsh.y" { return 1; ;} break; case 21: -#line 203 "Gmsh.y" +#line 204 "Gmsh.y" { (yyval.c) = (char*)"w"; ;} break; case 22: -#line 207 "Gmsh.y" +#line 208 "Gmsh.y" { (yyval.c) = (char*)"a"; ;} break; case 23: -#line 214 "Gmsh.y" +#line 215 "Gmsh.y" { Msg::Direct((yyvsp[(3) - (5)].c)); Free((yyvsp[(3) - (5)].c)); @@ -4607,7 +4642,7 @@ yyreduce: break; case 24: -#line 219 "Gmsh.y" +#line 220 "Gmsh.y" { Msg::Error((yyvsp[(3) - (5)].c)); Free((yyvsp[(3) - (5)].c)); @@ -4615,7 +4650,7 @@ yyreduce: break; case 25: -#line 224 "Gmsh.y" +#line 225 "Gmsh.y" { std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(6) - (7)].c)); FILE *fp = Fopen(tmp.c_str(), (yyvsp[(5) - (7)].c)); @@ -4632,7 +4667,7 @@ yyreduce: break; case 26: -#line 238 "Gmsh.y" +#line 239 "Gmsh.y" { char tmpstring[5000]; int i = PrintListOfDouble((yyvsp[(3) - (7)].c), (yyvsp[(5) - (7)].l), tmpstring); @@ -4648,7 +4683,7 @@ yyreduce: break; case 27: -#line 251 "Gmsh.y" +#line 252 "Gmsh.y" { char tmpstring[5000]; int i = PrintListOfDouble((yyvsp[(3) - (7)].c), (yyvsp[(5) - (7)].l), tmpstring); @@ -4664,7 +4699,7 @@ yyreduce: break; case 28: -#line 264 "Gmsh.y" +#line 265 "Gmsh.y" { char tmpstring[5000]; int i = PrintListOfDouble((yyvsp[(3) - (9)].c), (yyvsp[(5) - (9)].l), tmpstring); @@ -4690,7 +4725,7 @@ yyreduce: break; case 29: -#line 292 "Gmsh.y" +#line 293 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(1) - (6)].c), "View") && ViewData->finalize()){ @@ -4707,7 +4742,7 @@ yyreduce: break; case 30: -#line 306 "Gmsh.y" +#line 307 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -4723,7 +4758,7 @@ yyreduce: break; case 31: -#line 319 "Gmsh.y" +#line 320 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -4739,7 +4774,7 @@ yyreduce: break; case 32: -#line 332 "Gmsh.y" +#line 333 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (8)].c), "View")){ @@ -4757,7 +4792,7 @@ yyreduce: break; case 33: -#line 350 "Gmsh.y" +#line 351 "Gmsh.y" { #if defined(HAVE_POST) ViewData = new PViewDataList(); @@ -4766,27 +4801,27 @@ yyreduce: break; case 39: -#line 364 "Gmsh.y" +#line 365 "Gmsh.y" { ViewCoord.push_back((yyvsp[(1) - (1)].d)); ;} break; case 40: -#line 366 "Gmsh.y" +#line 367 "Gmsh.y" { ViewCoord.push_back((yyvsp[(3) - (3)].d)); ;} break; case 41: -#line 371 "Gmsh.y" +#line 372 "Gmsh.y" { if(ViewValueList) ViewValueList->push_back((yyvsp[(1) - (1)].d)); ;} break; case 42: -#line 373 "Gmsh.y" +#line 374 "Gmsh.y" { if(ViewValueList) ViewValueList->push_back((yyvsp[(3) - (3)].d)); ;} break; case 43: -#line 378 "Gmsh.y" +#line 379 "Gmsh.y" { #if defined(HAVE_POST) if(!strncmp((yyvsp[(1) - (1)].c), "SP", 2)){ @@ -4893,7 +4928,7 @@ yyreduce: break; case 44: -#line 482 "Gmsh.y" +#line 483 "Gmsh.y" { #if defined(HAVE_POST) if(ViewValueList){ @@ -4906,7 +4941,7 @@ yyreduce: break; case 45: -#line 492 "Gmsh.y" +#line 493 "Gmsh.y" { #if defined(HAVE_POST) if(ViewValueList) (*ViewNumList)++; @@ -4915,7 +4950,7 @@ yyreduce: break; case 46: -#line 501 "Gmsh.y" +#line 502 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c)) + 1; i++) ViewData->T2C.push_back((yyvsp[(1) - (1)].c)[i]); @@ -4925,7 +4960,7 @@ yyreduce: break; case 47: -#line 508 "Gmsh.y" +#line 509 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c)) + 1; i++) ViewData->T2C.push_back((yyvsp[(3) - (3)].c)[i]); @@ -4935,7 +4970,7 @@ yyreduce: break; case 48: -#line 518 "Gmsh.y" +#line 519 "Gmsh.y" { #if defined(HAVE_POST) ViewData->T2D.push_back((yyvsp[(3) - (8)].d)); @@ -4947,7 +4982,7 @@ yyreduce: break; case 49: -#line 527 "Gmsh.y" +#line 528 "Gmsh.y" { #if defined(HAVE_POST) ViewData->NbT2++; @@ -4956,7 +4991,7 @@ yyreduce: break; case 50: -#line 536 "Gmsh.y" +#line 537 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c)) + 1; i++) ViewData->T3C.push_back((yyvsp[(1) - (1)].c)[i]); @@ -4966,7 +5001,7 @@ yyreduce: break; case 51: -#line 543 "Gmsh.y" +#line 544 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c)) + 1; i++) ViewData->T3C.push_back((yyvsp[(3) - (3)].c)[i]); @@ -4976,7 +5011,7 @@ yyreduce: break; case 52: -#line 553 "Gmsh.y" +#line 554 "Gmsh.y" { #if defined(HAVE_POST) ViewData->T3D.push_back((yyvsp[(3) - (10)].d)); ViewData->T3D.push_back((yyvsp[(5) - (10)].d)); @@ -4987,7 +5022,7 @@ yyreduce: break; case 53: -#line 561 "Gmsh.y" +#line 562 "Gmsh.y" { #if defined(HAVE_POST) ViewData->NbT3++; @@ -4996,7 +5031,7 @@ yyreduce: break; case 54: -#line 571 "Gmsh.y" +#line 572 "Gmsh.y" { #if defined(HAVE_POST) int type = @@ -5015,7 +5050,7 @@ yyreduce: break; case 55: -#line 590 "Gmsh.y" +#line 591 "Gmsh.y" { #if defined(HAVE_POST) int type = @@ -5034,7 +5069,7 @@ yyreduce: break; case 56: -#line 609 "Gmsh.y" +#line 610 "Gmsh.y" { #if defined(HAVE_POST) ViewValueList = &ViewData->Time; @@ -5043,48 +5078,48 @@ yyreduce: break; case 57: -#line 615 "Gmsh.y" +#line 616 "Gmsh.y" { ;} break; case 58: -#line 622 "Gmsh.y" +#line 623 "Gmsh.y" { (yyval.i) = 0; ;} break; case 59: -#line 623 "Gmsh.y" +#line 624 "Gmsh.y" { (yyval.i) = 1; ;} break; case 60: -#line 624 "Gmsh.y" +#line 625 "Gmsh.y" { (yyval.i) = 2; ;} break; case 61: -#line 625 "Gmsh.y" +#line 626 "Gmsh.y" { (yyval.i) = 3; ;} break; case 62: -#line 626 "Gmsh.y" +#line 627 "Gmsh.y" { (yyval.i) = 4; ;} break; case 63: -#line 630 "Gmsh.y" +#line 631 "Gmsh.y" { (yyval.i) = 1; ;} break; case 64: -#line 631 "Gmsh.y" +#line 632 "Gmsh.y" { (yyval.i) = -1; ;} break; case 67: -#line 642 "Gmsh.y" +#line 643 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c)) && (yyvsp[(2) - (4)].i) && List_Nbr((yyvsp[(3) - (4)].l)) == 1){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (4)].c)); @@ -5147,7 +5182,7 @@ yyreduce: break; case 68: -#line 704 "Gmsh.y" +#line 705 "Gmsh.y" { gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(1) - (6)].c)]); s.list = true; @@ -5179,7 +5214,7 @@ yyreduce: break; case 69: -#line 734 "Gmsh.y" +#line 735 "Gmsh.y" { int index = (int)(yyvsp[(3) - (7)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (7)].c))){ @@ -5215,7 +5250,7 @@ yyreduce: break; case 70: -#line 769 "Gmsh.y" +#line 770 "Gmsh.y" { int index = (int)(yyvsp[(3) - (7)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (7)].c))){ @@ -5251,7 +5286,7 @@ yyreduce: break; case 71: -#line 803 "Gmsh.y" +#line 804 "Gmsh.y" { if(List_Nbr((yyvsp[(4) - (9)].l)) != List_Nbr((yyvsp[(8) - (9)].l))){ yymsg(0, "Incompatible array dimensions in affectation"); @@ -5300,7 +5335,7 @@ yyreduce: break; case 72: -#line 851 "Gmsh.y" +#line 852 "Gmsh.y" { if(List_Nbr((yyvsp[(4) - (9)].l)) != List_Nbr((yyvsp[(8) - (9)].l))){ yymsg(0, "Incompatible array dimensions in affectation"); @@ -5349,7 +5384,7 @@ yyreduce: break; case 73: -#line 898 "Gmsh.y" +#line 899 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (3)].c)); @@ -5367,7 +5402,7 @@ yyreduce: break; case 74: -#line 913 "Gmsh.y" +#line 914 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (6)].c)); @@ -5386,7 +5421,7 @@ yyreduce: break; case 75: -#line 929 "Gmsh.y" +#line 930 "Gmsh.y" { gmsh_yystringsymbols[(yyvsp[(1) - (4)].c)] = std::string((yyvsp[(3) - (4)].c)); Free((yyvsp[(1) - (4)].c)); @@ -5395,7 +5430,7 @@ yyreduce: break; case 76: -#line 938 "Gmsh.y" +#line 939 "Gmsh.y" { std::string tmp((yyvsp[(5) - (6)].c)); StringOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), tmp); @@ -5404,7 +5439,7 @@ yyreduce: break; case 77: -#line 944 "Gmsh.y" +#line 945 "Gmsh.y" { std::string tmp((yyvsp[(8) - (9)].c)); StringOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), tmp); @@ -5413,7 +5448,7 @@ yyreduce: break; case 78: -#line 953 "Gmsh.y" +#line 954 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), d)){ @@ -5434,7 +5469,7 @@ yyreduce: break; case 79: -#line 971 "Gmsh.y" +#line 972 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), d)){ @@ -5455,7 +5490,7 @@ yyreduce: break; case 80: -#line 989 "Gmsh.y" +#line 990 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(3) - (5)].c), d)){ @@ -5467,7 +5502,7 @@ yyreduce: break; case 81: -#line 998 "Gmsh.y" +#line 999 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (8)].c), (int)(yyvsp[(3) - (8)].d), (yyvsp[(6) - (8)].c), d)){ @@ -5479,7 +5514,7 @@ yyreduce: break; case 82: -#line 1010 "Gmsh.y" +#line 1011 "Gmsh.y" { ColorOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (8)].c), 0, (yyvsp[(5) - (8)].c), (yyvsp[(7) - (8)].u)); Free((yyvsp[(1) - (8)].c)); Free((yyvsp[(5) - (8)].c)); @@ -5487,7 +5522,7 @@ yyreduce: break; case 83: -#line 1015 "Gmsh.y" +#line 1016 "Gmsh.y" { ColorOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (11)].c), (int)(yyvsp[(3) - (11)].d), (yyvsp[(8) - (11)].c), (yyvsp[(10) - (11)].u)); Free((yyvsp[(1) - (11)].c)); Free((yyvsp[(8) - (11)].c)); @@ -5495,7 +5530,7 @@ yyreduce: break; case 84: -#line 1023 "Gmsh.y" +#line 1024 "Gmsh.y" { GmshColorTable *ct = GetColorTable(0); if(!ct) @@ -5518,7 +5553,7 @@ yyreduce: break; case 85: -#line 1043 "Gmsh.y" +#line 1044 "Gmsh.y" { GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (9)].d)); if(!ct) @@ -5541,7 +5576,7 @@ yyreduce: break; case 86: -#line 1066 "Gmsh.y" +#line 1067 "Gmsh.y" { #if defined(HAVE_MESH) if(!strcmp((yyvsp[(1) - (5)].c),"Background")) @@ -5555,7 +5590,7 @@ yyreduce: break; case 87: -#line 1077 "Gmsh.y" +#line 1078 "Gmsh.y" { #if defined(HAVE_MESH) if(!GModel::current()->getFields()->newField((int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c))) @@ -5566,7 +5601,7 @@ yyreduce: break; case 88: -#line 1085 "Gmsh.y" +#line 1086 "Gmsh.y" { #if defined(HAVE_MESH) Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (9)].d)); @@ -5591,7 +5626,7 @@ yyreduce: break; case 89: -#line 1107 "Gmsh.y" +#line 1108 "Gmsh.y" { #if defined(HAVE_MESH) Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (9)].d)); @@ -5617,7 +5652,7 @@ yyreduce: break; case 90: -#line 1130 "Gmsh.y" +#line 1131 "Gmsh.y" { #if defined(HAVE_MESH) Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (11)].d)); @@ -5646,7 +5681,7 @@ yyreduce: break; case 91: -#line 1156 "Gmsh.y" +#line 1157 "Gmsh.y" { #if defined(HAVE_MESH) Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (7)].d)); @@ -5667,7 +5702,7 @@ yyreduce: break; case 92: -#line 1177 "Gmsh.y" +#line 1178 "Gmsh.y" { #if defined(HAVE_PLUGINS) try { @@ -5682,7 +5717,7 @@ yyreduce: break; case 93: -#line 1189 "Gmsh.y" +#line 1190 "Gmsh.y" { #if defined(HAVE_PLUGINS) try { @@ -5697,7 +5732,7 @@ yyreduce: break; case 97: -#line 1207 "Gmsh.y" +#line 1208 "Gmsh.y" { std::string key((yyvsp[(3) - (3)].c)); std::vector<double> val(1, 0.); @@ -5709,7 +5744,7 @@ yyreduce: break; case 98: -#line 1216 "Gmsh.y" +#line 1217 "Gmsh.y" { std::string key((yyvsp[(3) - (5)].c)); std::vector<double> val(1, (yyvsp[(5) - (5)].d)); @@ -5721,12 +5756,12 @@ yyreduce: break; case 99: -#line 1225 "Gmsh.y" +#line 1226 "Gmsh.y" { floatOptions.clear(); charOptions.clear(); ;} break; case 100: -#line 1227 "Gmsh.y" +#line 1228 "Gmsh.y" { std::string key((yyvsp[(3) - (9)].c)); std::vector<double> val(1, (yyvsp[(6) - (9)].d)); @@ -5739,7 +5774,7 @@ yyreduce: break; case 101: -#line 1237 "Gmsh.y" +#line 1238 "Gmsh.y" { std::string key((yyvsp[(3) - (5)].c)), val((yyvsp[(5) - (5)].c)); if(!gmsh_yystringsymbols.count(key)){ @@ -5751,12 +5786,12 @@ yyreduce: break; case 102: -#line 1246 "Gmsh.y" +#line 1247 "Gmsh.y" { floatOptions.clear(); charOptions.clear(); ;} break; case 103: -#line 1248 "Gmsh.y" +#line 1249 "Gmsh.y" { std::string key((yyvsp[(3) - (9)].c)), val((yyvsp[(6) - (9)].c)); if(!gmsh_yysymbols.count(key)){ @@ -5769,7 +5804,7 @@ yyreduce: break; case 105: -#line 1262 "Gmsh.y" +#line 1263 "Gmsh.y" { std::string name((yyvsp[(3) - (3)].c)); Msg::UndefineOnelabParameter(name); @@ -5778,7 +5813,7 @@ yyreduce: break; case 106: -#line 1270 "Gmsh.y" +#line 1271 "Gmsh.y" { (yyval.l) = List_Create(20,20,sizeof(doubleXstring)); doubleXstring v = {(yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].c)}; @@ -5787,7 +5822,7 @@ yyreduce: break; case 107: -#line 1276 "Gmsh.y" +#line 1277 "Gmsh.y" { doubleXstring v = {(yyvsp[(3) - (5)].d), (yyvsp[(5) - (5)].c)}; List_Add((yyval.l), &v); @@ -5795,7 +5830,7 @@ yyreduce: break; case 110: -#line 1288 "Gmsh.y" +#line 1289 "Gmsh.y" { std::string key((yyvsp[(2) - (3)].c)); for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ @@ -5809,7 +5844,7 @@ yyreduce: break; case 111: -#line 1299 "Gmsh.y" +#line 1300 "Gmsh.y" { std::string key((yyvsp[(2) - (5)].c)); for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ @@ -5826,7 +5861,7 @@ yyreduce: break; case 112: -#line 1314 "Gmsh.y" +#line 1315 "Gmsh.y" { std::string key((yyvsp[(2) - (3)].c)); std::string val((yyvsp[(3) - (3)].c)); @@ -5837,7 +5872,7 @@ yyreduce: break; case 115: -#line 1330 "Gmsh.y" +#line 1331 "Gmsh.y" { std::string key((yyvsp[(2) - (3)].c)); double val = (yyvsp[(3) - (3)].d); @@ -5847,7 +5882,7 @@ yyreduce: break; case 116: -#line 1338 "Gmsh.y" +#line 1339 "Gmsh.y" { std::string key((yyvsp[(2) - (3)].c)); std::string val((yyvsp[(3) - (3)].c)); @@ -5858,7 +5893,7 @@ yyreduce: break; case 117: -#line 1347 "Gmsh.y" +#line 1348 "Gmsh.y" { std::string key((yyvsp[(2) - (5)].c)); for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ @@ -5874,14 +5909,14 @@ yyreduce: break; case 118: -#line 1365 "Gmsh.y" +#line 1366 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(1) - (1)].d); ;} break; case 119: -#line 1369 "Gmsh.y" +#line 1370 "Gmsh.y" { (yyval.i) = GModel::current()->setPhysicalName (std::string((yyvsp[(1) - (1)].c)), curPhysDim, @@ -5891,14 +5926,14 @@ yyreduce: break; case 120: -#line 1379 "Gmsh.y" +#line 1380 "Gmsh.y" { (yyval.l) = 0; ;} break; case 121: -#line 1383 "Gmsh.y" +#line 1384 "Gmsh.y" { (yyval.l) = List_Create(1, 1, sizeof(Vertex*)); Vertex *v = FindPoint((int)(yyvsp[(4) - (5)].d)); @@ -5911,21 +5946,21 @@ yyreduce: break; case 122: -#line 1395 "Gmsh.y" +#line 1396 "Gmsh.y" { for(int i = 0; i < 4; i++) (yyval.v)[i] = 0.; ;} break; case 123: -#line 1399 "Gmsh.y" +#line 1400 "Gmsh.y" { for(int i = 0; i < 4; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; ;} break; case 124: -#line 1409 "Gmsh.y" +#line 1410 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindPoint(num)){ @@ -5951,14 +5986,14 @@ yyreduce: break; case 125: -#line 1432 "Gmsh.y" +#line 1433 "Gmsh.y" { curPhysDim = 0; ;} break; case 126: -#line 1436 "Gmsh.y" +#line 1437 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_POINT)){ @@ -5977,7 +6012,7 @@ yyreduce: break; case 127: -#line 1452 "Gmsh.y" +#line 1453 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -5999,7 +6034,7 @@ yyreduce: break; case 128: -#line 1474 "Gmsh.y" +#line 1475 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -6020,7 +6055,7 @@ yyreduce: break; case 129: -#line 1492 "Gmsh.y" +#line 1493 "Gmsh.y" { for (int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ double dnum; @@ -6044,7 +6079,7 @@ yyreduce: break; case 130: -#line 1513 "Gmsh.y" +#line 1514 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -6065,7 +6100,7 @@ yyreduce: break; case 131: -#line 1531 "Gmsh.y" +#line 1532 "Gmsh.y" { int num = (int)(yyvsp[(3) - (8)].d); if(FindCurve(num)){ @@ -6098,7 +6133,7 @@ yyreduce: break; case 132: -#line 1561 "Gmsh.y" +#line 1562 "Gmsh.y" { int num = (int)(yyvsp[(3) - (8)].d); if(FindCurve(num)){ @@ -6131,7 +6166,7 @@ yyreduce: break; case 133: -#line 1591 "Gmsh.y" +#line 1592 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -6152,7 +6187,7 @@ yyreduce: break; case 134: -#line 1609 "Gmsh.y" +#line 1610 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -6173,7 +6208,7 @@ yyreduce: break; case 135: -#line 1627 "Gmsh.y" +#line 1628 "Gmsh.y" { int num = (int)(yyvsp[(3) - (11)].d); if(List_Nbr((yyvsp[(6) - (11)].l)) + (int)(yyvsp[(10) - (11)].d) + 1 != List_Nbr((yyvsp[(8) - (11)].l))){ @@ -6202,7 +6237,7 @@ yyreduce: break; case 136: -#line 1653 "Gmsh.y" +#line 1654 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindEdgeLoop(num)){ @@ -6223,7 +6258,7 @@ yyreduce: break; case 137: -#line 1671 "Gmsh.y" +#line 1672 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindCurve(num)){ @@ -6244,14 +6279,14 @@ yyreduce: break; case 138: -#line 1689 "Gmsh.y" +#line 1690 "Gmsh.y" { curPhysDim = 1; ;} break; case 139: -#line 1693 "Gmsh.y" +#line 1694 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_LINE)){ @@ -6270,7 +6305,7 @@ yyreduce: break; case 140: -#line 1712 "Gmsh.y" +#line 1713 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindSurface(num)){ @@ -6291,7 +6326,7 @@ yyreduce: break; case 141: -#line 1730 "Gmsh.y" +#line 1731 "Gmsh.y" { int num = (int)(yyvsp[(4) - (9)].d), type = 0; if(FindSurface(num)){ @@ -6333,7 +6368,7 @@ yyreduce: break; case 142: -#line 1769 "Gmsh.y" +#line 1770 "Gmsh.y" { myGmshSurface = 0; (yyval.s).Type = 0; @@ -6342,7 +6377,7 @@ yyreduce: break; case 143: -#line 1775 "Gmsh.y" +#line 1776 "Gmsh.y" { myGmshSurface = gmshSurface::getSurface((int)(yyvsp[(3) - (4)].d)); (yyval.s).Type = 0; @@ -6351,7 +6386,7 @@ yyreduce: break; case 144: -#line 1781 "Gmsh.y" +#line 1782 "Gmsh.y" { int num = (int)(yyvsp[(4) - (10)].d); myGmshSurface = gmshParametricSurface::NewParametricSurface(num, (yyvsp[(7) - (10)].c), (yyvsp[(8) - (10)].c), (yyvsp[(9) - (10)].c)); @@ -6361,7 +6396,7 @@ yyreduce: break; case 145: -#line 1788 "Gmsh.y" +#line 1789 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if (List_Nbr((yyvsp[(6) - (7)].l)) != 2){ @@ -6389,7 +6424,7 @@ yyreduce: break; case 146: -#line 1813 "Gmsh.y" +#line 1814 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if (List_Nbr((yyvsp[(6) - (7)].l)) != 2){ @@ -6417,7 +6452,7 @@ yyreduce: break; case 147: -#line 1838 "Gmsh.y" +#line 1839 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindSurfaceLoop(num)){ @@ -6437,7 +6472,7 @@ yyreduce: break; case 148: -#line 1855 "Gmsh.y" +#line 1856 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindSurface(num)){ @@ -6459,7 +6494,7 @@ yyreduce: break; case 149: -#line 1875 "Gmsh.y" +#line 1876 "Gmsh.y" { int num = (int)(yyvsp[(4) - (12)].d); if(FindSurface(num)){ @@ -6495,14 +6530,14 @@ yyreduce: break; case 150: -#line 1908 "Gmsh.y" +#line 1909 "Gmsh.y" { curPhysDim = 2; ;} break; case 151: -#line 1912 "Gmsh.y" +#line 1913 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_SURFACE)){ @@ -6521,7 +6556,7 @@ yyreduce: break; case 152: -#line 1932 "Gmsh.y" +#line 1933 "Gmsh.y" { yymsg(0, "'Complex Volume' command is deprecated: use 'Volume' instead"); int num = (int)(yyvsp[(4) - (8)].d); @@ -6542,7 +6577,7 @@ yyreduce: break; case 153: -#line 1950 "Gmsh.y" +#line 1951 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindVolume(num)){ @@ -6562,7 +6597,7 @@ yyreduce: break; case 154: -#line 1967 "Gmsh.y" +#line 1968 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindVolume(num)){ @@ -6581,14 +6616,14 @@ yyreduce: break; case 155: -#line 1983 "Gmsh.y" +#line 1984 "Gmsh.y" { curPhysDim = 3; ;} break; case 156: -#line 1987 "Gmsh.y" +#line 1988 "Gmsh.y" { int num = (int)(yyvsp[(5) - (9)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_VOLUME)){ @@ -6607,7 +6642,7 @@ yyreduce: break; case 157: -#line 2009 "Gmsh.y" +#line 2010 "Gmsh.y" { TranslateShapes((yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], (yyvsp[(4) - (5)].l)); (yyval.l) = (yyvsp[(4) - (5)].l); @@ -6615,7 +6650,7 @@ yyreduce: break; case 158: -#line 2014 "Gmsh.y" +#line 2015 "Gmsh.y" { RotateShapes((yyvsp[(3) - (11)].v)[0], (yyvsp[(3) - (11)].v)[1], (yyvsp[(3) - (11)].v)[2], (yyvsp[(5) - (11)].v)[0], (yyvsp[(5) - (11)].v)[1], (yyvsp[(5) - (11)].v)[2], (yyvsp[(7) - (11)].d), (yyvsp[(10) - (11)].l)); (yyval.l) = (yyvsp[(10) - (11)].l); @@ -6623,7 +6658,7 @@ yyreduce: break; case 159: -#line 2019 "Gmsh.y" +#line 2020 "Gmsh.y" { SymmetryShapes((yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], (yyvsp[(2) - (5)].v)[3], (yyvsp[(4) - (5)].l)); (yyval.l) = (yyvsp[(4) - (5)].l); @@ -6631,7 +6666,7 @@ yyreduce: break; case 160: -#line 2024 "Gmsh.y" +#line 2025 "Gmsh.y" { DilatShapes((yyvsp[(3) - (9)].v)[0], (yyvsp[(3) - (9)].v)[1], (yyvsp[(3) - (9)].v)[2], (yyvsp[(5) - (9)].d), (yyvsp[(5) - (9)].d), (yyvsp[(5) - (9)].d), (yyvsp[(8) - (9)].l)); (yyval.l) = (yyvsp[(8) - (9)].l); @@ -6639,7 +6674,7 @@ yyreduce: break; case 161: -#line 2029 "Gmsh.y" +#line 2030 "Gmsh.y" { DilatShapes((yyvsp[(3) - (9)].v)[0], (yyvsp[(3) - (9)].v)[1], (yyvsp[(3) - (9)].v)[2], (yyvsp[(5) - (9)].v)[0], (yyvsp[(5) - (9)].v)[1], (yyvsp[(5) - (9)].v)[2], (yyvsp[(8) - (9)].l)); (yyval.l) = (yyvsp[(8) - (9)].l); @@ -6647,7 +6682,7 @@ yyreduce: break; case 162: -#line 2034 "Gmsh.y" +#line 2035 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); if(!strcmp((yyvsp[(1) - (4)].c), "Duplicata")){ @@ -6673,7 +6708,7 @@ yyreduce: break; case 163: -#line 2057 "Gmsh.y" +#line 2058 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); IntersectCurvesWithSurface((yyvsp[(4) - (9)].l), (int)(yyvsp[(8) - (9)].d), (yyval.l)); @@ -6682,7 +6717,7 @@ yyreduce: break; case 164: -#line 2063 "Gmsh.y" +#line 2064 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape*)); List_T *tmp = ListOfDouble2ListOfInt((yyvsp[(7) - (9)].l)); @@ -6693,31 +6728,31 @@ yyreduce: break; case 165: -#line 2073 "Gmsh.y" +#line 2074 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 166: -#line 2074 "Gmsh.y" +#line 2075 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 167: -#line 2079 "Gmsh.y" +#line 2080 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); ;} break; case 168: -#line 2083 "Gmsh.y" +#line 2084 "Gmsh.y" { List_Add((yyval.l), &(yyvsp[(2) - (2)].s)); ;} break; case 169: -#line 2087 "Gmsh.y" +#line 2088 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -6743,7 +6778,7 @@ yyreduce: break; case 170: -#line 2110 "Gmsh.y" +#line 2111 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -6769,7 +6804,7 @@ yyreduce: break; case 171: -#line 2133 "Gmsh.y" +#line 2134 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -6795,7 +6830,7 @@ yyreduce: break; case 172: -#line 2156 "Gmsh.y" +#line 2157 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -6821,7 +6856,7 @@ yyreduce: break; case 173: -#line 2184 "Gmsh.y" +#line 2185 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(7) - (8)].l)) == 4){ @@ -6845,7 +6880,7 @@ yyreduce: break; case 174: -#line 2205 "Gmsh.y" +#line 2206 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) int t = (int)(yyvsp[(4) - (10)].d); @@ -6874,7 +6909,7 @@ yyreduce: break; case 175: -#line 2232 "Gmsh.y" +#line 2233 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(12) - (14)].l)) == 0){ @@ -6897,7 +6932,7 @@ yyreduce: break; case 176: -#line 2253 "Gmsh.y" +#line 2254 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(14) - (16)].l)) == 0){ @@ -6921,7 +6956,7 @@ yyreduce: break; case 177: -#line 2274 "Gmsh.y" +#line 2275 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(List_Nbr((yyvsp[(10) - (12)].l)) == 1){ @@ -6944,7 +6979,7 @@ yyreduce: break; case 178: -#line 2294 "Gmsh.y" +#line 2295 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (8)].c), "Union")){ @@ -7059,7 +7094,7 @@ yyreduce: break; case 179: -#line 2406 "Gmsh.y" +#line 2407 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (8)].c), "MathEval")){ @@ -7081,7 +7116,7 @@ yyreduce: break; case 180: -#line 2425 "Gmsh.y" +#line 2426 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (6)].c), "CutMesh")){ @@ -7122,7 +7157,7 @@ yyreduce: break; case 181: -#line 2464 "Gmsh.y" +#line 2465 "Gmsh.y" { #if defined(HAVE_DINTEGRATION) if(!strcmp((yyvsp[(2) - (14)].c), "Cylinder") && List_Nbr((yyvsp[(12) - (14)].l)) == 1){ @@ -7228,7 +7263,7 @@ yyreduce: break; case 182: -#line 2572 "Gmsh.y" +#line 2573 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -7240,7 +7275,7 @@ yyreduce: break; case 183: -#line 2581 "Gmsh.y" +#line 2582 "Gmsh.y" { #if defined(HAVE_MESH) GModel::current()->getFields()->deleteField((int)(yyvsp[(4) - (6)].d)); @@ -7249,7 +7284,7 @@ yyreduce: break; case 184: -#line 2587 "Gmsh.y" +#line 2588 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -7267,7 +7302,7 @@ yyreduce: break; case 185: -#line 2602 "Gmsh.y" +#line 2603 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Meshes") || !strcmp((yyvsp[(2) - (3)].c), "All")){ ClearProject(); @@ -7298,7 +7333,7 @@ yyreduce: break; case 186: -#line 2630 "Gmsh.y" +#line 2631 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (4)].c), "Empty") && !strcmp((yyvsp[(3) - (4)].c), "Views")){ @@ -7313,7 +7348,7 @@ yyreduce: break; case 187: -#line 2647 "Gmsh.y" +#line 2648 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ Shape TheShape; @@ -7325,7 +7360,7 @@ yyreduce: break; case 188: -#line 2656 "Gmsh.y" +#line 2657 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(5) - (6)].l)); i++){ Shape TheShape; @@ -7337,7 +7372,7 @@ yyreduce: break; case 189: -#line 2670 "Gmsh.y" +#line 2671 "Gmsh.y" { for(int i = 0; i < 4; i++) VisibilityShape((yyvsp[(2) - (3)].c), i, 1, false); @@ -7346,7 +7381,7 @@ yyreduce: break; case 190: -#line 2676 "Gmsh.y" +#line 2677 "Gmsh.y" { for(int i = 0; i < 4; i++) VisibilityShape((yyvsp[(2) - (3)].c), i, 0, false); @@ -7355,7 +7390,7 @@ yyreduce: break; case 191: -#line 2682 "Gmsh.y" +#line 2683 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -7367,7 +7402,7 @@ yyreduce: break; case 192: -#line 2691 "Gmsh.y" +#line 2692 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ Shape TheShape; @@ -7379,7 +7414,7 @@ yyreduce: break; case 193: -#line 2700 "Gmsh.y" +#line 2701 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -7391,7 +7426,7 @@ yyreduce: break; case 194: -#line 2709 "Gmsh.y" +#line 2710 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ Shape TheShape; @@ -7403,7 +7438,7 @@ yyreduce: break; case 195: -#line 2723 "Gmsh.y" +#line 2724 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Include")){ std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(2) - (3)].c)); @@ -7459,7 +7494,7 @@ yyreduce: break; case 196: -#line 2776 "Gmsh.y" +#line 2777 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(1) - (7)].c), "Save") && !strcmp((yyvsp[(2) - (7)].c), "View")){ @@ -7479,7 +7514,7 @@ yyreduce: break; case 197: -#line 2793 "Gmsh.y" +#line 2794 "Gmsh.y" { #if defined(HAVE_POST) && defined(HAVE_MESH) if(!strcmp((yyvsp[(1) - (7)].c), "Background") && !strcmp((yyvsp[(2) - (7)].c), "Mesh") && !strcmp((yyvsp[(3) - (7)].c), "View")){ @@ -7497,7 +7532,7 @@ yyreduce: break; case 198: -#line 2808 "Gmsh.y" +#line 2809 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Sleep")){ SleepInSeconds((yyvsp[(2) - (3)].d)); @@ -7519,7 +7554,7 @@ yyreduce: break; case 199: -#line 2827 "Gmsh.y" +#line 2828 "Gmsh.y" { #if defined(HAVE_PLUGINS) try { @@ -7534,7 +7569,7 @@ yyreduce: break; case 200: -#line 2839 "Gmsh.y" +#line 2840 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (3)].c), "ElementsFromAllViews")) @@ -7561,14 +7596,14 @@ yyreduce: break; case 201: -#line 2863 "Gmsh.y" +#line 2864 "Gmsh.y" { Msg::Exit(0); ;} break; case 202: -#line 2867 "Gmsh.y" +#line 2868 "Gmsh.y" { gmsh_yyerrorstate = 999; // this will be checked when yyparse returns YYABORT; @@ -7576,7 +7611,7 @@ yyreduce: break; case 203: -#line 2872 "Gmsh.y" +#line 2873 "Gmsh.y" { // FIXME: this is a hack to force a transfer from the old DB to // the new DB. This will become unnecessary if/when we fill the @@ -7586,7 +7621,7 @@ yyreduce: break; case 204: -#line 2879 "Gmsh.y" +#line 2880 "Gmsh.y" { CTX::instance()->forcedBBox = 0; GModel::current()->importGEOInternals(); @@ -7595,7 +7630,7 @@ yyreduce: break; case 205: -#line 2885 "Gmsh.y" +#line 2886 "Gmsh.y" { CTX::instance()->forcedBBox = 1; SetBoundingBox((yyvsp[(3) - (15)].d), (yyvsp[(5) - (15)].d), (yyvsp[(7) - (15)].d), (yyvsp[(9) - (15)].d), (yyvsp[(11) - (15)].d), (yyvsp[(13) - (15)].d)); @@ -7603,7 +7638,7 @@ yyreduce: break; case 206: -#line 2890 "Gmsh.y" +#line 2891 "Gmsh.y" { #if defined(HAVE_OPENGL) drawContext::global()->draw(); @@ -7612,7 +7647,7 @@ yyreduce: break; case 207: -#line 2896 "Gmsh.y" +#line 2897 "Gmsh.y" { #if defined(HAVE_OPENGL) CTX::instance()->mesh.changed = ENT_ALL; @@ -7623,21 +7658,21 @@ yyreduce: break; case 208: -#line 2904 "Gmsh.y" +#line 2905 "Gmsh.y" { GModel::current()->createTopologyFromMesh(); ;} break; case 209: -#line 2908 "Gmsh.y" +#line 2909 "Gmsh.y" { GModel::current()->createTopologyFromMesh(1); ;} break; case 210: -#line 2912 "Gmsh.y" +#line 2913 "Gmsh.y" { GModel::current()->importGEOInternals(); GModel::current()->refineMesh(CTX::instance()->mesh.secondOrderLinear); @@ -7645,7 +7680,7 @@ yyreduce: break; case 211: -#line 2918 "Gmsh.y" +#line 2919 "Gmsh.y" { int lock = CTX::instance()->lock; CTX::instance()->lock = 0; @@ -7702,7 +7737,7 @@ yyreduce: break; case 212: -#line 2972 "Gmsh.y" +#line 2973 "Gmsh.y" { #if defined(HAVE_MESH) SetOrderN(GModel::current(), (yyvsp[(2) - (3)].d), CTX::instance()->mesh.secondOrderLinear, @@ -7713,7 +7748,7 @@ yyreduce: break; case 213: -#line 2985 "Gmsh.y" +#line 2986 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (6)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (6)].d); @@ -7733,7 +7768,7 @@ yyreduce: break; case 214: -#line 3002 "Gmsh.y" +#line 3003 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (8)].d); @@ -7753,7 +7788,7 @@ yyreduce: break; case 215: -#line 3019 "Gmsh.y" +#line 3020 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (8)].d); @@ -7777,7 +7812,7 @@ yyreduce: break; case 216: -#line 3040 "Gmsh.y" +#line 3041 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (10)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (10)].d); @@ -7801,7 +7836,7 @@ yyreduce: break; case 217: -#line 3061 "Gmsh.y" +#line 3062 "Gmsh.y" { if(ImbricatedLoop <= 0){ yymsg(0, "Invalid For/EndFor loop"); @@ -7839,7 +7874,7 @@ yyreduce: break; case 218: -#line 3096 "Gmsh.y" +#line 3097 "Gmsh.y" { if(!FunctionManager::Instance()->createFunction ((yyvsp[(2) - (2)].c), gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -7850,7 +7885,7 @@ yyreduce: break; case 219: -#line 3104 "Gmsh.y" +#line 3105 "Gmsh.y" { if(!FunctionManager::Instance()->leaveFunction (&gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -7859,7 +7894,7 @@ yyreduce: break; case 220: -#line 3110 "Gmsh.y" +#line 3111 "Gmsh.y" { if(!FunctionManager::Instance()->enterFunction ((yyvsp[(2) - (3)].c), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -7869,20 +7904,20 @@ yyreduce: break; case 221: -#line 3117 "Gmsh.y" +#line 3118 "Gmsh.y" { if(!(yyvsp[(3) - (4)].d)) skip_until("If", "EndIf"); ;} break; case 222: -#line 3121 "Gmsh.y" +#line 3122 "Gmsh.y" { ;} break; case 223: -#line 3130 "Gmsh.y" +#line 3131 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (5)].l), @@ -7893,7 +7928,7 @@ yyreduce: break; case 224: -#line 3138 "Gmsh.y" +#line 3139 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(ROTATE, (yyvsp[(10) - (11)].l), @@ -7904,7 +7939,7 @@ yyreduce: break; case 225: -#line 3146 "Gmsh.y" +#line 3147 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (13)].l), @@ -7915,7 +7950,7 @@ yyreduce: break; case 226: -#line 3154 "Gmsh.y" +#line 3155 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7924,7 +7959,7 @@ yyreduce: break; case 227: -#line 3160 "Gmsh.y" +#line 3161 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (7)].l), @@ -7935,7 +7970,7 @@ yyreduce: break; case 228: -#line 3168 "Gmsh.y" +#line 3169 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7944,7 +7979,7 @@ yyreduce: break; case 229: -#line 3174 "Gmsh.y" +#line 3175 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(ROTATE, (yyvsp[(10) - (13)].l), @@ -7955,7 +7990,7 @@ yyreduce: break; case 230: -#line 3182 "Gmsh.y" +#line 3183 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7964,7 +7999,7 @@ yyreduce: break; case 231: -#line 3188 "Gmsh.y" +#line 3189 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (15)].l), @@ -7975,7 +8010,7 @@ yyreduce: break; case 232: -#line 3196 "Gmsh.y" +#line 3197 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -7984,7 +8019,7 @@ yyreduce: break; case 233: -#line 3202 "Gmsh.y" +#line 3203 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(BOUNDARY_LAYER, (yyvsp[(3) - (6)].l), 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., @@ -7994,7 +8029,7 @@ yyreduce: break; case 234: -#line 3210 "Gmsh.y" +#line 3211 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (8)].d), @@ -8004,7 +8039,7 @@ yyreduce: break; case 235: -#line 3217 "Gmsh.y" +#line 3218 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (8)].d), @@ -8014,7 +8049,7 @@ yyreduce: break; case 236: -#line 3224 "Gmsh.y" +#line 3225 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (8)].d), @@ -8024,7 +8059,7 @@ yyreduce: break; case 237: -#line 3231 "Gmsh.y" +#line 3232 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), @@ -8034,7 +8069,7 @@ yyreduce: break; case 238: -#line 3238 "Gmsh.y" +#line 3239 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), @@ -8044,7 +8079,7 @@ yyreduce: break; case 239: -#line 3245 "Gmsh.y" +#line 3246 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), @@ -8054,7 +8089,7 @@ yyreduce: break; case 240: -#line 3252 "Gmsh.y" +#line 3253 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (14)].d), @@ -8064,7 +8099,7 @@ yyreduce: break; case 241: -#line 3259 "Gmsh.y" +#line 3260 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (14)].d), @@ -8074,7 +8109,7 @@ yyreduce: break; case 242: -#line 3266 "Gmsh.y" +#line 3267 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (14)].d), @@ -8084,7 +8119,7 @@ yyreduce: break; case 243: -#line 3273 "Gmsh.y" +#line 3274 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -8093,7 +8128,7 @@ yyreduce: break; case 244: -#line 3279 "Gmsh.y" +#line 3280 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), @@ -8103,7 +8138,7 @@ yyreduce: break; case 245: -#line 3286 "Gmsh.y" +#line 3287 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -8112,7 +8147,7 @@ yyreduce: break; case 246: -#line 3292 "Gmsh.y" +#line 3293 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), @@ -8122,7 +8157,7 @@ yyreduce: break; case 247: -#line 3299 "Gmsh.y" +#line 3300 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -8131,7 +8166,7 @@ yyreduce: break; case 248: -#line 3305 "Gmsh.y" +#line 3306 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), @@ -8141,7 +8176,7 @@ yyreduce: break; case 249: -#line 3312 "Gmsh.y" +#line 3313 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -8150,7 +8185,7 @@ yyreduce: break; case 250: -#line 3318 "Gmsh.y" +#line 3319 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (16)].d), @@ -8160,7 +8195,7 @@ yyreduce: break; case 251: -#line 3325 "Gmsh.y" +#line 3326 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -8169,7 +8204,7 @@ yyreduce: break; case 252: -#line 3331 "Gmsh.y" +#line 3332 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (16)].d), @@ -8179,7 +8214,7 @@ yyreduce: break; case 253: -#line 3338 "Gmsh.y" +#line 3339 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -8188,7 +8223,7 @@ yyreduce: break; case 254: -#line 3344 "Gmsh.y" +#line 3345 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (16)].d), @@ -8198,7 +8233,7 @@ yyreduce: break; case 255: -#line 3351 "Gmsh.y" +#line 3352 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -8207,7 +8242,7 @@ yyreduce: break; case 256: -#line 3357 "Gmsh.y" +#line 3358 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (18)].d), @@ -8217,7 +8252,7 @@ yyreduce: break; case 257: -#line 3364 "Gmsh.y" +#line 3365 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -8226,7 +8261,7 @@ yyreduce: break; case 258: -#line 3370 "Gmsh.y" +#line 3371 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (18)].d), @@ -8236,7 +8271,7 @@ yyreduce: break; case 259: -#line 3377 "Gmsh.y" +#line 3378 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -8245,7 +8280,7 @@ yyreduce: break; case 260: -#line 3383 "Gmsh.y" +#line 3384 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (18)].d), @@ -8255,19 +8290,19 @@ yyreduce: break; case 261: -#line 3394 "Gmsh.y" +#line 3395 "Gmsh.y" { ;} break; case 262: -#line 3397 "Gmsh.y" +#line 3398 "Gmsh.y" { ;} break; case 263: -#line 3403 "Gmsh.y" +#line 3404 "Gmsh.y" { int n = (int)fabs((yyvsp[(3) - (5)].d)); if(n){ // we accept n==0 to easily disable layers @@ -8282,7 +8317,7 @@ yyreduce: break; case 264: -#line 3415 "Gmsh.y" +#line 3416 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = List_Nbr((yyvsp[(3) - (7)].l)); @@ -8305,7 +8340,7 @@ yyreduce: break; case 265: -#line 3435 "Gmsh.y" +#line 3436 "Gmsh.y" { yymsg(0, "Explicit region numbers in layers are deprecated"); extr.mesh.ExtrudeMesh = true; @@ -8331,77 +8366,77 @@ yyreduce: break; case 266: -#line 3459 "Gmsh.y" +#line 3460 "Gmsh.y" { extr.mesh.ScaleLast = true; ;} break; case 267: -#line 3464 "Gmsh.y" +#line 3465 "Gmsh.y" { extr.mesh.Recombine = true; ;} break; case 268: -#line 3468 "Gmsh.y" +#line 3469 "Gmsh.y" { yymsg(0, "Keyword 'QuadTriSngl' deprecated. Use 'QuadTriNoNewVerts' instead."); ;} break; case 269: -#line 3472 "Gmsh.y" +#line 3473 "Gmsh.y" { yymsg(0, "Keyword 'QuadTriSngl' deprecated. Use 'QuadTriNoNewVerts' instead."); ;} break; case 270: -#line 3476 "Gmsh.y" +#line 3477 "Gmsh.y" { yymsg(0, "Method 'QuadTriDbl' deprecated. Use 'QuadTriAddVerts' instead, which has no requirement for the number of extrusion layers and meshes with body-centered vertices."); ;} break; case 271: -#line 3480 "Gmsh.y" +#line 3481 "Gmsh.y" { yymsg(0, "Method 'QuadTriDbl' deprecated. Use 'QuadTriAddVerts' instead, which has no requirement for the number of extrusion layers and meshes with body-centered vertices."); ;} break; case 272: -#line 3484 "Gmsh.y" +#line 3485 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_ADDVERTS_1; ;} break; case 273: -#line 3488 "Gmsh.y" +#line 3489 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_ADDVERTS_1_RECOMB; ;} break; case 274: -#line 3492 "Gmsh.y" +#line 3493 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_NOVERTS_1; ;} break; case 275: -#line 3496 "Gmsh.y" +#line 3497 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_NOVERTS_1_RECOMB; ;} break; case 276: -#line 3500 "Gmsh.y" +#line 3501 "Gmsh.y" { int num = (int)(yyvsp[(3) - (9)].d); if(FindSurface(num)){ @@ -8423,7 +8458,7 @@ yyreduce: break; case 277: -#line 3519 "Gmsh.y" +#line 3520 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (6)].c), "Index")) extr.mesh.BoundaryLayerIndex = (yyvsp[(4) - (6)].d); @@ -8434,14 +8469,14 @@ yyreduce: break; case 278: -#line 3531 "Gmsh.y" +#line 3532 "Gmsh.y" { (yyval.v)[0] = (yyval.v)[1] = 1.; ;} break; case 279: -#line 3535 "Gmsh.y" +#line 3536 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Progression") || !strcmp((yyvsp[(2) - (3)].c), "Power")) (yyval.v)[0] = 1.; @@ -8457,14 +8492,14 @@ yyreduce: break; case 280: -#line 3550 "Gmsh.y" +#line 3551 "Gmsh.y" { (yyval.i) = -1; // left ;} break; case 281: -#line 3554 "Gmsh.y" +#line 3555 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (1)].c), "Right")) (yyval.i) = 1; @@ -8481,35 +8516,35 @@ yyreduce: break; case 282: -#line 3570 "Gmsh.y" +#line 3571 "Gmsh.y" { (yyval.l) = List_Create(1, 1, sizeof(double)); ;} break; case 283: -#line 3574 "Gmsh.y" +#line 3575 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); ;} break; case 284: -#line 3579 "Gmsh.y" +#line 3580 "Gmsh.y" { (yyval.i) = 45; ;} break; case 285: -#line 3583 "Gmsh.y" +#line 3584 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(2) - (2)].d); ;} break; case 286: -#line 3590 "Gmsh.y" +#line 3591 "Gmsh.y" { int type = (int)(yyvsp[(6) - (7)].v)[0]; double coef = fabs((yyvsp[(6) - (7)].v)[1]); @@ -8568,7 +8603,7 @@ yyreduce: break; case 287: -#line 3646 "Gmsh.y" +#line 3647 "Gmsh.y" { int k = List_Nbr((yyvsp[(4) - (6)].l)); if(k != 0 && k != 3 && k != 4){ @@ -8641,7 +8676,7 @@ yyreduce: break; case 288: -#line 3716 "Gmsh.y" +#line 3717 "Gmsh.y" { yymsg(1, "Elliptic Surface is deprecated: use Transfinite instead (with smoothing)"); List_Delete((yyvsp[(7) - (8)].l)); @@ -8649,7 +8684,7 @@ yyreduce: break; case 289: -#line 3721 "Gmsh.y" +#line 3722 "Gmsh.y" { int k = List_Nbr((yyvsp[(4) - (5)].l)); if(k != 0 && k != 6 && k != 8){ @@ -8719,7 +8754,7 @@ yyreduce: break; case 290: -#line 3788 "Gmsh.y" +#line 3789 "Gmsh.y" { if(!(yyvsp[(2) - (3)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Volumes); @@ -8758,7 +8793,7 @@ yyreduce: break; case 291: -#line 3824 "Gmsh.y" +#line 3825 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (7)].l)); i++){ double d; @@ -8769,7 +8804,7 @@ yyreduce: break; case 292: -#line 3832 "Gmsh.y" +#line 3833 "Gmsh.y" { if(!(yyvsp[(3) - (5)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Surfaces); @@ -8815,7 +8850,7 @@ yyreduce: break; case 293: -#line 3875 "Gmsh.y" +#line 3876 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Volumes); @@ -8857,7 +8892,7 @@ yyreduce: break; case 294: -#line 3914 "Gmsh.y" +#line 3915 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -8880,7 +8915,7 @@ yyreduce: break; case 295: -#line 3934 "Gmsh.y" +#line 3935 "Gmsh.y" { if(List_Nbr((yyvsp[(5) - (6)].l)) != List_Nbr((yyvsp[(3) - (6)].l))){ yymsg(0, "Number of master (%d) different from number of slave (%d) lines", @@ -8910,7 +8945,7 @@ yyreduce: break; case 296: -#line 3962 "Gmsh.y" +#line 3963 "Gmsh.y" { if (List_Nbr((yyvsp[(5) - (12)].l)) != List_Nbr((yyvsp[(10) - (12)].l))){ yymsg(0, "Number of master surface edges (%d) different from number of " @@ -8952,7 +8987,7 @@ yyreduce: break; case 297: -#line 4001 "Gmsh.y" +#line 4002 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); if(s){ @@ -8978,7 +9013,7 @@ yyreduce: break; case 298: -#line 4024 "Gmsh.y" +#line 4025 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); if(s){ @@ -9004,21 +9039,21 @@ yyreduce: break; case 299: -#line 4047 "Gmsh.y" +#line 4048 "Gmsh.y" { Msg::Error("Point in Volume not implemented yet"); ;} break; case 300: -#line 4051 "Gmsh.y" +#line 4052 "Gmsh.y" { Msg::Error("Line in Volume not implemented yet"); ;} break; case 301: -#line 4055 "Gmsh.y" +#line 4056 "Gmsh.y" { Volume *v = FindVolume((int)(yyvsp[(8) - (10)].d)); if(v){ @@ -9044,7 +9079,7 @@ yyreduce: break; case 302: -#line 4078 "Gmsh.y" +#line 4079 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Surfaces); @@ -9086,7 +9121,7 @@ yyreduce: break; case 303: -#line 4117 "Gmsh.y" +#line 4118 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ List_T *tmp = Tree2List(GModel::current()->getGEOInternals()->Curves); @@ -9128,7 +9163,7 @@ yyreduce: break; case 304: -#line 4156 "Gmsh.y" +#line 4157 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ for(GModel::viter it = GModel::current()->firstVertex(); @@ -9152,7 +9187,7 @@ yyreduce: break; case 305: -#line 4177 "Gmsh.y" +#line 4178 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ for(GModel::eiter it = GModel::current()->firstEdge(); @@ -9176,7 +9211,7 @@ yyreduce: break; case 306: -#line 4198 "Gmsh.y" +#line 4199 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ for(GModel::fiter it = GModel::current()->firstFace(); @@ -9200,14 +9235,14 @@ yyreduce: break; case 307: -#line 4225 "Gmsh.y" +#line 4226 "Gmsh.y" { ReplaceAllDuplicates(); ;} break; case 308: -#line 4229 "Gmsh.y" +#line 4230 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Geometry")) ReplaceAllDuplicates(); @@ -9220,7 +9255,7 @@ yyreduce: break; case 309: -#line 4239 "Gmsh.y" +#line 4240 "Gmsh.y" { if(List_Nbr((yyvsp[(4) - (6)].l)) >= 2){ double d; @@ -9253,22 +9288,22 @@ yyreduce: break; case 310: -#line 4273 "Gmsh.y" +#line 4274 "Gmsh.y" { (yyval.c) = (char*)"Homology"; ;} break; case 311: -#line 4274 "Gmsh.y" +#line 4275 "Gmsh.y" { (yyval.c) = (char*)"Cohomology"; ;} break; case 312: -#line 4275 "Gmsh.y" +#line 4276 "Gmsh.y" { (yyval.c) = (char*)"Betti"; ;} break; case 313: -#line 4280 "Gmsh.y" +#line 4281 "Gmsh.y" { std::vector<int> domain, subdomain, dim; for(int i = 0; i < 4; i++) dim.push_back(i); @@ -9277,7 +9312,7 @@ yyreduce: break; case 314: -#line 4286 "Gmsh.y" +#line 4287 "Gmsh.y" { std::vector<int> domain, subdomain, dim; for(int i = 0; i < List_Nbr((yyvsp[(3) - (5)].l)); i++){ @@ -9292,7 +9327,7 @@ yyreduce: break; case 315: -#line 4298 "Gmsh.y" +#line 4299 "Gmsh.y" { std::vector<int> domain, subdomain, dim; for(int i = 0; i < List_Nbr((yyvsp[(3) - (7)].l)); i++){ @@ -9313,7 +9348,7 @@ yyreduce: break; case 316: -#line 4316 "Gmsh.y" +#line 4317 "Gmsh.y" { std::vector<int> domain, subdomain, dim; for(int i = 0; i < List_Nbr((yyvsp[(6) - (10)].l)); i++){ @@ -9339,47 +9374,47 @@ yyreduce: break; case 317: -#line 4343 "Gmsh.y" +#line 4344 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; case 318: -#line 4344 "Gmsh.y" +#line 4345 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (3)].d); ;} break; case 319: -#line 4345 "Gmsh.y" +#line 4346 "Gmsh.y" { (yyval.d) = -(yyvsp[(2) - (2)].d); ;} break; case 320: -#line 4346 "Gmsh.y" +#line 4347 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (2)].d); ;} break; case 321: -#line 4347 "Gmsh.y" +#line 4348 "Gmsh.y" { (yyval.d) = !(yyvsp[(2) - (2)].d); ;} break; case 322: -#line 4348 "Gmsh.y" +#line 4349 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;} break; case 323: -#line 4349 "Gmsh.y" +#line 4350 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;} break; case 324: -#line 4350 "Gmsh.y" +#line 4351 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;} break; case 325: -#line 4352 "Gmsh.y" +#line 4353 "Gmsh.y" { if(!(yyvsp[(3) - (3)].d)) yymsg(0, "Division by zero in '%g / %g'", (yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); @@ -9389,327 +9424,332 @@ yyreduce: break; case 326: -#line 4358 "Gmsh.y" +#line 4359 "Gmsh.y" { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;} break; case 327: -#line 4359 "Gmsh.y" +#line 4360 "Gmsh.y" { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;} break; case 328: -#line 4360 "Gmsh.y" +#line 4361 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;} break; case 329: -#line 4361 "Gmsh.y" +#line 4362 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;} break; case 330: -#line 4362 "Gmsh.y" +#line 4363 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;} break; case 331: -#line 4363 "Gmsh.y" +#line 4364 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;} break; case 332: -#line 4364 "Gmsh.y" +#line 4365 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;} break; case 333: -#line 4365 "Gmsh.y" +#line 4366 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;} break; case 334: -#line 4366 "Gmsh.y" +#line 4367 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;} break; case 335: -#line 4367 "Gmsh.y" +#line 4368 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;} break; case 336: -#line 4368 "Gmsh.y" +#line 4369 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;} break; case 337: -#line 4369 "Gmsh.y" +#line 4370 "Gmsh.y" { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; case 338: -#line 4370 "Gmsh.y" +#line 4371 "Gmsh.y" { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; case 339: -#line 4371 "Gmsh.y" +#line 4372 "Gmsh.y" { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; case 340: -#line 4372 "Gmsh.y" +#line 4373 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; case 341: -#line 4373 "Gmsh.y" +#line 4374 "Gmsh.y" { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; case 342: -#line 4374 "Gmsh.y" +#line 4375 "Gmsh.y" { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; case 343: -#line 4375 "Gmsh.y" +#line 4376 "Gmsh.y" { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; case 344: -#line 4376 "Gmsh.y" +#line 4377 "Gmsh.y" { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; case 345: -#line 4377 "Gmsh.y" +#line 4378 "Gmsh.y" { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; case 346: -#line 4378 "Gmsh.y" +#line 4379 "Gmsh.y" { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; case 347: -#line 4379 "Gmsh.y" +#line 4380 "Gmsh.y" { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; case 348: -#line 4380 "Gmsh.y" +#line 4381 "Gmsh.y" { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; case 349: -#line 4381 "Gmsh.y" +#line 4382 "Gmsh.y" { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; case 350: -#line 4382 "Gmsh.y" +#line 4383 "Gmsh.y" { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; case 351: -#line 4383 "Gmsh.y" +#line 4384 "Gmsh.y" { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; case 352: -#line 4384 "Gmsh.y" +#line 4385 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; case 353: -#line 4385 "Gmsh.y" +#line 4386 "Gmsh.y" { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; case 354: -#line 4386 "Gmsh.y" +#line 4387 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d) + 0.5); ;} break; case 355: -#line 4387 "Gmsh.y" +#line 4388 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 356: -#line 4388 "Gmsh.y" +#line 4389 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 357: -#line 4389 "Gmsh.y" +#line 4390 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; case 358: -#line 4390 "Gmsh.y" +#line 4391 "Gmsh.y" { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; case 359: -#line 4393 "Gmsh.y" +#line 4394 "Gmsh.y" { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; case 360: -#line 4394 "Gmsh.y" +#line 4395 "Gmsh.y" { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; case 361: -#line 4395 "Gmsh.y" +#line 4396 "Gmsh.y" { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; case 362: -#line 4396 "Gmsh.y" +#line 4397 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; case 363: -#line 4397 "Gmsh.y" +#line 4398 "Gmsh.y" { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; case 364: -#line 4398 "Gmsh.y" +#line 4399 "Gmsh.y" { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; case 365: -#line 4399 "Gmsh.y" +#line 4400 "Gmsh.y" { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; case 366: -#line 4400 "Gmsh.y" +#line 4401 "Gmsh.y" { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; case 367: -#line 4401 "Gmsh.y" +#line 4402 "Gmsh.y" { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; case 368: -#line 4402 "Gmsh.y" +#line 4403 "Gmsh.y" { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; case 369: -#line 4403 "Gmsh.y" +#line 4404 "Gmsh.y" { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; case 370: -#line 4404 "Gmsh.y" +#line 4405 "Gmsh.y" { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; case 371: -#line 4405 "Gmsh.y" +#line 4406 "Gmsh.y" { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; case 372: -#line 4406 "Gmsh.y" +#line 4407 "Gmsh.y" { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; case 373: -#line 4407 "Gmsh.y" +#line 4408 "Gmsh.y" { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; case 374: -#line 4408 "Gmsh.y" +#line 4409 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; case 375: -#line 4409 "Gmsh.y" +#line 4410 "Gmsh.y" { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; case 376: -#line 4410 "Gmsh.y" +#line 4411 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d) + 0.5); ;} break; case 377: -#line 4411 "Gmsh.y" +#line 4412 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 378: -#line 4412 "Gmsh.y" +#line 4413 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 379: -#line 4413 "Gmsh.y" +#line 4414 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; case 380: -#line 4414 "Gmsh.y" +#line 4415 "Gmsh.y" { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; case 381: -#line 4423 "Gmsh.y" +#line 4424 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; case 382: -#line 4424 "Gmsh.y" +#line 4425 "Gmsh.y" { (yyval.d) = 3.141592653589793; ;} break; case 383: -#line 4425 "Gmsh.y" +#line 4426 "Gmsh.y" { (yyval.d) = Msg::GetCommRank(); ;} break; case 384: -#line 4426 "Gmsh.y" +#line 4427 "Gmsh.y" { (yyval.d) = Msg::GetCommSize(); ;} break; case 385: -#line 4427 "Gmsh.y" +#line 4428 "Gmsh.y" { (yyval.d) = GetGmshMajorVersion(); ;} break; case 386: -#line 4428 "Gmsh.y" +#line 4429 "Gmsh.y" { (yyval.d) = GetGmshMinorVersion(); ;} break; case 387: -#line 4429 "Gmsh.y" +#line 4430 "Gmsh.y" { (yyval.d) = GetGmshPatchVersion(); ;} break; case 388: -#line 4430 "Gmsh.y" +#line 4431 "Gmsh.y" { (yyval.d) = Cpu(); ;} break; case 389: -#line 4431 "Gmsh.y" +#line 4432 "Gmsh.y" { (yyval.d) = GetMemoryUsage()/1024./1024.; ;} break; case 390: -#line 4436 "Gmsh.y" +#line 4433 "Gmsh.y" + { (yyval.d) = TotalRam(); ;} + break; + + case 391: +#line 4438 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (1)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (1)].c)); @@ -9728,8 +9768,8 @@ yyreduce: ;} break; - case 391: -#line 4454 "Gmsh.y" + case 392: +#line 4455 "Gmsh.y" { int index = (int)(yyvsp[(3) - (4)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ @@ -9749,8 +9789,16 @@ yyreduce: ;} break; - case 392: -#line 4472 "Gmsh.y" + case 393: +#line 4473 "Gmsh.y" + { + (yyval.d) = gmsh_yysymbols.count((yyvsp[(3) - (4)].c)); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 394: +#line 4478 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(2) - (4)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(2) - (4)].c)); @@ -9764,8 +9812,8 @@ yyreduce: ;} break; - case 393: -#line 4484 "Gmsh.y" + case 395: +#line 4490 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (2)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (2)].c)); @@ -9784,8 +9832,8 @@ yyreduce: ;} break; - case 394: -#line 4501 "Gmsh.y" + case 396: +#line 4507 "Gmsh.y" { int index = (int)(yyvsp[(3) - (5)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ @@ -9805,24 +9853,24 @@ yyreduce: ;} break; - case 395: -#line 4522 "Gmsh.y" + case 397: +#line 4528 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), (yyval.d)); Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(3) - (3)].c)); ;} break; - case 396: -#line 4527 "Gmsh.y" + case 398: +#line 4533 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), (yyval.d)); Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); ;} break; - case 397: -#line 4532 "Gmsh.y" + case 399: +#line 4538 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (4)].c), 0, (yyvsp[(3) - (4)].c), d)){ @@ -9834,8 +9882,8 @@ yyreduce: ;} break; - case 398: -#line 4542 "Gmsh.y" + case 400: +#line 4548 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c), d)){ @@ -9847,16 +9895,16 @@ yyreduce: ;} break; - case 399: -#line 4552 "Gmsh.y" + case 401: +#line 4558 "Gmsh.y" { (yyval.d) = Msg::GetValue((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); Free((yyvsp[(3) - (6)].c)); ;} break; - case 400: -#line 4557 "Gmsh.y" + case 402: +#line 4563 "Gmsh.y" { std::string s((yyvsp[(3) - (6)].c)), substr((yyvsp[(5) - (6)].c)); if(s.find(substr) != std::string::npos) @@ -9867,16 +9915,16 @@ yyreduce: ;} break; - case 401: -#line 4566 "Gmsh.y" + case 403: +#line 4572 "Gmsh.y" { (yyval.d) = strcmp((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c)); ;} break; - case 402: -#line 4571 "Gmsh.y" + case 404: +#line 4577 "Gmsh.y" { int align = 0, font = 0, fontsize = CTX::instance()->glFontSize; if(List_Nbr((yyvsp[(3) - (4)].l)) % 2){ @@ -9902,116 +9950,116 @@ yyreduce: ;} break; - case 403: -#line 4598 "Gmsh.y" + case 405: +#line 4604 "Gmsh.y" { memcpy((yyval.v), (yyvsp[(1) - (1)].v), 5*sizeof(double)); ;} break; - case 404: -#line 4602 "Gmsh.y" + case 406: +#line 4608 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = -(yyvsp[(2) - (2)].v)[i]; ;} break; - case 405: -#line 4606 "Gmsh.y" + case 407: +#line 4612 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; ;} break; - case 406: -#line 4610 "Gmsh.y" + case 408: +#line 4616 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] - (yyvsp[(3) - (3)].v)[i]; ;} break; - case 407: -#line 4614 "Gmsh.y" + case 409: +#line 4620 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] + (yyvsp[(3) - (3)].v)[i]; ;} break; - case 408: -#line 4621 "Gmsh.y" + case 410: +#line 4627 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (11)].d); (yyval.v)[1] = (yyvsp[(4) - (11)].d); (yyval.v)[2] = (yyvsp[(6) - (11)].d); (yyval.v)[3] = (yyvsp[(8) - (11)].d); (yyval.v)[4] = (yyvsp[(10) - (11)].d); ;} break; - case 409: -#line 4625 "Gmsh.y" + case 411: +#line 4631 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (9)].d); (yyval.v)[1] = (yyvsp[(4) - (9)].d); (yyval.v)[2] = (yyvsp[(6) - (9)].d); (yyval.v)[3] = (yyvsp[(8) - (9)].d); (yyval.v)[4] = 1.0; ;} break; - case 410: -#line 4629 "Gmsh.y" + case 412: +#line 4635 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; ;} break; - case 411: -#line 4633 "Gmsh.y" + case 413: +#line 4639 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; ;} break; - case 412: -#line 4640 "Gmsh.y" + case 414: +#line 4646 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(List_T*)); List_Add((yyval.l), &((yyvsp[(1) - (1)].l))); ;} break; - case 413: -#line 4645 "Gmsh.y" + case 415: +#line 4651 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].l))); ;} break; - case 414: -#line 4652 "Gmsh.y" + case 416: +#line 4658 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); ;} break; - case 415: -#line 4657 "Gmsh.y" + case 417: +#line 4663 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 416: -#line 4661 "Gmsh.y" + case 418: +#line 4667 "Gmsh.y" { // creates an empty list (yyval.l) = List_Create(2, 1, sizeof(double)); ;} break; - case 417: -#line 4666 "Gmsh.y" + case 419: +#line 4672 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} break; - case 418: -#line 4670 "Gmsh.y" + case 420: +#line 4676 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (4)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -10021,8 +10069,8 @@ yyreduce: ;} break; - case 419: -#line 4678 "Gmsh.y" + case 421: +#line 4684 "Gmsh.y" { (yyval.l) = (yyvsp[(4) - (5)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -10032,15 +10080,15 @@ yyreduce: ;} break; - case 420: -#line 4689 "Gmsh.y" + case 422: +#line 4695 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 421: -#line 4693 "Gmsh.y" + case 423: +#line 4699 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (1)].c), "*") || !strcmp((yyvsp[(1) - (1)].c), "all")) (yyval.l) = 0; @@ -10051,8 +10099,8 @@ yyreduce: ;} break; - case 422: -#line 4705 "Gmsh.y" + case 424: +#line 4711 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -10062,8 +10110,8 @@ yyreduce: ;} break; - case 423: -#line 4713 "Gmsh.y" + case 425: +#line 4719 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (3)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -10073,8 +10121,8 @@ yyreduce: ;} break; - case 424: -#line 4721 "Gmsh.y" + case 426: +#line 4727 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); for(double d = (yyvsp[(1) - (3)].d); ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d <= (yyvsp[(3) - (3)].d)) : (d >= (yyvsp[(3) - (3)].d)); @@ -10083,8 +10131,8 @@ yyreduce: ;} break; - case 425: -#line 4728 "Gmsh.y" + case 427: +#line 4734 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!(yyvsp[(5) - (5)].d)){ //|| ($1 < $3 && $5 < 0) || ($1 > $3 && $5 > 0) @@ -10096,8 +10144,8 @@ yyreduce: ;} break; - case 426: -#line 4738 "Gmsh.y" + case 428: +#line 4744 "Gmsh.y" { // Returns the coordinates of a point and fills a list with it. // This allows to ensure e.g. that relative point positions are @@ -10119,36 +10167,36 @@ yyreduce: ;} break; - case 427: -#line 4758 "Gmsh.y" + case 429: +#line 4764 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(0); ;} break; - case 428: -#line 4762 "Gmsh.y" + case 430: +#line 4768 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(1); ;} break; - case 429: -#line 4766 "Gmsh.y" + case 431: +#line 4772 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(2); ;} break; - case 430: -#line 4770 "Gmsh.y" + case 432: +#line 4776 "Gmsh.y" { (yyval.l) = GetAllEntityNumbers(3); ;} break; - case 431: -#line 4774 "Gmsh.y" + case 433: +#line 4780 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ @@ -10179,8 +10227,8 @@ yyreduce: ;} break; - case 432: -#line 4803 "Gmsh.y" + case 434: +#line 4809 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ @@ -10211,8 +10259,8 @@ yyreduce: ;} break; - case 433: -#line 4832 "Gmsh.y" + case 435: +#line 4838 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ @@ -10243,8 +10291,8 @@ yyreduce: ;} break; - case 434: -#line 4861 "Gmsh.y" + case 436: +#line 4867 "Gmsh.y" { (yyval.l) = List_Create(10, 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ @@ -10275,8 +10323,8 @@ yyreduce: ;} break; - case 435: -#line 4890 "Gmsh.y" + case 437: +#line 4896 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -10288,8 +10336,8 @@ yyreduce: ;} break; - case 436: -#line 4900 "Gmsh.y" + case 438: +#line 4906 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -10301,8 +10349,8 @@ yyreduce: ;} break; - case 437: -#line 4910 "Gmsh.y" + case 439: +#line 4916 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) @@ -10316,8 +10364,8 @@ yyreduce: ;} break; - case 438: -#line 4923 "Gmsh.y" + case 440: +#line 4929 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) @@ -10331,8 +10379,8 @@ yyreduce: ;} break; - case 439: -#line 4935 "Gmsh.y" + case 441: +#line 4941 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(3) - (4)].c))) @@ -10346,8 +10394,8 @@ yyreduce: ;} break; - case 440: -#line 4947 "Gmsh.y" + case 442: +#line 4953 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) @@ -10367,8 +10415,8 @@ yyreduce: ;} break; - case 441: -#line 4966 "Gmsh.y" + case 443: +#line 4972 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) @@ -10388,30 +10436,30 @@ yyreduce: ;} break; - case 442: -#line 4987 "Gmsh.y" + case 444: +#line 4993 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); ;} break; - case 443: -#line 4992 "Gmsh.y" + case 445: +#line 4998 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 444: -#line 4996 "Gmsh.y" + case 446: +#line 5002 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].d))); ;} break; - case 445: -#line 5000 "Gmsh.y" + case 447: +#line 5006 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ double d; @@ -10422,22 +10470,22 @@ yyreduce: ;} break; - case 446: -#line 5012 "Gmsh.y" + case 448: +#line 5018 "Gmsh.y" { (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (9)].d), (int)(yyvsp[(4) - (9)].d), (int)(yyvsp[(6) - (9)].d), (int)(yyvsp[(8) - (9)].d)); ;} break; - case 447: -#line 5016 "Gmsh.y" + case 449: +#line 5022 "Gmsh.y" { (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (7)].d), (int)(yyvsp[(4) - (7)].d), (int)(yyvsp[(6) - (7)].d), 255); ;} break; - case 448: -#line 5028 "Gmsh.y" + case 450: +#line 5034 "Gmsh.y" { int flag; (yyval.u) = GetColorForString(-1, (yyvsp[(1) - (1)].c), &flag); @@ -10446,8 +10494,8 @@ yyreduce: ;} break; - case 449: -#line 5035 "Gmsh.y" + case 451: +#line 5041 "Gmsh.y" { unsigned int val = 0; ColorOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(5) - (5)].c), val); @@ -10456,15 +10504,15 @@ yyreduce: ;} break; - case 450: -#line 5045 "Gmsh.y" + case 452: +#line 5051 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} break; - case 451: -#line 5049 "Gmsh.y" + case 453: +#line 5055 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (6)].d)); @@ -10478,30 +10526,30 @@ yyreduce: ;} break; - case 452: -#line 5064 "Gmsh.y" + case 454: +#line 5070 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); List_Add((yyval.l), &((yyvsp[(1) - (1)].u))); ;} break; - case 453: -#line 5069 "Gmsh.y" + case 455: +#line 5075 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].u))); ;} break; - case 454: -#line 5076 "Gmsh.y" + case 456: +#line 5082 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 455: -#line 5080 "Gmsh.y" + case 457: +#line 5086 "Gmsh.y" { if(!gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c))){ yymsg(0, "Unknown string variable '%s'", (yyvsp[(1) - (1)].c)); @@ -10516,8 +10564,8 @@ yyreduce: ;} break; - case 456: -#line 5093 "Gmsh.y" + case 458: +#line 5099 "Gmsh.y" { std::string out; StringOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), out); @@ -10527,8 +10575,8 @@ yyreduce: ;} break; - case 457: -#line 5101 "Gmsh.y" + case 459: +#line 5107 "Gmsh.y" { std::string out; StringOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), out); @@ -10538,15 +10586,15 @@ yyreduce: ;} break; - case 458: -#line 5112 "Gmsh.y" + case 460: +#line 5118 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 459: -#line 5116 "Gmsh.y" + case 461: +#line 5122 "Gmsh.y" { (yyval.c) = (char *)Malloc(32 * sizeof(char)); time_t now; @@ -10556,8 +10604,8 @@ yyreduce: ;} break; - case 460: -#line 5124 "Gmsh.y" + case 462: +#line 5130 "Gmsh.y" { std::string action = Msg::GetGmshOnelabAction(); (yyval.c) = (char *)Malloc(action.size() + 1); @@ -10565,8 +10613,8 @@ yyreduce: ;} break; - case 461: -#line 5130 "Gmsh.y" + case 463: +#line 5136 "Gmsh.y" { const char *env = GetEnvironmentVar((yyvsp[(3) - (4)].c)); if(!env) env = ""; @@ -10576,8 +10624,8 @@ yyreduce: ;} break; - case 462: -#line 5138 "Gmsh.y" + case 464: +#line 5144 "Gmsh.y" { std::string s = Msg::GetString((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); @@ -10587,8 +10635,8 @@ yyreduce: ;} break; - case 463: -#line 5146 "Gmsh.y" + case 465: +#line 5152 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (6)].c)) + strlen((yyvsp[(5) - (6)].c)) + 1) * sizeof(char)); strcpy((yyval.c), (yyvsp[(3) - (6)].c)); @@ -10598,8 +10646,8 @@ yyreduce: ;} break; - case 464: -#line 5155 "Gmsh.y" + case 466: +#line 5161 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (6)].c)) + strlen((yyvsp[(5) - (6)].c)) + 1) * sizeof(char)); strcpy((yyval.c), (yyvsp[(3) - (6)].c)); @@ -10609,8 +10657,8 @@ yyreduce: ;} break; - case 465: -#line 5163 "Gmsh.y" + case 467: +#line 5169 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; @@ -10626,8 +10674,8 @@ yyreduce: ;} break; - case 466: -#line 5177 "Gmsh.y" + case 468: +#line 5183 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; @@ -10643,8 +10691,8 @@ yyreduce: ;} break; - case 467: -#line 5191 "Gmsh.y" + case 469: +#line 5197 "Gmsh.y" { std::string input = (yyvsp[(3) - (8)].c); std::string substr_old = (yyvsp[(5) - (8)].c); @@ -10658,8 +10706,8 @@ yyreduce: ;} break; - case 468: -#line 5203 "Gmsh.y" + case 470: +#line 5209 "Gmsh.y" { int size = 0; for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++) @@ -10677,8 +10725,8 @@ yyreduce: ;} break; - case 469: -#line 5220 "Gmsh.y" + case 471: +#line 5226 "Gmsh.y" { int size = 0; for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++) @@ -10696,22 +10744,22 @@ yyreduce: ;} break; - case 470: -#line 5236 "Gmsh.y" + case 472: +#line 5242 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); ;} break; - case 471: -#line 5241 "Gmsh.y" + case 473: +#line 5247 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); ;} break; - case 472: -#line 5245 "Gmsh.y" + case 474: +#line 5251 "Gmsh.y" { char tmpstring[5000]; int i = PrintListOfDouble((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].l), tmpstring); @@ -10732,8 +10780,8 @@ yyreduce: ;} break; - case 473: -#line 5265 "Gmsh.y" + case 475: +#line 5271 "Gmsh.y" { char tmpstring[5000]; int i = PrintListOfDouble((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].l), tmpstring); @@ -10754,21 +10802,21 @@ yyreduce: ;} break; - case 474: -#line 5287 "Gmsh.y" + case 476: +#line 5293 "Gmsh.y" { (yyval.l) = List_Create(20,20,sizeof(char*)); List_Add((yyval.l), &((yyvsp[(1) - (1)].c))); ;} break; - case 475: -#line 5292 "Gmsh.y" + case 477: +#line 5298 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].c))); ;} break; - case 476: -#line 5298 "Gmsh.y" + case 478: +#line 5304 "Gmsh.y" { char tmpstr[256]; sprintf(tmpstr, "_%d", (int)(yyvsp[(4) - (5)].d)); @@ -10778,8 +10826,8 @@ yyreduce: ;} break; - case 477: -#line 5307 "Gmsh.y" + case 479: +#line 5313 "Gmsh.y" { char tmpstr[256]; sprintf(tmpstr, "_%d", (int)(yyvsp[(4) - (5)].d)); @@ -10789,19 +10837,19 @@ yyreduce: ;} break; - case 478: -#line 5320 "Gmsh.y" + case 480: +#line 5326 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 479: -#line 5323 "Gmsh.y" + case 481: +#line 5329 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; /* Line 1267 of yacc.c. */ -#line 10805 "Gmsh.tab.cpp" +#line 10853 "Gmsh.tab.cpp" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -11015,7 +11063,7 @@ yyreturn: } -#line 5327 "Gmsh.y" +#line 5333 "Gmsh.y" int PrintListOfDouble(char *format, List_T *list, char *buffer) diff --git a/Parser/Gmsh.tab.hpp b/Parser/Gmsh.tab.hpp index 64d54c9e66b485dcc381e9360bd58f48ad833552..994c431077ee1530a878a937f517a280e63a3e04 100644 --- a/Parser/Gmsh.tab.hpp +++ b/Parser/Gmsh.tab.hpp @@ -89,115 +89,117 @@ tSetChanged = 305, tToday = 306, tOnelabAction = 307, - tCpu = 308, - tMemory = 309, - tSyncModel = 310, - tCreateTopology = 311, - tCreateTopologyNoHoles = 312, - tDistanceFunction = 313, - tDefineConstant = 314, - tUndefineConstant = 315, - tPoint = 316, - tCircle = 317, - tEllipse = 318, - tLine = 319, - tSphere = 320, - tPolarSphere = 321, - tSurface = 322, - tSpline = 323, - tVolume = 324, - tCharacteristic = 325, - tLength = 326, - tParametric = 327, - tElliptic = 328, - tRefineMesh = 329, - tAdaptMesh = 330, - tRelocateMesh = 331, - tPlane = 332, - tRuled = 333, - tTransfinite = 334, - tComplex = 335, - tPhysical = 336, - tCompound = 337, - tPeriodic = 338, - tUsing = 339, - tPlugin = 340, - tDegenerated = 341, - tRecursive = 342, - tRotate = 343, - tTranslate = 344, - tSymmetry = 345, - tDilate = 346, - tExtrude = 347, - tLevelset = 348, - tRecombine = 349, - tSmoother = 350, - tSplit = 351, - tDelete = 352, - tCoherence = 353, - tIntersect = 354, - tMeshAlgorithm = 355, - tReverse = 356, - tLayers = 357, - tScaleLast = 358, - tHole = 359, - tAlias = 360, - tAliasWithOptions = 361, - tCopyOptions = 362, - tQuadTriAddVerts = 363, - tQuadTriNoNewVerts = 364, - tQuadTriSngl = 365, - tQuadTriDbl = 366, - tRecombLaterals = 367, - tTransfQuadTri = 368, - tText2D = 369, - tText3D = 370, - tInterpolationScheme = 371, - tTime = 372, - tCombine = 373, - tBSpline = 374, - tBezier = 375, - tNurbs = 376, - tNurbsOrder = 377, - tNurbsKnots = 378, - tColor = 379, - tColorTable = 380, - tFor = 381, - tIn = 382, - tEndFor = 383, - tIf = 384, - tEndIf = 385, - tExit = 386, - tAbort = 387, - tField = 388, - tReturn = 389, - tCall = 390, - tFunction = 391, - tShow = 392, - tHide = 393, - tGetValue = 394, - tGetEnv = 395, - tGetString = 396, - tHomology = 397, - tCohomology = 398, - tBetti = 399, - tSetOrder = 400, - tGMSH_MAJOR_VERSION = 401, - tGMSH_MINOR_VERSION = 402, - tGMSH_PATCH_VERSION = 403, - tAFFECTDIVIDE = 404, - tAFFECTTIMES = 405, - tAFFECTMINUS = 406, - tAFFECTPLUS = 407, - tOR = 408, - tAND = 409, - tNOTEQUAL = 410, - tEQUAL = 411, - tGREATEROREQUAL = 412, - tLESSOREQUAL = 413, - UNARYPREC = 414, - tMINUSMINUS = 415, - tPLUSPLUS = 416 + tSyncModel = 308, + tCpu = 309, + tMemory = 310, + tTotalMemory = 311, + tCreateTopology = 312, + tCreateTopologyNoHoles = 313, + tDistanceFunction = 314, + tDefineConstant = 315, + tUndefineConstant = 316, + tPoint = 317, + tCircle = 318, + tEllipse = 319, + tLine = 320, + tSphere = 321, + tPolarSphere = 322, + tSurface = 323, + tSpline = 324, + tVolume = 325, + tCharacteristic = 326, + tLength = 327, + tParametric = 328, + tElliptic = 329, + tRefineMesh = 330, + tAdaptMesh = 331, + tRelocateMesh = 332, + tPlane = 333, + tRuled = 334, + tTransfinite = 335, + tComplex = 336, + tPhysical = 337, + tCompound = 338, + tPeriodic = 339, + tUsing = 340, + tPlugin = 341, + tDegenerated = 342, + tRecursive = 343, + tRotate = 344, + tTranslate = 345, + tSymmetry = 346, + tDilate = 347, + tExtrude = 348, + tLevelset = 349, + tRecombine = 350, + tSmoother = 351, + tSplit = 352, + tDelete = 353, + tCoherence = 354, + tIntersect = 355, + tMeshAlgorithm = 356, + tReverse = 357, + tLayers = 358, + tScaleLast = 359, + tHole = 360, + tAlias = 361, + tAliasWithOptions = 362, + tCopyOptions = 363, + tQuadTriAddVerts = 364, + tQuadTriNoNewVerts = 365, + tQuadTriSngl = 366, + tQuadTriDbl = 367, + tRecombLaterals = 368, + tTransfQuadTri = 369, + tText2D = 370, + tText3D = 371, + tInterpolationScheme = 372, + tTime = 373, + tCombine = 374, + tBSpline = 375, + tBezier = 376, + tNurbs = 377, + tNurbsOrder = 378, + tNurbsKnots = 379, + tColor = 380, + tColorTable = 381, + tFor = 382, + tIn = 383, + tEndFor = 384, + tIf = 385, + tEndIf = 386, + tExit = 387, + tAbort = 388, + tField = 389, + tReturn = 390, + tCall = 391, + tFunction = 392, + tShow = 393, + tHide = 394, + tGetValue = 395, + tGetEnv = 396, + tGetString = 397, + tHomology = 398, + tCohomology = 399, + tBetti = 400, + tSetOrder = 401, + tExists = 402, + tGMSH_MAJOR_VERSION = 403, + tGMSH_MINOR_VERSION = 404, + tGMSH_PATCH_VERSION = 405, + tAFFECTDIVIDE = 406, + tAFFECTTIMES = 407, + tAFFECTMINUS = 408, + tAFFECTPLUS = 409, + tOR = 410, + tAND = 411, + tNOTEQUAL = 412, + tEQUAL = 413, + tGREATEROREQUAL = 414, + tLESSOREQUAL = 415, + UNARYPREC = 416, + tMINUSMINUS = 417, + tPLUSPLUS = 418 }; #endif /* Tokens. */ @@ -251,115 +253,117 @@ #define tSetChanged 305 #define tToday 306 #define tOnelabAction 307 -#define tCpu 308 -#define tMemory 309 -#define tSyncModel 310 -#define tCreateTopology 311 -#define tCreateTopologyNoHoles 312 -#define tDistanceFunction 313 -#define tDefineConstant 314 -#define tUndefineConstant 315 -#define tPoint 316 -#define tCircle 317 -#define tEllipse 318 -#define tLine 319 -#define tSphere 320 -#define tPolarSphere 321 -#define tSurface 322 -#define tSpline 323 -#define tVolume 324 -#define tCharacteristic 325 -#define tLength 326 -#define tParametric 327 -#define tElliptic 328 -#define tRefineMesh 329 -#define tAdaptMesh 330 -#define tRelocateMesh 331 -#define tPlane 332 -#define tRuled 333 -#define tTransfinite 334 -#define tComplex 335 -#define tPhysical 336 -#define tCompound 337 -#define tPeriodic 338 -#define tUsing 339 -#define tPlugin 340 -#define tDegenerated 341 -#define tRecursive 342 -#define tRotate 343 -#define tTranslate 344 -#define tSymmetry 345 -#define tDilate 346 -#define tExtrude 347 -#define tLevelset 348 -#define tRecombine 349 -#define tSmoother 350 -#define tSplit 351 -#define tDelete 352 -#define tCoherence 353 -#define tIntersect 354 -#define tMeshAlgorithm 355 -#define tReverse 356 -#define tLayers 357 -#define tScaleLast 358 -#define tHole 359 -#define tAlias 360 -#define tAliasWithOptions 361 -#define tCopyOptions 362 -#define tQuadTriAddVerts 363 -#define tQuadTriNoNewVerts 364 -#define tQuadTriSngl 365 -#define tQuadTriDbl 366 -#define tRecombLaterals 367 -#define tTransfQuadTri 368 -#define tText2D 369 -#define tText3D 370 -#define tInterpolationScheme 371 -#define tTime 372 -#define tCombine 373 -#define tBSpline 374 -#define tBezier 375 -#define tNurbs 376 -#define tNurbsOrder 377 -#define tNurbsKnots 378 -#define tColor 379 -#define tColorTable 380 -#define tFor 381 -#define tIn 382 -#define tEndFor 383 -#define tIf 384 -#define tEndIf 385 -#define tExit 386 -#define tAbort 387 -#define tField 388 -#define tReturn 389 -#define tCall 390 -#define tFunction 391 -#define tShow 392 -#define tHide 393 -#define tGetValue 394 -#define tGetEnv 395 -#define tGetString 396 -#define tHomology 397 -#define tCohomology 398 -#define tBetti 399 -#define tSetOrder 400 -#define tGMSH_MAJOR_VERSION 401 -#define tGMSH_MINOR_VERSION 402 -#define tGMSH_PATCH_VERSION 403 -#define tAFFECTDIVIDE 404 -#define tAFFECTTIMES 405 -#define tAFFECTMINUS 406 -#define tAFFECTPLUS 407 -#define tOR 408 -#define tAND 409 -#define tNOTEQUAL 410 -#define tEQUAL 411 -#define tGREATEROREQUAL 412 -#define tLESSOREQUAL 413 -#define UNARYPREC 414 -#define tMINUSMINUS 415 -#define tPLUSPLUS 416 +#define tSyncModel 308 +#define tCpu 309 +#define tMemory 310 +#define tTotalMemory 311 +#define tCreateTopology 312 +#define tCreateTopologyNoHoles 313 +#define tDistanceFunction 314 +#define tDefineConstant 315 +#define tUndefineConstant 316 +#define tPoint 317 +#define tCircle 318 +#define tEllipse 319 +#define tLine 320 +#define tSphere 321 +#define tPolarSphere 322 +#define tSurface 323 +#define tSpline 324 +#define tVolume 325 +#define tCharacteristic 326 +#define tLength 327 +#define tParametric 328 +#define tElliptic 329 +#define tRefineMesh 330 +#define tAdaptMesh 331 +#define tRelocateMesh 332 +#define tPlane 333 +#define tRuled 334 +#define tTransfinite 335 +#define tComplex 336 +#define tPhysical 337 +#define tCompound 338 +#define tPeriodic 339 +#define tUsing 340 +#define tPlugin 341 +#define tDegenerated 342 +#define tRecursive 343 +#define tRotate 344 +#define tTranslate 345 +#define tSymmetry 346 +#define tDilate 347 +#define tExtrude 348 +#define tLevelset 349 +#define tRecombine 350 +#define tSmoother 351 +#define tSplit 352 +#define tDelete 353 +#define tCoherence 354 +#define tIntersect 355 +#define tMeshAlgorithm 356 +#define tReverse 357 +#define tLayers 358 +#define tScaleLast 359 +#define tHole 360 +#define tAlias 361 +#define tAliasWithOptions 362 +#define tCopyOptions 363 +#define tQuadTriAddVerts 364 +#define tQuadTriNoNewVerts 365 +#define tQuadTriSngl 366 +#define tQuadTriDbl 367 +#define tRecombLaterals 368 +#define tTransfQuadTri 369 +#define tText2D 370 +#define tText3D 371 +#define tInterpolationScheme 372 +#define tTime 373 +#define tCombine 374 +#define tBSpline 375 +#define tBezier 376 +#define tNurbs 377 +#define tNurbsOrder 378 +#define tNurbsKnots 379 +#define tColor 380 +#define tColorTable 381 +#define tFor 382 +#define tIn 383 +#define tEndFor 384 +#define tIf 385 +#define tEndIf 386 +#define tExit 387 +#define tAbort 388 +#define tField 389 +#define tReturn 390 +#define tCall 391 +#define tFunction 392 +#define tShow 393 +#define tHide 394 +#define tGetValue 395 +#define tGetEnv 396 +#define tGetString 397 +#define tHomology 398 +#define tCohomology 399 +#define tBetti 400 +#define tSetOrder 401 +#define tExists 402 +#define tGMSH_MAJOR_VERSION 403 +#define tGMSH_MINOR_VERSION 404 +#define tGMSH_PATCH_VERSION 405 +#define tAFFECTDIVIDE 406 +#define tAFFECTTIMES 407 +#define tAFFECTMINUS 408 +#define tAFFECTPLUS 409 +#define tOR 410 +#define tAND 411 +#define tNOTEQUAL 412 +#define tEQUAL 413 +#define tGREATEROREQUAL 414 +#define tLESSOREQUAL 415 +#define UNARYPREC 416 +#define tMINUSMINUS 417 +#define tPLUSPLUS 418 @@ -377,7 +381,7 @@ typedef union YYSTYPE List_T *l; } /* Line 1529 of yacc.c. */ -#line 381 "Gmsh.tab.hpp" +#line 385 "Gmsh.tab.hpp" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index 1f3cd669867ad525ad9d9b87e3304436fb075c4e..2f891cf55bab6787abbdf58a78dddc167cd61774 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -110,7 +110,8 @@ struct doubleXstring{ %token tPrintf tError tStr tSprintf tStrCat tStrPrefix tStrRelative tStrReplace %token tStrFind tStrCmp %token tTextAttributes -%token tBoundingBox tDraw tSetChanged tToday tOnelabAction tCpu tMemory tSyncModel +%token tBoundingBox tDraw tSetChanged tToday tOnelabAction tSyncModel +%token tCpu tMemory tTotalMemory %token tCreateTopology tCreateTopologyNoHoles %token tDistanceFunction tDefineConstant tUndefineConstant %token tPoint tCircle tEllipse tLine tSphere tPolarSphere tSurface tSpline tVolume @@ -128,7 +129,7 @@ struct doubleXstring{ %token tBSpline tBezier tNurbs tNurbsOrder tNurbsKnots %token tColor tColorTable tFor tIn tEndFor tIf tEndIf tExit tAbort %token tField tReturn tCall tFunction tShow tHide tGetValue tGetEnv tGetString -%token tHomology tCohomology tBetti tSetOrder +%token tHomology tCohomology tBetti tSetOrder tExists %token tGMSH_MAJOR_VERSION tGMSH_MINOR_VERSION tGMSH_PATCH_VERSION %type <d> FExpr FExpr_Single @@ -4429,6 +4430,7 @@ FExpr_Single : | tGMSH_PATCH_VERSION { $$ = GetGmshPatchVersion(); } | tCpu { $$ = Cpu(); } | tMemory { $$ = GetMemoryUsage()/1024./1024.; } + | tTotalMemory { $$ = TotalRam(); } // Variables @@ -4449,7 +4451,6 @@ FExpr_Single : } Free($1); } - | tSTRING '[' FExpr ']' { int index = (int)$3; @@ -4468,6 +4469,11 @@ FExpr_Single : } Free($1); } + | tExists '(' String__Index ')' + { + $$ = gmsh_yysymbols.count($3); + Free($3); + } | '#' tSTRING '[' ']' { if(!gmsh_yysymbols.count($2)){ diff --git a/Parser/Gmsh.yy.cpp b/Parser/Gmsh.yy.cpp index a1d19361a904a9da362a132fdf2723ce46381c25..74672ebe7212dab4f4f53c55b782008592e8f876 100644 --- a/Parser/Gmsh.yy.cpp +++ b/Parser/Gmsh.yy.cpp @@ -380,8 +380,8 @@ static void yy_fatal_error (yyconst char msg[] ); *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; -#define YY_NUM_RULES 182 -#define YY_END_OF_BUFFER 183 +#define YY_NUM_RULES 184 +#define YY_END_OF_BUFFER 185 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -389,104 +389,105 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[877] = +static yyconst flex_int16_t yy_accept[889] = { 0, - 0, 0, 183, 181, 1, 1, 181, 5, 181, 6, - 181, 181, 181, 181, 181, 176, 21, 2, 181, 16, - 181, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 181, 28, 24, 19, 25, 17, - 26, 18, 0, 178, 3, 4, 20, 177, 176, 0, - 29, 27, 30, 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, 180, 180, 180, 180, 180, 180, 180, - - 180, 99, 98, 180, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 120, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 163, 164, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 23, 22, 0, - 177, 0, 0, 179, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 54, 65, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 180, 72, 180, - 180, 180, 180, 180, 86, 180, 180, 180, 180, 180, - - 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 106, 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, 146, - 180, 180, 180, 180, 180, 152, 180, 180, 180, 180, - 171, 180, 180, 180, 180, 180, 180, 180, 0, 178, - 0, 0, 177, 180, 32, 180, 180, 180, 180, 180, - 37, 39, 180, 180, 180, 180, 62, 180, 47, 180, - 180, 180, 180, 180, 180, 180, 180, 180, 53, 180, - 180, 180, 180, 180, 70, 180, 180, 180, 180, 180, - - 81, 180, 82, 180, 180, 85, 180, 180, 180, 180, - 180, 94, 95, 180, 180, 180, 180, 180, 180, 180, - 180, 104, 105, 180, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 137, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 160, 147, 180, 180, 180, 180, 145, - 180, 180, 180, 180, 180, 180, 180, 166, 170, 180, - 180, 180, 180, 180, 180, 10, 15, 9, 8, 180, - 12, 14, 0, 177, 31, 180, 35, 180, 180, 180, - 41, 180, 43, 180, 180, 180, 180, 180, 180, 180, - - 57, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 78, 80, 180, 180, 83, 84, 180, - 180, 180, 180, 180, 180, 97, 180, 180, 102, 180, - 180, 180, 107, 180, 180, 180, 180, 180, 115, 180, - 117, 180, 180, 180, 121, 180, 122, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 135, 136, 180, - 180, 180, 180, 180, 180, 150, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 172, 180, 180, 174, - 180, 11, 180, 13, 180, 180, 34, 38, 40, 180, - 44, 180, 180, 180, 48, 180, 180, 180, 180, 180, - - 180, 180, 180, 180, 180, 180, 67, 69, 180, 180, - 77, 180, 180, 180, 180, 180, 88, 180, 180, 180, - 180, 180, 108, 103, 180, 180, 180, 114, 180, 111, - 180, 180, 180, 180, 126, 180, 125, 180, 180, 180, - 180, 180, 140, 180, 134, 180, 180, 180, 180, 148, - 149, 180, 154, 159, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 175, 7, 180, 180, 42, - 45, 180, 180, 180, 180, 180, 180, 52, 56, 180, - 180, 180, 180, 180, 180, 74, 180, 180, 180, 75, - 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, - - 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 141, 180, 180, 180, 180, 153, - 158, 180, 180, 180, 151, 180, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 59, 180, 180, 180, 180, 180, 73, 76, 180, 87, - 180, 180, 180, 180, 90, 96, 180, 180, 109, 112, - 113, 180, 180, 180, 118, 119, 180, 180, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 180, 144, 143, - 180, 180, 180, 161, 180, 180, 180, 180, 180, 180, - 33, 180, 180, 180, 180, 50, 180, 180, 180, 180, - - 180, 180, 180, 79, 180, 180, 180, 89, 180, 100, - 180, 180, 180, 180, 180, 180, 180, 180, 180, 131, - 133, 180, 180, 180, 180, 156, 180, 180, 162, 180, - 180, 180, 169, 180, 180, 180, 61, 180, 51, 58, - 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 180, 123, 180, 180, 129, 180, 180, 180, 138, 180, - 180, 71, 180, 155, 180, 180, 180, 180, 180, 46, - 180, 60, 49, 180, 180, 68, 180, 180, 180, 180, - 180, 180, 124, 180, 180, 130, 180, 180, 180, 157, - 180, 180, 167, 180, 180, 180, 180, 180, 180, 180, - - 180, 180, 180, 116, 180, 180, 180, 139, 180, 180, - 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, - 110, 180, 180, 180, 180, 180, 168, 180, 180, 55, - 63, 66, 180, 180, 180, 180, 180, 180, 132, 142, - 165, 180, 180, 180, 180, 180, 180, 180, 127, 180, - 180, 36, 180, 180, 180, 180, 180, 180, 173, 180, - 180, 180, 180, 180, 128, 180, 91, 92, 93, 180, - 180, 180, 180, 101, 64, 0 + 0, 0, 185, 183, 1, 1, 183, 5, 183, 6, + 183, 183, 183, 183, 183, 178, 21, 2, 183, 16, + 183, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 183, 28, 24, 19, 25, 17, + 26, 18, 0, 180, 3, 4, 20, 179, 178, 0, + 29, 27, 30, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + + 182, 100, 99, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 121, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 164, 165, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 23, 22, 0, + 179, 0, 0, 181, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 54, 65, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 182, 72, 182, + 182, 182, 182, 182, 87, 182, 182, 182, 182, 182, + + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 107, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 147, + 182, 182, 182, 182, 182, 153, 182, 182, 182, 182, + 172, 182, 182, 182, 182, 182, 182, 182, 182, 0, + 180, 0, 0, 179, 182, 32, 182, 182, 182, 182, + 182, 37, 39, 182, 182, 182, 182, 62, 182, 47, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 53, + 182, 182, 182, 182, 182, 70, 182, 182, 182, 182, + + 182, 182, 81, 182, 83, 182, 182, 86, 182, 182, + 182, 182, 182, 95, 96, 182, 182, 182, 182, 182, + 182, 182, 182, 105, 106, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 138, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 161, 148, 182, 182, 182, + 182, 146, 182, 182, 182, 182, 182, 182, 182, 167, + 171, 182, 182, 182, 182, 182, 182, 182, 10, 15, + 9, 8, 182, 12, 14, 0, 179, 31, 182, 35, + 182, 182, 182, 41, 182, 43, 182, 182, 182, 182, + + 182, 182, 182, 57, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 78, 80, 182, 182, + 182, 84, 85, 182, 182, 182, 182, 182, 182, 98, + 182, 182, 103, 182, 182, 182, 108, 182, 182, 182, + 182, 182, 116, 182, 118, 182, 182, 182, 122, 182, + 123, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 136, 137, 182, 182, 182, 182, 182, 182, 151, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 173, 182, 182, 182, 176, 182, 11, 182, 13, 182, + 182, 34, 38, 40, 182, 44, 182, 182, 182, 48, + + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 67, 69, 182, 182, 77, 182, 82, 182, 182, + 182, 182, 89, 182, 182, 182, 182, 182, 109, 104, + 182, 182, 182, 115, 182, 112, 182, 182, 182, 182, + 127, 182, 126, 182, 182, 182, 182, 182, 141, 182, + 135, 182, 182, 182, 182, 149, 150, 182, 155, 160, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 177, 7, 182, 182, 42, 45, 182, 182, + 182, 182, 182, 182, 52, 56, 182, 182, 182, 182, + 182, 182, 74, 182, 182, 182, 75, 182, 182, 182, + + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 142, 182, 182, 182, 182, 154, 159, 182, 182, + 182, 152, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 182, 182, 59, 182, + 182, 182, 182, 182, 73, 76, 182, 88, 182, 182, + 182, 182, 91, 97, 182, 182, 110, 113, 114, 182, + 182, 182, 119, 120, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 182, 145, 144, 182, 182, + 182, 162, 182, 182, 182, 182, 182, 182, 182, 33, + + 182, 182, 182, 182, 50, 182, 182, 182, 182, 182, + 182, 182, 79, 182, 182, 182, 90, 182, 101, 182, + 182, 182, 182, 182, 182, 182, 182, 182, 132, 134, + 182, 182, 182, 182, 157, 182, 182, 163, 182, 182, + 182, 182, 170, 182, 182, 182, 61, 182, 51, 58, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 124, 182, 182, 130, 182, 182, 182, 139, 182, + 182, 71, 182, 156, 182, 182, 182, 182, 182, 182, + 46, 182, 60, 49, 182, 182, 68, 182, 182, 182, + 182, 182, 182, 125, 182, 182, 131, 182, 182, 182, + + 158, 182, 174, 182, 168, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 182, 117, 182, 182, 182, 140, + 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, + 182, 182, 111, 182, 182, 182, 182, 182, 169, 182, + 182, 55, 63, 66, 182, 182, 182, 182, 182, 182, + 133, 143, 166, 182, 182, 182, 182, 182, 182, 182, + 128, 182, 182, 36, 182, 182, 182, 182, 182, 182, + 175, 182, 182, 182, 182, 182, 129, 182, 92, 93, + 94, 182, 182, 182, 182, 102, 64, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -533,207 +534,209 @@ static yyconst flex_int32_t yy_meta[74] = 2, 2, 1 } ; -static yyconst flex_int16_t yy_base[878] = +static yyconst flex_int16_t yy_base[890] = { 0, - 0, 0, 1009, 1010, 1010, 1010, 987, 1010, 1001, 1010, - 985, 65, 66, 64, 76, 78, 1010, 1010, 984, 983, - 982, 49, 49, 56, 67, 68, 81, 50, 80, 97, - 0, 942, 97, 108, 934, 61, 107, 933, 118, 125, - 158, 62, 938, 946, 924, 1010, 1010, 1010, 1010, 1010, - 1010, 1010, 985, 184, 1010, 1010, 1010, 199, 214, 229, - 1010, 1010, 1010, 0, 934, 933, 945, 936, 941, 934, - 941, 926, 37, 920, 58, 930, 937, 920, 194, 916, - 930, 149, 923, 932, 921, 927, 913, 926, 116, 926, - 922, 912, 911, 907, 910, 928, 902, 916, 24, 904, - - 923, 0, 898, 902, 891, 84, 96, 907, 929, 158, - 908, 894, 905, 905, 891, 890, 882, 0, 116, 137, - 896, 903, 890, 182, 138, 891, 900, 881, 885, 885, - 883, 199, 879, 878, 877, 149, 0, 0, 905, 879, - 868, 886, 888, 884, 878, 875, 863, 1010, 1010, 255, - 260, 269, 275, 280, 867, 865, 867, 880, 273, 867, - 866, 867, 858, 867, 862, 863, 861, 861, 854, 867, - 82, 855, 105, 851, 843, 858, 0, 864, 855, 858, - 857, 860, 838, 850, 190, 844, 846, 837, 0, 838, - 836, 842, 838, 847, 0, 847, 866, 193, 843, 842, - - 832, 831, 864, 838, 823, 836, 833, 834, 833, 818, - 869, 835, 820, 825, 812, 829, 819, 824, 827, 818, - 808, 812, 817, 810, 821, 808, 816, 815, 200, 809, - 803, 796, 810, 813, 800, 807, 800, 274, 788, 801, - 794, 802, 797, 796, 785, 278, 797, 790, 798, 820, - 791, 779, 796, 783, 790, 781, 773, 255, 311, 316, - 325, 330, 335, 773, 0, 772, 772, 775, 779, 786, - 0, 818, 776, 775, 778, 778, 0, 761, 0, 779, - 768, 761, 765, 759, 766, 243, 770, 783, 0, 753, - 758, 757, 750, 749, 0, 752, 752, 759, 747, 754, - - 0, 742, 0, 757, 743, 0, 740, 758, 744, 737, - 754, 0, 0, 743, 734, 759, 734, 732, 732, 729, - 736, 0, 0, 780, 240, 728, 768, 732, 724, 740, - 723, 727, 724, 728, 731, 726, 715, 716, 713, 294, - 0, 719, 713, 716, 725, 710, 709, 706, 720, 719, - 717, 713, 703, 0, 0, 700, 701, 293, 704, 0, - 199, 707, 698, 709, 712, 707, 723, 0, 0, 734, - 685, 690, 701, 699, 693, 0, 0, 693, 0, 698, - 691, 0, 341, 348, 0, 713, 702, 681, 685, 684, - 0, 683, 0, 678, 685, 682, 689, 686, 685, 675, - - 693, 674, 681, 665, 675, 668, 677, 676, 675, 674, - 673, 244, 660, 0, 0, 672, 671, 0, 0, 665, - 331, 652, 655, 660, 656, 0, 678, 650, 0, 649, - 658, 647, 0, 663, 654, 638, 650, 646, 0, 657, - 0, 653, 653, 653, 0, 642, 0, 660, 647, 635, - 649, 632, 644, 647, 634, 628, 640, 0, 0, 657, - 642, 638, 633, 635, 634, 0, 619, 618, 621, 622, - 629, 128, 630, 613, 617, 611, 0, 249, 620, 0, - 623, 0, 620, 0, 621, 616, 0, 0, 656, 618, - 0, 609, 610, 601, 0, 606, 607, 616, 611, 592, - - 601, 600, 593, 616, 632, 592, 0, 0, 315, 599, - 0, 598, 601, 591, 345, 628, 0, 594, 582, 594, - 610, 594, 0, 0, 593, 584, 571, 0, 588, 0, - 618, 574, 583, 590, 0, 575, 0, 580, 336, 579, - 599, 567, 0, 580, 0, 583, 570, 577, 576, 0, - 0, 574, 0, 0, 575, 572, 576, 565, 570, 557, - 569, 553, 333, 570, 557, 0, 0, 551, 549, 0, - 0, 560, 573, 560, 561, 549, 560, 0, 0, 557, - 559, 550, 544, 543, 555, 0, 537, 551, 552, 0, - 539, 566, 561, 554, 535, 542, 522, 558, 541, 524, - - 532, 536, 526, 536, 521, 534, 525, 527, 352, 533, - 520, 511, 526, 525, 0, 511, 521, 510, 509, 0, - 0, 516, 505, 522, 0, 498, 516, 503, 499, 505, - 498, 511, 507, 506, 536, 498, 494, 505, 502, 497, - 0, 488, 492, 490, 491, 484, 0, 0, 489, 0, - 511, 510, 521, 491, 0, 0, 521, 477, 0, 0, - 0, 478, 475, 484, 0, 0, 487, 487, 488, 475, - 475, 468, 481, 480, 466, 495, 463, 476, 0, 0, - 457, 470, 475, 0, 466, 467, 474, 465, 468, 494, - 0, 481, 456, 457, 459, 0, 443, 461, 460, 451, - - 35, 41, 95, 0, 136, 154, 194, 0, 191, 0, - 204, 206, 250, 257, 271, 279, 337, 320, 325, 0, - 0, 324, 328, 347, 331, 0, 315, 332, 0, 336, - 335, 321, 0, 329, 329, 325, 0, 333, 0, 0, - 334, 336, 344, 338, 354, 359, 360, 361, 378, 344, - 350, 0, 361, 370, 0, 363, 358, 354, 0, 354, - 372, 0, 369, 0, 355, 381, 372, 365, 360, 0, - 361, 0, 0, 367, 381, 0, 386, 387, 388, 396, - 379, 375, 0, 384, 368, 0, 391, 385, 370, 0, - 376, 379, 0, 379, 389, 390, 394, 389, 423, 424, - - 425, 417, 395, 0, 391, 412, 399, 0, 406, 407, - 404, 395, 401, 413, 393, 399, 426, 427, 428, 422, - 0, 404, 419, 407, 409, 409, 0, 427, 416, 0, - 441, 0, 437, 438, 440, 441, 418, 420, 0, 0, - 0, 425, 421, 426, 457, 458, 459, 466, 0, 426, - 427, 0, 464, 458, 459, 460, 468, 434, 0, 439, - 465, 466, 467, 477, 0, 447, 0, 0, 0, 471, - 455, 481, 444, 0, 0, 1010, 508 + 0, 0, 1021, 1022, 1022, 1022, 999, 1022, 1013, 1022, + 997, 65, 66, 64, 76, 78, 1022, 1022, 996, 995, + 994, 49, 49, 56, 67, 68, 81, 50, 80, 97, + 0, 954, 97, 108, 946, 61, 107, 945, 118, 125, + 158, 62, 950, 958, 936, 1022, 1022, 1022, 1022, 1022, + 1022, 1022, 997, 184, 1022, 1022, 1022, 199, 214, 229, + 1022, 1022, 1022, 0, 946, 945, 957, 948, 953, 946, + 953, 938, 37, 932, 58, 942, 949, 932, 194, 928, + 942, 149, 935, 944, 933, 939, 925, 938, 116, 938, + 934, 924, 923, 919, 922, 940, 914, 928, 24, 916, + + 935, 0, 910, 914, 903, 84, 96, 919, 941, 158, + 920, 906, 917, 917, 903, 902, 894, 0, 116, 137, + 908, 915, 902, 182, 138, 903, 912, 893, 897, 897, + 895, 199, 891, 890, 889, 149, 0, 0, 917, 891, + 880, 167, 901, 897, 891, 888, 876, 1022, 1022, 255, + 260, 269, 275, 280, 880, 878, 880, 893, 273, 880, + 879, 880, 871, 880, 875, 876, 874, 874, 867, 880, + 82, 868, 105, 864, 856, 871, 0, 877, 868, 871, + 870, 873, 851, 863, 193, 857, 859, 195, 0, 852, + 850, 856, 852, 861, 0, 861, 880, 193, 857, 856, + + 846, 845, 878, 852, 837, 850, 847, 848, 847, 832, + 883, 849, 834, 839, 826, 843, 833, 838, 841, 832, + 822, 826, 831, 824, 835, 822, 830, 829, 238, 823, + 817, 810, 824, 827, 814, 821, 814, 276, 802, 815, + 808, 816, 811, 810, 799, 278, 811, 804, 812, 834, + 805, 793, 810, 809, 796, 803, 794, 786, 267, 294, + 323, 332, 337, 342, 786, 0, 785, 785, 788, 792, + 799, 0, 831, 789, 788, 791, 791, 0, 774, 0, + 792, 781, 774, 778, 772, 779, 261, 783, 796, 0, + 766, 771, 770, 763, 762, 0, 765, 765, 772, 760, + + 767, 756, 0, 754, 0, 769, 755, 0, 752, 770, + 756, 749, 766, 0, 0, 755, 746, 771, 746, 744, + 744, 741, 748, 0, 0, 792, 240, 740, 780, 744, + 736, 752, 735, 739, 736, 740, 743, 738, 727, 728, + 725, 258, 0, 731, 725, 728, 737, 722, 721, 718, + 732, 731, 729, 725, 715, 0, 0, 712, 713, 261, + 716, 0, 199, 719, 710, 721, 724, 719, 735, 0, + 0, 746, 697, 709, 701, 712, 710, 704, 0, 0, + 704, 0, 709, 702, 0, 347, 352, 0, 724, 713, + 692, 696, 695, 0, 694, 0, 689, 696, 693, 700, + + 697, 696, 686, 704, 685, 692, 676, 686, 679, 688, + 687, 686, 685, 684, 268, 671, 0, 0, 683, 668, + 681, 0, 0, 675, 288, 662, 665, 670, 666, 0, + 688, 660, 0, 659, 668, 657, 0, 673, 664, 648, + 660, 656, 0, 667, 0, 663, 663, 663, 0, 652, + 0, 670, 657, 645, 659, 642, 654, 657, 644, 638, + 650, 0, 0, 667, 652, 648, 643, 645, 644, 0, + 629, 628, 631, 632, 639, 128, 640, 623, 627, 621, + 0, 651, 209, 629, 0, 632, 0, 629, 0, 630, + 625, 0, 0, 665, 627, 0, 618, 619, 610, 0, + + 615, 616, 625, 620, 601, 610, 609, 602, 625, 641, + 601, 0, 0, 318, 608, 0, 607, 0, 610, 600, + 348, 637, 0, 603, 591, 603, 619, 603, 0, 0, + 602, 593, 580, 0, 597, 0, 627, 583, 592, 599, + 0, 584, 0, 589, 338, 588, 608, 576, 0, 589, + 0, 592, 579, 586, 585, 0, 0, 583, 0, 0, + 584, 581, 585, 574, 579, 566, 578, 562, 575, 334, + 578, 565, 0, 0, 559, 557, 0, 0, 568, 581, + 568, 569, 557, 568, 0, 0, 565, 567, 558, 552, + 551, 563, 0, 545, 559, 560, 0, 547, 574, 569, + + 562, 543, 550, 530, 566, 549, 532, 540, 544, 534, + 544, 529, 542, 533, 535, 352, 541, 528, 519, 534, + 533, 0, 519, 529, 518, 517, 0, 0, 524, 513, + 530, 0, 506, 524, 511, 515, 506, 512, 505, 518, + 514, 513, 543, 505, 501, 512, 509, 504, 0, 495, + 499, 497, 498, 491, 0, 0, 496, 0, 518, 517, + 528, 498, 0, 0, 528, 484, 0, 0, 0, 485, + 482, 491, 0, 0, 494, 494, 495, 482, 482, 475, + 488, 487, 473, 502, 470, 483, 0, 0, 464, 477, + 482, 0, 473, 474, 468, 480, 471, 474, 500, 0, + + 487, 462, 37, 50, 0, 76, 124, 142, 242, 243, + 263, 278, 0, 303, 304, 346, 0, 335, 0, 324, + 325, 332, 319, 333, 327, 350, 333, 337, 0, 0, + 336, 340, 361, 347, 0, 331, 349, 0, 353, 340, + 354, 340, 0, 346, 346, 339, 0, 346, 0, 0, + 348, 349, 357, 350, 367, 372, 373, 374, 391, 357, + 363, 0, 373, 382, 0, 375, 370, 365, 0, 365, + 383, 0, 380, 0, 366, 363, 393, 384, 377, 372, + 0, 373, 0, 0, 379, 393, 0, 398, 399, 400, + 408, 391, 387, 0, 396, 380, 0, 403, 397, 382, + + 0, 388, 0, 391, 0, 391, 401, 402, 406, 401, + 435, 436, 437, 429, 407, 0, 403, 424, 411, 0, + 418, 419, 416, 407, 413, 425, 405, 411, 438, 439, + 440, 434, 0, 416, 431, 419, 421, 421, 0, 439, + 428, 0, 453, 0, 449, 450, 452, 453, 430, 432, + 0, 0, 0, 437, 433, 438, 469, 470, 471, 478, + 0, 438, 439, 0, 476, 470, 471, 472, 480, 446, + 0, 451, 477, 478, 479, 489, 0, 459, 0, 0, + 0, 483, 467, 493, 456, 0, 0, 1022, 520 } ; -static yyconst flex_int16_t yy_def[878] = +static yyconst flex_int16_t yy_def[890] = { 0, - 876, 1, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 876, 876, 876, - 876, 876, 876, 876, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 876, 876, - 876, 876, 876, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 876, 876, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 877, 877, 877, 877, 877, - 877, 877, 877, 877, 877, 0, 876 + 888, 1, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 888, 888, 888, + 888, 888, 888, 888, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 888, + 888, 888, 888, 888, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 888, 888, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 889, 889, 889, + 889, 889, 889, 889, 889, 889, 889, 0, 888 } ; -static yyconst flex_int16_t yy_nxt[1084] = +static yyconst flex_int16_t yy_nxt[1096] = { 0, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 16, 16, 16, 16, 17, 18, 19, @@ -744,119 +747,121 @@ static yyconst flex_int16_t yy_nxt[1084] = 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 45, 49, 53, 51, 54, 54, 54, 54, 54, 200, 201, 55, 96, 50, 52, 56, 58, 72, - 59, 59, 59, 59, 59, 743, 57, 65, 66, 67, + 59, 59, 59, 59, 59, 747, 57, 65, 66, 67, - 73, 97, 163, 75, 60, 744, 68, 76, 164, 74, + 73, 97, 163, 75, 60, 748, 68, 76, 164, 74, 77, 78, 69, 70, 71, 166, 79, 80, 82, 81, 113, 144, 83, 167, 114, 85, 145, 86, 90, 60, - 84, 87, 101, 282, 88, 98, 91, 89, 92, 93, - 99, 94, 283, 207, 105, 109, 745, 95, 106, 102, - 100, 208, 107, 285, 115, 209, 103, 108, 116, 110, - 210, 117, 118, 222, 119, 123, 286, 120, 111, 124, - 121, 188, 137, 138, 127, 746, 128, 189, 125, 129, - 130, 190, 223, 131, 126, 557, 132, 133, 139, 558, - 134, 135, 224, 747, 225, 136, 54, 54, 54, 54, + 84, 87, 101, 283, 88, 98, 91, 89, 92, 93, + 99, 94, 284, 207, 105, 109, 749, 95, 106, 102, + 100, 208, 107, 286, 115, 209, 103, 108, 116, 110, + 210, 117, 118, 222, 119, 123, 287, 120, 111, 124, + 121, 188, 137, 138, 127, 750, 128, 189, 125, 129, + 130, 190, 223, 131, 126, 563, 132, 133, 139, 564, + 134, 135, 224, 751, 225, 136, 54, 54, 54, 54, 54, 179, 180, 234, 235, 140, 181, 248, 249, 141, - 150, 151, 151, 151, 151, 151, 213, 297, 142, 309, - 298, 143, 214, 748, 58, 152, 59, 59, 59, 59, - 59, 229, 749, 310, 230, 150, 311, 153, 153, 231, - 60, 154, 154, 154, 154, 154, 468, 232, 171, 233, - 152, 172, 173, 242, 174, 175, 243, 469, 176, 750, - 342, 751, 244, 259, 259, 60, 343, 260, 260, 260, - 260, 260, 151, 151, 151, 151, 151, 262, 262, 434, - 435, 263, 263, 263, 263, 263, 261, 154, 154, 154, - 154, 154, 154, 154, 154, 154, 154, 268, 352, 752, - - 403, 563, 361, 404, 376, 362, 564, 377, 509, 510, - 353, 261, 378, 269, 270, 363, 379, 364, 380, 381, - 753, 754, 382, 260, 260, 260, 260, 260, 260, 260, - 260, 260, 260, 383, 383, 450, 755, 384, 384, 384, - 384, 384, 263, 263, 263, 263, 263, 263, 263, 263, - 263, 263, 465, 384, 384, 384, 384, 384, 466, 450, - 384, 384, 384, 384, 384, 515, 586, 592, 516, 610, - 587, 629, 756, 757, 668, 593, 758, 669, 759, 760, - 761, 762, 763, 764, 765, 766, 767, 670, 630, 768, - 769, 611, 671, 610, 770, 629, 756, 771, 772, 668, - - 773, 774, 669, 775, 776, 777, 778, 779, 780, 781, - 782, 670, 783, 784, 785, 786, 671, 787, 788, 789, + 150, 151, 151, 151, 151, 151, 213, 253, 142, 311, + 298, 143, 214, 299, 58, 152, 59, 59, 59, 59, + 59, 229, 254, 312, 230, 150, 313, 153, 153, 231, + 60, 154, 154, 154, 154, 154, 472, 232, 171, 233, + 152, 172, 173, 242, 174, 175, 243, 473, 176, 302, + 303, 570, 244, 260, 260, 60, 571, 261, 261, 261, + 261, 261, 151, 151, 151, 151, 151, 263, 263, 438, + 439, 264, 264, 264, 264, 264, 262, 154, 154, 154, + 154, 154, 154, 154, 154, 154, 154, 269, 344, 454, + + 354, 752, 363, 753, 345, 364, 261, 261, 261, 261, + 261, 262, 355, 270, 271, 365, 379, 366, 406, 380, + 469, 407, 521, 454, 381, 522, 470, 754, 382, 755, + 383, 384, 514, 515, 385, 261, 261, 261, 261, 261, + 386, 386, 756, 757, 387, 387, 387, 387, 387, 264, + 264, 264, 264, 264, 264, 264, 264, 264, 264, 387, + 387, 387, 387, 387, 387, 387, 387, 387, 387, 593, + 599, 617, 637, 594, 676, 758, 759, 677, 600, 760, + 761, 762, 763, 764, 765, 766, 767, 678, 768, 638, + 769, 770, 679, 618, 771, 617, 637, 772, 773, 676, + + 774, 775, 677, 776, 777, 778, 779, 780, 781, 766, + 782, 678, 783, 784, 785, 786, 679, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, - 800, 801, 802, 803, 804, 805, 806, 784, 807, 808, - 809, 810, 811, 812, 813, 814, 792, 815, 816, 817, - 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, + 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, + 810, 811, 812, 813, 814, 815, 816, 817, 818, 795, + 819, 820, 821, 822, 823, 824, 825, 826, 804, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, - 838, 839, 840, 841, 842, 843, 844, 845, 846, 823, - 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, - 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, - - 867, 868, 869, 870, 871, 872, 873, 874, 875, 64, - 742, 741, 740, 739, 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, 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, 628, 627, - 626, 625, 624, 623, 622, 621, 620, 619, 618, 617, - 616, 615, 614, 613, 612, 609, 608, 607, 606, 605, - 604, 603, 602, 601, 600, 599, 598, 597, 596, 595, - 594, 591, 590, 589, 588, 585, 584, 583, 582, 581, - 580, 579, 578, 577, 576, 575, 574, 573, 572, 571, - 570, 569, 568, 567, 566, 565, 562, 561, 560, 559, - 556, 555, 554, 553, 552, 551, 550, 549, 548, 547, - 546, 545, 544, 543, 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, - 514, 513, 512, 511, 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, 467, 464, 463, 462, 461, 460, 459, - 458, 457, 456, 455, 454, 453, 452, 451, 449, 448, - 447, 446, 445, 444, 443, 442, 441, 440, 439, 438, - 437, 436, 433, 432, 431, 430, 429, 428, 427, 426, - - 425, 424, 423, 422, 421, 420, 419, 418, 417, 416, - 415, 414, 413, 412, 411, 410, 409, 408, 407, 406, - 405, 402, 401, 400, 399, 398, 397, 396, 395, 394, - 393, 392, 391, 390, 389, 388, 387, 386, 385, 375, - 374, 373, 372, 371, 370, 369, 368, 367, 366, 365, - 360, 359, 358, 357, 356, 355, 354, 351, 350, 349, - 348, 347, 346, 345, 344, 341, 340, 339, 338, 337, - 336, 335, 334, 333, 332, 331, 330, 329, 328, 327, - 326, 325, 324, 323, 322, 321, 320, 319, 318, 317, - 316, 315, 314, 313, 312, 308, 307, 306, 305, 304, - - 303, 302, 301, 300, 299, 296, 295, 294, 293, 292, - 291, 290, 289, 288, 287, 284, 281, 280, 279, 278, - 277, 276, 275, 274, 273, 272, 271, 267, 266, 265, - 264, 258, 257, 256, 255, 254, 253, 252, 251, 250, - 247, 246, 245, 241, 240, 239, 238, 237, 236, 228, - 227, 226, 221, 220, 219, 218, 217, 216, 215, 212, - 211, 206, 205, 204, 203, 202, 199, 198, 197, 196, - 195, 194, 193, 192, 191, 187, 186, 185, 184, 183, - 182, 178, 177, 170, 169, 168, 165, 162, 161, 160, - 159, 158, 157, 156, 155, 149, 148, 147, 146, 122, - - 112, 104, 63, 62, 61, 48, 47, 46, 876, 3, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876 + 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, + 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, + 858, 835, 859, 860, 861, 862, 863, 864, 865, 866, + + 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, + 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, + 887, 64, 746, 745, 744, 743, 742, 741, 740, 739, + 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, 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, 636, 635, 634, 633, + 632, 631, 630, 629, 628, 627, 626, 625, 624, 623, + 622, 621, 620, 619, 616, 615, 614, 613, 612, 611, + 610, 609, 608, 607, 606, 605, 604, 603, 602, 601, + 598, 597, 596, 595, 592, 591, 590, 589, 588, 587, + 586, 585, 584, 583, 582, 581, 580, 579, 578, 577, + 576, 575, 574, 573, 572, 569, 568, 567, 566, 565, + 562, 561, 560, 559, 558, 557, 556, 555, 554, 553, + + 552, 551, 550, 549, 548, 547, 546, 545, 544, 543, + 542, 541, 540, 539, 538, 537, 536, 535, 534, 533, + 532, 531, 530, 529, 528, 527, 526, 525, 524, 523, + 520, 519, 518, 517, 516, 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, 471, 468, 467, 466, 465, + 464, 463, 462, 461, 460, 459, 458, 457, 456, 455, + 453, 452, 451, 450, 449, 448, 447, 446, 445, 444, + + 443, 442, 441, 440, 437, 436, 435, 434, 433, 432, + 431, 430, 429, 428, 427, 426, 425, 424, 423, 422, + 421, 420, 419, 418, 417, 416, 415, 414, 413, 412, + 411, 410, 409, 408, 405, 404, 403, 402, 401, 400, + 399, 398, 397, 396, 395, 394, 393, 392, 391, 390, + 389, 388, 378, 377, 376, 375, 374, 373, 372, 371, + 370, 369, 368, 367, 362, 361, 360, 359, 358, 357, + 356, 353, 352, 351, 350, 349, 348, 347, 346, 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, 318, 317, 316, 315, 314, 310, + 309, 308, 307, 306, 305, 304, 301, 300, 297, 296, + 295, 294, 293, 292, 291, 290, 289, 288, 285, 282, + 281, 280, 279, 278, 277, 276, 275, 274, 273, 272, + 268, 267, 266, 265, 259, 258, 257, 256, 255, 252, + 251, 250, 247, 246, 245, 241, 240, 239, 238, 237, + 236, 228, 227, 226, 221, 220, 219, 218, 217, 216, + 215, 212, 211, 206, 205, 204, 203, 202, 199, 198, + 197, 196, 195, 194, 193, 192, 191, 187, 186, 185, + 184, 183, 182, 178, 177, 170, 169, 168, 165, 162, + + 161, 160, 159, 158, 157, 156, 155, 149, 148, 147, + 146, 122, 112, 104, 63, 62, 61, 48, 47, 46, + 888, 3, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888 + } ; -static yyconst flex_int16_t yy_chk[1084] = +static yyconst flex_int16_t yy_chk[1096] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -867,116 +872,118 @@ static yyconst flex_int16_t yy_chk[1084] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 12, 14, 13, 14, 14, 14, 14, 14, 99, 99, 15, 28, 12, 13, 15, 16, 23, - 16, 16, 16, 16, 16, 701, 15, 22, 22, 22, + 16, 16, 16, 16, 16, 703, 15, 22, 22, 22, - 23, 28, 73, 24, 16, 702, 22, 24, 73, 23, + 23, 28, 73, 24, 16, 704, 22, 24, 73, 23, 24, 24, 22, 22, 22, 75, 24, 24, 25, 24, 36, 42, 25, 75, 36, 26, 42, 26, 27, 16, 25, 26, 30, 171, 26, 29, 27, 26, 27, 27, - 29, 27, 171, 106, 33, 34, 703, 27, 33, 30, + 29, 27, 171, 106, 33, 34, 706, 27, 33, 30, 29, 106, 33, 173, 37, 107, 30, 33, 37, 34, 107, 37, 37, 119, 37, 39, 173, 37, 34, 39, - 37, 89, 41, 41, 40, 705, 40, 89, 39, 40, - 40, 89, 119, 40, 39, 472, 40, 40, 41, 472, - 40, 40, 120, 706, 120, 40, 54, 54, 54, 54, + 37, 89, 41, 41, 40, 707, 40, 89, 39, 40, + 40, 89, 119, 40, 39, 476, 40, 40, 41, 476, + 40, 40, 120, 708, 120, 40, 54, 54, 54, 54, 54, 82, 82, 125, 125, 41, 82, 136, 136, 41, - 54, 58, 58, 58, 58, 58, 110, 185, 41, 198, - 185, 41, 110, 707, 59, 58, 59, 59, 59, 59, - 59, 124, 709, 198, 124, 54, 198, 60, 60, 124, - 59, 60, 60, 60, 60, 60, 361, 124, 79, 124, - 58, 79, 79, 132, 79, 79, 132, 361, 79, 711, - 229, 712, 132, 150, 150, 59, 229, 150, 150, 150, - 150, 150, 151, 151, 151, 151, 151, 152, 152, 325, - 325, 152, 152, 152, 152, 152, 151, 153, 153, 153, - 153, 153, 154, 154, 154, 154, 154, 159, 238, 713, - - 286, 478, 246, 286, 258, 246, 478, 258, 412, 412, - 238, 151, 258, 159, 159, 246, 258, 246, 258, 258, - 714, 715, 258, 259, 259, 259, 259, 259, 260, 260, - 260, 260, 260, 261, 261, 340, 716, 261, 261, 261, - 261, 261, 262, 262, 262, 262, 262, 263, 263, 263, - 263, 263, 358, 383, 383, 383, 383, 383, 358, 340, - 384, 384, 384, 384, 384, 421, 509, 515, 421, 539, - 509, 563, 717, 718, 609, 515, 719, 609, 722, 723, - 724, 725, 727, 728, 730, 731, 732, 609, 563, 734, - 735, 539, 609, 539, 736, 563, 717, 738, 741, 609, - - 742, 743, 609, 744, 745, 746, 747, 748, 749, 750, - 751, 609, 753, 754, 756, 757, 609, 758, 760, 761, - 763, 765, 766, 767, 768, 769, 771, 774, 775, 777, - 778, 779, 780, 781, 782, 784, 785, 754, 787, 788, - 789, 791, 792, 794, 795, 796, 766, 797, 798, 799, - 800, 801, 802, 803, 805, 806, 807, 809, 810, 811, - 812, 813, 814, 815, 816, 817, 818, 819, 820, 822, - 823, 824, 825, 826, 828, 829, 831, 833, 834, 806, - 835, 836, 837, 838, 842, 843, 844, 845, 846, 847, - 848, 850, 851, 853, 854, 855, 856, 857, 858, 860, - - 861, 862, 863, 864, 866, 870, 871, 872, 873, 877, - 700, 699, 698, 697, 695, 694, 693, 692, 690, 689, - 688, 687, 686, 685, 683, 682, 681, 678, 677, 676, - 675, 674, 673, 672, 671, 670, 669, 668, 667, 664, - 663, 662, 658, 657, 654, 653, 652, 651, 649, 646, - 645, 644, 643, 642, 640, 639, 638, 637, 636, 635, - 634, 633, 632, 631, 630, 629, 628, 627, 626, 624, - 623, 622, 619, 618, 617, 616, 614, 613, 612, 611, - 610, 608, 607, 606, 605, 604, 603, 602, 601, 600, - 599, 598, 597, 596, 595, 594, 593, 592, 591, 589, - - 588, 587, 585, 584, 583, 582, 581, 580, 577, 576, - 575, 574, 573, 572, 569, 568, 565, 564, 562, 561, - 560, 559, 558, 557, 556, 555, 552, 549, 548, 547, - 546, 544, 542, 541, 540, 538, 536, 534, 533, 532, - 531, 529, 527, 526, 525, 522, 521, 520, 519, 518, - 516, 514, 513, 512, 510, 506, 505, 504, 503, 502, - 501, 500, 499, 498, 497, 496, 494, 493, 492, 490, - 489, 486, 485, 483, 481, 479, 476, 475, 474, 473, - 471, 470, 469, 468, 467, 465, 464, 463, 462, 461, - 460, 457, 456, 455, 454, 453, 452, 451, 450, 449, - - 448, 446, 444, 443, 442, 440, 438, 437, 436, 435, - 434, 432, 431, 430, 428, 427, 425, 424, 423, 422, - 420, 417, 416, 413, 411, 410, 409, 408, 407, 406, - 405, 404, 403, 402, 401, 400, 399, 398, 397, 396, - 395, 394, 392, 390, 389, 388, 387, 386, 381, 380, - 378, 375, 374, 373, 372, 371, 370, 367, 366, 365, - 364, 363, 362, 359, 357, 356, 353, 352, 351, 350, - 349, 348, 347, 346, 345, 344, 343, 342, 339, 338, - 337, 336, 335, 334, 333, 332, 331, 330, 329, 328, - 327, 326, 324, 321, 320, 319, 318, 317, 316, 315, - - 314, 311, 310, 309, 308, 307, 305, 304, 302, 300, - 299, 298, 297, 296, 294, 293, 292, 291, 290, 288, - 287, 285, 284, 283, 282, 281, 280, 278, 276, 275, - 274, 273, 272, 270, 269, 268, 267, 266, 264, 257, - 256, 255, 254, 253, 252, 251, 250, 249, 248, 247, - 245, 244, 243, 242, 241, 240, 239, 237, 236, 235, - 234, 233, 232, 231, 230, 228, 227, 226, 225, 224, - 223, 222, 221, 220, 219, 218, 217, 216, 215, 214, - 213, 212, 211, 210, 209, 208, 207, 206, 205, 204, - 203, 202, 201, 200, 199, 197, 196, 194, 193, 192, - - 191, 190, 188, 187, 186, 184, 183, 182, 181, 180, - 179, 178, 176, 175, 174, 172, 170, 169, 168, 167, - 166, 165, 164, 163, 162, 161, 160, 158, 157, 156, - 155, 147, 146, 145, 144, 143, 142, 141, 140, 139, - 135, 134, 133, 131, 130, 129, 128, 127, 126, 123, - 122, 121, 117, 116, 115, 114, 113, 112, 111, 109, - 108, 105, 104, 103, 101, 100, 98, 97, 96, 95, - 94, 93, 92, 91, 90, 88, 87, 86, 85, 84, - 83, 81, 80, 78, 77, 76, 74, 72, 71, 70, - 69, 68, 67, 66, 65, 53, 45, 44, 43, 38, - - 35, 32, 21, 20, 19, 11, 9, 7, 3, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876, 876, 876, 876, 876, 876, 876, 876, - 876, 876, 876 + 54, 58, 58, 58, 58, 58, 110, 142, 41, 198, + 185, 41, 110, 185, 59, 58, 59, 59, 59, 59, + 59, 124, 142, 198, 124, 54, 198, 60, 60, 124, + 59, 60, 60, 60, 60, 60, 363, 124, 79, 124, + 58, 79, 79, 132, 79, 79, 132, 363, 79, 188, + 188, 483, 132, 150, 150, 59, 483, 150, 150, 150, + 150, 150, 151, 151, 151, 151, 151, 152, 152, 327, + 327, 152, 152, 152, 152, 152, 151, 153, 153, 153, + 153, 153, 154, 154, 154, 154, 154, 159, 229, 342, + + 238, 709, 246, 710, 229, 246, 260, 260, 260, 260, + 260, 151, 238, 159, 159, 246, 259, 246, 287, 259, + 360, 287, 425, 342, 259, 425, 360, 711, 259, 712, + 259, 259, 415, 415, 259, 261, 261, 261, 261, 261, + 262, 262, 714, 715, 262, 262, 262, 262, 262, 263, + 263, 263, 263, 263, 264, 264, 264, 264, 264, 386, + 386, 386, 386, 386, 387, 387, 387, 387, 387, 514, + 521, 545, 570, 514, 616, 716, 718, 616, 521, 720, + 721, 722, 723, 724, 725, 726, 727, 616, 728, 570, + 731, 732, 616, 545, 733, 545, 570, 734, 736, 616, + + 737, 739, 616, 740, 741, 742, 744, 745, 746, 726, + 748, 616, 751, 752, 753, 754, 616, 755, 756, 757, + 758, 759, 760, 761, 763, 764, 766, 767, 768, 770, + 771, 773, 775, 776, 777, 778, 779, 780, 782, 785, + 786, 788, 789, 790, 791, 792, 793, 795, 796, 764, + 798, 799, 800, 802, 804, 806, 807, 808, 777, 809, + 810, 811, 812, 813, 814, 815, 817, 818, 819, 821, + 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, + 832, 834, 835, 836, 837, 838, 840, 841, 843, 845, + 846, 818, 847, 848, 849, 850, 854, 855, 856, 857, + + 858, 859, 860, 862, 863, 865, 866, 867, 868, 869, + 870, 872, 873, 874, 875, 876, 878, 882, 883, 884, + 885, 889, 702, 701, 699, 698, 697, 696, 695, 694, + 693, 691, 690, 689, 686, 685, 684, 683, 682, 681, + 680, 679, 678, 677, 676, 675, 672, 671, 670, 666, + 665, 662, 661, 660, 659, 657, 654, 653, 652, 651, + 650, 648, 647, 646, 645, 644, 643, 642, 641, 640, + 639, 638, 637, 636, 635, 634, 633, 631, 630, 629, + 626, 625, 624, 623, 621, 620, 619, 618, 617, 615, + 614, 613, 612, 611, 610, 609, 608, 607, 606, 605, + + 604, 603, 602, 601, 600, 599, 598, 596, 595, 594, + 592, 591, 590, 589, 588, 587, 584, 583, 582, 581, + 580, 579, 576, 575, 572, 571, 569, 568, 567, 566, + 565, 564, 563, 562, 561, 558, 555, 554, 553, 552, + 550, 548, 547, 546, 544, 542, 540, 539, 538, 537, + 535, 533, 532, 531, 528, 527, 526, 525, 524, 522, + 520, 519, 517, 515, 511, 510, 509, 508, 507, 506, + 505, 504, 503, 502, 501, 499, 498, 497, 495, 494, + 491, 490, 488, 486, 484, 482, 480, 479, 478, 477, + 475, 474, 473, 472, 471, 469, 468, 467, 466, 465, + + 464, 461, 460, 459, 458, 457, 456, 455, 454, 453, + 452, 450, 448, 447, 446, 444, 442, 441, 440, 439, + 438, 436, 435, 434, 432, 431, 429, 428, 427, 426, + 424, 421, 420, 419, 416, 414, 413, 412, 411, 410, + 409, 408, 407, 406, 405, 404, 403, 402, 401, 400, + 399, 398, 397, 395, 393, 392, 391, 390, 389, 384, + 383, 381, 378, 377, 376, 375, 374, 373, 372, 369, + 368, 367, 366, 365, 364, 361, 359, 358, 355, 354, + 353, 352, 351, 350, 349, 348, 347, 346, 345, 344, + 341, 340, 339, 338, 337, 336, 335, 334, 333, 332, + + 331, 330, 329, 328, 326, 323, 322, 321, 320, 319, + 318, 317, 316, 313, 312, 311, 310, 309, 307, 306, + 304, 302, 301, 300, 299, 298, 297, 295, 294, 293, + 292, 291, 289, 288, 286, 285, 284, 283, 282, 281, + 279, 277, 276, 275, 274, 273, 271, 270, 269, 268, + 267, 265, 258, 257, 256, 255, 254, 253, 252, 251, + 250, 249, 248, 247, 245, 244, 243, 242, 241, 240, + 239, 237, 236, 235, 234, 233, 232, 231, 230, 228, + 227, 226, 225, 224, 223, 222, 221, 220, 219, 218, + 217, 216, 215, 214, 213, 212, 211, 210, 209, 208, + + 207, 206, 205, 204, 203, 202, 201, 200, 199, 197, + 196, 194, 193, 192, 191, 190, 187, 186, 184, 183, + 182, 181, 180, 179, 178, 176, 175, 174, 172, 170, + 169, 168, 167, 166, 165, 164, 163, 162, 161, 160, + 158, 157, 156, 155, 147, 146, 145, 144, 143, 141, + 140, 139, 135, 134, 133, 131, 130, 129, 128, 127, + 126, 123, 122, 121, 117, 116, 115, 114, 113, 112, + 111, 109, 108, 105, 104, 103, 101, 100, 98, 97, + 96, 95, 94, 93, 92, 91, 90, 88, 87, 86, + 85, 84, 83, 81, 80, 78, 77, 76, 74, 72, + + 71, 70, 69, 68, 67, 66, 65, 53, 45, 44, + 43, 38, 35, 32, 21, 20, 19, 11, 9, 7, + 3, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888, 888, 888, 888, 888, 888, + 888, 888, 888, 888, 888 + } ; static yy_state_type yy_last_accepting_state; @@ -1033,7 +1040,7 @@ void skipline(void); #define YY_NO_UNISTD_H #endif -#line 1037 "Gmsh.yy.cpp" +#line 1044 "Gmsh.yy.cpp" #define INITIAL 0 @@ -1218,7 +1225,7 @@ YY_DECL #line 49 "Gmsh.l" -#line 1222 "Gmsh.yy.cpp" +#line 1229 "Gmsh.yy.cpp" if ( !(yy_init) ) { @@ -1271,13 +1278,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 >= 877 ) + if ( yy_current_state >= 889 ) 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] != 1010 ); + while ( yy_base[yy_current_state] != 1022 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -1709,501 +1716,511 @@ return tExit; YY_BREAK case 82: YY_RULE_SETUP -#line 138 "Gmsh.l" -return tFabs; +#line 137 "Gmsh.l" +return tExists; YY_BREAK case 83: YY_RULE_SETUP #line 139 "Gmsh.l" -return tField; +return tFabs; YY_BREAK case 84: YY_RULE_SETUP #line 140 "Gmsh.l" -return tFloor; +return tField; YY_BREAK case 85: YY_RULE_SETUP #line 141 "Gmsh.l" -return tFmod; +return tFloor; YY_BREAK case 86: YY_RULE_SETUP #line 142 "Gmsh.l" -return tFor; +return tFmod; YY_BREAK case 87: YY_RULE_SETUP #line 143 "Gmsh.l" -return tFunction; +return tFor; YY_BREAK case 88: YY_RULE_SETUP -#line 145 "Gmsh.l" -return tGetEnv; +#line 144 "Gmsh.l" +return tFunction; YY_BREAK case 89: YY_RULE_SETUP #line 146 "Gmsh.l" -return tGetString; +return tGetEnv; YY_BREAK case 90: YY_RULE_SETUP #line 147 "Gmsh.l" -return tGetValue; +return tGetString; YY_BREAK case 91: YY_RULE_SETUP #line 148 "Gmsh.l" -return tGMSH_MAJOR_VERSION; +return tGetValue; YY_BREAK case 92: YY_RULE_SETUP #line 149 "Gmsh.l" -return tGMSH_MINOR_VERSION; +return tGMSH_MAJOR_VERSION; YY_BREAK case 93: YY_RULE_SETUP #line 150 "Gmsh.l" -return tGMSH_PATCH_VERSION; +return tGMSH_MINOR_VERSION; YY_BREAK case 94: YY_RULE_SETUP -#line 152 "Gmsh.l" -return tHide; +#line 151 "Gmsh.l" +return tGMSH_PATCH_VERSION; YY_BREAK case 95: YY_RULE_SETUP #line 153 "Gmsh.l" -return tHole; +return tHide; YY_BREAK case 96: YY_RULE_SETUP #line 154 "Gmsh.l" -return tHomology; +return tHole; YY_BREAK case 97: YY_RULE_SETUP #line 155 "Gmsh.l" -return tHypot; +return tHomology; YY_BREAK case 98: YY_RULE_SETUP -#line 157 "Gmsh.l" -return tIn; +#line 156 "Gmsh.l" +return tHypot; YY_BREAK case 99: YY_RULE_SETUP #line 158 "Gmsh.l" -return tIf; +return tIn; YY_BREAK case 100: YY_RULE_SETUP #line 159 "Gmsh.l" -return tIntersect; +return tIf; YY_BREAK case 101: YY_RULE_SETUP #line 160 "Gmsh.l" -return tInterpolationScheme; +return tIntersect; YY_BREAK case 102: YY_RULE_SETUP -#line 162 "Gmsh.l" -return tNurbsKnots; +#line 161 "Gmsh.l" +return tInterpolationScheme; YY_BREAK case 103: YY_RULE_SETUP -#line 164 "Gmsh.l" -return tLength; +#line 163 "Gmsh.l" +return tNurbsKnots; YY_BREAK case 104: YY_RULE_SETUP #line 165 "Gmsh.l" -return tLine; +return tLength; YY_BREAK case 105: YY_RULE_SETUP #line 166 "Gmsh.l" -return tList; +return tLine; YY_BREAK case 106: YY_RULE_SETUP #line 167 "Gmsh.l" -return tLog; +return tList; YY_BREAK case 107: YY_RULE_SETUP #line 168 "Gmsh.l" -return tLog10; +return tLog; YY_BREAK case 108: YY_RULE_SETUP #line 169 "Gmsh.l" -return tLayers; +return tLog10; YY_BREAK case 109: YY_RULE_SETUP #line 170 "Gmsh.l" -return tLevelset; +return tLayers; YY_BREAK case 110: YY_RULE_SETUP -#line 172 "Gmsh.l" -return tMeshAlgorithm; +#line 171 "Gmsh.l" +return tLevelset; YY_BREAK case 111: YY_RULE_SETUP #line 173 "Gmsh.l" -return tModulo; +return tMeshAlgorithm; YY_BREAK case 112: YY_RULE_SETUP #line 174 "Gmsh.l" -return tMPI_Rank; +return tModulo; YY_BREAK case 113: YY_RULE_SETUP #line 175 "Gmsh.l" -return tMPI_Size; +return tMPI_Rank; YY_BREAK case 114: YY_RULE_SETUP #line 176 "Gmsh.l" -return tMemory; +return tMPI_Size; YY_BREAK case 115: YY_RULE_SETUP -#line 178 "Gmsh.l" -return tNurbs; +#line 177 "Gmsh.l" +return tMemory; YY_BREAK case 116: YY_RULE_SETUP -#line 180 "Gmsh.l" -return tOnelabAction; +#line 179 "Gmsh.l" +return tNurbs; YY_BREAK case 117: YY_RULE_SETUP #line 181 "Gmsh.l" -return tNurbsOrder; +return tOnelabAction; YY_BREAK case 118: YY_RULE_SETUP -#line 183 "Gmsh.l" -return tPeriodic; +#line 182 "Gmsh.l" +return tNurbsOrder; YY_BREAK case 119: YY_RULE_SETUP #line 184 "Gmsh.l" -return tPhysical; +return tPeriodic; YY_BREAK case 120: YY_RULE_SETUP #line 185 "Gmsh.l" -return tPi; +return tPhysical; YY_BREAK case 121: YY_RULE_SETUP #line 186 "Gmsh.l" -return tPlane; +return tPi; YY_BREAK case 122: YY_RULE_SETUP #line 187 "Gmsh.l" -return tPoint; +return tPlane; YY_BREAK case 123: YY_RULE_SETUP #line 188 "Gmsh.l" -return tParametric; +return tPoint; YY_BREAK case 124: YY_RULE_SETUP #line 189 "Gmsh.l" -return tPolarSphere; +return tParametric; YY_BREAK case 125: YY_RULE_SETUP #line 190 "Gmsh.l" -return tPrintf; +return tPolarSphere; YY_BREAK case 126: YY_RULE_SETUP #line 191 "Gmsh.l" -return tPlugin; +return tPrintf; YY_BREAK case 127: YY_RULE_SETUP -#line 193 "Gmsh.l" -return tQuadTriAddVerts; +#line 192 "Gmsh.l" +return tPlugin; YY_BREAK case 128: YY_RULE_SETUP #line 194 "Gmsh.l" -return tQuadTriNoNewVerts; +return tQuadTriAddVerts; YY_BREAK case 129: YY_RULE_SETUP -#line 196 "Gmsh.l" -return tQuadTriDbl; +#line 195 "Gmsh.l" +return tQuadTriNoNewVerts; YY_BREAK case 130: YY_RULE_SETUP #line 197 "Gmsh.l" -return tQuadTriSngl; +return tQuadTriDbl; YY_BREAK case 131: YY_RULE_SETUP -#line 199 "Gmsh.l" -return tRecombine; +#line 198 "Gmsh.l" +return tQuadTriSngl; YY_BREAK case 132: YY_RULE_SETUP #line 200 "Gmsh.l" -return tRecombLaterals; +return tRecombine; YY_BREAK case 133: YY_RULE_SETUP #line 201 "Gmsh.l" -return tRecursive; +return tRecombLaterals; YY_BREAK case 134: YY_RULE_SETUP #line 202 "Gmsh.l" -return tRotate; +return tRecursive; YY_BREAK case 135: YY_RULE_SETUP #line 203 "Gmsh.l" -return tRound; +return tRotate; YY_BREAK case 136: YY_RULE_SETUP #line 204 "Gmsh.l" -return tRuled; +return tRound; YY_BREAK case 137: YY_RULE_SETUP #line 205 "Gmsh.l" -return tRand; +return tRuled; YY_BREAK case 138: YY_RULE_SETUP #line 206 "Gmsh.l" -return tRefineMesh; +return tRand; YY_BREAK case 139: YY_RULE_SETUP #line 207 "Gmsh.l" -return tRelocateMesh; +return tRefineMesh; YY_BREAK case 140: YY_RULE_SETUP #line 208 "Gmsh.l" -return tReturn; +return tRelocateMesh; YY_BREAK case 141: YY_RULE_SETUP #line 209 "Gmsh.l" -return tReverse; +return tReturn; YY_BREAK case 142: YY_RULE_SETUP -#line 211 "Gmsh.l" -return tScaleLast; +#line 210 "Gmsh.l" +return tReverse; YY_BREAK case 143: YY_RULE_SETUP #line 212 "Gmsh.l" -return tSmoother; +return tScaleLast; YY_BREAK case 144: YY_RULE_SETUP #line 213 "Gmsh.l" -return tSetOrder; +return tSmoother; YY_BREAK case 145: YY_RULE_SETUP #line 214 "Gmsh.l" -return tSqrt; +return tSetOrder; YY_BREAK case 146: YY_RULE_SETUP #line 215 "Gmsh.l" -return tSin; +return tSqrt; YY_BREAK case 147: YY_RULE_SETUP #line 216 "Gmsh.l" -return tSinh; +return tSin; YY_BREAK case 148: YY_RULE_SETUP #line 217 "Gmsh.l" -return tSphere; +return tSinh; YY_BREAK case 149: YY_RULE_SETUP #line 218 "Gmsh.l" -return tSpline; +return tSphere; YY_BREAK case 150: YY_RULE_SETUP #line 219 "Gmsh.l" -return tSplit; +return tSpline; YY_BREAK case 151: YY_RULE_SETUP #line 220 "Gmsh.l" -return tSurface; +return tSplit; YY_BREAK case 152: YY_RULE_SETUP #line 221 "Gmsh.l" -return tStr; +return tSurface; YY_BREAK case 153: YY_RULE_SETUP #line 222 "Gmsh.l" -return tSprintf; +return tStr; YY_BREAK case 154: YY_RULE_SETUP #line 223 "Gmsh.l" -return tStrCat; +return tSprintf; YY_BREAK case 155: YY_RULE_SETUP #line 224 "Gmsh.l" -return tStrReplace; +return tStrCat; YY_BREAK case 156: YY_RULE_SETUP #line 225 "Gmsh.l" -return tStrPrefix; +return tStrReplace; YY_BREAK case 157: YY_RULE_SETUP #line 226 "Gmsh.l" -return tStrRelative; +return tStrPrefix; YY_BREAK case 158: YY_RULE_SETUP #line 227 "Gmsh.l" -return tStrFind; +return tStrRelative; YY_BREAK case 159: YY_RULE_SETUP #line 228 "Gmsh.l" -return tStrCmp; +return tStrFind; YY_BREAK case 160: YY_RULE_SETUP #line 229 "Gmsh.l" -return tShow; +return tStrCmp; YY_BREAK case 161: YY_RULE_SETUP #line 230 "Gmsh.l" -return tSymmetry; +return tShow; YY_BREAK case 162: YY_RULE_SETUP #line 231 "Gmsh.l" -return tSyncModel; +return tSymmetry; YY_BREAK case 163: YY_RULE_SETUP -#line 233 "Gmsh.l" -return tText2D; +#line 232 "Gmsh.l" +return tSyncModel; YY_BREAK case 164: YY_RULE_SETUP #line 234 "Gmsh.l" -return tText3D; +return tText2D; YY_BREAK case 165: YY_RULE_SETUP #line 235 "Gmsh.l" -return tTextAttributes; +return tText3D; YY_BREAK case 166: YY_RULE_SETUP #line 236 "Gmsh.l" -return tTime; +return tTextAttributes; YY_BREAK case 167: YY_RULE_SETUP #line 237 "Gmsh.l" -return tTransfinite; +return tTime; YY_BREAK case 168: YY_RULE_SETUP #line 238 "Gmsh.l" -return tTransfQuadTri; +return tTransfinite; YY_BREAK case 169: YY_RULE_SETUP #line 239 "Gmsh.l" -return tTranslate; +return tTransfQuadTri; YY_BREAK case 170: YY_RULE_SETUP #line 240 "Gmsh.l" -return tTanh; +return tTranslate; YY_BREAK case 171: YY_RULE_SETUP #line 241 "Gmsh.l" -return tTan; +return tTanh; YY_BREAK case 172: YY_RULE_SETUP #line 242 "Gmsh.l" -return tToday; +return tTan; YY_BREAK case 173: YY_RULE_SETUP -#line 244 "Gmsh.l" -return tUndefineConstant; +#line 243 "Gmsh.l" +return tToday; YY_BREAK case 174: YY_RULE_SETUP -#line 245 "Gmsh.l" -return tUsing; +#line 244 "Gmsh.l" +return tTotalMemory; YY_BREAK case 175: YY_RULE_SETUP -#line 247 "Gmsh.l" -return tVolume; +#line 246 "Gmsh.l" +return tUndefineConstant; YY_BREAK case 176: -#line 250 "Gmsh.l" +YY_RULE_SETUP +#line 247 "Gmsh.l" +return tUsing; + YY_BREAK case 177: -#line 251 "Gmsh.l" +YY_RULE_SETUP +#line 249 "Gmsh.l" +return tVolume; + YY_BREAK case 178: #line 252 "Gmsh.l" case 179: +#line 253 "Gmsh.l" +case 180: +#line 254 "Gmsh.l" +case 181: YY_RULE_SETUP -#line 252 "Gmsh.l" +#line 254 "Gmsh.l" { gmsh_yylval.d = atof((char *)gmsh_yytext); return tDOUBLE; } YY_BREAK -case 180: +case 182: YY_RULE_SETUP -#line 254 "Gmsh.l" +#line 256 "Gmsh.l" { gmsh_yylval.c = strsave((char*)gmsh_yytext); return tSTRING; } YY_BREAK -case 181: +case 183: YY_RULE_SETUP -#line 256 "Gmsh.l" +#line 258 "Gmsh.l" return gmsh_yytext[0]; YY_BREAK -case 182: +case 184: YY_RULE_SETUP -#line 258 "Gmsh.l" +#line 260 "Gmsh.l" ECHO; YY_BREAK -#line 2207 "Gmsh.yy.cpp" +#line 2224 "Gmsh.yy.cpp" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -2495,7 +2512,7 @@ static int yy_get_next_buffer (void) 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 >= 877 ) + if ( yy_current_state >= 889 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2523,11 +2540,11 @@ static int yy_get_next_buffer (void) 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 >= 877 ) + if ( yy_current_state >= 889 ) 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 == 876); + yy_is_jam = (yy_current_state == 888); return yy_is_jam ? 0 : yy_current_state; } @@ -3200,7 +3217,7 @@ void gmsh_yyfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 258 "Gmsh.l" +#line 260 "Gmsh.l" diff --git a/doc/texinfo/gmsh.texi b/doc/texinfo/gmsh.texi index 2cc9bd193a173e365f8fdb30b4257f25c7664dc7..06539ac3fb51128a368699d76323c899a31126df 100644 --- a/doc/texinfo/gmsh.texi +++ b/doc/texinfo/gmsh.texi @@ -982,6 +982,7 @@ parsing of the script file: StrFind(@var{char-expression}, @var{char-expression}) | StrCmp(@var{char-expression}, @var{char-expression}) | TextAttributes(@var{char-expression}<,@var{char-expression}@dots{}>) | + Exists(@var{string}) | Exists(@var{string}~@{ @var{expression} @}) | GetValue("@var{string}", @var{expression}) @end example @@ -1004,8 +1005,8 @@ x_2 = 2; x_3 = 3; @end example -The brackets @code{[]} permit to extract one item from a list and to get -the size of a list, respectively. The operators +The brackets @code{[]} permit to extract one item from a list. The +@code{#} permits to get the size of a list. The operators @var{operator-unary-left}, @var{operator-unary-right}, @var{operator-binary}, @var{operator-ternary-left} and @var{operator-ternary-right} are defined in @ref{Operators}. For the @@ -1016,7 +1017,8 @@ for any occurrence of the second @var{char-expression}. @code{StrCmp} compares the two strings (returns an integer greater than, equal to, or less than 0, according as the first string is greater than, equal to, or less than the second string). @code{TextAttributes} creates attributes -for text strings. +for text strings. @code{Exists} checks if a variable with the given name +exists (i.e., has been defined previously). The last case in the definition allows to ask the user for a value interactively. For example, inserting @code{GetValue("Value of parameter @@ -1516,6 +1518,9 @@ Returns the current CPU time (in seconds). @item Memory Returns the current memory usage (in Mb). +@item TotalMemory +Returns the total memory available (in Mb). + @item newp Returns the next available point number. As explained in @ref{Geometry module}, a unique number must be associated with every geometrical point: