00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046 #define YYBISON 1
00047
00048
00049 #define YYBISON_VERSION "2.4.1"
00050
00051
00052 #define YYSKELETON_NAME "yacc.c"
00053
00054
00055 #define YYPURE 1
00056
00057
00058 #define YYPUSH 0
00059
00060
00061 #define YYPULL 1
00062
00063
00064 #define YYLSP_NEEDED 1
00065
00066
00067 #define yyparse osrlparse
00068 #define yylex osrllex
00069 #define yyerror osrlerror
00070 #define yylval osrllval
00071 #define yychar osrlchar
00072 #define yydebug osrldebug
00073 #define yynerrs osrlnerrs
00074 #define yylloc osrllloc
00075
00076
00077
00078
00079
00080
00081 #include "OSConfig.h"
00082 #include "OSMathUtil.h"
00083 #include "OSParameters.h"
00084 #include "OSGeneral.h"
00085 #include "OSErrorClass.h"
00086 #include "OSResult.h"
00087 #include "OSrLParserData.h"
00088 #include "OSgLParserData.h"
00089 #include "OSnLParserData.h"
00090 #include "OSBase64.h"
00091
00092 #include <iostream>
00093 #include <sstream>
00094 #include <stdio.h>
00095 #include <cstring>
00096
00097 #define OSRESULT_AVAILABLE
00098
00099
00100
00101 #ifdef DEBUG
00102 #define YYDEBUG 1
00103 #endif
00104
00105 typedef struct yy_buffer_state *YY_BUFFER_STATE;
00106 YY_BUFFER_STATE osrl_scan_string (const char *yy_str , void* yyscanner );
00107 int osrllex_init(void** ptr_yy_globals);
00108 int osrllex_destroy (void* yyscanner );
00109 int osrlget_lineno( void* yyscanner);
00110 char *osrlget_text (void* yyscanner );
00111 void osrlset_lineno (int line_number , void* yyscanner );
00112 void osrlset_extra (OSrLParserData* parserData , void* yyscanner );
00113 void yygetOSResult(const char *ch, OSResult* m_osresult, OSrLParserData *m_parserData, OSgLParserData *osglData, OSnLParserData *osnlData ) throw(ErrorClass);
00114 void osrl_empty_vectors( OSrLParserData* parserData);
00115 void osgl_empty_vectors( OSgLParserData* osglData);
00116 void osnl_empty_vectors( OSnLParserData* osnlData);
00117
00118
00119
00120
00121
00122
00123
00124 #ifndef YYDEBUG
00125 # define YYDEBUG 0
00126 #endif
00127
00128
00129 #ifdef YYERROR_VERBOSE
00130 # undef YYERROR_VERBOSE
00131 # define YYERROR_VERBOSE 1
00132 #else
00133 # define YYERROR_VERBOSE 0
00134 #endif
00135
00136
00137 #ifndef YYTOKEN_TABLE
00138 # define YYTOKEN_TABLE 0
00139 #endif
00140
00141
00142
00143 #ifndef YYTOKENTYPE
00144 # define YYTOKENTYPE
00145
00146
00147 enum yytokentype {
00148 ATTRIBUTETEXT = 258,
00149 ELEMENTTEXT = 259,
00150 ITEMTEXT = 260,
00151 INTEGER = 261,
00152 DOUBLE = 262,
00153 QUOTE = 263,
00154 TWOQUOTES = 264,
00155 GREATERTHAN = 265,
00156 ENDOFELEMENT = 266,
00157 OSRLSTART = 267,
00158 OSRLSTARTEMPTY = 268,
00159 OSRLATTRIBUTETEXT = 269,
00160 OSRLEND = 270,
00161 WEIGHTEDOBJECTIVESATT = 271,
00162 EMPTYWEIGHTEDOBJECTIVESATT = 272,
00163 TARGETOBJECTIVENAMEATT = 273,
00164 EMPTYTARGETOBJECTIVENAMEATT = 274,
00165 NUMBEROFOTHERCONSTRAINTRESULTSATT = 275,
00166 NUMBEROFOTHEROBJECTIVERESULTSATT = 276,
00167 NUMBEROFOTHERRESULTSATT = 277,
00168 NUMBEROFOTHERSOLUTIONRESULTSATT = 278,
00169 NUMBEROFOTHERVARIABLERESULTSATT = 279,
00170 NUMBEROFSOLUTIONSATT = 280,
00171 NUMBEROFOTHERMATRIXOBJECTIVERESULTSATT = 281,
00172 NUMBEROFOTHERMATRIXCONSTRAINTRESULTSATT = 282,
00173 NUMBEROFOTHERMATRIXPROGRAMMINGRESULTSATT = 283,
00174 NUMBEROFOTHERMATRIXVARIABLERESULTSATT = 284,
00175 NUMBEROFSOLVEROUTPUTSATT = 285,
00176 NUMBEROFSUBSTATUSESATT = 286,
00177 NUMBEROFTIMESATT = 287,
00178 TARGETOBJECTIVEIDXATT = 288,
00179 ACTUALSTARTTIMESTART = 289,
00180 ACTUALSTARTTIMEEND = 290,
00181 AVAILABLECPUNUMBERSTART = 291,
00182 AVAILABLECPUNUMBEREND = 292,
00183 AVAILABLECPUSPEEDSTART = 293,
00184 AVAILABLECPUSPEEDEND = 294,
00185 AVAILABLEDISKSPACESTART = 295,
00186 AVAILABLEDISKSPACEEND = 296,
00187 AVAILABLEMEMORYSTART = 297,
00188 AVAILABLEMEMORYEND = 298,
00189 BASISSTATUSSTART = 299,
00190 BASISSTATUSEND = 300,
00191 CURRENTJOBCOUNTSTART = 301,
00192 CURRENTJOBCOUNTEND = 302,
00193 CURRENTSTATESTART = 303,
00194 CURRENTSTATEEND = 304,
00195 DUALVALUESSTART = 305,
00196 DUALVALUESEND = 306,
00197 ENDTIMESTART = 307,
00198 ENDTIMEEND = 308,
00199 IDXSTART = 309,
00200 IDXEND = 310,
00201 GENERALSTATUSSTART = 311,
00202 GENERALSTATUSEND = 312,
00203 GENERALSUBSTATUSSTART = 313,
00204 GENERALSUBSTATUSEND = 314,
00205 MESSAGESTART = 315,
00206 MESSAGEEND = 316,
00207 OPTIMIZATIONSOLUTIONSTATUSSTART = 317,
00208 OPTIMIZATIONSOLUTIONSTATUSEND = 318,
00209 OPTIMIZATIONSOLUTIONSUBSTATUSSTART = 319,
00210 OPTIMIZATIONSOLUTIONSUBSTATUSEND = 320,
00211 OTHERRESULTSSTART = 321,
00212 OTHERRESULTSEND = 322,
00213 OTHERSOLUTIONRESULTSTART = 323,
00214 OTHERSOLUTIONRESULTEND = 324,
00215 OTHERSOLUTIONRESULTSSTART = 325,
00216 OTHERSOLUTIONRESULTSEND = 326,
00217 OTHERSOLVEROUTPUTSTART = 327,
00218 OTHERSOLVEROUTPUTEND = 328,
00219 SCHEDULEDSTARTTIMESTART = 329,
00220 SCHEDULEDSTARTTIMEEND = 330,
00221 SERVICEUTILIZATIONSTART = 331,
00222 SERVICEUTILIZATIONEND = 332,
00223 SOLUTIONSTART = 333,
00224 SOLUTIONEND = 334,
00225 SOLVERINVOKEDSTART = 335,
00226 SOLVERINVOKEDEND = 336,
00227 SOLVEROUTPUTSTART = 337,
00228 SOLVEROUTPUTEND = 338,
00229 STATUSSTART = 339,
00230 STATUSEND = 340,
00231 SUBMITTIMESTART = 341,
00232 SUBMITTIMEEND = 342,
00233 SUBSTATUSSTART = 343,
00234 SUBSTATUSEND = 344,
00235 SYSTEMINFORMATIONSTART = 345,
00236 SYSTEMINFORMATIONEND = 346,
00237 TIMESTART = 347,
00238 TIMEEND = 348,
00239 TIMESERVICESTARTEDSTART = 349,
00240 TIMESERVICESTARTEDEND = 350,
00241 TIMESTAMPSTART = 351,
00242 TIMESTAMPEND = 352,
00243 TIMINGINFORMATIONSTART = 353,
00244 TIMINGINFORMATIONEND = 354,
00245 TOTALJOBSSOFARSTART = 355,
00246 TOTALJOBSSOFAREND = 356,
00247 USEDCPUNUMBERSTART = 357,
00248 USEDCPUNUMBEREND = 358,
00249 USEDCPUSPEEDSTART = 359,
00250 USEDCPUSPEEDEND = 360,
00251 USEDDISKSPACESTART = 361,
00252 USEDDISKSPACEEND = 362,
00253 USEDMEMORYSTART = 363,
00254 USEDMEMORYEND = 364,
00255 VALUESSTRINGSTART = 365,
00256 VALUESSTRINGEND = 366,
00257 OTHERMATRIXVARIABLERESULTSTART = 367,
00258 OTHERMATRIXVARIABLERESULTEND = 368,
00259 OTHERMATRIXOBJECTIVERESULTSTART = 369,
00260 OTHERMATRIXOBJECTIVERESULTEND = 370,
00261 OTHERMATRIXCONSTRAINTRESULTSTART = 371,
00262 OTHERMATRIXCONSTRAINTRESULTEND = 372,
00263 OTHERMATRIXPROGRAMMINGRESULTSTART = 373,
00264 OTHERMATRIXPROGRAMMINGRESULTEND = 374,
00265 HEADERSTART = 375,
00266 HEADEREND = 376,
00267 FILENAMESTART = 377,
00268 FILENAMEEND = 378,
00269 FILENAMEEMPTY = 379,
00270 FILENAMESTARTANDEND = 380,
00271 FILESOURCESTART = 381,
00272 FILESOURCEEND = 382,
00273 FILESOURCEEMPTY = 383,
00274 FILESOURCESTARTANDEND = 384,
00275 FILEDESCRIPTIONSTART = 385,
00276 FILEDESCRIPTIONEND = 386,
00277 FILEDESCRIPTIONEMPTY = 387,
00278 FILEDESCRIPTIONSTARTANDEND = 388,
00279 FILECREATORSTART = 389,
00280 FILECREATOREND = 390,
00281 FILECREATOREMPTY = 391,
00282 FILECREATORSTARTANDEND = 392,
00283 FILELICENCESTART = 393,
00284 FILELICENCEEND = 394,
00285 FILELICENCEEMPTY = 395,
00286 FILELICENCESTARTANDEND = 396,
00287 INDEXESSTART = 397,
00288 INDEXESEND = 398,
00289 VALUESSTART = 399,
00290 VALUESEND = 400,
00291 NONZEROSSTART = 401,
00292 NONZEROSEND = 402,
00293 ELSTART = 403,
00294 ELEND = 404,
00295 ENUMERATIONSTART = 405,
00296 ENUMERATIONEND = 406,
00297 ITEMEMPTY = 407,
00298 ITEMSTART = 408,
00299 ITEMEND = 409,
00300 ITEMSTARTANDEND = 410,
00301 BASE64START = 411,
00302 BASE64END = 412,
00303 NUMBEROFELATT = 413,
00304 NUMBEROFENUMERATIONSATT = 414,
00305 NUMBEROFITEMSATT = 415,
00306 EMPTYCATEGORYATT = 416,
00307 CATEGORYATT = 417,
00308 EMPTYDESCRIPTIONATT = 418,
00309 DESCRIPTIONATT = 419,
00310 EMPTYSOLVERATT = 420,
00311 SOLVERATT = 421,
00312 EMPTYNAMEATT = 422,
00313 NAMEATT = 423,
00314 EMPTYTYPEATT = 424,
00315 TYPEATT = 425,
00316 EMPTYENUMTYPEATT = 426,
00317 ENUMTYPEATT = 427,
00318 EMPTYSHAPEATT = 428,
00319 SHAPEATT = 429,
00320 EMPTYUNITATT = 430,
00321 UNITATT = 431,
00322 EMPTYVALUEATT = 432,
00323 VALUEATT = 433,
00324 EMPTYVALUETYPEATT = 434,
00325 VALUETYPEATT = 435,
00326 EMPTYCONTYPEATT = 436,
00327 CONTYPEATT = 437,
00328 EMPTYOBJTYPEATT = 438,
00329 OBJTYPEATT = 439,
00330 EMPTYVARTYPEATT = 440,
00331 VARTYPEATT = 441,
00332 EMPTYMATRIXCONTYPEATT = 442,
00333 MATRIXCONTYPEATT = 443,
00334 EMPTYMATRIXOBJTYPEATT = 444,
00335 MATRIXOBJTYPEATT = 445,
00336 EMPTYMATRIXVARTYPEATT = 446,
00337 MATRIXVARTYPEATT = 447,
00338 EMPTYMATRIXTYPEATT = 448,
00339 MATRIXTYPEATT = 449,
00340 EMPTYSYMMETRYATT = 450,
00341 SYMMETRYATT = 451,
00342 EMPTYROWMAJORATT = 452,
00343 ROWMAJORATT = 453,
00344 EMPTYBASETRANSPOSEATT = 454,
00345 BASETRANSPOSEATT = 455,
00346 NUMBEROFBLOCKSATT = 456,
00347 NUMBEROFCOLUMNSATT = 457,
00348 NUMBEROFROWSATT = 458,
00349 NUMBEROFMATRICESATT = 459,
00350 NUMBEROFVALUESATT = 460,
00351 NUMBEROFCONSTRAINTSATT = 461,
00352 NUMBEROFCONATT = 462,
00353 NUMBEROFCONIDXATT = 463,
00354 NUMBEROFOBJECTIVESATT = 464,
00355 NUMBEROFOBJATT = 465,
00356 NUMBEROFOBJIDXATT = 466,
00357 NUMBEROFVARIABLESATT = 467,
00358 NUMBEROFVARATT = 468,
00359 NUMBEROFVARIDXATT = 469,
00360 NUMBEROFMATRIXCONATT = 470,
00361 NUMBEROFMATRIXOBJATT = 471,
00362 NUMBEROFMATRIXVARATT = 472,
00363 BASEMATRIXIDXATT = 473,
00364 TARGETMATRIXFIRSTROWATT = 474,
00365 TARGETMATRIXFIRSTCOLATT = 475,
00366 BASEMATRIXSTARTROWATT = 476,
00367 BASEMATRIXSTARTCOLATT = 477,
00368 BASEMATRIXENDROWATT = 478,
00369 BASEMATRIXENDCOLATT = 479,
00370 SCALARMULTIPLIERATT = 480,
00371 BLOCKROWIDXATT = 481,
00372 BLOCKCOLIDXATT = 482,
00373 MATRIXVARIDXATT = 483,
00374 MATRIXOBJIDXATT = 484,
00375 MATRIXCONIDXATT = 485,
00376 IDXATT = 486,
00377 INCRATT = 487,
00378 MULTATT = 488,
00379 SIZEOFATT = 489,
00380 COEFATT = 490,
00381 CONSTANTATT = 491,
00382 MATRICESSTART = 492,
00383 MATRICESEND = 493,
00384 MATRIXSTART = 494,
00385 MATRIXEND = 495,
00386 BASEMATRIXEND = 496,
00387 BASEMATRIXSTART = 497,
00388 BLOCKSSTART = 498,
00389 BLOCKSEND = 499,
00390 BLOCKSTART = 500,
00391 BLOCKEND = 501,
00392 COLOFFSETSTART = 502,
00393 COLOFFSETEND = 503,
00394 ROWOFFSETSTART = 504,
00395 ROWOFFSETEND = 505,
00396 ELEMENTSSTART = 506,
00397 ELEMENTSEND = 507,
00398 CONSTANTELEMENTSSTART = 508,
00399 CONSTANTELEMENTSEND = 509,
00400 VARREFERENCEELEMENTSSTART = 510,
00401 VARREFERENCEELEMENTSEND = 511,
00402 LINEARELEMENTSSTART = 512,
00403 LINEARELEMENTSEND = 513,
00404 GENERALELEMENTSSTART = 514,
00405 GENERALELEMENTSEND = 515,
00406 CONREFERENCEELEMENTSSTART = 516,
00407 CONREFERENCEELEMENTSEND = 517,
00408 OBJREFERENCEELEMENTSSTART = 518,
00409 OBJREFERENCEELEMENTSEND = 519,
00410 STRINGVALUEDELEMENTSSTART = 520,
00411 STRINGVALUEDELEMENTSEND = 521,
00412 STARTVECTORSTART = 522,
00413 STARTVECTOREND = 523,
00414 INDEXSTART = 524,
00415 INDEXEND = 525,
00416 VALUESTART = 526,
00417 VALUEEND = 527,
00418 VARIDXSTART = 528,
00419 VARIDXEND = 529,
00420 TRANSFORMATIONSTART = 530,
00421 TRANSFORMATIONEND = 531,
00422 MATRIXPROGRAMMINGSTART = 532,
00423 MATRIXPROGRAMMINGEND = 533,
00424 MATRIXVARIABLESSTART = 534,
00425 MATRIXVARIABLESEND = 535,
00426 MATRIXVARSTART = 536,
00427 MATRIXVAREND = 537,
00428 MATRIXOBJECTIVESSTART = 538,
00429 MATRIXOBJECTIVESEND = 539,
00430 MATRIXOBJSTART = 540,
00431 MATRIXOBJEND = 541,
00432 MATRIXCONSTRAINTSSTART = 542,
00433 MATRIXCONSTRAINTSEND = 543,
00434 MATRIXCONSTART = 544,
00435 MATRIXCONEND = 545,
00436 CONSTART = 546,
00437 CONEND = 547,
00438 CONSTRAINTSSTART = 548,
00439 CONSTRAINTSEND = 549,
00440 OBJSTART = 550,
00441 OBJEND = 551,
00442 OBJECTIVESSTART = 552,
00443 OBJECTIVESEND = 553,
00444 VARSTART = 554,
00445 VAREND = 555,
00446 VARIABLESSTART = 556,
00447 VARIABLESEND = 557,
00448 GENERALSTART = 558,
00449 GENERALEND = 559,
00450 SYSTEMSTART = 560,
00451 SYSTEMEND = 561,
00452 SERVICESTART = 562,
00453 SERVICEEND = 563,
00454 JOBSTART = 564,
00455 JOBEND = 565,
00456 OPTIMIZATIONSTART = 566,
00457 OPTIMIZATIONEND = 567,
00458 ATEQUALITYSTART = 568,
00459 ATEQUALITYEND = 569,
00460 ATLOWERSTART = 570,
00461 ATLOWEREND = 571,
00462 ATUPPERSTART = 572,
00463 ATUPPEREND = 573,
00464 BASICSTART = 574,
00465 BASICEND = 575,
00466 ISFREESTART = 576,
00467 ISFREEEND = 577,
00468 SUPERBASICSTART = 578,
00469 SUPERBASICEND = 579,
00470 UNKNOWNSTART = 580,
00471 UNKNOWNEND = 581,
00472 SERVICEURISTART = 582,
00473 SERVICEURIEND = 583,
00474 SERVICENAMESTART = 584,
00475 SERVICENAMEEND = 585,
00476 INSTANCENAMESTART = 586,
00477 INSTANCENAMEEND = 587,
00478 JOBIDSTART = 588,
00479 JOBIDEND = 589,
00480 OTHERSTART = 590,
00481 OTHEREND = 591,
00482 DUMMY = 592,
00483 NONLINEAREXPRESSIONSSTART = 593,
00484 NONLINEAREXPRESSIONSEND = 594,
00485 NUMBEROFNONLINEAREXPRESSIONS = 595,
00486 NLSTART = 596,
00487 NLEND = 597,
00488 MATRIXEXPRESSIONSSTART = 598,
00489 MATRIXEXPRESSIONSEND = 599,
00490 NUMBEROFEXPR = 600,
00491 EXPRSTART = 601,
00492 EXPREND = 602,
00493 NUMBEROFMATRIXTERMSATT = 603,
00494 MATRIXTERMSTART = 604,
00495 MATRIXTERMEND = 605,
00496 POWERSTART = 606,
00497 POWEREND = 607,
00498 PLUSSTART = 608,
00499 PLUSEND = 609,
00500 MINUSSTART = 610,
00501 MINUSEND = 611,
00502 DIVIDESTART = 612,
00503 DIVIDEEND = 613,
00504 LNSTART = 614,
00505 LNEND = 615,
00506 SQRTSTART = 616,
00507 SQRTEND = 617,
00508 SUMSTART = 618,
00509 SUMEND = 619,
00510 PRODUCTSTART = 620,
00511 PRODUCTEND = 621,
00512 EXPSTART = 622,
00513 EXPEND = 623,
00514 NEGATESTART = 624,
00515 NEGATEEND = 625,
00516 IFSTART = 626,
00517 IFEND = 627,
00518 SQUARESTART = 628,
00519 SQUAREEND = 629,
00520 COSSTART = 630,
00521 COSEND = 631,
00522 SINSTART = 632,
00523 SINEND = 633,
00524 VARIABLESTART = 634,
00525 VARIABLEEND = 635,
00526 ABSSTART = 636,
00527 ABSEND = 637,
00528 ERFSTART = 638,
00529 ERFEND = 639,
00530 MAXSTART = 640,
00531 MAXEND = 641,
00532 ALLDIFFSTART = 642,
00533 ALLDIFFEND = 643,
00534 MINSTART = 644,
00535 MINEND = 645,
00536 ESTART = 646,
00537 EEND = 647,
00538 PISTART = 648,
00539 PIEND = 649,
00540 TIMESSTART = 650,
00541 TIMESEND = 651,
00542 NUMBERSTART = 652,
00543 NUMBEREND = 653,
00544 MATRIXDETERMINANTSTART = 654,
00545 MATRIXDETERMINANTEND = 655,
00546 MATRIXTRACESTART = 656,
00547 MATRIXTRACEEND = 657,
00548 MATRIXTOSCALARSTART = 658,
00549 MATRIXTOSCALAREND = 659,
00550 MATRIXDIAGONALSTART = 660,
00551 MATRIXDIAGONALEND = 661,
00552 MATRIXDOTTIMESSTART = 662,
00553 MATRIXDOTTIMESEND = 663,
00554 MATRIXLOWERTRIANGLESTART = 664,
00555 MATRIXLOWERTRIANGLEEND = 665,
00556 MATRIXUPPERTRIANGLESTART = 666,
00557 MATRIXUPPERTRIANGLEEND = 667,
00558 MATRIXMERGESTART = 668,
00559 MATRIXMERGEEND = 669,
00560 MATRIXMINUSSTART = 670,
00561 MATRIXMINUSEND = 671,
00562 MATRIXNEGATESTART = 672,
00563 MATRIXNEGATEEND = 673,
00564 MATRIXPLUSSTART = 674,
00565 MATRIXPLUSEND = 675,
00566 MATRIXTIMESSTART = 676,
00567 MATRIXTIMESEND = 677,
00568 MATRIXPRODUCTSTART = 678,
00569 MATRIXPRODUCTEND = 679,
00570 MATRIXSCALARTIMESSTART = 680,
00571 MATRIXSCALARTIMESEND = 681,
00572 MATRIXSUBMATRIXATSTART = 682,
00573 MATRIXSUBMATRIXATEND = 683,
00574 MATRIXTRANSPOSESTART = 684,
00575 MATRIXTRANSPOSEEND = 685,
00576 MATRIXREFERENCESTART = 686,
00577 MATRIXREFERENCEEND = 687,
00578 IDENTITYMATRIXSTART = 688,
00579 IDENTITYMATRIXEND = 689,
00580 MATRIXINVERSESTART = 690,
00581 MATRIXINVERSEEND = 691,
00582 EMPTYINCLUDEDIAGONALATT = 692,
00583 INCLUDEDIAGONALATT = 693,
00584 EMPTYIDATT = 694,
00585 IDATT = 695
00586 };
00587 #endif
00588
00589 #define ATTRIBUTETEXT 258
00590 #define ELEMENTTEXT 259
00591 #define ITEMTEXT 260
00592 #define INTEGER 261
00593 #define DOUBLE 262
00594 #define QUOTE 263
00595 #define TWOQUOTES 264
00596 #define GREATERTHAN 265
00597 #define ENDOFELEMENT 266
00598 #define OSRLSTART 267
00599 #define OSRLSTARTEMPTY 268
00600 #define OSRLATTRIBUTETEXT 269
00601 #define OSRLEND 270
00602 #define WEIGHTEDOBJECTIVESATT 271
00603 #define EMPTYWEIGHTEDOBJECTIVESATT 272
00604 #define TARGETOBJECTIVENAMEATT 273
00605 #define EMPTYTARGETOBJECTIVENAMEATT 274
00606 #define NUMBEROFOTHERCONSTRAINTRESULTSATT 275
00607 #define NUMBEROFOTHEROBJECTIVERESULTSATT 276
00608 #define NUMBEROFOTHERRESULTSATT 277
00609 #define NUMBEROFOTHERSOLUTIONRESULTSATT 278
00610 #define NUMBEROFOTHERVARIABLERESULTSATT 279
00611 #define NUMBEROFSOLUTIONSATT 280
00612 #define NUMBEROFOTHERMATRIXOBJECTIVERESULTSATT 281
00613 #define NUMBEROFOTHERMATRIXCONSTRAINTRESULTSATT 282
00614 #define NUMBEROFOTHERMATRIXPROGRAMMINGRESULTSATT 283
00615 #define NUMBEROFOTHERMATRIXVARIABLERESULTSATT 284
00616 #define NUMBEROFSOLVEROUTPUTSATT 285
00617 #define NUMBEROFSUBSTATUSESATT 286
00618 #define NUMBEROFTIMESATT 287
00619 #define TARGETOBJECTIVEIDXATT 288
00620 #define ACTUALSTARTTIMESTART 289
00621 #define ACTUALSTARTTIMEEND 290
00622 #define AVAILABLECPUNUMBERSTART 291
00623 #define AVAILABLECPUNUMBEREND 292
00624 #define AVAILABLECPUSPEEDSTART 293
00625 #define AVAILABLECPUSPEEDEND 294
00626 #define AVAILABLEDISKSPACESTART 295
00627 #define AVAILABLEDISKSPACEEND 296
00628 #define AVAILABLEMEMORYSTART 297
00629 #define AVAILABLEMEMORYEND 298
00630 #define BASISSTATUSSTART 299
00631 #define BASISSTATUSEND 300
00632 #define CURRENTJOBCOUNTSTART 301
00633 #define CURRENTJOBCOUNTEND 302
00634 #define CURRENTSTATESTART 303
00635 #define CURRENTSTATEEND 304
00636 #define DUALVALUESSTART 305
00637 #define DUALVALUESEND 306
00638 #define ENDTIMESTART 307
00639 #define ENDTIMEEND 308
00640 #define IDXSTART 309
00641 #define IDXEND 310
00642 #define GENERALSTATUSSTART 311
00643 #define GENERALSTATUSEND 312
00644 #define GENERALSUBSTATUSSTART 313
00645 #define GENERALSUBSTATUSEND 314
00646 #define MESSAGESTART 315
00647 #define MESSAGEEND 316
00648 #define OPTIMIZATIONSOLUTIONSTATUSSTART 317
00649 #define OPTIMIZATIONSOLUTIONSTATUSEND 318
00650 #define OPTIMIZATIONSOLUTIONSUBSTATUSSTART 319
00651 #define OPTIMIZATIONSOLUTIONSUBSTATUSEND 320
00652 #define OTHERRESULTSSTART 321
00653 #define OTHERRESULTSEND 322
00654 #define OTHERSOLUTIONRESULTSTART 323
00655 #define OTHERSOLUTIONRESULTEND 324
00656 #define OTHERSOLUTIONRESULTSSTART 325
00657 #define OTHERSOLUTIONRESULTSEND 326
00658 #define OTHERSOLVEROUTPUTSTART 327
00659 #define OTHERSOLVEROUTPUTEND 328
00660 #define SCHEDULEDSTARTTIMESTART 329
00661 #define SCHEDULEDSTARTTIMEEND 330
00662 #define SERVICEUTILIZATIONSTART 331
00663 #define SERVICEUTILIZATIONEND 332
00664 #define SOLUTIONSTART 333
00665 #define SOLUTIONEND 334
00666 #define SOLVERINVOKEDSTART 335
00667 #define SOLVERINVOKEDEND 336
00668 #define SOLVEROUTPUTSTART 337
00669 #define SOLVEROUTPUTEND 338
00670 #define STATUSSTART 339
00671 #define STATUSEND 340
00672 #define SUBMITTIMESTART 341
00673 #define SUBMITTIMEEND 342
00674 #define SUBSTATUSSTART 343
00675 #define SUBSTATUSEND 344
00676 #define SYSTEMINFORMATIONSTART 345
00677 #define SYSTEMINFORMATIONEND 346
00678 #define TIMESTART 347
00679 #define TIMEEND 348
00680 #define TIMESERVICESTARTEDSTART 349
00681 #define TIMESERVICESTARTEDEND 350
00682 #define TIMESTAMPSTART 351
00683 #define TIMESTAMPEND 352
00684 #define TIMINGINFORMATIONSTART 353
00685 #define TIMINGINFORMATIONEND 354
00686 #define TOTALJOBSSOFARSTART 355
00687 #define TOTALJOBSSOFAREND 356
00688 #define USEDCPUNUMBERSTART 357
00689 #define USEDCPUNUMBEREND 358
00690 #define USEDCPUSPEEDSTART 359
00691 #define USEDCPUSPEEDEND 360
00692 #define USEDDISKSPACESTART 361
00693 #define USEDDISKSPACEEND 362
00694 #define USEDMEMORYSTART 363
00695 #define USEDMEMORYEND 364
00696 #define VALUESSTRINGSTART 365
00697 #define VALUESSTRINGEND 366
00698 #define OTHERMATRIXVARIABLERESULTSTART 367
00699 #define OTHERMATRIXVARIABLERESULTEND 368
00700 #define OTHERMATRIXOBJECTIVERESULTSTART 369
00701 #define OTHERMATRIXOBJECTIVERESULTEND 370
00702 #define OTHERMATRIXCONSTRAINTRESULTSTART 371
00703 #define OTHERMATRIXCONSTRAINTRESULTEND 372
00704 #define OTHERMATRIXPROGRAMMINGRESULTSTART 373
00705 #define OTHERMATRIXPROGRAMMINGRESULTEND 374
00706 #define HEADERSTART 375
00707 #define HEADEREND 376
00708 #define FILENAMESTART 377
00709 #define FILENAMEEND 378
00710 #define FILENAMEEMPTY 379
00711 #define FILENAMESTARTANDEND 380
00712 #define FILESOURCESTART 381
00713 #define FILESOURCEEND 382
00714 #define FILESOURCEEMPTY 383
00715 #define FILESOURCESTARTANDEND 384
00716 #define FILEDESCRIPTIONSTART 385
00717 #define FILEDESCRIPTIONEND 386
00718 #define FILEDESCRIPTIONEMPTY 387
00719 #define FILEDESCRIPTIONSTARTANDEND 388
00720 #define FILECREATORSTART 389
00721 #define FILECREATOREND 390
00722 #define FILECREATOREMPTY 391
00723 #define FILECREATORSTARTANDEND 392
00724 #define FILELICENCESTART 393
00725 #define FILELICENCEEND 394
00726 #define FILELICENCEEMPTY 395
00727 #define FILELICENCESTARTANDEND 396
00728 #define INDEXESSTART 397
00729 #define INDEXESEND 398
00730 #define VALUESSTART 399
00731 #define VALUESEND 400
00732 #define NONZEROSSTART 401
00733 #define NONZEROSEND 402
00734 #define ELSTART 403
00735 #define ELEND 404
00736 #define ENUMERATIONSTART 405
00737 #define ENUMERATIONEND 406
00738 #define ITEMEMPTY 407
00739 #define ITEMSTART 408
00740 #define ITEMEND 409
00741 #define ITEMSTARTANDEND 410
00742 #define BASE64START 411
00743 #define BASE64END 412
00744 #define NUMBEROFELATT 413
00745 #define NUMBEROFENUMERATIONSATT 414
00746 #define NUMBEROFITEMSATT 415
00747 #define EMPTYCATEGORYATT 416
00748 #define CATEGORYATT 417
00749 #define EMPTYDESCRIPTIONATT 418
00750 #define DESCRIPTIONATT 419
00751 #define EMPTYSOLVERATT 420
00752 #define SOLVERATT 421
00753 #define EMPTYNAMEATT 422
00754 #define NAMEATT 423
00755 #define EMPTYTYPEATT 424
00756 #define TYPEATT 425
00757 #define EMPTYENUMTYPEATT 426
00758 #define ENUMTYPEATT 427
00759 #define EMPTYSHAPEATT 428
00760 #define SHAPEATT 429
00761 #define EMPTYUNITATT 430
00762 #define UNITATT 431
00763 #define EMPTYVALUEATT 432
00764 #define VALUEATT 433
00765 #define EMPTYVALUETYPEATT 434
00766 #define VALUETYPEATT 435
00767 #define EMPTYCONTYPEATT 436
00768 #define CONTYPEATT 437
00769 #define EMPTYOBJTYPEATT 438
00770 #define OBJTYPEATT 439
00771 #define EMPTYVARTYPEATT 440
00772 #define VARTYPEATT 441
00773 #define EMPTYMATRIXCONTYPEATT 442
00774 #define MATRIXCONTYPEATT 443
00775 #define EMPTYMATRIXOBJTYPEATT 444
00776 #define MATRIXOBJTYPEATT 445
00777 #define EMPTYMATRIXVARTYPEATT 446
00778 #define MATRIXVARTYPEATT 447
00779 #define EMPTYMATRIXTYPEATT 448
00780 #define MATRIXTYPEATT 449
00781 #define EMPTYSYMMETRYATT 450
00782 #define SYMMETRYATT 451
00783 #define EMPTYROWMAJORATT 452
00784 #define ROWMAJORATT 453
00785 #define EMPTYBASETRANSPOSEATT 454
00786 #define BASETRANSPOSEATT 455
00787 #define NUMBEROFBLOCKSATT 456
00788 #define NUMBEROFCOLUMNSATT 457
00789 #define NUMBEROFROWSATT 458
00790 #define NUMBEROFMATRICESATT 459
00791 #define NUMBEROFVALUESATT 460
00792 #define NUMBEROFCONSTRAINTSATT 461
00793 #define NUMBEROFCONATT 462
00794 #define NUMBEROFCONIDXATT 463
00795 #define NUMBEROFOBJECTIVESATT 464
00796 #define NUMBEROFOBJATT 465
00797 #define NUMBEROFOBJIDXATT 466
00798 #define NUMBEROFVARIABLESATT 467
00799 #define NUMBEROFVARATT 468
00800 #define NUMBEROFVARIDXATT 469
00801 #define NUMBEROFMATRIXCONATT 470
00802 #define NUMBEROFMATRIXOBJATT 471
00803 #define NUMBEROFMATRIXVARATT 472
00804 #define BASEMATRIXIDXATT 473
00805 #define TARGETMATRIXFIRSTROWATT 474
00806 #define TARGETMATRIXFIRSTCOLATT 475
00807 #define BASEMATRIXSTARTROWATT 476
00808 #define BASEMATRIXSTARTCOLATT 477
00809 #define BASEMATRIXENDROWATT 478
00810 #define BASEMATRIXENDCOLATT 479
00811 #define SCALARMULTIPLIERATT 480
00812 #define BLOCKROWIDXATT 481
00813 #define BLOCKCOLIDXATT 482
00814 #define MATRIXVARIDXATT 483
00815 #define MATRIXOBJIDXATT 484
00816 #define MATRIXCONIDXATT 485
00817 #define IDXATT 486
00818 #define INCRATT 487
00819 #define MULTATT 488
00820 #define SIZEOFATT 489
00821 #define COEFATT 490
00822 #define CONSTANTATT 491
00823 #define MATRICESSTART 492
00824 #define MATRICESEND 493
00825 #define MATRIXSTART 494
00826 #define MATRIXEND 495
00827 #define BASEMATRIXEND 496
00828 #define BASEMATRIXSTART 497
00829 #define BLOCKSSTART 498
00830 #define BLOCKSEND 499
00831 #define BLOCKSTART 500
00832 #define BLOCKEND 501
00833 #define COLOFFSETSTART 502
00834 #define COLOFFSETEND 503
00835 #define ROWOFFSETSTART 504
00836 #define ROWOFFSETEND 505
00837 #define ELEMENTSSTART 506
00838 #define ELEMENTSEND 507
00839 #define CONSTANTELEMENTSSTART 508
00840 #define CONSTANTELEMENTSEND 509
00841 #define VARREFERENCEELEMENTSSTART 510
00842 #define VARREFERENCEELEMENTSEND 511
00843 #define LINEARELEMENTSSTART 512
00844 #define LINEARELEMENTSEND 513
00845 #define GENERALELEMENTSSTART 514
00846 #define GENERALELEMENTSEND 515
00847 #define CONREFERENCEELEMENTSSTART 516
00848 #define CONREFERENCEELEMENTSEND 517
00849 #define OBJREFERENCEELEMENTSSTART 518
00850 #define OBJREFERENCEELEMENTSEND 519
00851 #define STRINGVALUEDELEMENTSSTART 520
00852 #define STRINGVALUEDELEMENTSEND 521
00853 #define STARTVECTORSTART 522
00854 #define STARTVECTOREND 523
00855 #define INDEXSTART 524
00856 #define INDEXEND 525
00857 #define VALUESTART 526
00858 #define VALUEEND 527
00859 #define VARIDXSTART 528
00860 #define VARIDXEND 529
00861 #define TRANSFORMATIONSTART 530
00862 #define TRANSFORMATIONEND 531
00863 #define MATRIXPROGRAMMINGSTART 532
00864 #define MATRIXPROGRAMMINGEND 533
00865 #define MATRIXVARIABLESSTART 534
00866 #define MATRIXVARIABLESEND 535
00867 #define MATRIXVARSTART 536
00868 #define MATRIXVAREND 537
00869 #define MATRIXOBJECTIVESSTART 538
00870 #define MATRIXOBJECTIVESEND 539
00871 #define MATRIXOBJSTART 540
00872 #define MATRIXOBJEND 541
00873 #define MATRIXCONSTRAINTSSTART 542
00874 #define MATRIXCONSTRAINTSEND 543
00875 #define MATRIXCONSTART 544
00876 #define MATRIXCONEND 545
00877 #define CONSTART 546
00878 #define CONEND 547
00879 #define CONSTRAINTSSTART 548
00880 #define CONSTRAINTSEND 549
00881 #define OBJSTART 550
00882 #define OBJEND 551
00883 #define OBJECTIVESSTART 552
00884 #define OBJECTIVESEND 553
00885 #define VARSTART 554
00886 #define VAREND 555
00887 #define VARIABLESSTART 556
00888 #define VARIABLESEND 557
00889 #define GENERALSTART 558
00890 #define GENERALEND 559
00891 #define SYSTEMSTART 560
00892 #define SYSTEMEND 561
00893 #define SERVICESTART 562
00894 #define SERVICEEND 563
00895 #define JOBSTART 564
00896 #define JOBEND 565
00897 #define OPTIMIZATIONSTART 566
00898 #define OPTIMIZATIONEND 567
00899 #define ATEQUALITYSTART 568
00900 #define ATEQUALITYEND 569
00901 #define ATLOWERSTART 570
00902 #define ATLOWEREND 571
00903 #define ATUPPERSTART 572
00904 #define ATUPPEREND 573
00905 #define BASICSTART 574
00906 #define BASICEND 575
00907 #define ISFREESTART 576
00908 #define ISFREEEND 577
00909 #define SUPERBASICSTART 578
00910 #define SUPERBASICEND 579
00911 #define UNKNOWNSTART 580
00912 #define UNKNOWNEND 581
00913 #define SERVICEURISTART 582
00914 #define SERVICEURIEND 583
00915 #define SERVICENAMESTART 584
00916 #define SERVICENAMEEND 585
00917 #define INSTANCENAMESTART 586
00918 #define INSTANCENAMEEND 587
00919 #define JOBIDSTART 588
00920 #define JOBIDEND 589
00921 #define OTHERSTART 590
00922 #define OTHEREND 591
00923 #define DUMMY 592
00924 #define NONLINEAREXPRESSIONSSTART 593
00925 #define NONLINEAREXPRESSIONSEND 594
00926 #define NUMBEROFNONLINEAREXPRESSIONS 595
00927 #define NLSTART 596
00928 #define NLEND 597
00929 #define MATRIXEXPRESSIONSSTART 598
00930 #define MATRIXEXPRESSIONSEND 599
00931 #define NUMBEROFEXPR 600
00932 #define EXPRSTART 601
00933 #define EXPREND 602
00934 #define NUMBEROFMATRIXTERMSATT 603
00935 #define MATRIXTERMSTART 604
00936 #define MATRIXTERMEND 605
00937 #define POWERSTART 606
00938 #define POWEREND 607
00939 #define PLUSSTART 608
00940 #define PLUSEND 609
00941 #define MINUSSTART 610
00942 #define MINUSEND 611
00943 #define DIVIDESTART 612
00944 #define DIVIDEEND 613
00945 #define LNSTART 614
00946 #define LNEND 615
00947 #define SQRTSTART 616
00948 #define SQRTEND 617
00949 #define SUMSTART 618
00950 #define SUMEND 619
00951 #define PRODUCTSTART 620
00952 #define PRODUCTEND 621
00953 #define EXPSTART 622
00954 #define EXPEND 623
00955 #define NEGATESTART 624
00956 #define NEGATEEND 625
00957 #define IFSTART 626
00958 #define IFEND 627
00959 #define SQUARESTART 628
00960 #define SQUAREEND 629
00961 #define COSSTART 630
00962 #define COSEND 631
00963 #define SINSTART 632
00964 #define SINEND 633
00965 #define VARIABLESTART 634
00966 #define VARIABLEEND 635
00967 #define ABSSTART 636
00968 #define ABSEND 637
00969 #define ERFSTART 638
00970 #define ERFEND 639
00971 #define MAXSTART 640
00972 #define MAXEND 641
00973 #define ALLDIFFSTART 642
00974 #define ALLDIFFEND 643
00975 #define MINSTART 644
00976 #define MINEND 645
00977 #define ESTART 646
00978 #define EEND 647
00979 #define PISTART 648
00980 #define PIEND 649
00981 #define TIMESSTART 650
00982 #define TIMESEND 651
00983 #define NUMBERSTART 652
00984 #define NUMBEREND 653
00985 #define MATRIXDETERMINANTSTART 654
00986 #define MATRIXDETERMINANTEND 655
00987 #define MATRIXTRACESTART 656
00988 #define MATRIXTRACEEND 657
00989 #define MATRIXTOSCALARSTART 658
00990 #define MATRIXTOSCALAREND 659
00991 #define MATRIXDIAGONALSTART 660
00992 #define MATRIXDIAGONALEND 661
00993 #define MATRIXDOTTIMESSTART 662
00994 #define MATRIXDOTTIMESEND 663
00995 #define MATRIXLOWERTRIANGLESTART 664
00996 #define MATRIXLOWERTRIANGLEEND 665
00997 #define MATRIXUPPERTRIANGLESTART 666
00998 #define MATRIXUPPERTRIANGLEEND 667
00999 #define MATRIXMERGESTART 668
01000 #define MATRIXMERGEEND 669
01001 #define MATRIXMINUSSTART 670
01002 #define MATRIXMINUSEND 671
01003 #define MATRIXNEGATESTART 672
01004 #define MATRIXNEGATEEND 673
01005 #define MATRIXPLUSSTART 674
01006 #define MATRIXPLUSEND 675
01007 #define MATRIXTIMESSTART 676
01008 #define MATRIXTIMESEND 677
01009 #define MATRIXPRODUCTSTART 678
01010 #define MATRIXPRODUCTEND 679
01011 #define MATRIXSCALARTIMESSTART 680
01012 #define MATRIXSCALARTIMESEND 681
01013 #define MATRIXSUBMATRIXATSTART 682
01014 #define MATRIXSUBMATRIXATEND 683
01015 #define MATRIXTRANSPOSESTART 684
01016 #define MATRIXTRANSPOSEEND 685
01017 #define MATRIXREFERENCESTART 686
01018 #define MATRIXREFERENCEEND 687
01019 #define IDENTITYMATRIXSTART 688
01020 #define IDENTITYMATRIXEND 689
01021 #define MATRIXINVERSESTART 690
01022 #define MATRIXINVERSEEND 691
01023 #define EMPTYINCLUDEDIAGONALATT 692
01024 #define INCLUDEDIAGONALATT 693
01025 #define EMPTYIDATT 694
01026 #define IDATT 695
01027
01028
01029
01030
01031 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
01032 typedef union YYSTYPE
01033 {
01034
01035
01036 double dval;
01037 int ival;
01038 char* sval;
01039
01040
01041
01042 } YYSTYPE;
01043 # define YYSTYPE_IS_TRIVIAL 1
01044 # define yystype YYSTYPE
01045 # define YYSTYPE_IS_DECLARED 1
01046 #endif
01047
01048 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
01049 typedef struct YYLTYPE
01050 {
01051 int first_line;
01052 int first_column;
01053 int last_line;
01054 int last_column;
01055 } YYLTYPE;
01056 # define yyltype YYLTYPE
01057 # define YYLTYPE_IS_DECLARED 1
01058 # define YYLTYPE_IS_TRIVIAL 1
01059 #endif
01060
01061
01062
01063
01064
01065 std::string addErrorMsg(YYLTYPE* mytype, OSResult *osresult, OSrLParserData* parserData, OSgLParserData* osglData, OSnLParserData* osnlData, std::string errormsg ) ;
01066 void osrlerror(YYLTYPE* type, OSResult *osresult, OSrLParserData *parserData, OSgLParserData *osglData, OSnLParserData* osnlData, std::string errormsg);
01067 int osrllex(YYSTYPE* lvalp, YYLTYPE* llocp, void* scanner);
01068 #define scanner parserData->scanner
01069
01070
01071
01072 #ifdef short
01073 # undef short
01074 #endif
01075
01076 #ifdef YYTYPE_UINT8
01077 typedef YYTYPE_UINT8 yytype_uint8;
01078 #else
01079 typedef unsigned char yytype_uint8;
01080 #endif
01081
01082 #ifdef YYTYPE_INT8
01083 typedef YYTYPE_INT8 yytype_int8;
01084 #elif (defined __STDC__ || defined __C99__FUNC__ \
01085 || defined __cplusplus || defined _MSC_VER)
01086 typedef signed char yytype_int8;
01087 #else
01088 typedef short int yytype_int8;
01089 #endif
01090
01091 #ifdef YYTYPE_UINT16
01092 typedef YYTYPE_UINT16 yytype_uint16;
01093 #else
01094 typedef unsigned short int yytype_uint16;
01095 #endif
01096
01097 #ifdef YYTYPE_INT16
01098 typedef YYTYPE_INT16 yytype_int16;
01099 #else
01100 typedef short int yytype_int16;
01101 #endif
01102
01103 #ifndef YYSIZE_T
01104 # ifdef __SIZE_TYPE__
01105 # define YYSIZE_T __SIZE_TYPE__
01106 # elif defined size_t
01107 # define YYSIZE_T size_t
01108 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
01109 || defined __cplusplus || defined _MSC_VER)
01110 # include <stddef.h>
01111 # define YYSIZE_T size_t
01112 # else
01113 # define YYSIZE_T unsigned int
01114 # endif
01115 #endif
01116
01117 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
01118
01119 #ifndef YY_
01120 # if YYENABLE_NLS
01121 # if ENABLE_NLS
01122 # include <libintl.h>
01123 # define YY_(msgid) dgettext ("bison-runtime", msgid)
01124 # endif
01125 # endif
01126 # ifndef YY_
01127 # define YY_(msgid) msgid
01128 # endif
01129 #endif
01130
01131
01132 #if ! defined lint || defined __GNUC__
01133 # define YYUSE(e) ((void) (e))
01134 #else
01135 # define YYUSE(e)
01136 #endif
01137
01138
01139 #ifndef lint
01140 # define YYID(n) (n)
01141 #else
01142 #if (defined __STDC__ || defined __C99__FUNC__ \
01143 || defined __cplusplus || defined _MSC_VER)
01144 static int
01145 YYID (int yyi)
01146 #else
01147 static int
01148 YYID (yyi)
01149 int yyi;
01150 #endif
01151 {
01152 return yyi;
01153 }
01154 #endif
01155
01156 #if ! defined yyoverflow || YYERROR_VERBOSE
01157
01158
01159
01160 # ifdef YYSTACK_USE_ALLOCA
01161 # if YYSTACK_USE_ALLOCA
01162 # ifdef __GNUC__
01163 # define YYSTACK_ALLOC __builtin_alloca
01164 # elif defined __BUILTIN_VA_ARG_INCR
01165 # include <alloca.h>
01166 # elif defined _AIX
01167 # define YYSTACK_ALLOC __alloca
01168 # elif defined _MSC_VER
01169 # include <malloc.h>
01170 # define alloca _alloca
01171 # else
01172 # define YYSTACK_ALLOC alloca
01173 # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
01174 || defined __cplusplus || defined _MSC_VER)
01175 # include <stdlib.h>
01176 # ifndef _STDLIB_H
01177 # define _STDLIB_H 1
01178 # endif
01179 # endif
01180 # endif
01181 # endif
01182 # endif
01183
01184 # ifdef YYSTACK_ALLOC
01185
01186 # define YYSTACK_FREE(Ptr) do { ; } while (YYID (0))
01187 # ifndef YYSTACK_ALLOC_MAXIMUM
01188
01189
01190
01191
01192 # define YYSTACK_ALLOC_MAXIMUM 4032
01193 # endif
01194 # else
01195 # define YYSTACK_ALLOC YYMALLOC
01196 # define YYSTACK_FREE YYFREE
01197 # ifndef YYSTACK_ALLOC_MAXIMUM
01198 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
01199 # endif
01200 # if (defined __cplusplus && ! defined _STDLIB_H \
01201 && ! ((defined YYMALLOC || defined malloc) \
01202 && (defined YYFREE || defined free)))
01203 # include <stdlib.h>
01204 # ifndef _STDLIB_H
01205 # define _STDLIB_H 1
01206 # endif
01207 # endif
01208 # ifndef YYMALLOC
01209 # define YYMALLOC malloc
01210 # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
01211 || defined __cplusplus || defined _MSC_VER)
01212 void *malloc (YYSIZE_T);
01213 # endif
01214 # endif
01215 # ifndef YYFREE
01216 # define YYFREE free
01217 # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
01218 || defined __cplusplus || defined _MSC_VER)
01219 void free (void *);
01220 # endif
01221 # endif
01222 # endif
01223 #endif
01224
01225
01226 #if (! defined yyoverflow \
01227 && (! defined __cplusplus \
01228 || (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \
01229 && defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
01230
01231
01232 union yyalloc
01233 {
01234 yytype_int16 yyss_alloc;
01235 YYSTYPE yyvs_alloc;
01236 YYLTYPE yyls_alloc;
01237 };
01238
01239
01240 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
01241
01242
01243
01244 # define YYSTACK_BYTES(N) \
01245 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
01246 + 2 * YYSTACK_GAP_MAXIMUM)
01247
01248
01249
01250 # ifndef YYCOPY
01251 # if defined __GNUC__ && 1 < __GNUC__
01252 # define YYCOPY(To, From, Count) \
01253 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
01254 # else
01255 # define YYCOPY(To, From, Count) \
01256 do \
01257 { \
01258 YYSIZE_T yyi; \
01259 for (yyi = 0; yyi < (Count); yyi++) \
01260 (To)[yyi] = (From)[yyi]; \
01261 } \
01262 while (YYID (0))
01263 # endif
01264 # endif
01265
01266
01267
01268
01269
01270
01271 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
01272 do \
01273 { \
01274 YYSIZE_T yynewbytes; \
01275 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
01276 Stack = &yyptr->Stack_alloc; \
01277 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
01278 yyptr += yynewbytes / sizeof (*yyptr); \
01279 } \
01280 while (YYID (0))
01281
01282 #endif
01283
01284
01285 #define YYFINAL 6
01286
01287 #define YYLAST 2121
01288
01289
01290 #define YYNTOKENS 445
01291
01292 #define YYNNTS 1121
01293
01294 #define YYNRULES 1677
01295
01296 #define YYNSTATES 2353
01297
01298
01299 #define YYUNDEFTOK 2
01300 #define YYMAXUTOK 695
01301
01302 #define YYTRANSLATE(YYX) \
01303 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
01304
01305
01306 static const yytype_uint16 yytranslate[] =
01307 {
01308 0, 2, 2, 2, 2, 2, 2, 2, 2, 442,
01309 444, 2, 2, 443, 2, 2, 2, 2, 2, 2,
01310 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01311 2, 2, 441, 2, 2, 2, 2, 2, 2, 2,
01312 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01313 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01314 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01315 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01316 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01317 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01318 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01319 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01320 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01321 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01322 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01323 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01324 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01325 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01326 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01327 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01328 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01329 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01330 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01331 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01332 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01333 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
01334 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
01335 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
01336 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
01337 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
01338 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
01339 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
01340 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
01341 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
01342 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
01343 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
01344 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
01345 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
01346 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
01347 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
01348 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
01349 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
01350 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
01351 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
01352 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
01353 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
01354 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
01355 215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
01356 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
01357 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
01358 245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
01359 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
01360 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
01361 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
01362 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
01363 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
01364 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
01365 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
01366 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
01367 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
01368 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
01369 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
01370 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
01371 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
01372 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
01373 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
01374 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
01375 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
01376 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
01377 435, 436, 437, 438, 439, 440
01378 };
01379
01380 #if YYDEBUG
01381
01382
01383 static const yytype_uint16 yyprhs[] =
01384 {
01385 0, 0, 3, 7, 11, 13, 15, 16, 18, 20,
01386 22, 24, 28, 30, 32, 33, 40, 41, 43, 44,
01387 47, 49, 51, 53, 56, 58, 62, 64, 66, 69,
01388 71, 73, 75, 77, 79, 81, 83, 85, 87, 91,
01389 93, 95, 97, 100, 102, 104, 106, 108, 110, 113,
01390 115, 119, 121, 123, 126, 130, 132, 134, 135, 138,
01391 140, 142, 145, 147, 150, 152, 154, 156, 159, 161,
01392 165, 167, 170, 172, 174, 176, 179, 181, 185, 187,
01393 190, 192, 194, 196, 199, 201, 205, 207, 210, 212,
01394 214, 216, 219, 221, 225, 227, 230, 232, 234, 236,
01395 239, 241, 245, 247, 250, 252, 254, 256, 259, 261,
01396 265, 267, 270, 272, 274, 276, 279, 281, 285, 287,
01397 291, 293, 295, 297, 299, 302, 304, 308, 310, 312,
01398 315, 319, 321, 323, 324, 327, 329, 331, 333, 336,
01399 338, 339, 342, 344, 346, 348, 351, 353, 357, 359,
01400 361, 364, 366, 368, 370, 372, 374, 376, 379, 381,
01401 383, 385, 388, 390, 394, 396, 400, 402, 404, 405,
01402 408, 410, 412, 416, 418, 422, 424, 426, 427, 430,
01403 432, 434, 438, 440, 444, 446, 448, 449, 452, 454,
01404 456, 460, 462, 466, 468, 469, 471, 475, 477, 481,
01405 483, 485, 487, 489, 492, 494, 498, 500, 502, 505,
01406 509, 511, 513, 514, 517, 519, 521, 523, 526, 528,
01407 529, 532, 534, 536, 538, 541, 543, 547, 549, 551,
01408 554, 556, 558, 560, 562, 564, 566, 569, 571, 573,
01409 575, 578, 580, 584, 586, 589, 591, 593, 595, 598,
01410 600, 604, 606, 609, 611, 613, 615, 618, 620, 624,
01411 626, 629, 631, 633, 635, 638, 640, 644, 646, 649,
01412 651, 653, 655, 658, 660, 664, 666, 670, 672, 674,
01413 676, 678, 681, 683, 687, 689, 691, 694, 698, 700,
01414 702, 703, 706, 708, 710, 712, 715, 717, 718, 721,
01415 723, 725, 727, 730, 732, 736, 738, 740, 743, 745,
01416 747, 749, 751, 753, 755, 757, 759, 761, 763, 765,
01417 768, 770, 772, 774, 777, 779, 783, 785, 788, 790,
01418 792, 794, 797, 799, 803, 805, 808, 810, 812, 814,
01419 817, 819, 823, 825, 828, 830, 832, 834, 837, 839,
01420 843, 845, 848, 850, 852, 854, 857, 859, 863, 865,
01421 869, 871, 873, 875, 877, 880, 882, 886, 888, 890,
01422 893, 897, 899, 900, 903, 905, 907, 909, 911, 913,
01423 915, 918, 920, 924, 926, 928, 930, 934, 936, 938,
01424 939, 942, 944, 946, 950, 952, 956, 958, 960, 961,
01425 964, 966, 968, 972, 974, 978, 980, 982, 983, 986,
01426 988, 990, 994, 996, 1000, 1002, 1003, 1005, 1009, 1011,
01427 1015, 1017, 1019, 1021, 1023, 1026, 1028, 1032, 1034, 1036,
01428 1039, 1043, 1045, 1047, 1048, 1051, 1053, 1055, 1057, 1060,
01429 1062, 1063, 1067, 1069, 1071, 1072, 1075, 1077, 1079, 1081,
01430 1083, 1085, 1087, 1090, 1092, 1096, 1099, 1101, 1104, 1108,
01431 1110, 1112, 1113, 1116, 1118, 1120, 1122, 1127, 1131, 1135,
01432 1145, 1149, 1151, 1153, 1155, 1158, 1160, 1162, 1164, 1166,
01433 1168, 1171, 1173, 1177, 1179, 1181, 1184, 1188, 1190, 1192,
01434 1193, 1196, 1198, 1200, 1203, 1205, 1206, 1209, 1211, 1213,
01435 1215, 1218, 1220, 1224, 1226, 1227, 1231, 1233, 1234, 1236,
01436 1238, 1240, 1242, 1246, 1251, 1252, 1256, 1258, 1260, 1262,
01437 1264, 1267, 1269, 1273, 1275, 1277, 1280, 1284, 1286, 1287,
01438 1290, 1292, 1294, 1298, 1299, 1303, 1305, 1307, 1309, 1311,
01439 1314, 1316, 1320, 1322, 1324, 1327, 1331, 1333, 1334, 1337,
01440 1339, 1341, 1343, 1345, 1348, 1350, 1354, 1356, 1357, 1360,
01441 1362, 1364, 1366, 1368, 1372, 1380, 1381, 1383, 1384, 1386,
01442 1387, 1389, 1390, 1392, 1393, 1395, 1396, 1398, 1399, 1401,
01443 1402, 1405, 1409, 1411, 1413, 1414, 1417, 1419, 1421, 1423,
01444 1425, 1427, 1429, 1431, 1433, 1435, 1437, 1439, 1442, 1444,
01445 1448, 1450, 1452, 1454, 1457, 1461, 1463, 1464, 1467, 1469,
01446 1471, 1473, 1475, 1478, 1480, 1484, 1486, 1488, 1491, 1495,
01447 1497, 1499, 1500, 1503, 1505, 1507, 1509, 1511, 1513, 1515,
01448 1519, 1521, 1522, 1526, 1528, 1529, 1531, 1533, 1535, 1537,
01449 1541, 1545, 1546, 1550, 1552, 1554, 1556, 1558, 1561, 1563,
01450 1567, 1569, 1571, 1574, 1578, 1580, 1581, 1584, 1586, 1588,
01451 1592, 1593, 1596, 1598, 1600, 1602, 1604, 1608, 1616, 1617,
01452 1619, 1620, 1622, 1623, 1625, 1626, 1628, 1629, 1631, 1632,
01453 1634, 1635, 1637, 1638, 1641, 1645, 1647, 1649, 1650, 1653,
01454 1655, 1657, 1659, 1661, 1663, 1665, 1667, 1669, 1671, 1673,
01455 1675, 1678, 1680, 1684, 1686, 1688, 1690, 1693, 1697, 1699,
01456 1700, 1703, 1705, 1707, 1709, 1711, 1714, 1716, 1720, 1722,
01457 1724, 1727, 1731, 1733, 1735, 1736, 1739, 1741, 1743, 1745,
01458 1747, 1749, 1751, 1755, 1757, 1758, 1762, 1764, 1765, 1767,
01459 1769, 1771, 1773, 1777, 1781, 1782, 1786, 1788, 1790, 1792,
01460 1794, 1797, 1799, 1803, 1805, 1807, 1810, 1814, 1816, 1817,
01461 1820, 1822, 1824, 1828, 1829, 1832, 1834, 1836, 1838, 1840,
01462 1844, 1852, 1853, 1855, 1856, 1858, 1859, 1861, 1862, 1864,
01463 1865, 1867, 1868, 1870, 1871, 1873, 1874, 1877, 1881, 1883,
01464 1885, 1886, 1889, 1891, 1893, 1895, 1897, 1899, 1901, 1903,
01465 1905, 1907, 1909, 1911, 1914, 1916, 1920, 1922, 1924, 1926,
01466 1929, 1933, 1935, 1936, 1939, 1941, 1943, 1945, 1947, 1950,
01467 1952, 1956, 1958, 1960, 1963, 1967, 1969, 1971, 1972, 1975,
01468 1977, 1979, 1981, 1983, 1985, 1987, 1991, 1993, 1994, 1998,
01469 2000, 2001, 2003, 2005, 2007, 2009, 2014, 2015, 2019, 2021,
01470 2023, 2025, 2027, 2029, 2034, 2036, 2037, 2041, 2043, 2045,
01471 2047, 2049, 2051, 2055, 2057, 2058, 2061, 2062, 2065, 2069,
01472 2071, 2073, 2074, 2077, 2079, 2081, 2083, 2085, 2087, 2089,
01473 2091, 2093, 2095, 2097, 2099, 2102, 2104, 2108, 2110, 2112,
01474 2114, 2117, 2119, 2122, 2126, 2128, 2130, 2131, 2134, 2136,
01475 2138, 2140, 2142, 2144, 2146, 2150, 2152, 2153, 2156, 2158,
01476 2159, 2163, 2165, 2167, 2169, 2171, 2174, 2176, 2180, 2182,
01477 2184, 2187, 2191, 2193, 2195, 2196, 2199, 2201, 2203, 2205,
01478 2207, 2209, 2211, 2213, 2216, 2218, 2222, 2224, 2226, 2229,
01479 2231, 2233, 2235, 2237, 2239, 2243, 2245, 2246, 2250, 2252,
01480 2254, 2256, 2258, 2261, 2263, 2267, 2269, 2271, 2274, 2278,
01481 2280, 2282, 2283, 2286, 2288, 2290, 2292, 2294, 2296, 2298,
01482 2301, 2303, 2307, 2309, 2311, 2314, 2316, 2318, 2320, 2322,
01483 2324, 2328, 2330, 2335, 2340, 2345, 2350, 2355, 2360, 2365,
01484 2370, 2375, 2380, 2385, 2387, 2389, 2391, 2393, 2395, 2398,
01485 2399, 2402, 2404, 2406, 2408, 2410, 2413, 2415, 2417, 2419,
01486 2421, 2425, 2427, 2428, 2431, 2433, 2435, 2437, 2439, 2441,
01487 2443, 2445, 2447, 2449, 2451, 2455, 2457, 2459, 2461, 2463,
01488 2465, 2469, 2471, 2473, 2475, 2477, 2479, 2483, 2485, 2487,
01489 2489, 2491, 2493, 2497, 2499, 2501, 2503, 2505, 2507, 2511,
01490 2513, 2515, 2516, 2519, 2523, 2525, 2527, 2528, 2531, 2533,
01491 2535, 2539, 2543, 2545, 2547, 2550, 2552, 2556, 2558, 2560,
01492 2561, 2564, 2568, 2570, 2571, 2573, 2577, 2581, 2583, 2585,
01493 2588, 2590, 2594, 2598, 2600, 2602, 2604, 2606, 2610, 2612,
01494 2616, 2618, 2620, 2622, 2624, 2628, 2630, 2634, 2636, 2638,
01495 2640, 2642, 2646, 2648, 2652, 2654, 2656, 2658, 2660, 2664,
01496 2666, 2670, 2672, 2674, 2676, 2678, 2682, 2684, 2688, 2690,
01497 2692, 2694, 2696, 2700, 2702, 2706, 2708, 2710, 2712, 2714,
01498 2718, 2720, 2722, 2726, 2728, 2730, 2731, 2734, 2736, 2738,
01499 2740, 2742, 2744, 2746, 2748, 2750, 2752, 2756, 2759, 2760,
01500 2764, 2766, 2768, 2769, 2772, 2774, 2776, 2778, 2780, 2782,
01501 2784, 2786, 2788, 2790, 2793, 2795, 2796, 2799, 2801, 2803,
01502 2805, 2807, 2809, 2811, 2813, 2815, 2820, 2822, 2824, 2825,
01503 2828, 2830, 2832, 2836, 2837, 2840, 2843, 2845, 2847, 2849,
01504 2851, 2855, 2857, 2860, 2862, 2864, 2866, 2868, 2872, 2874,
01505 2877, 2879, 2881, 2883, 2885, 2889, 2891, 2896, 2898, 2900,
01506 2901, 2904, 2906, 2908, 2912, 2913, 2916, 2919, 2921, 2923,
01507 2925, 2927, 2931, 2933, 2938, 2940, 2942, 2943, 2946, 2948,
01508 2950, 2954, 2955, 2958, 2959, 2962, 2964, 2966, 2968, 2970,
01509 2974, 2976, 2977, 2980, 2984, 2986, 2988, 2989, 2992, 2994,
01510 2996, 2998, 3000, 3002, 3006, 3007, 3010, 3014, 3016, 3017,
01511 3019, 3023, 3028, 3030, 3032, 3033, 3036, 3038, 3040, 3044,
01512 3045, 3048, 3049, 3052, 3054, 3056, 3058, 3060, 3064, 3065,
01513 3068, 3071, 3073, 3075, 3077, 3079, 3083, 3088, 3090, 3092,
01514 3093, 3096, 3098, 3100, 3104, 3105, 3108, 3111, 3113, 3115,
01515 3117, 3119, 3123, 3125, 3130, 3132, 3134, 3135, 3138, 3140,
01516 3142, 3146, 3147, 3150, 3151, 3154, 3156, 3158, 3160, 3162,
01517 3166, 3167, 3170, 3174, 3176, 3177, 3180, 3182, 3184, 3186,
01518 3190, 3196, 3198, 3199, 3201, 3203, 3207, 3209, 3211, 3217,
01519 3219, 3223, 3225, 3227, 3229, 3231, 3233, 3237, 3239, 3243,
01520 3245, 3247, 3249, 3251, 3253, 3257, 3259, 3260, 3263, 3267,
01521 3269, 3271, 3272, 3275, 3277, 3279, 3281, 3283, 3285, 3287,
01522 3289, 3293, 3296, 3301, 3306, 3311, 3316, 3321, 3326, 3331,
01523 3336, 3341, 3346, 3351, 3356, 3361, 3366, 3371, 3376, 3381,
01524 3386, 3391, 3396, 3401, 3406, 3411, 3416, 3421, 3426, 3431,
01525 3436, 3441, 3446, 3451, 3456, 3458, 3460, 3462, 3466, 3468,
01526 3470, 3472, 3476, 3478, 3480, 3482, 3486, 3488, 3490, 3492,
01527 3496, 3498, 3500, 3502, 3506, 3508, 3510, 3512, 3516, 3518,
01528 3520, 3522, 3526, 3528, 3530, 3532, 3536, 3538, 3540, 3542,
01529 3546, 3548, 3550, 3552, 3556, 3558, 3560, 3562, 3566, 3568,
01530 3570, 3572, 3576, 3578, 3580, 3582, 3586, 3588, 3590, 3592,
01531 3596, 3598, 3600, 3602, 3606, 3608, 3610, 3612, 3616, 3618,
01532 3620, 3622, 3626, 3628, 3630, 3632, 3634, 3636, 3638, 3640,
01533 3642, 3644, 3646, 3648, 3650, 3652, 3654, 3656, 3658, 3660,
01534 3662, 3664, 3666, 3668, 3670, 3672, 3674, 3676, 3678, 3680,
01535 3681, 3685, 3687, 3690, 3691, 3695, 3697, 3700, 3701, 3707,
01536 3708, 3714, 3715, 3721, 3722, 3727, 3728, 3734, 3735, 3741,
01537 3742, 3747, 3748, 3753, 3754, 3759, 3760, 3765, 3766, 3771,
01538 3772, 3777, 3781, 3783, 3785, 3786, 3791, 3792, 3799, 3800,
01539 3805, 3806, 3811, 3812, 3817, 3821, 3823, 3825, 3828, 3829,
01540 3832, 3834, 3836, 3838, 3839, 3844, 3845, 3850, 3852, 3855,
01541 3856, 3861, 3862, 3865, 3867, 3869, 3874, 3879, 3880, 3885,
01542 3886, 3889, 3890, 3895, 3896, 3899, 3900, 3905, 3906, 3909,
01543 3910, 3915, 3916, 3919, 3920, 3925, 3926, 3929, 3931, 3933,
01544 3935, 3937, 3939, 3941, 3943, 3945, 3947, 3949, 3951, 3953,
01545 3955, 3957, 3959, 3961, 3963, 3965, 3967, 3971, 3973, 3975,
01546 3978, 3983, 3987, 3989, 3991, 3994, 3999, 4003, 4005, 4007,
01547 4010, 4015, 4019, 4021, 4023, 4026, 4031, 4034, 4036, 4039,
01548 4042, 4044, 4048, 4051, 4053, 4056, 4059, 4061, 4064, 4069,
01549 4071, 4072, 4074, 4077, 4082, 4084, 4085, 4087, 4090, 4094,
01550 4097, 4099, 4101, 4104, 4107, 4109, 4113, 4116, 4118, 4121,
01551 4124, 4126, 4130, 4133, 4135, 4139, 4140, 4145, 4146, 4149,
01552 4152, 4154, 4158, 4161, 4163, 4170, 4173, 4175
01553 };
01554
01555
01556 static const yytype_int16 yyrhs[] =
01557 {
01558 446, 0, -1, 447, 455, 453, -1, 448, 449, 450,
01559 -1, 13, -1, 12, -1, -1, 14, -1, 451, -1,
01560 452, -1, 11, -1, 10, 455, 453, -1, 454, -1,
01561 15, -1, -1, 456, 457, 537, 591, 643, 738, -1,
01562 -1, 1087, -1, -1, 458, 459, -1, 303, -1, 460,
01563 -1, 461, -1, 10, 304, -1, 11, -1, 10, 462,
01564 304, -1, 463, -1, 464, -1, 463, 464, -1, 465,
01565 -1, 481, -1, 487, -1, 493, -1, 499, -1, 505,
01566 -1, 511, -1, 517, -1, 523, -1, 466, 467, 470,
01567 -1, 56, -1, 468, -1, 469, -1, 468, 469, -1,
01568 1412, -1, 1385, -1, 1080, -1, 471, -1, 472, -1,
01569 10, 57, -1, 11, -1, 10, 473, 57, -1, 474,
01570 -1, 475, -1, 474, 475, -1, 476, 477, 480, -1,
01571 88, -1, 478, -1, -1, 478, 479, -1, 1394, -1,
01572 1385, -1, 10, 89, -1, 11, -1, 482, 483, -1,
01573 60, -1, 484, -1, 485, -1, 10, 61, -1, 11,
01574 -1, 10, 486, 61, -1, 4, -1, 488, 489, -1,
01575 327, -1, 490, -1, 491, -1, 10, 328, -1, 11,
01576 -1, 10, 492, 328, -1, 4, -1, 494, 495, -1,
01577 329, -1, 496, -1, 497, -1, 10, 330, -1, 11,
01578 -1, 10, 498, 330, -1, 4, -1, 500, 501, -1,
01579 331, -1, 502, -1, 503, -1, 10, 332, -1, 11,
01580 -1, 10, 504, 332, -1, 4, -1, 506, 507, -1,
01581 333, -1, 508, -1, 509, -1, 10, 334, -1, 11,
01582 -1, 10, 510, 334, -1, 4, -1, 512, 513, -1,
01583 80, -1, 514, -1, 515, -1, 10, 81, -1, 11,
01584 -1, 10, 516, 81, -1, 4, -1, 518, 519, -1,
01585 96, -1, 520, -1, 521, -1, 10, 97, -1, 11,
01586 -1, 10, 522, 97, -1, 4, -1, 524, 525, 526,
01587 -1, 66, -1, 1075, -1, 527, -1, 528, -1, 10,
01588 67, -1, 11, -1, 10, 529, 67, -1, 530, -1,
01589 531, -1, 530, 531, -1, 532, 533, 536, -1, 335,
01590 -1, 534, -1, -1, 534, 535, -1, 1394, -1, 1418,
01591 -1, 1385, -1, 10, 336, -1, 11, -1, -1, 538,
01592 539, -1, 305, -1, 540, -1, 541, -1, 10, 306,
01593 -1, 11, -1, 10, 542, 306, -1, 543, -1, 544,
01594 -1, 543, 544, -1, 545, -1, 551, -1, 558, -1,
01595 565, -1, 572, -1, 577, -1, 546, 547, -1, 90,
01596 -1, 548, -1, 549, -1, 10, 91, -1, 11, -1,
01597 10, 550, 91, -1, 4, -1, 552, 553, 556, -1,
01598 40, -1, 554, -1, -1, 554, 555, -1, 1415, -1,
01599 1385, -1, 10, 557, 41, -1, 1082, -1, 559, 560,
01600 563, -1, 42, -1, 561, -1, -1, 561, 562, -1,
01601 1415, -1, 1385, -1, 10, 564, 43, -1, 1082, -1,
01602 566, 567, 570, -1, 38, -1, 568, -1, -1, 568,
01603 569, -1, 1415, -1, 1385, -1, 10, 571, 39, -1,
01604 1082, -1, 573, 574, 575, -1, 36, -1, -1, 1385,
01605 -1, 10, 576, 37, -1, 6, -1, 578, 579, 580,
01606 -1, 66, -1, 1075, -1, 581, -1, 582, -1, 10,
01607 67, -1, 11, -1, 10, 583, 67, -1, 584, -1,
01608 585, -1, 584, 585, -1, 586, 587, 590, -1, 335,
01609 -1, 588, -1, -1, 588, 589, -1, 1394, -1, 1418,
01610 -1, 1385, -1, 10, 336, -1, 11, -1, -1, 592,
01611 593, -1, 307, -1, 594, -1, 595, -1, 10, 308,
01612 -1, 11, -1, 10, 596, 308, -1, 597, -1, 598,
01613 -1, 597, 598, -1, 599, -1, 605, -1, 611, -1,
01614 617, -1, 623, -1, 629, -1, 600, 601, -1, 48,
01615 -1, 602, -1, 603, -1, 10, 49, -1, 11, -1,
01616 10, 604, 49, -1, 4, -1, 606, 607, -1, 46,
01617 -1, 608, -1, 609, -1, 10, 47, -1, 11, -1,
01618 10, 610, 47, -1, 6, -1, 612, 613, -1, 100,
01619 -1, 614, -1, 615, -1, 10, 101, -1, 11, -1,
01620 10, 616, 101, -1, 6, -1, 618, 619, -1, 94,
01621 -1, 620, -1, 621, -1, 10, 95, -1, 11, -1,
01622 10, 622, 95, -1, 4, -1, 624, 625, -1, 76,
01623 -1, 626, -1, 627, -1, 10, 77, -1, 11, -1,
01624 10, 628, 77, -1, 1082, -1, 630, 631, 632, -1,
01625 66, -1, 1075, -1, 633, -1, 634, -1, 10, 67,
01626 -1, 11, -1, 10, 635, 67, -1, 636, -1, 637,
01627 -1, 636, 637, -1, 638, 639, 642, -1, 335, -1,
01628 640, -1, -1, 640, 641, -1, 1394, -1, 1418, -1,
01629 1385, -1, 10, 336, -1, 11, -1, -1, 644, 645,
01630 -1, 309, -1, 646, -1, 647, -1, 10, 310, -1,
01631 11, -1, 10, 648, 310, -1, 649, -1, 650, -1,
01632 649, 650, -1, 651, -1, 657, -1, 663, -1, 669,
01633 -1, 675, -1, 681, -1, 698, -1, 705, -1, 712,
01634 -1, 719, -1, 724, -1, 652, 653, -1, 84, -1,
01635 654, -1, 655, -1, 10, 85, -1, 11, -1, 10,
01636 656, 85, -1, 4, -1, 658, 659, -1, 86, -1,
01637 660, -1, 661, -1, 10, 87, -1, 11, -1, 10,
01638 662, 87, -1, 4, -1, 664, 665, -1, 74, -1,
01639 666, -1, 667, -1, 10, 75, -1, 11, -1, 10,
01640 668, 75, -1, 4, -1, 670, 671, -1, 34, -1,
01641 672, -1, 673, -1, 10, 35, -1, 11, -1, 10,
01642 674, 35, -1, 4, -1, 676, 677, -1, 52, -1,
01643 678, -1, 679, -1, 10, 53, -1, 11, -1, 10,
01644 680, 53, -1, 4, -1, 682, 683, 684, -1, 98,
01645 -1, 1081, -1, 685, -1, 686, -1, 10, 99, -1,
01646 11, -1, 10, 687, 99, -1, 688, -1, 689, -1,
01647 688, 689, -1, 690, 691, 693, -1, 92, -1, -1,
01648 691, 692, -1, 1415, -1, 1412, -1, 1379, -1, 1385,
01649 -1, 694, -1, 695, -1, 10, 93, -1, 11, -1,
01650 10, 696, 93, -1, 697, -1, 7, -1, 6, -1,
01651 699, 700, 703, -1, 106, -1, 701, -1, -1, 701,
01652 702, -1, 1415, -1, 1385, -1, 10, 704, 107, -1,
01653 1082, -1, 706, 707, 710, -1, 108, -1, 708, -1,
01654 -1, 708, 709, -1, 1415, -1, 1385, -1, 10, 711,
01655 109, -1, 1082, -1, 713, 714, 717, -1, 104, -1,
01656 715, -1, -1, 715, 716, -1, 1415, -1, 1385, -1,
01657 10, 718, 105, -1, 1082, -1, 720, 721, 722, -1,
01658 102, -1, -1, 1385, -1, 10, 723, 103, -1, 6,
01659 -1, 725, 726, 727, -1, 66, -1, 1075, -1, 728,
01660 -1, 729, -1, 10, 67, -1, 11, -1, 10, 730,
01661 67, -1, 731, -1, 732, -1, 731, 732, -1, 733,
01662 734, 737, -1, 335, -1, 735, -1, -1, 735, 736,
01663 -1, 1394, -1, 1418, -1, 1385, -1, 10, 336, -1,
01664 11, -1, -1, 739, 740, 743, -1, 311, -1, 741,
01665 -1, -1, 741, 742, -1, 1078, -1, 1358, -1, 1347,
01666 -1, 1353, -1, 744, -1, 745, -1, 10, 312, -1,
01667 11, -1, 10, 746, 312, -1, 747, 1048, -1, 748,
01668 -1, 747, 748, -1, 749, 750, 756, -1, 78, -1,
01669 751, -1, -1, 751, 752, -1, 753, -1, 754, -1,
01670 755, -1, 33, 1084, 6, 1084, -1, 18, 3, 1084,
01671 -1, 16, 3, 1084, -1, 10, 757, 773, 779, 857,
01672 919, 981, 1025, 79, -1, 758, 759, 762, -1, 84,
01673 -1, 760, -1, 761, -1, 760, 761, -1, 1412, -1,
01674 1385, -1, 1080, -1, 763, -1, 764, -1, 10, 85,
01675 -1, 11, -1, 10, 765, 85, -1, 766, -1, 767,
01676 -1, 766, 767, -1, 768, 769, 772, -1, 88, -1,
01677 770, -1, -1, 770, 771, -1, 1412, -1, 1385, -1,
01678 10, 89, -1, 11, -1, -1, 774, 775, -1, 60,
01679 -1, 776, -1, 777, -1, 10, 61, -1, 11, -1,
01680 10, 778, 61, -1, 4, -1, -1, 780, 781, 782,
01681 -1, 301, -1, -1, 1077, -1, 783, -1, 784, -1,
01682 11, -1, 10, 785, 302, -1, 786, 799, 815, 828,
01683 -1, -1, 787, 788, 789, -1, 144, -1, 1356, -1,
01684 790, -1, 791, -1, 10, 145, -1, 11, -1, 10,
01685 792, 145, -1, 793, -1, 794, -1, 793, 794, -1,
01686 795, 796, 798, -1, 299, -1, -1, 796, 797, -1,
01687 1369, -1, 1394, -1, 10, 1082, 300, -1, -1, 800,
01688 801, 802, -1, 110, -1, 1356, -1, 803, -1, 804,
01689 -1, 10, 111, -1, 11, -1, 10, 805, 111, -1,
01690 806, -1, 807, -1, 806, 807, -1, 808, 809, 811,
01691 -1, 299, -1, -1, 809, 810, -1, 1369, -1, 1394,
01692 -1, 812, -1, 813, -1, 10, 300, -1, 11, -1,
01693 10, 814, 300, -1, 4, -1, -1, 816, 817, -1,
01694 44, -1, 818, -1, 819, -1, 11, -1, 10, 820,
01695 45, -1, 821, 822, 823, 824, 825, 826, 827, -1,
01696 -1, 1137, -1, -1, 1143, -1, -1, 1149, -1, -1,
01697 1155, -1, -1, 1161, -1, -1, 1167, -1, -1, 1173,
01698 -1, -1, 828, 829, -1, 830, 831, 834, -1, 335,
01699 -1, 832, -1, -1, 832, 833, -1, 1356, -1, 1349,
01700 -1, 1418, -1, 1406, -1, 1394, -1, 1412, -1, 1424,
01701 -1, 1388, -1, 1385, -1, 835, -1, 836, -1, 10,
01702 336, -1, 11, -1, 10, 837, 336, -1, 838, -1,
01703 847, -1, 839, -1, 838, 839, -1, 840, 841, 843,
01704 -1, 299, -1, -1, 841, 842, -1, 1369, -1, 1394,
01705 -1, 844, -1, 845, -1, 10, 300, -1, 11, -1,
01706 10, 846, 300, -1, 1083, -1, 848, -1, 847, 848,
01707 -1, 849, 850, 853, -1, 150, -1, 851, -1, -1,
01708 851, 852, -1, 1348, -1, 1418, -1, 1385, -1, 854,
01709 -1, 855, -1, 11, -1, 10, 856, 151, -1, 1115,
01710 -1, -1, 858, 859, 860, -1, 297, -1, -1, 1074,
01711 -1, 861, -1, 862, -1, 11, -1, 10, 863, 298,
01712 -1, 864, 877, 890, -1, -1, 865, 866, 867, -1,
01713 144, -1, 1352, -1, 868, -1, 869, -1, 10, 145,
01714 -1, 11, -1, 10, 870, 145, -1, 871, -1, 872,
01715 -1, 871, 872, -1, 873, 874, 876, -1, 295, -1,
01716 -1, 874, 875, -1, 1369, -1, 1394, -1, 10, 1082,
01717 296, -1, -1, 878, 879, -1, 44, -1, 880, -1,
01718 881, -1, 11, -1, 10, 882, 45, -1, 883, 884,
01719 885, 886, 887, 888, 889, -1, -1, 1137, -1, -1,
01720 1143, -1, -1, 1149, -1, -1, 1155, -1, -1, 1161,
01721 -1, -1, 1167, -1, -1, 1173, -1, -1, 890, 891,
01722 -1, 892, 893, 896, -1, 335, -1, 894, -1, -1,
01723 894, 895, -1, 1352, -1, 1349, -1, 1418, -1, 1406,
01724 -1, 1394, -1, 1412, -1, 1397, -1, 1388, -1, 1385,
01725 -1, 897, -1, 898, -1, 10, 336, -1, 11, -1,
01726 10, 899, 336, -1, 900, -1, 909, -1, 901, -1,
01727 900, 901, -1, 902, 903, 905, -1, 295, -1, -1,
01728 903, 904, -1, 1369, -1, 1394, -1, 906, -1, 907,
01729 -1, 10, 296, -1, 11, -1, 10, 908, 296, -1,
01730 1083, -1, 910, -1, 909, 910, -1, 911, 912, 915,
01731 -1, 150, -1, 913, -1, -1, 913, 914, -1, 1348,
01732 -1, 1418, -1, 1385, -1, 916, -1, 917, -1, 11,
01733 -1, 10, 918, 151, -1, 1115, -1, -1, 920, 921,
01734 922, -1, 293, -1, -1, 1071, -1, 923, -1, 924,
01735 -1, 11, -1, 10, 925, 294, -1, 926, 939, 952,
01736 -1, -1, 927, 928, 929, -1, 50, -1, 1346, -1,
01737 930, -1, 931, -1, 10, 51, -1, 11, -1, 10,
01738 932, 51, -1, 933, -1, 934, -1, 933, 934, -1,
01739 935, 936, 938, -1, 291, -1, -1, 936, 937, -1,
01740 1369, -1, 1394, -1, 10, 1082, 292, -1, -1, 940,
01741 941, -1, 44, -1, 942, -1, 943, -1, 11, -1,
01742 10, 944, 45, -1, 945, 946, 947, 948, 949, 950,
01743 951, -1, -1, 1137, -1, -1, 1143, -1, -1, 1149,
01744 -1, -1, 1155, -1, -1, 1161, -1, -1, 1167, -1,
01745 -1, 1173, -1, -1, 952, 953, -1, 954, 955, 958,
01746 -1, 335, -1, 956, -1, -1, 956, 957, -1, 1346,
01747 -1, 1349, -1, 1418, -1, 1406, -1, 1394, -1, 1412,
01748 -1, 1382, -1, 1388, -1, 1385, -1, 959, -1, 960,
01749 -1, 10, 336, -1, 11, -1, 10, 961, 336, -1,
01750 962, -1, 971, -1, 963, -1, 962, 963, -1, 964,
01751 965, 967, -1, 291, -1, -1, 965, 966, -1, 1369,
01752 -1, 1394, -1, 968, -1, 969, -1, 10, 292, -1,
01753 11, -1, 10, 970, 292, -1, 1083, -1, 972, -1,
01754 971, 972, -1, 973, 974, 977, -1, 150, -1, 975,
01755 -1, -1, 975, 976, -1, 1348, -1, 1418, -1, 1385,
01756 -1, 978, -1, 979, -1, 11, -1, 10, 980, 151,
01757 -1, 1115, -1, -1, 982, 983, 984, -1, 277, -1,
01758 -1, 1072, -1, 985, -1, 986, -1, 11, -1, 10,
01759 987, 1023, 278, -1, -1, 988, 989, 990, -1, 279,
01760 -1, 1073, -1, 991, -1, 992, -1, 11, -1, 10,
01761 994, 1002, 993, -1, 280, -1, -1, 995, 996, 997,
01762 -1, 144, -1, 1351, -1, 998, -1, 999, -1, 11,
01763 -1, 10, 1001, 1000, -1, 145, -1, -1, 1001, 1180,
01764 -1, -1, 1002, 1003, -1, 1004, 1005, 1008, -1, 335,
01765 -1, 1006, -1, -1, 1006, 1007, -1, 1351, -1, 1349,
01766 -1, 1418, -1, 1406, -1, 1394, -1, 1412, -1, 1391,
01767 -1, 1388, -1, 1385, -1, 1009, -1, 1010, -1, 10,
01768 336, -1, 11, -1, 10, 1011, 336, -1, 1013, -1,
01769 1012, -1, 1180, -1, 1012, 1180, -1, 1014, -1, 1013,
01770 1014, -1, 1015, 1016, 1019, -1, 150, -1, 1017, -1,
01771 -1, 1017, 1018, -1, 1348, -1, 1418, -1, 1385, -1,
01772 1020, -1, 1021, -1, 11, -1, 10, 1022, 151, -1,
01773 1115, -1, -1, 1023, 1024, -1, 118, -1, -1, 1026,
01774 1027, 1028, -1, 70, -1, 1076, -1, 1029, -1, 1030,
01775 -1, 10, 71, -1, 11, -1, 10, 1031, 71, -1,
01776 1032, -1, 1033, -1, 1032, 1033, -1, 1034, 1035, 1038,
01777 -1, 68, -1, 1036, -1, -1, 1036, 1037, -1, 1394,
01778 -1, 1418, -1, 1379, -1, 1385, -1, 1350, -1, 1039,
01779 -1, 1040, -1, 10, 69, -1, 11, -1, 10, 1041,
01780 69, -1, 1042, -1, 1043, -1, 1042, 1043, -1, 1044,
01781 -1, 1045, -1, 1046, -1, 155, -1, 152, -1, 153,
01782 1047, 154, -1, 5, -1, -1, 1049, 1050, 1051, -1,
01783 72, -1, 1079, -1, 1052, -1, 1053, -1, 10, 73,
01784 -1, 11, -1, 10, 1054, 73, -1, 1055, -1, 1056,
01785 -1, 1055, 1056, -1, 1057, 1058, 1061, -1, 82, -1,
01786 1059, -1, -1, 1059, 1060, -1, 1394, -1, 1379, -1,
01787 1385, -1, 1350, -1, 1062, -1, 1063, -1, 10, 83,
01788 -1, 11, -1, 10, 1064, 83, -1, 1065, -1, 1066,
01789 -1, 1065, 1066, -1, 1067, -1, 1068, -1, 1069, -1,
01790 155, -1, 152, -1, 153, 1070, 154, -1, 5, -1,
01791 20, 1084, 6, 1084, -1, 28, 1084, 6, 1084, -1,
01792 29, 1084, 6, 1084, -1, 21, 1084, 6, 1084, -1,
01793 22, 1084, 6, 1084, -1, 23, 1084, 6, 1084, -1,
01794 24, 1084, 6, 1084, -1, 25, 1084, 6, 1084, -1,
01795 30, 1084, 6, 1084, -1, 31, 1084, 6, 1084, -1,
01796 32, 1084, 6, 1084, -1, 6, -1, 7, -1, 4,
01797 -1, 6, -1, 7, -1, 1085, 8, -1, -1, 1085,
01798 1086, -1, 441, -1, 442, -1, 443, -1, 444, -1,
01799 1088, 1089, -1, 120, -1, 1090, -1, 1091, -1, 11,
01800 -1, 10, 1092, 121, -1, 1093, -1, -1, 1093, 1094,
01801 -1, 1095, -1, 1099, -1, 1103, -1, 1107, -1, 1111,
01802 -1, 1096, -1, 1097, -1, 1098, -1, 125, -1, 124,
01803 -1, 122, 5, 123, -1, 1100, -1, 1101, -1, 1102,
01804 -1, 129, -1, 128, -1, 126, 5, 127, -1, 1104,
01805 -1, 1105, -1, 1106, -1, 133, -1, 132, -1, 130,
01806 5, 131, -1, 1108, -1, 1109, -1, 1110, -1, 137,
01807 -1, 136, -1, 134, 5, 135, -1, 1112, -1, 1113,
01808 -1, 1114, -1, 141, -1, 140, -1, 138, 5, 139,
01809 -1, 1116, -1, 1123, -1, -1, 1116, 1117, -1, 1118,
01810 1119, 1122, -1, 148, -1, 1120, -1, -1, 1120, 1121,
01811 -1, 1372, -1, 1370, -1, 10, 6, 149, -1, 156,
01812 1359, 1124, -1, 1125, -1, 1126, -1, 10, 157, -1,
01813 11, -1, 10, 4, 157, -1, 1128, -1, 1133, -1,
01814 -1, 1128, 1129, -1, 1130, 1131, 1132, -1, 148, -1,
01815 -1, 1372, -1, 10, 1082, 149, -1, 156, 1359, 1134,
01816 -1, 1135, -1, 1136, -1, 10, 157, -1, 11, -1,
01817 10, 4, 157, -1, 1138, 1179, 1139, -1, 319, -1,
01818 1140, -1, 1141, -1, 11, -1, 10, 1142, 320, -1,
01819 1115, -1, 1144, 1179, 1145, -1, 315, -1, 1146, -1,
01820 1147, -1, 11, -1, 10, 1148, 316, -1, 1115, -1,
01821 1150, 1179, 1151, -1, 317, -1, 1152, -1, 1153, -1,
01822 11, -1, 10, 1154, 318, -1, 1115, -1, 1156, 1179,
01823 1157, -1, 313, -1, 1158, -1, 1159, -1, 11, -1,
01824 10, 1160, 314, -1, 1115, -1, 1162, 1179, 1163, -1,
01825 321, -1, 1164, -1, 1165, -1, 11, -1, 10, 1166,
01826 322, -1, 1115, -1, 1168, 1179, 1169, -1, 323, -1,
01827 1170, -1, 1171, -1, 11, -1, 10, 1172, 324, -1,
01828 1115, -1, 1174, 1179, 1175, -1, 325, -1, 1176, -1,
01829 1177, -1, 11, -1, 10, 1178, 326, -1, 1115, -1,
01830 1348, -1, 1181, 1182, 1185, -1, 281, -1, 1183, -1,
01831 -1, 1183, 1184, -1, 1409, -1, 1354, -1, 1345, -1,
01832 1394, -1, 1412, -1, 1371, -1, 1186, -1, 1187, -1,
01833 11, -1, 10, 1188, 282, -1, 1189, 1195, -1, -1,
01834 1190, 1191, 1194, -1, 242, -1, 1192, -1, -1, 1192,
01835 1193, -1, 1360, -1, 1374, -1, 1375, -1, 1361, -1,
01836 1362, -1, 1363, -1, 1364, -1, 1376, -1, 1373, -1,
01837 10, 241, -1, 11, -1, -1, 1195, 1196, -1, 1197,
01838 -1, 1222, -1, 1235, -1, 1262, -1, 1280, -1, 1293,
01839 -1, 1311, -1, 1315, -1, 1198, 1199, 10, 1202, -1,
01840 253, -1, 1200, -1, -1, 1200, 1201, -1, 1355, -1,
01841 1400, -1, 1204, 1203, 254, -1, -1, 1210, 1216, -1,
01842 1205, 1206, -1, 267, -1, 1207, -1, 1208, -1, 11,
01843 -1, 10, 1209, 268, -1, 1115, -1, 1211, 1212, -1,
01844 269, -1, 1213, -1, 1214, -1, 11, -1, 10, 1215,
01845 270, -1, 1115, -1, 1217, 1218, -1, 271, -1, 1219,
01846 -1, 1220, -1, 11, -1, 10, 1221, 272, -1, 1127,
01847 -1, 1223, 1224, 10, 1227, -1, 255, -1, 1225, -1,
01848 -1, 1225, 1226, -1, 1355, -1, 1400, -1, 1204, 1228,
01849 256, -1, -1, 1210, 1229, -1, 1230, 1231, -1, 271,
01850 -1, 1232, -1, 1233, -1, 11, -1, 10, 1234, 272,
01851 -1, 1115, -1, 1236, 1237, 10, 1240, -1, 257, -1,
01852 1238, -1, -1, 1238, 1239, -1, 1355, -1, 1400, -1,
01853 1204, 1241, 258, -1, -1, 1210, 1242, -1, -1, 1243,
01854 1244, -1, 271, -1, 1245, -1, 1246, -1, 11, -1,
01855 10, 1247, 272, -1, 1248, -1, -1, 1248, 1249, -1,
01856 1250, 1251, 1254, -1, 148, -1, 1252, -1, -1, 1252,
01857 1253, -1, 1357, -1, 1368, -1, 1255, -1, 1256, -1,
01858 11, -1, 10, 1257, 149, -1, -1, 1257, 1258, -1,
01859 1259, 1260, 1261, -1, 273, -1, -1, 1367, -1, 10,
01860 6, 274, -1, 1263, 1264, 10, 1267, -1, 259, -1,
01861 1265, -1, -1, 1265, 1266, -1, 1355, -1, 1400, -1,
01862 1204, 1268, 260, -1, -1, 1210, 1269, -1, -1, 1270,
01863 1271, -1, 271, -1, 1272, -1, 1273, -1, 11, -1,
01864 10, 1274, 272, -1, -1, 1274, 1275, -1, 1276, 1277,
01865 -1, 148, -1, 1278, -1, 1279, -1, 11, -1, 10,
01866 1427, 149, -1, 1281, 1282, 10, 1285, -1, 263, -1,
01867 1283, -1, -1, 1283, 1284, -1, 1355, -1, 1400, -1,
01868 1204, 1286, 264, -1, -1, 1210, 1287, -1, 1288, 1289,
01869 -1, 271, -1, 1290, -1, 1291, -1, 11, -1, 10,
01870 1292, 272, -1, 1115, -1, 1294, 1295, 10, 1298, -1,
01871 261, -1, 1296, -1, -1, 1296, 1297, -1, 1355, -1,
01872 1400, -1, 1204, 1299, 262, -1, -1, 1210, 1300, -1,
01873 -1, 1301, 1302, -1, 271, -1, 1303, -1, 1304, -1,
01874 11, -1, 10, 1305, 272, -1, -1, 1305, 1306, -1,
01875 1307, 1308, 1310, -1, 148, -1, -1, 1308, 1309, -1,
01876 1421, -1, 1372, -1, 1370, -1, 10, 6, 149, -1,
01877 1312, 1313, 10, 1501, 1314, -1, 275, -1, -1, 1403,
01878 -1, 276, -1, 1316, 1317, 1318, -1, 243, -1, 1344,
01879 -1, 10, 1320, 1327, 1334, 1319, -1, 244, -1, 1321,
01880 1322, 1323, -1, 247, -1, 1348, -1, 1324, -1, 1325,
01881 -1, 11, -1, 10, 1326, 248, -1, 1115, -1, 1328,
01882 1329, 1330, -1, 249, -1, 1348, -1, 1331, -1, 1332,
01883 -1, 11, -1, 10, 1333, 250, -1, 1115, -1, -1,
01884 1334, 1335, -1, 1336, 1337, 1340, -1, 245, -1, 1338,
01885 -1, -1, 1338, 1339, -1, 1365, -1, 1366, -1, 1409,
01886 -1, 1412, -1, 1341, -1, 1342, -1, 11, -1, 10,
01887 1343, 246, -1, 1189, 1195, -1, 201, 8, 6, 8,
01888 -1, 202, 8, 6, 8, -1, 207, 8, 6, 8,
01889 -1, 206, 8, 6, 8, -1, 158, 8, 6, 8,
01890 -1, 159, 8, 6, 8, -1, 160, 8, 6, 8,
01891 -1, 217, 8, 6, 8, -1, 210, 8, 6, 8,
01892 -1, 209, 8, 6, 8, -1, 203, 8, 6, 8,
01893 -1, 205, 8, 6, 8, -1, 213, 8, 6, 8,
01894 -1, 214, 8, 6, 8, -1, 212, 8, 6, 8,
01895 -1, 234, 8, 6, 8, -1, 218, 8, 6, 8,
01896 -1, 221, 8, 6, 8, -1, 222, 8, 6, 8,
01897 -1, 223, 8, 6, 8, -1, 224, 8, 6, 8,
01898 -1, 226, 1084, 6, 1084, -1, 227, 1084, 6, 1084,
01899 -1, 235, 8, 1082, 8, -1, 236, 8, 1082, 8,
01900 -1, 231, 8, 6, 8, -1, 232, 8, 6, 8,
01901 -1, 228, 1084, 6, 1084, -1, 233, 8, 6, 8,
01902 -1, 225, 8, 1082, 8, -1, 219, 8, 6, 8,
01903 -1, 220, 8, 6, 8, -1, 1377, -1, 1378, -1,
01904 199, -1, 200, 3, 1084, -1, 1380, -1, 1381, -1,
01905 161, -1, 162, 3, 8, -1, 1383, -1, 1384, -1,
01906 181, -1, 182, 3, 8, -1, 1386, -1, 1387, -1,
01907 163, -1, 164, 3, 8, -1, 1389, -1, 1390, -1,
01908 171, -1, 172, 3, 8, -1, 1392, -1, 1393, -1,
01909 191, -1, 192, 3, 8, -1, 1395, -1, 1396, -1,
01910 167, -1, 168, 3, 8, -1, 1398, -1, 1399, -1,
01911 183, -1, 184, 3, 8, -1, 1401, -1, 1402, -1,
01912 197, -1, 198, 3, 8, -1, 1404, -1, 1405, -1,
01913 173, -1, 174, 3, 8, -1, 1407, -1, 1408, -1,
01914 165, -1, 166, 3, 8, -1, 1410, -1, 1411, -1,
01915 195, -1, 196, 3, 8, -1, 1413, -1, 1414, -1,
01916 169, -1, 170, 3, 8, -1, 1416, -1, 1417, -1,
01917 175, -1, 176, 3, 8, -1, 1419, -1, 1420, -1,
01918 177, -1, 178, 3, 8, -1, 1422, -1, 1423, -1,
01919 179, -1, 180, 3, 8, -1, 1425, -1, 1426, -1,
01920 185, -1, 186, 3, 8, -1, 1471, -1, 1478, -1,
01921 1434, -1, 1436, -1, 1486, -1, 1438, -1, 1440, -1,
01922 1442, -1, 1444, -1, 1498, -1, 1446, -1, 1448, -1,
01923 1450, -1, 1454, -1, 1452, -1, 1456, -1, 1463, -1,
01924 1458, -1, 1461, -1, 1492, -1, 1495, -1, 1428, -1,
01925 1431, -1, 1489, -1, 1465, -1, 1467, -1, 1469, -1,
01926 -1, 391, 1429, 1430, -1, 11, -1, 10, 392, -1,
01927 -1, 393, 1432, 1433, -1, 11, -1, 10, 394, -1,
01928 -1, 395, 1435, 1427, 1427, 396, -1, -1, 353, 1437,
01929 1427, 1427, 354, -1, -1, 355, 1439, 1427, 1427, 356,
01930 -1, -1, 369, 1441, 1427, 370, -1, -1, 357, 1443,
01931 1427, 1427, 358, -1, -1, 351, 1445, 1427, 1427, 352,
01932 -1, -1, 359, 1447, 1427, 360, -1, -1, 361, 1449,
01933 1427, 362, -1, -1, 373, 1451, 1427, 374, -1, -1,
01934 375, 1453, 1427, 376, -1, -1, 377, 1455, 1427, 378,
01935 -1, -1, 367, 1457, 1427, 368, -1, 1459, 1427, 1460,
01936 -1, 381, -1, 382, -1, -1, 383, 1462, 1427, 384,
01937 -1, -1, 371, 1464, 1427, 1427, 1427, 372, -1, -1,
01938 399, 1466, 1501, 400, -1, -1, 401, 1468, 1501, 402,
01939 -1, -1, 403, 1470, 1501, 404, -1, 1472, 1474, 1473,
01940 -1, 397, -1, 11, -1, 10, 398, -1, -1, 1474,
01941 1475, -1, 1412, -1, 1418, -1, 1476, -1, -1, 440,
01942 3, 1477, 8, -1, -1, 379, 1479, 1482, 1480, -1,
01943 11, -1, 10, 380, -1, -1, 10, 1427, 1481, 380,
01944 -1, -1, 1482, 1483, -1, 1484, -1, 1485, -1, 235,
01945 8, 1082, 8, -1, 231, 8, 6, 8, -1, -1,
01946 363, 1487, 1488, 364, -1, -1, 1488, 1427, -1, -1,
01947 387, 1490, 1491, 388, -1, -1, 1491, 1427, -1, -1,
01948 385, 1493, 1494, 386, -1, -1, 1494, 1427, -1, -1,
01949 389, 1496, 1497, 390, -1, -1, 1497, 1427, -1, -1,
01950 365, 1499, 1500, 366, -1, -1, 1500, 1427, -1, 1502,
01951 -1, 1506, -1, 1510, -1, 1514, -1, 1518, -1, 1521,
01952 -1, 1527, -1, 1530, -1, 1534, -1, 1539, -1, 1542,
01953 -1, 1545, -1, 1548, -1, 1551, -1, 1554, -1, 1557,
01954 -1, 1560, -1, 1563, -1, 1524, -1, 1503, 1505, 1504,
01955 -1, 431, -1, 11, -1, 10, 432, -1, 231, 8,
01956 6, 8, -1, 1507, 1509, 1508, -1, 281, -1, 11,
01957 -1, 10, 282, -1, 231, 8, 6, 8, -1, 1511,
01958 1513, 1512, -1, 285, -1, 11, -1, 10, 286, -1,
01959 231, 8, 6, 8, -1, 1515, 1517, 1516, -1, 289,
01960 -1, 11, -1, 10, 290, -1, 231, 8, 6, 8,
01961 -1, 1519, 1520, -1, 405, -1, 1501, 406, -1, 1522,
01962 1523, -1, 407, -1, 1501, 1501, 408, -1, 1525, 1526,
01963 -1, 433, -1, 1427, 434, -1, 1528, 1529, -1, 435,
01964 -1, 1501, 436, -1, 1531, 1532, 10, 1533, -1, 409,
01965 -1, -1, 1538, -1, 1501, 410, -1, 1535, 1536, 10,
01966 1537, -1, 411, -1, -1, 1538, -1, 1501, 412, -1,
01967 438, 3, 8, -1, 1540, 1541, -1, 413, -1, 11,
01968 -1, 10, 414, -1, 1543, 1544, -1, 415, -1, 1501,
01969 1501, 416, -1, 1546, 1547, -1, 417, -1, 1501, 418,
01970 -1, 1549, 1550, -1, 419, -1, 1501, 1501, 420, -1,
01971 1552, 1553, -1, 421, -1, 1501, 1501, 422, -1, -1,
01972 423, 1555, 1556, 424, -1, -1, 1556, 1501, -1, 1558,
01973 1559, -1, 425, -1, 1427, 1501, 426, -1, 1561, 1562,
01974 -1, 427, -1, 1427, 1427, 1427, 1427, 1501, 428, -1,
01975 1564, 1565, -1, 429, -1, 1501, 430, -1
01976 };
01977
01978
01979 static const yytype_uint16 yyrline[] =
01980 {
01981 0, 345, 345, 346, 348, 355, 365, 365, 367, 367,
01982 369, 371, 373, 382, 383, 386, 395, 395, 408, 408,
01983 410, 424, 424, 426, 426, 428, 430, 432, 432, 435,
01984 436, 437, 438, 439, 440, 441, 442, 443, 446, 448,
01985 463, 470, 470, 473, 478, 482, 491, 495, 500, 500,
01986 502, 504, 506, 506, 508, 513, 523, 529, 529, 532,
01987 537, 543, 543, 546, 548, 555, 555, 557, 557, 559,
01988 561, 564, 566, 573, 573, 575, 575, 577, 579, 584,
01989 586, 593, 593, 595, 595, 597, 599, 604, 606, 613,
01990 613, 615, 615, 617, 619, 624, 626, 633, 633, 635,
01991 635, 637, 639, 644, 646, 653, 653, 655, 655, 657,
01992 659, 664, 666, 673, 673, 675, 675, 677, 679, 684,
01993 686, 693, 703, 708, 714, 714, 716, 718, 720, 720,
01994 722, 727, 739, 745, 745, 748, 755, 760, 767, 767,
01995 771, 771, 773, 784, 784, 786, 786, 788, 790, 792,
01996 792, 795, 796, 797, 798, 799, 800, 803, 805, 812,
01997 812, 814, 814, 816, 818, 825, 827, 838, 840, 840,
01998 843, 849, 855, 857, 863, 865, 876, 878, 878, 881,
01999 887, 893, 895, 902, 904, 915, 917, 917, 920, 926,
02000 932, 934, 941, 943, 952, 953, 959, 961, 967, 969,
02001 976, 986, 991, 997, 997, 999, 1001, 1003, 1003, 1005,
02002 1010, 1022, 1028, 1028, 1031, 1038, 1043, 1049, 1049, 1053,
02003 1053, 1055, 1066, 1066, 1068, 1068, 1070, 1072, 1074, 1074,
02004 1077, 1078, 1079, 1080, 1081, 1082, 1085, 1087, 1094, 1094,
02005 1096, 1096, 1098, 1100, 1108, 1110, 1117, 1117, 1119, 1119,
02006 1121, 1123, 1128, 1130, 1137, 1137, 1139, 1139, 1141, 1143,
02007 1148, 1150, 1157, 1157, 1159, 1159, 1161, 1163, 1168, 1170,
02008 1177, 1177, 1179, 1179, 1181, 1183, 1190, 1192, 1199, 1209,
02009 1214, 1220, 1220, 1222, 1224, 1226, 1226, 1228, 1233, 1245,
02010 1251, 1251, 1254, 1261, 1266, 1273, 1273, 1276, 1276, 1278,
02011 1294, 1294, 1296, 1296, 1298, 1300, 1302, 1302, 1305, 1306,
02012 1307, 1308, 1309, 1310, 1311, 1312, 1313, 1314, 1315, 1318,
02013 1320, 1327, 1327, 1329, 1329, 1331, 1333, 1341, 1343, 1350,
02014 1350, 1352, 1352, 1354, 1356, 1361, 1363, 1370, 1370, 1372,
02015 1372, 1374, 1376, 1381, 1383, 1390, 1390, 1392, 1392, 1394,
02016 1396, 1401, 1403, 1410, 1410, 1412, 1412, 1414, 1416, 1421,
02017 1423, 1430, 1440, 1445, 1451, 1451, 1453, 1455, 1457, 1457,
02018 1459, 1461, 1475, 1475, 1478, 1478, 1478, 1478, 1481, 1481,
02019 1483, 1483, 1485, 1487, 1496, 1497, 1500, 1502, 1513, 1515,
02020 1515, 1518, 1524, 1530, 1532, 1539, 1541, 1552, 1554, 1554,
02021 1557, 1563, 1569, 1571, 1578, 1580, 1591, 1593, 1593, 1596,
02022 1602, 1608, 1610, 1617, 1619, 1629, 1630, 1636, 1638, 1645,
02023 1647, 1654, 1664, 1669, 1675, 1675, 1677, 1679, 1681, 1681,
02024 1683, 1688, 1700, 1706, 1706, 1709, 1716, 1721, 1728, 1728,
02025 1731, 1731, 1733, 1741, 1747, 1747, 1750, 1757, 1762, 1767,
02026 1774, 1779, 1785, 1785, 1787, 1789, 1791, 1791, 1793, 1795,
02027 1804, 1806, 1806, 1808, 1808, 1808, 1810, 1820, 1830, 1850,
02028 1856, 1858, 1868, 1874, 1874, 1877, 1882, 1887, 1897, 1902,
02029 1908, 1908, 1910, 1912, 1914, 1914, 1916, 1921, 1931, 1937,
02030 1937, 1940, 1946, 1953, 1953, 1956, 1956, 1958, 1960, 1960,
02031 1962, 1962, 1964, 1966, 1974, 1974, 1976, 1982, 1982, 1990,
02032 1990, 1992, 1994, 1996, 1998, 1998, 2000, 2005, 2013, 2018,
02033 2024, 2024, 2026, 2028, 2030, 2030, 2032, 2042, 2051, 2051,
02034 2054, 2055, 2058, 2061, 2061, 2063, 2068, 2076, 2081, 2087,
02035 2087, 2089, 2091, 2093, 2093, 2095, 2105, 2114, 2114, 2117,
02036 2118, 2122, 2123, 2125, 2125, 2127, 2129, 2134, 2134, 2136,
02037 2141, 2141, 2143, 2145, 2147, 2149, 2149, 2158, 2158, 2167,
02038 2167, 2176, 2176, 2185, 2185, 2194, 2194, 2203, 2203, 2213,
02039 2213, 2215, 2220, 2244, 2250, 2250, 2253, 2262, 2270, 2276,
02040 2282, 2288, 2294, 2300, 2306, 2313, 2313, 2315, 2315, 2317,
02041 2319, 2319, 2321, 2321, 2323, 2330, 2339, 2339, 2342, 2348,
02042 2355, 2355, 2357, 2357, 2359, 2361, 2370, 2370, 2372, 2383,
02043 2393, 2399, 2399, 2402, 2407, 2408, 2412, 2412, 2414, 2416,
02044 2419, 2423, 2423, 2425, 2433, 2433, 2441, 2441, 2443, 2445,
02045 2447, 2449, 2449, 2451, 2456, 2464, 2469, 2475, 2475, 2477,
02046 2479, 2482, 2482, 2484, 2492, 2502, 2502, 2505, 2506, 2509,
02047 2512, 2512, 2514, 2519, 2519, 2522, 2524, 2526, 2528, 2528,
02048 2537, 2537, 2546, 2546, 2555, 2555, 2564, 2564, 2573, 2573,
02049 2582, 2582, 2592, 2592, 2594, 2600, 2624, 2631, 2631, 2634,
02050 2642, 2650, 2656, 2662, 2668, 2674, 2680, 2686, 2694, 2694,
02051 2696, 2696, 2698, 2700, 2700, 2702, 2702, 2704, 2709, 2719,
02052 2719, 2722, 2728, 2735, 2735, 2737, 2737, 2739, 2741, 2748,
02053 2748, 2750, 2762, 2772, 2778, 2778, 2781, 2786, 2787, 2791,
02054 2791, 2793, 2795, 2798, 2801, 2801, 2803, 2810, 2810, 2818,
02055 2818, 2820, 2822, 2824, 2826, 2826, 2828, 2833, 2841, 2846,
02056 2852, 2852, 2854, 2856, 2858, 2858, 2860, 2868, 2877, 2877,
02057 2880, 2881, 2884, 2887, 2887, 2889, 2894, 2894, 2896, 2898,
02058 2900, 2902, 2902, 2911, 2911, 2920, 2920, 2929, 2929, 2938,
02059 2938, 2947, 2947, 2956, 2956, 2966, 2966, 2968, 2974, 2998,
02060 3004, 3004, 3007, 3015, 3023, 3029, 3035, 3041, 3047, 3053,
02061 3059, 3066, 3066, 3068, 3068, 3070, 3072, 3072, 3074, 3074,
02062 3076, 3083, 3092, 3092, 3096, 3101, 3109, 3109, 3111, 3111,
02063 3113, 3115, 3123, 3123, 3125, 3137, 3147, 3153, 3153, 3156,
02064 3161, 3162, 3166, 3166, 3168, 3170, 3172, 3175, 3175, 3177,
02065 3183, 3183, 3191, 3191, 3193, 3195, 3198, 3198, 3206, 3212,
02066 3225, 3225, 3227, 3229, 3231, 3233, 3233, 3236, 3243, 3255,
02067 3255, 3257, 3259, 3261, 3267, 3267, 3269, 3269, 3271, 3277,
02068 3306, 3313, 3313, 3316, 3326, 3332, 3337, 3342, 3347, 3352,
02069 3357, 3362, 3369, 3369, 3371, 3371, 3373, 3376, 3377, 3383,
02070 3383, 3386, 3387, 3389, 3402, 3412, 3418, 3418, 3421, 3426,
02071 3427, 3431, 3431, 3433, 3435, 3437, 3444, 3444, 3446, 3451,
02072 3451, 3453, 3458, 3467, 3472, 3478, 3478, 3480, 3482, 3484,
02073 3484, 3486, 3491, 3505, 3513, 3513, 3516, 3522, 3528, 3534,
02074 3540, 3550, 3555, 3561, 3561, 3563, 3565, 3567, 3567, 3569,
02075 3575, 3580, 3582, 3582, 3584, 3586, 3598, 3598, 3600, 3605,
02076 3614, 3619, 3625, 3625, 3627, 3629, 3631, 3631, 3633, 3638,
02077 3650, 3658, 3658, 3661, 3666, 3671, 3676, 3684, 3689, 3695,
02078 3695, 3697, 3699, 3701, 3701, 3703, 3709, 3714, 3716, 3716,
02079 3718, 3720, 4021, 4027, 4033, 4039, 4045, 4051, 4057, 4063,
02080 4072, 4078, 4087, 4115, 4116, 4120, 4121, 4122, 4124, 4126,
02081 4126, 4128, 4129, 4130, 4131, 4167, 4169, 4183, 4183, 4185,
02082 4187, 4189, 4191, 4191, 4194, 4195, 4196, 4197, 4198, 4200,
02083 4208, 4208, 4210, 4210, 4212, 4218, 4226, 4226, 4228, 4228,
02084 4230, 4236, 4244, 4244, 4246, 4246, 4248, 4254, 4262, 4262,
02085 4264, 4264, 4266, 4272, 4280, 4280, 4282, 4282, 4284, 4296,
02086 4304, 4306, 4306, 4308, 4310, 4319, 4321, 4321, 4323, 4323,
02087 4325, 4341, 4344, 4344, 4346, 4346, 4349, 4380, 4388, 4390,
02088 4390, 4392, 4394, 4402, 4402, 4404, 4420, 4422, 4422, 4424,
02089 4424, 4426, 4577, 4579, 4584, 4584, 4586, 4588, 4590, 4593,
02090 4595, 4600, 4600, 4602, 4604, 4606, 4609, 4611, 4616, 4616,
02091 4618, 4620, 4622, 4625, 4627, 4632, 4632, 4634, 4636, 4638,
02092 4641, 4643, 4648, 4648, 4650, 4652, 4654, 4657, 4659, 4664,
02093 4664, 4666, 4668, 4670, 4673, 4675, 4680, 4680, 4682, 4684,
02094 4686, 4689, 4718, 4806, 4831, 4853, 4853, 4856, 4857, 4858,
02095 4859, 4860, 4861, 4992, 4992, 4994, 4996, 5025, 5027, 5027,
02096 5032, 5050, 5077, 5077, 5080, 5081, 5082, 5083, 5084, 5085,
02097 5086, 5087, 5088, 5091, 5091, 5093, 5093, 5098, 5098, 5098,
02098 5098, 5099, 5099, 5099, 5099, 5101, 5103, 5112, 5118, 5118,
02099 5121, 5127, 5133, 5135, 5135, 5141, 5151, 5161, 5161, 5163,
02100 5165, 5167, 5170, 5181, 5188, 5188, 5190, 5192, 5194, 5200,
02101 5210, 5217, 5217, 5219, 5221, 5223, 5226, 5228, 5237, 5243,
02102 5243, 5246, 5252, 5258, 5260, 5260, 5262, 5272, 5279, 5279,
02103 5281, 5283, 5285, 5287, 5289, 5298, 5304, 5304, 5307, 5313,
02104 5319, 5321, 5321, 5324, 5329, 5340, 5355, 5355, 5357, 5359,
02105 5361, 5363, 5363, 5365, 5372, 5379, 5392, 5392, 5395, 5396,
02106 5398, 5398, 5400, 5402, 5404, 5404, 5407, 5409, 5417, 5417,
02107 5422, 5429, 5431, 5440, 5446, 5446, 5449, 5455, 5461, 5463,
02108 5463, 5465, 5466, 5468, 5483, 5483, 5485, 5487, 5489, 5489,
02109 5491, 5493, 5508, 5508, 5510, 5512, 5522, 5524, 5533, 5539,
02110 5539, 5542, 5548, 5554, 5556, 5556, 5558, 5568, 5575, 5575,
02111 5577, 5579, 5581, 5584, 5586, 5595, 5601, 5601, 5604, 5610,
02112 5616, 5618, 5618, 5621, 5626, 5637, 5652, 5652, 5654, 5656,
02113 5658, 5658, 5660, 5668, 5680, 5680, 5683, 5684, 5685, 5703,
02114 5736, 5739, 5757, 5757, 5768, 5775, 5785, 5793, 5799, 5801,
02115 5815, 5827, 5833, 5839, 5839, 5841, 5843, 5845, 5847, 5857,
02116 5863, 5869, 5869, 5871, 5873, 5875, 5877, 5877, 5882, 5887,
02117 5899, 5901, 5901, 5904, 5905, 5906, 5914, 5921, 5921, 5923,
02118 5925, 5931, 5945, 5956, 5967, 5989, 6000, 6011, 6022, 6066,
02119 6090, 6112, 6123, 6134, 6145, 6156, 6167, 6180, 6191, 6205,
02120 6220, 6235, 6247, 6259, 6277, 6295, 6308, 6321, 6331, 6359,
02121 6368, 6379, 6389, 6401, 6415, 6415, 6417, 6427, 6443, 6443,
02122 6445, 6452, 6461, 6461, 6463, 6470, 6479, 6479, 6481, 6488,
02123 6497, 6497, 6499, 6506, 6571, 6571, 6573, 6580, 6589, 6589,
02124 6591, 6598, 6607, 6607, 6609, 6616, 6625, 6625, 6627, 6636,
02125 6650, 6650, 6652, 6659, 6668, 6668, 6670, 6677, 6686, 6686,
02126 6688, 6695, 6704, 6704, 6706, 6713, 6722, 6722, 6724, 6731,
02127 6740, 6740, 6744, 6752, 6761, 6761, 6763, 6770, 6779, 6779,
02128 6781, 6788, 6917, 6918, 6919, 6920, 6921, 6922, 6923, 6924,
02129 6925, 6926, 6927, 6928, 6929, 6930, 6931, 6932, 6933, 6934,
02130 6935, 6936, 6937, 6938, 6939, 6940, 6942, 6943, 6944, 6948,
02131 6948, 6951, 6952, 6954, 6954, 6957, 6958, 6962, 6962, 6967,
02132 6967, 6972, 6972, 6977, 6977, 6982, 6982, 6987, 6987, 6992,
02133 6992, 6997, 6997, 7002, 7002, 7007, 7007, 7012, 7012, 7017,
02134 7017, 7022, 7024, 7030, 7037, 7037, 7043, 7043, 7055, 7055,
02135 7060, 7060, 7065, 7065, 7075, 7082, 7088, 7089, 7091, 7092,
02136 7095, 7099, 7103, 7107, 7106, 7125, 7124, 7131, 7132, 7134,
02137 7133, 7140, 7141, 7144, 7150, 7158, 7165, 7183, 7183, 7194,
02138 7194, 7197, 7197, 7211, 7212, 7215, 7215, 7228, 7229, 7232,
02139 7232, 7245, 7246, 7249, 7249, 7259, 7260, 7266, 7267, 7268,
02140 7269, 7270, 7271, 7272, 7273, 7274, 7275, 7276, 7277, 7278,
02141 7279, 7280, 7281, 7282, 7283, 7284, 7287, 7292, 7299, 7300,
02142 7302, 7310, 7315, 7322, 7323, 7325, 7332, 7337, 7344, 7345,
02143 7347, 7354, 7359, 7366, 7367, 7369, 7376, 7378, 7384, 7386,
02144 7388, 7394, 7396, 7398, 7404, 7406, 7408, 7414, 7416, 7418,
02145 7424, 7424, 7429, 7431, 7433, 7439, 7439, 7444, 7446, 7455,
02146 7457, 7462, 7462, 7464, 7466, 7472, 7475, 7477, 7483, 7486,
02147 7488, 7494, 7497, 7499, 7505, 7509, 7508, 7520, 7520, 7527,
02148 7529, 7535, 7537, 7539, 7545, 7548, 7550, 7556
02149 };
02150 #endif
02151
02152 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
02153
02154
02155 static const char *const yytname[] =
02156 {
02157 "$end", "error", "$undefined", "ATTRIBUTETEXT", "ELEMENTTEXT",
02158 "ITEMTEXT", "INTEGER", "DOUBLE", "QUOTE", "TWOQUOTES", "GREATERTHAN",
02159 "ENDOFELEMENT", "OSRLSTART", "OSRLSTARTEMPTY", "OSRLATTRIBUTETEXT",
02160 "OSRLEND", "WEIGHTEDOBJECTIVESATT", "EMPTYWEIGHTEDOBJECTIVESATT",
02161 "TARGETOBJECTIVENAMEATT", "EMPTYTARGETOBJECTIVENAMEATT",
02162 "NUMBEROFOTHERCONSTRAINTRESULTSATT", "NUMBEROFOTHEROBJECTIVERESULTSATT",
02163 "NUMBEROFOTHERRESULTSATT", "NUMBEROFOTHERSOLUTIONRESULTSATT",
02164 "NUMBEROFOTHERVARIABLERESULTSATT", "NUMBEROFSOLUTIONSATT",
02165 "NUMBEROFOTHERMATRIXOBJECTIVERESULTSATT",
02166 "NUMBEROFOTHERMATRIXCONSTRAINTRESULTSATT",
02167 "NUMBEROFOTHERMATRIXPROGRAMMINGRESULTSATT",
02168 "NUMBEROFOTHERMATRIXVARIABLERESULTSATT", "NUMBEROFSOLVEROUTPUTSATT",
02169 "NUMBEROFSUBSTATUSESATT", "NUMBEROFTIMESATT", "TARGETOBJECTIVEIDXATT",
02170 "ACTUALSTARTTIMESTART", "ACTUALSTARTTIMEEND", "AVAILABLECPUNUMBERSTART",
02171 "AVAILABLECPUNUMBEREND", "AVAILABLECPUSPEEDSTART",
02172 "AVAILABLECPUSPEEDEND", "AVAILABLEDISKSPACESTART",
02173 "AVAILABLEDISKSPACEEND", "AVAILABLEMEMORYSTART", "AVAILABLEMEMORYEND",
02174 "BASISSTATUSSTART", "BASISSTATUSEND", "CURRENTJOBCOUNTSTART",
02175 "CURRENTJOBCOUNTEND", "CURRENTSTATESTART", "CURRENTSTATEEND",
02176 "DUALVALUESSTART", "DUALVALUESEND", "ENDTIMESTART", "ENDTIMEEND",
02177 "IDXSTART", "IDXEND", "GENERALSTATUSSTART", "GENERALSTATUSEND",
02178 "GENERALSUBSTATUSSTART", "GENERALSUBSTATUSEND", "MESSAGESTART",
02179 "MESSAGEEND", "OPTIMIZATIONSOLUTIONSTATUSSTART",
02180 "OPTIMIZATIONSOLUTIONSTATUSEND", "OPTIMIZATIONSOLUTIONSUBSTATUSSTART",
02181 "OPTIMIZATIONSOLUTIONSUBSTATUSEND", "OTHERRESULTSSTART",
02182 "OTHERRESULTSEND", "OTHERSOLUTIONRESULTSTART", "OTHERSOLUTIONRESULTEND",
02183 "OTHERSOLUTIONRESULTSSTART", "OTHERSOLUTIONRESULTSEND",
02184 "OTHERSOLVEROUTPUTSTART", "OTHERSOLVEROUTPUTEND",
02185 "SCHEDULEDSTARTTIMESTART", "SCHEDULEDSTARTTIMEEND",
02186 "SERVICEUTILIZATIONSTART", "SERVICEUTILIZATIONEND", "SOLUTIONSTART",
02187 "SOLUTIONEND", "SOLVERINVOKEDSTART", "SOLVERINVOKEDEND",
02188 "SOLVEROUTPUTSTART", "SOLVEROUTPUTEND", "STATUSSTART", "STATUSEND",
02189 "SUBMITTIMESTART", "SUBMITTIMEEND", "SUBSTATUSSTART", "SUBSTATUSEND",
02190 "SYSTEMINFORMATIONSTART", "SYSTEMINFORMATIONEND", "TIMESTART", "TIMEEND",
02191 "TIMESERVICESTARTEDSTART", "TIMESERVICESTARTEDEND", "TIMESTAMPSTART",
02192 "TIMESTAMPEND", "TIMINGINFORMATIONSTART", "TIMINGINFORMATIONEND",
02193 "TOTALJOBSSOFARSTART", "TOTALJOBSSOFAREND", "USEDCPUNUMBERSTART",
02194 "USEDCPUNUMBEREND", "USEDCPUSPEEDSTART", "USEDCPUSPEEDEND",
02195 "USEDDISKSPACESTART", "USEDDISKSPACEEND", "USEDMEMORYSTART",
02196 "USEDMEMORYEND", "VALUESSTRINGSTART", "VALUESSTRINGEND",
02197 "OTHERMATRIXVARIABLERESULTSTART", "OTHERMATRIXVARIABLERESULTEND",
02198 "OTHERMATRIXOBJECTIVERESULTSTART", "OTHERMATRIXOBJECTIVERESULTEND",
02199 "OTHERMATRIXCONSTRAINTRESULTSTART", "OTHERMATRIXCONSTRAINTRESULTEND",
02200 "OTHERMATRIXPROGRAMMINGRESULTSTART", "OTHERMATRIXPROGRAMMINGRESULTEND",
02201 "HEADERSTART", "HEADEREND", "FILENAMESTART", "FILENAMEEND",
02202 "FILENAMEEMPTY", "FILENAMESTARTANDEND", "FILESOURCESTART",
02203 "FILESOURCEEND", "FILESOURCEEMPTY", "FILESOURCESTARTANDEND",
02204 "FILEDESCRIPTIONSTART", "FILEDESCRIPTIONEND", "FILEDESCRIPTIONEMPTY",
02205 "FILEDESCRIPTIONSTARTANDEND", "FILECREATORSTART", "FILECREATOREND",
02206 "FILECREATOREMPTY", "FILECREATORSTARTANDEND", "FILELICENCESTART",
02207 "FILELICENCEEND", "FILELICENCEEMPTY", "FILELICENCESTARTANDEND",
02208 "INDEXESSTART", "INDEXESEND", "VALUESSTART", "VALUESEND",
02209 "NONZEROSSTART", "NONZEROSEND", "ELSTART", "ELEND", "ENUMERATIONSTART",
02210 "ENUMERATIONEND", "ITEMEMPTY", "ITEMSTART", "ITEMEND", "ITEMSTARTANDEND",
02211 "BASE64START", "BASE64END", "NUMBEROFELATT", "NUMBEROFENUMERATIONSATT",
02212 "NUMBEROFITEMSATT", "EMPTYCATEGORYATT", "CATEGORYATT",
02213 "EMPTYDESCRIPTIONATT", "DESCRIPTIONATT", "EMPTYSOLVERATT", "SOLVERATT",
02214 "EMPTYNAMEATT", "NAMEATT", "EMPTYTYPEATT", "TYPEATT", "EMPTYENUMTYPEATT",
02215 "ENUMTYPEATT", "EMPTYSHAPEATT", "SHAPEATT", "EMPTYUNITATT", "UNITATT",
02216 "EMPTYVALUEATT", "VALUEATT", "EMPTYVALUETYPEATT", "VALUETYPEATT",
02217 "EMPTYCONTYPEATT", "CONTYPEATT", "EMPTYOBJTYPEATT", "OBJTYPEATT",
02218 "EMPTYVARTYPEATT", "VARTYPEATT", "EMPTYMATRIXCONTYPEATT",
02219 "MATRIXCONTYPEATT", "EMPTYMATRIXOBJTYPEATT", "MATRIXOBJTYPEATT",
02220 "EMPTYMATRIXVARTYPEATT", "MATRIXVARTYPEATT", "EMPTYMATRIXTYPEATT",
02221 "MATRIXTYPEATT", "EMPTYSYMMETRYATT", "SYMMETRYATT", "EMPTYROWMAJORATT",
02222 "ROWMAJORATT", "EMPTYBASETRANSPOSEATT", "BASETRANSPOSEATT",
02223 "NUMBEROFBLOCKSATT", "NUMBEROFCOLUMNSATT", "NUMBEROFROWSATT",
02224 "NUMBEROFMATRICESATT", "NUMBEROFVALUESATT", "NUMBEROFCONSTRAINTSATT",
02225 "NUMBEROFCONATT", "NUMBEROFCONIDXATT", "NUMBEROFOBJECTIVESATT",
02226 "NUMBEROFOBJATT", "NUMBEROFOBJIDXATT", "NUMBEROFVARIABLESATT",
02227 "NUMBEROFVARATT", "NUMBEROFVARIDXATT", "NUMBEROFMATRIXCONATT",
02228 "NUMBEROFMATRIXOBJATT", "NUMBEROFMATRIXVARATT", "BASEMATRIXIDXATT",
02229 "TARGETMATRIXFIRSTROWATT", "TARGETMATRIXFIRSTCOLATT",
02230 "BASEMATRIXSTARTROWATT", "BASEMATRIXSTARTCOLATT", "BASEMATRIXENDROWATT",
02231 "BASEMATRIXENDCOLATT", "SCALARMULTIPLIERATT", "BLOCKROWIDXATT",
02232 "BLOCKCOLIDXATT", "MATRIXVARIDXATT", "MATRIXOBJIDXATT",
02233 "MATRIXCONIDXATT", "IDXATT", "INCRATT", "MULTATT", "SIZEOFATT",
02234 "COEFATT", "CONSTANTATT", "MATRICESSTART", "MATRICESEND", "MATRIXSTART",
02235 "MATRIXEND", "BASEMATRIXEND", "BASEMATRIXSTART", "BLOCKSSTART",
02236 "BLOCKSEND", "BLOCKSTART", "BLOCKEND", "COLOFFSETSTART", "COLOFFSETEND",
02237 "ROWOFFSETSTART", "ROWOFFSETEND", "ELEMENTSSTART", "ELEMENTSEND",
02238 "CONSTANTELEMENTSSTART", "CONSTANTELEMENTSEND",
02239 "VARREFERENCEELEMENTSSTART", "VARREFERENCEELEMENTSEND",
02240 "LINEARELEMENTSSTART", "LINEARELEMENTSEND", "GENERALELEMENTSSTART",
02241 "GENERALELEMENTSEND", "CONREFERENCEELEMENTSSTART",
02242 "CONREFERENCEELEMENTSEND", "OBJREFERENCEELEMENTSSTART",
02243 "OBJREFERENCEELEMENTSEND", "STRINGVALUEDELEMENTSSTART",
02244 "STRINGVALUEDELEMENTSEND", "STARTVECTORSTART", "STARTVECTOREND",
02245 "INDEXSTART", "INDEXEND", "VALUESTART", "VALUEEND", "VARIDXSTART",
02246 "VARIDXEND", "TRANSFORMATIONSTART", "TRANSFORMATIONEND",
02247 "MATRIXPROGRAMMINGSTART", "MATRIXPROGRAMMINGEND", "MATRIXVARIABLESSTART",
02248 "MATRIXVARIABLESEND", "MATRIXVARSTART", "MATRIXVAREND",
02249 "MATRIXOBJECTIVESSTART", "MATRIXOBJECTIVESEND", "MATRIXOBJSTART",
02250 "MATRIXOBJEND", "MATRIXCONSTRAINTSSTART", "MATRIXCONSTRAINTSEND",
02251 "MATRIXCONSTART", "MATRIXCONEND", "CONSTART", "CONEND",
02252 "CONSTRAINTSSTART", "CONSTRAINTSEND", "OBJSTART", "OBJEND",
02253 "OBJECTIVESSTART", "OBJECTIVESEND", "VARSTART", "VAREND",
02254 "VARIABLESSTART", "VARIABLESEND", "GENERALSTART", "GENERALEND",
02255 "SYSTEMSTART", "SYSTEMEND", "SERVICESTART", "SERVICEEND", "JOBSTART",
02256 "JOBEND", "OPTIMIZATIONSTART", "OPTIMIZATIONEND", "ATEQUALITYSTART",
02257 "ATEQUALITYEND", "ATLOWERSTART", "ATLOWEREND", "ATUPPERSTART",
02258 "ATUPPEREND", "BASICSTART", "BASICEND", "ISFREESTART", "ISFREEEND",
02259 "SUPERBASICSTART", "SUPERBASICEND", "UNKNOWNSTART", "UNKNOWNEND",
02260 "SERVICEURISTART", "SERVICEURIEND", "SERVICENAMESTART", "SERVICENAMEEND",
02261 "INSTANCENAMESTART", "INSTANCENAMEEND", "JOBIDSTART", "JOBIDEND",
02262 "OTHERSTART", "OTHEREND", "DUMMY", "NONLINEAREXPRESSIONSSTART",
02263 "NONLINEAREXPRESSIONSEND", "NUMBEROFNONLINEAREXPRESSIONS", "NLSTART",
02264 "NLEND", "MATRIXEXPRESSIONSSTART", "MATRIXEXPRESSIONSEND",
02265 "NUMBEROFEXPR", "EXPRSTART", "EXPREND", "NUMBEROFMATRIXTERMSATT",
02266 "MATRIXTERMSTART", "MATRIXTERMEND", "POWERSTART", "POWEREND",
02267 "PLUSSTART", "PLUSEND", "MINUSSTART", "MINUSEND", "DIVIDESTART",
02268 "DIVIDEEND", "LNSTART", "LNEND", "SQRTSTART", "SQRTEND", "SUMSTART",
02269 "SUMEND", "PRODUCTSTART", "PRODUCTEND", "EXPSTART", "EXPEND",
02270 "NEGATESTART", "NEGATEEND", "IFSTART", "IFEND", "SQUARESTART",
02271 "SQUAREEND", "COSSTART", "COSEND", "SINSTART", "SINEND", "VARIABLESTART",
02272 "VARIABLEEND", "ABSSTART", "ABSEND", "ERFSTART", "ERFEND", "MAXSTART",
02273 "MAXEND", "ALLDIFFSTART", "ALLDIFFEND", "MINSTART", "MINEND", "ESTART",
02274 "EEND", "PISTART", "PIEND", "TIMESSTART", "TIMESEND", "NUMBERSTART",
02275 "NUMBEREND", "MATRIXDETERMINANTSTART", "MATRIXDETERMINANTEND",
02276 "MATRIXTRACESTART", "MATRIXTRACEEND", "MATRIXTOSCALARSTART",
02277 "MATRIXTOSCALAREND", "MATRIXDIAGONALSTART", "MATRIXDIAGONALEND",
02278 "MATRIXDOTTIMESSTART", "MATRIXDOTTIMESEND", "MATRIXLOWERTRIANGLESTART",
02279 "MATRIXLOWERTRIANGLEEND", "MATRIXUPPERTRIANGLESTART",
02280 "MATRIXUPPERTRIANGLEEND", "MATRIXMERGESTART", "MATRIXMERGEEND",
02281 "MATRIXMINUSSTART", "MATRIXMINUSEND", "MATRIXNEGATESTART",
02282 "MATRIXNEGATEEND", "MATRIXPLUSSTART", "MATRIXPLUSEND",
02283 "MATRIXTIMESSTART", "MATRIXTIMESEND", "MATRIXPRODUCTSTART",
02284 "MATRIXPRODUCTEND", "MATRIXSCALARTIMESSTART", "MATRIXSCALARTIMESEND",
02285 "MATRIXSUBMATRIXATSTART", "MATRIXSUBMATRIXATEND", "MATRIXTRANSPOSESTART",
02286 "MATRIXTRANSPOSEEND", "MATRIXREFERENCESTART", "MATRIXREFERENCEEND",
02287 "IDENTITYMATRIXSTART", "IDENTITYMATRIXEND", "MATRIXINVERSESTART",
02288 "MATRIXINVERSEEND", "EMPTYINCLUDEDIAGONALATT", "INCLUDEDIAGONALATT",
02289 "EMPTYIDATT", "IDATT", "' '", "'\\t'", "'\\r'", "'\\n'", "$accept",
02290 "osrldoc", "osrlStartEmpty", "osrlStart", "osrlAttributes",
02291 "osrlContent", "osrlEmpty", "osrlLaden", "osrlEnd", "osrlEnding",
02292 "osrlBody", "headerElement", "generalElement", "generalElementStart",
02293 "generalElementContent", "generalElementEmpty", "generalElementLaden",
02294 "generalElementBody", "generalElementList", "generalChild",
02295 "generalStatus", "generalStatusStart", "generalStatusAttributes",
02296 "generalStatusAttList", "generalStatusATT", "generalStatusContent",
02297 "generalStatusEmpty", "generalStatusLaden", "generalStatusBody",
02298 "generalSubstatusArray", "generalSubstatus", "generalSubstatusStart",
02299 "generalSubstatusAttributes", "generalSubstatusAttList",
02300 "generalSubstatusATT", "generalSubstatusEnd", "generalMessage",
02301 "generalMessageStart", "generalMessageContent", "generalMessageEmpty",
02302 "generalMessageLaden", "generalMessageBody", "serviceURI",
02303 "serviceURIStart", "serviceURIContent", "serviceURIEmpty",
02304 "serviceURILaden", "serviceURIBody", "serviceName", "serviceNameStart",
02305 "serviceNameContent", "serviceNameEmpty", "serviceNameLaden",
02306 "serviceNameBody", "instanceName", "instanceNameStart",
02307 "instanceNameContent", "instanceNameEmpty", "instanceNameLaden",
02308 "instanceNameBody", "jobID", "jobIDStart", "jobIDContent", "jobIDEmpty",
02309 "jobIDLaden", "jobIDBody", "solverInvoked", "solverInvokedStart",
02310 "solverInvokedContent", "solverInvokedEmpty", "solverInvokedLaden",
02311 "solverInvokedBody", "timeStamp", "timeStampStart", "timeStampContent",
02312 "timeStampEmpty", "timeStampLaden", "timeStampBody",
02313 "otherGeneralResults", "otherGeneralResultsStart",
02314 "otherGeneralResultsAttributes", "otherGeneralResultsContent",
02315 "otherGeneralResultsEmpty", "otherGeneralResultsLaden",
02316 "otherGeneralResultsBody", "otherGeneralResultArray",
02317 "otherGeneralResult", "otherGeneralResultStart",
02318 "otherGeneralResultAttributes", "otherGeneralResultAttList",
02319 "otherGeneralResultAtt", "otherGeneralResultEnd", "systemElement",
02320 "systemElementStart", "systemElementContent", "systemElementEmpty",
02321 "systemElementLaden", "systemElementBody", "systemElementList",
02322 "systemChild", "systemInformation", "systemInformationStart",
02323 "systemInformationContent", "systemInformationEmpty",
02324 "systemInformationLaden", "systemInformationBody", "availableDiskSpace",
02325 "availableDiskSpaceStart", "availableDiskSpaceAttributes",
02326 "availableDiskSpaceAttList", "availableDiskSpaceAtt",
02327 "availableDiskSpaceContent", "availableDiskSpaceValue",
02328 "availableMemory", "availableMemoryStart", "availableMemoryAttributes",
02329 "availableMemoryAttList", "availableMemoryAtt", "availableMemoryContent",
02330 "availableMemoryValue", "availableCPUSpeed", "availableCPUSpeedStart",
02331 "availableCPUSpeedAttributes", "availableCPUSpeedAttList",
02332 "availableCPUSpeedAtt", "availableCPUSpeedContent",
02333 "availableCPUSpeedValue", "availableCPUNumber",
02334 "availableCPUNumberStart", "availableCPUNumberAttributes",
02335 "availableCPUNumberContent", "availableCPUNumberValue",
02336 "otherSystemResults", "otherSystemResultsStart",
02337 "otherSystemResultsAttributes", "otherSystemResultsContent",
02338 "otherSystemResultsEmpty", "otherSystemResultsLaden",
02339 "otherSystemResultsBody", "otherSystemResultArray", "otherSystemResult",
02340 "otherSystemResultStart", "otherSystemResultAttributes",
02341 "otherSystemResultAttList", "otherSystemResultAtt",
02342 "otherSystemResultEnd", "serviceElement", "serviceElementStart",
02343 "serviceElementContent", "serviceElementEmpty", "serviceElementLaden",
02344 "serviceElementBody", "serviceElementList", "serviceChild",
02345 "currentState", "currentStateStart", "currentStateContent",
02346 "currentStateEmpty", "currentStateLaden", "currentStateBody",
02347 "currentJobCount", "currentJobCountStart", "currentJobCountContent",
02348 "currentJobCountEmpty", "currentJobCountLaden", "currentJobCountBody",
02349 "totalJobsSoFar", "totalJobsSoFarStart", "totalJobsSoFarContent",
02350 "totalJobsSoFarEmpty", "totalJobsSoFarLaden", "totalJobsSoFarBody",
02351 "timeServiceStarted", "timeServiceStartedStart",
02352 "timeServiceStartedContent", "timeServiceStartedEmpty",
02353 "timeServiceStartedLaden", "timeServiceStartedBody",
02354 "serviceUtilization", "serviceUtilizationStart",
02355 "serviceUtilizationContent", "serviceUtilizationEmpty",
02356 "serviceUtilizationLaden", "serviceUtilizationBody",
02357 "otherServiceResults", "otherServiceResultsStart",
02358 "otherServiceResultsAttributes", "otherServiceResultsContent",
02359 "otherServiceResultsEmpty", "otherServiceResultsLaden",
02360 "otherServiceResultsBody", "otherServiceResultArray",
02361 "otherServiceResult", "otherServiceResultStart",
02362 "otherServiceResultAttributes", "otherServiceResultAttList",
02363 "otherServiceResultAtt", "otherServiceResultEnd", "jobElement",
02364 "jobElementStart", "jobElementContent", "jobElementEmpty",
02365 "jobElementLaden", "jobElementBody", "jobElementList", "jobChild",
02366 "jobStatus", "jobStatusStart", "jobStatusContent", "jobStatusEmpty",
02367 "jobStatusLaden", "jobStatusBody", "submitTime", "submitTimeStart",
02368 "submitTimeContent", "submitTimeEmpty", "submitTimeLaden",
02369 "submitTimeBody", "scheduledStartTime", "scheduledStartTimeStart",
02370 "scheduledStartTimeContent", "scheduledStartTimeEmpty",
02371 "scheduledStartTimeLaden", "scheduledStartTimeBody", "actualStartTime",
02372 "actualStartTimeStart", "actualStartTimeContent", "actualStartTimeEmpty",
02373 "actualStartTimeLaden", "actualStartTimeBody", "endTime", "endTimeStart",
02374 "endTimeContent", "endTimeEmpty", "endTimeLaden", "endTimeBody",
02375 "timingInformation", "timingInformationStart",
02376 "timingInformationAttributes", "timingInformationContent",
02377 "timingInformationEmpty", "timingInformationLaden",
02378 "timingInformationBody", "timeArray", "time", "timeStart",
02379 "timeAttributes", "timeAtt", "timeContent", "timeEmpty", "timeLaden",
02380 "timeBody", "timeValue", "usedDiskSpace", "usedDiskSpaceStart",
02381 "usedDiskSpaceAttributes", "usedDiskSpaceAttList", "usedDiskSpaceAtt",
02382 "usedDiskSpaceContent", "usedDiskSpaceValue", "usedMemory",
02383 "usedMemoryStart", "usedMemoryAttributes", "usedMemoryAttList",
02384 "usedMemoryAtt", "usedMemoryContent", "usedMemoryValue", "usedCPUSpeed",
02385 "usedCPUSpeedStart", "usedCPUSpeedAttributes", "usedCPUSpeedAttList",
02386 "usedCPUSpeedAtt", "usedCPUSpeedContent", "usedCPUSpeedValue",
02387 "usedCPUNumber", "usedCPUNumberStart", "usedCPUNumberAttributes",
02388 "usedCPUNumberContent", "usedCPUNumberValue", "otherJobResults",
02389 "otherJobResultsStart", "otherJobResultsAttributes",
02390 "otherJobResultsContent", "otherJobResultsEmpty", "otherJobResultsLaden",
02391 "otherJobResultsBody", "otherJobResultArray", "otherJobResult",
02392 "otherJobResultStart", "otherJobResultAttributes",
02393 "otherJobResultAttList", "otherJobResultAtt", "otherJobResultEnd",
02394 "optimizationElement", "optimizationStart", "optimizationAttributes",
02395 "optimizationAttList", "optimizationATT", "optimizationContent",
02396 "optimizationEmpty", "optimizationLaden", "optimizationBody",
02397 "solutionArray", "solution", "solutionStart", "solutionAttributes",
02398 "solutionAttList", "solutionATT", "targetObjectiveIdxATT",
02399 "targetObjectiveNameATT", "weightedObjectivesATT", "solutionContent",
02400 "solutionStatus", "solutionStatusStart", "solutionStatusAttributes",
02401 "solutionStatusAttList", "solutionStatusATT", "solutionStatusContent",
02402 "solutionStatusEmpty", "solutionStatusLaden", "solutionStatusBody",
02403 "solutionSubstatusArray", "solutionSubstatus", "solutionSubstatusStart",
02404 "solutionSubstatusAttributes", "solutionSubstatusAttList",
02405 "solutionSubstatusATT", "solutionSubstatusEnd", "solutionMessage",
02406 "solutionMessageStart", "solutionMessageContent", "solutionMessageEmpty",
02407 "solutionMessageLaden", "solutionMessageBody", "variables",
02408 "variablesStart", "numberOfOtherVariableResults", "variablesContent",
02409 "variablesEmpty", "variablesLaden", "variablesBody", "variableValues",
02410 "variableValuesStart", "numberOfVarATT", "variableValuesContent",
02411 "variableValuesEmpty", "variableValuesLaden", "variableValuesBody",
02412 "varValueArray", "varValue", "varValueStart", "varValueAttList",
02413 "varValueAtt", "varValueContent", "variableValuesString",
02414 "variableValuesStringStart", "numberOfVarStringATT",
02415 "variableValuesStringContent", "variableValuesStringEmpty",
02416 "variableValuesStringLaden", "variableValuesStringBody",
02417 "varValueStringArray", "varValueString", "varValueStringStart",
02418 "varValueStringAttList", "varValueStringAtt", "varValueStringContent",
02419 "varValueStringEmpty", "varValueStringLaden", "varValueStringBody",
02420 "variableBasisStatus", "variableBasisStatusStart",
02421 "variableBasisStatusContent", "variableBasisStatusEmpty",
02422 "variableBasisStatusLaden", "variableBasisStatusBody", "variablesBasic",
02423 "variablesAtLower", "variablesAtUpper", "variablesAtEquality",
02424 "variablesIsFree", "variablesSuperbasic", "variablesUnknown",
02425 "otherVariableResultsArray", "otherVariableResult",
02426 "otherVariableResultStart", "otherVariableResultAttributes",
02427 "otherVariableResultAttList", "otherVariableResultATT",
02428 "otherVariableResultContent", "otherVariableResultEmpty",
02429 "otherVariableResultLaden", "otherVariableResultBody", "otherVarList",
02430 "otherVar", "otherVarStart", "otherVarAttList", "otherVarAtt",
02431 "otherVarContent", "otherVarEmpty", "otherVarLaden", "otherVarBody",
02432 "otherVarEnumerationList", "otherVarEnumeration",
02433 "otherVarEnumerationStart", "otherVarEnumerationAttributes",
02434 "otherVarEnumerationAttList", "otherVarEnumerationATT",
02435 "otherVarEnumerationContent", "otherVarEnumerationEmpty",
02436 "otherVarEnumerationLaden", "otherVarEnumerationBody", "objectives",
02437 "objectivesStart", "numberOfOtherObjectiveResults", "objectivesContent",
02438 "objectivesEmpty", "objectivesLaden", "objectivesBody",
02439 "objectiveValues", "objectiveValuesStart", "numberOfObjATT",
02440 "objectiveValuesContent", "objectiveValuesEmpty", "objectiveValuesLaden",
02441 "objectiveValuesBody", "objValueArray", "objValue", "objValueStart",
02442 "objValueAttList", "objValueAtt", "objValueContent",
02443 "objectiveBasisStatus", "objectiveBasisStatusStart",
02444 "objectiveBasisStatusContent", "objectiveBasisStatusEmpty",
02445 "objectiveBasisStatusLaden", "objectiveBasisStatusBody",
02446 "objectivesBasic", "objectivesAtLower", "objectivesAtUpper",
02447 "objectivesAtEquality", "objectivesIsFree", "objectivesSuperbasic",
02448 "objectivesUnknown", "otherObjectiveResultsArray",
02449 "otherObjectiveResult", "otherObjectiveResultStart",
02450 "otherObjectiveResultAttributes", "otherObjectiveResultAttList",
02451 "otherObjectiveResultATT", "otherObjectiveResultContent",
02452 "otherObjectiveResultEmpty", "otherObjectiveResultLaden",
02453 "otherObjectiveResultBody", "otherObjList", "otherObj", "otherObjStart",
02454 "otherObjAttList", "otherObjAtt", "otherObjContent", "otherObjEmpty",
02455 "otherObjLaden", "otherObjBody", "otherObjEnumerationList",
02456 "otherObjEnumeration", "otherObjEnumerationStart",
02457 "otherObjEnumerationAttributes", "otherObjEnumerationAttList",
02458 "otherObjEnumerationATT", "otherObjEnumerationContent",
02459 "otherObjEnumerationEmpty", "otherObjEnumerationLaden",
02460 "otherObjEnumerationBody", "constraints", "constraintsStart",
02461 "numberOfOtherConstraintResults", "constraintsContent",
02462 "constraintsEmpty", "constraintsLaden", "constraintsBody", "dualValues",
02463 "dualValuesStart", "numberOfConAttribute", "dualValuesContent",
02464 "dualValuesEmpty", "dualValuesLaden", "dualValuesBody", "dualValueArray",
02465 "dualValue", "dualValueStart", "dualValueAttList", "dualValueAtt",
02466 "dualValueContent", "slackBasisStatus", "slackBasisStatusStart",
02467 "slackBasisStatusContent", "slackBasisStatusEmpty",
02468 "slackBasisStatusLaden", "slackBasisStatusBody", "slacksBasic",
02469 "slacksAtLower", "slacksAtUpper", "slacksAtEquality", "slacksIsFree",
02470 "slacksSuperbasic", "slacksUnknown", "otherConstraintResultsArray",
02471 "otherConstraintResult", "otherConstraintResultStart",
02472 "otherConstraintResultAttributes", "otherConstraintResultAttList",
02473 "otherConstraintResultATT", "otherConstraintResultContent",
02474 "otherConstraintResultEmpty", "otherConstraintResultLaden",
02475 "otherConstraintResultBody", "otherConList", "otherCon", "otherConStart",
02476 "otherConAttList", "otherConAtt", "otherConContent", "otherConEmpty",
02477 "otherConLaden", "otherConBody", "otherConEnumerationList",
02478 "otherConEnumeration", "otherConEnumerationStart",
02479 "otherConEnumerationAttributes", "otherConEnumerationAttList",
02480 "otherConEnumerationATT", "otherConEnumerationContent",
02481 "otherConEnumerationEmpty", "otherConEnumerationLaden",
02482 "otherConEnumerationBody", "matrixProgramming", "matrixProgrammingStart",
02483 "matrixProgrammingAttributes", "matrixProgrammingContent",
02484 "matrixProgrammingEmpty", "matrixProgrammingLaden", "matrixVariables",
02485 "matrixVariablesStart", "matrixVariablesAttributes",
02486 "matrixVariablesContent", "matrixVariablesEmpty", "matrixVariablesLaden",
02487 "matrixVariablesEnd", "matrixVariableValues",
02488 "matrixVariableValuesStart", "matrixVariableValuesAttributes",
02489 "matrixVariableValuesContent", "matrixVariableValuesEmpty",
02490 "matrixVariableValuesLaden", "matrixVariableValuesEnd", "matrixVarList",
02491 "otherMatrixVariableResults", "otherMatrixVariableResult",
02492 "otherMatrixVariableResultStart", "otherMatrixVariableResultAttributes",
02493 "otherMatrixVariableResultAttList", "otherMatrixVariableResultATT",
02494 "otherMatrixVariableResultContent", "otherMatrixVariableResultEmpty",
02495 "otherMatrixVariableResultLaden", "otherMatrixVariableResultBody",
02496 "otherMatrixVarList", "otherMatrixVarEnumerationList",
02497 "otherMatrixVarEnumeration", "otherMatrixVarEnumerationStart",
02498 "otherMatrixVarEnumerationAttributes",
02499 "otherMatrixVarEnumerationAttList", "otherMatrixVarEnumerationATT",
02500 "otherMatrixVarEnumerationContent", "otherMatrixVarEnumerationEmpty",
02501 "otherMatrixVarEnumerationLaden", "otherMatrixVarEnumerationBody",
02502 "otherMatrixProgrammingResults", "otherMatrixProgrammingResult",
02503 "otherSolutionResults", "otherSolutionResultsStart",
02504 "numberOfOtherSolutionResults", "otherSolutionResultsContent",
02505 "otherSolutionResultsEmpty", "otherSolutionResultsLaden",
02506 "otherSolutionResultsBody", "otherSolutionResultArray",
02507 "otherSolutionResult", "otherSolutionResultStart",
02508 "otherSolutionResultAttributes", "otherSolutionResultAttList",
02509 "otherSolutionResultAtt", "otherSolutionResultContent",
02510 "otherSolutionResultEmpty", "otherSolutionResultLaden",
02511 "otherSolutionResultBody", "otherSolutionResultItemArray",
02512 "otherSolutionResultItem", "otherSolutionResultItemContent",
02513 "otherSolutionResultItemEmpty", "otherSolutionResultItemLaden",
02514 "otherSolutionResultItemBody", "otherSolverOutput",
02515 "otherSolverOutputStart", "numberOfSolverOutputsATT",
02516 "otherSolverOutputContent", "otherSolverOutputEmpty",
02517 "otherSolverOutputLaden", "otherSolverOutputBody", "solverOutputArray",
02518 "solverOutput", "solverOutputStart", "solverOutputAttributes",
02519 "solverOutputAttList", "solverOutputAtt", "solverOutputContent",
02520 "solverOutputEmpty", "solverOutputLaden", "solverOutputBody",
02521 "solverOutputItemArray", "solverOutputItem", "solverOutputItemContent",
02522 "solverOutputItemEmpty", "solverOutputItemLaden", "solverOutputItemBody",
02523 "numberOfOtherConstraintResultsAttribute",
02524 "numberOfOtherMatrixProgrammingResultsATT",
02525 "numberOfOtherMatrixVariableResultsATT",
02526 "numberOfOtherObjectiveResultsAttribute",
02527 "numberOfOtherResultsAttribute", "numberOfOtherSolutionResultsAttribute",
02528 "numberOfOtherVariableResultsAttribute", "numberOfSolutionsAttribute",
02529 "numberOfSolverOutputsAttribute", "numberOfSubstatusesAttribute",
02530 "numberOfTimesAttribute", "aNumber", "ElementValue", "quote",
02531 "xmlWhiteSpace", "xmlWhiteSpaceChar", "osglFileHeader",
02532 "headerElementStart", "headerElementContent", "headerElementEmpty",
02533 "headerElementLaden", "headerElementBody", "headerElementList",
02534 "headerChild", "fileName", "fileNameContent", "fileNameEmpty",
02535 "fileNameLaden", "fileSource", "fileSourceContent", "fileSourceEmpty",
02536 "fileSourceLaden", "fileDescription", "fileDescriptionContent",
02537 "fileDescriptionEmpty", "fileDescriptionLaden", "fileCreator",
02538 "fileCreatorContent", "fileCreatorEmpty", "fileCreatorLaden",
02539 "fileLicence", "fileLicenceContent", "fileLicenceEmpty",
02540 "fileLicenceLaden", "osglIntArrayData", "osglIntVectorElArray",
02541 "osglIntVectorEl", "osglIntVectorElStart", "osglIntVectorElAttributes",
02542 "osglIntVectorElAttList", "osglIntVectorElAtt", "osglIntVectorElContent",
02543 "osglIntVectorBase64", "osglIntVectorBase64Content",
02544 "osglIntVectorBase64Empty", "osglIntVectorBase64Laden",
02545 "osglDblArrayData", "osglDblVectorElArray", "osglDblVectorEl",
02546 "osglDblVectorElStart", "osglDblVectorElAttributes",
02547 "osglDblVectorElContent", "osglDblVectorBase64",
02548 "osglDblVectorBase64Content", "osglDblVectorBase64Empty",
02549 "osglDblVectorBase64Laden", "osglBasisStatusBasic", "osglBasicStart",
02550 "osglBasicContent", "osglBasicEmpty", "osglBasicLaden", "osglBasicBody",
02551 "osglBasisStatusAtLower", "osglAtLowerStart", "osglAtLowerContent",
02552 "osglAtLowerEmpty", "osglAtLowerLaden", "osglAtLowerBody",
02553 "osglBasisStatusAtUpper", "osglAtUpperStart", "osglAtUpperContent",
02554 "osglAtUpperEmpty", "osglAtUpperLaden", "osglAtUpperBody",
02555 "osglBasisStatusAtEquality", "osglAtEqualityStart",
02556 "osglAtEqualityContent", "osglAtEqualityEmpty", "osglAtEqualityLaden",
02557 "osglAtEqualityBody", "osglBasisStatusIsFree", "osglIsFreeStart",
02558 "osglIsFreeContent", "osglIsFreeEmpty", "osglIsFreeLaden",
02559 "osglIsFreeBody", "osglBasisStatusSuperbasic", "osglSuperbasicStart",
02560 "osglSuperbasicContent", "osglSuperbasicEmpty", "osglSuperbasicLaden",
02561 "osglSuperbasicBody", "osglBasisStatusUnknown", "osglUnknownStart",
02562 "osglUnknownContent", "osglUnknownEmpty", "osglUnknownLaden",
02563 "osglUnknownBody", "osglBasisNumberOfElAttribute",
02564 "osglMatrixWithMatrixVarIdx", "matrixVarStart",
02565 "matrixWithMatrixVarIdxAttributes", "matrixWithMatrixVarIdxATTList",
02566 "matrixWithMatrixVarIdxATT", "matrixVarContent", "matrixVarEmpty",
02567 "matrixVarLaden", "matrixBody", "baseMatrix", "baseMatrixStart",
02568 "baseMatrixAttributes", "baseMatrixAttList", "baseMatrixAtt",
02569 "baseMatrixEnd", "matrixConstructorList", "matrixConstructor",
02570 "constantElements", "constantElementsStart",
02571 "constantElementsAttributes", "constantElementsAttList",
02572 "constantElementsAtt", "constantElementsContent",
02573 "constantElementsNonzeros", "matrixElementsStartVector",
02574 "matrixElementsStartVectorStart", "matrixElementsStartVectorContent",
02575 "matrixElementsStartVectorEmpty", "matrixElementsStartVectorLaden",
02576 "matrixElementsStartVectorBody", "matrixElementsIndexVector",
02577 "matrixElementsIndexStart", "matrixElementsIndexContent",
02578 "matrixElementsIndexEmpty", "matrixElementsIndexLaden",
02579 "matrixElementsIndexBody", "constantElementsValues",
02580 "constantElementsValueStart", "constantElementsValueContent",
02581 "constantElementsValueEmpty", "constantElementsValueLaden",
02582 "constantElementsValueBody", "varReferenceElements",
02583 "varReferenceElementsStart", "varReferenceElementsAttributes",
02584 "varReferenceElementsAttList", "varReferenceElementsAtt",
02585 "varReferenceElementsContent", "varReferenceElementsNonzeros",
02586 "varReferenceElementsValues", "varReferenceElementsValuesStart",
02587 "varReferenceElementsValuesContent", "varReferenceElementsValuesEmpty",
02588 "varReferenceElementsValuesLaden", "varReferenceElementsValuesBody",
02589 "linearElements", "linearElementsStart", "linearElementsAttributes",
02590 "linearElementsAttList", "linearElementsAtt", "linearElementsContent",
02591 "linearElementsNonzeros", "linearElementsValues",
02592 "linearElementsValuesStart", "linearElementsValuesContent",
02593 "linearElementsValuesEmpty", "linearElementsValuesLaden",
02594 "linearElementsValuesBody", "linearElementsValuesElList",
02595 "linearElementsValuesEl", "linearElementsValuesElStart",
02596 "linearElementsValuesElAttributes", "linearElementsValuesElAttList",
02597 "linearElementsValuesElAtt", "linearElementsValuesElContent",
02598 "linearElementsValuesElEmpty", "linearElementsValuesElLaden",
02599 "linearElementsValuesVarIdxList", "linearElementsValuesVarIdx",
02600 "linearElementsValuesVarIdxStart", "LinearElementsValuesVarIdxCoefATT",
02601 "linearElementsValuesVarIdxContent", "generalElements",
02602 "generalElementsStart", "generalElementsAttributes",
02603 "generalElementsAttList", "generalElementsAtt", "generalElementsContent",
02604 "generalElementsNonzeros", "generalElementsValues",
02605 "generalElementsValuesStart", "generalElementsValuesContent",
02606 "generalElementsValuesEmpty", "generalElementsValuesLaden",
02607 "generalElementsElList", "generalElementsEl", "generalElementsElStart",
02608 "generalElementsElContent", "generalElementsElEmpty",
02609 "generalElementsElLaden", "objReferenceElements",
02610 "objReferenceElementsStart", "objReferenceElementsAttributes",
02611 "objReferenceElementsAttList", "objReferenceElementsAtt",
02612 "objReferenceElementsContent", "objReferenceElementsNonzeros",
02613 "objReferenceElementsValues", "objReferenceElementsValuesStart",
02614 "objReferenceElementsValuesContent", "objReferenceElementsValuesEmpty",
02615 "objReferenceElementsValuesLaden", "objReferenceElementsValuesBody",
02616 "conReferenceElements", "conReferenceElementsStart",
02617 "conReferenceElementsAttributes", "conReferenceElementsAttList",
02618 "conReferenceElementsAtt", "conReferenceElementsContent",
02619 "conReferenceElementsNonzeros", "conReferenceElementsValues",
02620 "conReferenceElementsValuesStart", "conReferenceElementsValuesContent",
02621 "conReferenceElementsValuesEmpty", "conReferenceElementsValuesLaden",
02622 "conReferenceElementsElList", "conReferenceElementsEl",
02623 "conReferenceElementsElStart", "conReferenceElementsElAttributeList",
02624 "conReferenceElementsElAttribute", "conReferenceElementsElContent",
02625 "matrixTransformation", "matrixTransformationStart",
02626 "matrixTransformationShapeATT", "matrixTransformationEnd",
02627 "matrixBlocks", "matrixBlocksStart", "matrixBlocksAttributes",
02628 "matrixBlocksContent", "matrixBlocksEnd", "colOffsets", "colOffsetStart",
02629 "colOffsetNumberOfElAttribute", "colOffsetContent", "colOffsetEmpty",
02630 "colOffsetLaden", "colOffsetBody", "rowOffsets", "rowOffsetStart",
02631 "rowOffsetNumberOfElAttribute", "rowOffsetContent", "rowOffsetEmpty",
02632 "rowOffsetLaden", "rowOffsetBody", "blockList", "matrixBlock",
02633 "matrixBlockStart", "matrixBlockAttributes", "matrixBlockAttList",
02634 "matrixBlockAtt", "matrixBlockContent", "blockEmpty", "blockLaden",
02635 "blockBody", "osglNumberOfBlocksATT", "osglNumberOfColumnsATT",
02636 "osglNumberOfConATT", "osglNumberOfConstraintsATT", "osglNumberOfElATT",
02637 "osglNumberOfEnumerationsATT", "osglNumberOfItemsATT",
02638 "osglNumberOfMatrixVarATT", "osglNumberOfObjATT",
02639 "osglNumberOfObjectivesATT", "osglNumberOfRowsATT",
02640 "osglNumberOfValuesATT", "osglNumberOfVarATT", "osglNumberOfVarIdxATT",
02641 "osglNumberOfVariablesATT", "osglBase64SizeATT", "osglBaseMatrixIdxATT",
02642 "osglBaseMatrixStartRowATT", "osglBaseMatrixStartColATT",
02643 "osglBaseMatrixEndRowATT", "osglBaseMatrixEndColATT",
02644 "osglBlockRowIdxATT", "osglBlockColIdxATT", "osglCoefATT",
02645 "osglConstantATT", "osglIdxATT", "osglIncrATT", "osglMatrixVarIdxATT",
02646 "osglMultATT", "osglScalarMultiplierATT", "osglTargetMatrixFirstRowATT",
02647 "osglTargetMatrixFirstColATT", "osglBaseTransposeATT",
02648 "baseTransposeAttEmpty", "baseTransposeAttContent", "osglCategoryATT",
02649 "categoryAttEmpty", "categoryAttContent", "osglConTypeATT",
02650 "conTypeAttEmpty", "conTypeAttContent", "osglDescriptionATT",
02651 "descriptionAttEmpty", "descriptionAttContent", "osglEnumTypeATT",
02652 "enumTypeAttEmpty", "enumTypeAttContent", "osglMatrixVarTypeATT",
02653 "matrixVarTypeAttEmpty", "matrixVarTypeAttContent", "osglNameATT",
02654 "nameAttEmpty", "nameAttContent", "osglObjTypeATT", "objTypeAttEmpty",
02655 "objTypeAttContent", "osglRowMajorATT", "rowMajorAttEmpty",
02656 "rowMajorAttContent", "osglShapeATT", "shapeAttEmpty", "shape",
02657 "osglSolverATT", "solverAttEmpty", "solverAttContent", "osglSymmetryATT",
02658 "symmetryAttEmpty", "symmetryAttContent", "osglTypeATT", "typeAttEmpty",
02659 "typeAttContent", "osglUnitATT", "unitAttEmpty", "unitAttContent",
02660 "osglValueATT", "valueAttEmpty", "valueAttContent", "osglValueTypeATT",
02661 "valueTypeAttEmpty", "valueTypeAttContent", "osglVarTypeATT",
02662 "varTypeAttEmpty", "varTypeAttContent", "nlnode", "E", "$@1", "eend",
02663 "PI", "$@2", "piend", "times", "$@3", "plus", "$@4", "minus", "$@5",
02664 "negate", "$@6", "divide", "$@7", "power", "$@8", "ln", "$@9", "sqrt",
02665 "$@10", "square", "$@11", "cos", "$@12", "sin", "$@13", "exp", "$@14",
02666 "abs", "absStart", "absEnd", "erf", "$@15", "if", "$@16",
02667 "matrixDeterminant", "$@17", "matrixTrace", "$@18", "matrixToScalar",
02668 "$@19", "number", "numberStart", "numberEnd", "numberAttributeList",
02669 "numberAttribute", "numberidATT", "$@20", "variable", "$@21",
02670 "variableend", "$@22", "anotherVariableATT", "variableATT",
02671 "variablecoefATT", "variableidxATT", "sum", "$@23", "anothersumnlnode",
02672 "allDiff", "$@24", "anotherallDiffnlnode", "max", "$@25",
02673 "anothermaxnlnode", "min", "$@26", "anotherminnlnode", "product", "$@27",
02674 "anotherproductnlnode", "OSnLMNode", "matrixReference",
02675 "matrixReferenceStart", "matrixReferenceEnd", "matrixIdxATT",
02676 "matrixVarReference", "matrixVarReferenceStart", "matrixVarReferenceEnd",
02677 "matrixVarIdxATT", "matrixObjReference", "matrixObjReferenceStart",
02678 "matrixObjReferenceEnd", "matrixObjIdxATT", "matrixConReference",
02679 "matrixConReferenceStart", "matrixConReferenceEnd", "matrixConIdxATT",
02680 "matrixDiagonal", "matrixDiagonalStart", "matrixDiagonalContent",
02681 "matrixDotTimes", "matrixDotTimesStart", "matrixDotTimesContent",
02682 "identityMatrix", "identityMatrixStart", "identityMatrixContent",
02683 "matrixInverse", "matrixInverseStart", "matrixInverseContent",
02684 "matrixLowerTriangle", "matrixLowerTriangleStart",
02685 "matrixLowerTriangleAttribute", "matrixLowerTriangleContent",
02686 "matrixUpperTriangle", "matrixUpperTriangleStart",
02687 "matrixUpperTriangleAttribute", "matrixUpperTriangleContent",
02688 "includeDiagonalATT", "matrixMerge", "matrixMergeStart",
02689 "matrixMergeEnd", "matrixMinus", "matrixMinusStart",
02690 "matrixMinusContent", "matrixNegate", "matrixNegateStart",
02691 "matrixNegateContent", "matrixPlus", "matrixPlusStart",
02692 "matrixPlusContent", "matrixTimes", "matrixTimesStart",
02693 "matrixTimesContent", "matrixProduct", "$@28",
02694 "anothermatrixproductnode", "matrixScalarTimes",
02695 "matrixScalarTimesStart", "matrixScalarTimesContent",
02696 "matrixSubMatrixAt", "matrixSubMatrixAtStart",
02697 "matrixSubMatrixAtContent", "matrixTranspose", "matrixTransposeStart",
02698 "matrixTransposeContent", 0
02699 };
02700 #endif
02701
02702 # ifdef YYPRINT
02703
02704
02705 static const yytype_uint16 yytoknum[] =
02706 {
02707 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
02708 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
02709 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
02710 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
02711 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
02712 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
02713 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
02714 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
02715 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
02716 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
02717 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
02718 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
02719 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
02720 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
02721 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
02722 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
02723 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
02724 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
02725 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
02726 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
02727 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
02728 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
02729 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
02730 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
02731 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
02732 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
02733 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
02734 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
02735 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
02736 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
02737 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
02738 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
02739 575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
02740 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
02741 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
02742 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
02743 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
02744 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
02745 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
02746 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
02747 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
02748 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
02749 675, 676, 677, 678, 679, 680, 681, 682, 683, 684,
02750 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
02751 695, 32, 9, 13, 10
02752 };
02753 # endif
02754
02755
02756 static const yytype_uint16 yyr1[] =
02757 {
02758 0, 445, 446, 446, 447, 448, 449, 449, 450, 450,
02759 451, 452, 453, 454, 454, 455, 456, 456, 457, 457,
02760 458, 459, 459, 460, 460, 461, 462, 463, 463, 464,
02761 464, 464, 464, 464, 464, 464, 464, 464, 465, 466,
02762 467, 468, 468, 469, 469, 469, 470, 470, 471, 471,
02763 472, 473, 474, 474, 475, 476, 477, 478, 478, 479,
02764 479, 480, 480, 481, 482, 483, 483, 484, 484, 485,
02765 486, 487, 488, 489, 489, 490, 490, 491, 492, 493,
02766 494, 495, 495, 496, 496, 497, 498, 499, 500, 501,
02767 501, 502, 502, 503, 504, 505, 506, 507, 507, 508,
02768 508, 509, 510, 511, 512, 513, 513, 514, 514, 515,
02769 516, 517, 518, 519, 519, 520, 520, 521, 522, 523,
02770 524, 525, 526, 526, 527, 527, 528, 529, 530, 530,
02771 531, 532, 533, 534, 534, 535, 535, 535, 536, 536,
02772 537, 537, 538, 539, 539, 540, 540, 541, 542, 543,
02773 543, 544, 544, 544, 544, 544, 544, 545, 546, 547,
02774 547, 548, 548, 549, 550, 551, 552, 553, 554, 554,
02775 555, 555, 556, 557, 558, 559, 560, 561, 561, 562,
02776 562, 563, 564, 565, 566, 567, 568, 568, 569, 569,
02777 570, 571, 572, 573, 574, 574, 575, 576, 577, 578,
02778 579, 580, 580, 581, 581, 582, 583, 584, 584, 585,
02779 586, 587, 588, 588, 589, 589, 589, 590, 590, 591,
02780 591, 592, 593, 593, 594, 594, 595, 596, 597, 597,
02781 598, 598, 598, 598, 598, 598, 599, 600, 601, 601,
02782 602, 602, 603, 604, 605, 606, 607, 607, 608, 608,
02783 609, 610, 611, 612, 613, 613, 614, 614, 615, 616,
02784 617, 618, 619, 619, 620, 620, 621, 622, 623, 624,
02785 625, 625, 626, 626, 627, 628, 629, 630, 631, 632,
02786 632, 633, 633, 634, 635, 636, 636, 637, 638, 639,
02787 640, 640, 641, 641, 641, 642, 642, 643, 643, 644,
02788 645, 645, 646, 646, 647, 648, 649, 649, 650, 650,
02789 650, 650, 650, 650, 650, 650, 650, 650, 650, 651,
02790 652, 653, 653, 654, 654, 655, 656, 657, 658, 659,
02791 659, 660, 660, 661, 662, 663, 664, 665, 665, 666,
02792 666, 667, 668, 669, 670, 671, 671, 672, 672, 673,
02793 674, 675, 676, 677, 677, 678, 678, 679, 680, 681,
02794 682, 683, 684, 684, 685, 685, 686, 687, 688, 688,
02795 689, 690, 691, 691, 692, 692, 692, 692, 693, 693,
02796 694, 694, 695, 696, 697, 697, 698, 699, 700, 701,
02797 701, 702, 702, 703, 704, 705, 706, 707, 708, 708,
02798 709, 709, 710, 711, 712, 713, 714, 715, 715, 716,
02799 716, 717, 718, 719, 720, 721, 721, 722, 723, 724,
02800 725, 726, 727, 727, 728, 728, 729, 730, 731, 731,
02801 732, 733, 734, 735, 735, 736, 736, 736, 737, 737,
02802 738, 738, 739, 740, 741, 741, 742, 742, 742, 742,
02803 743, 743, 744, 744, 745, 746, 747, 747, 748, 749,
02804 750, 751, 751, 752, 752, 752, 753, 754, 755, 756,
02805 757, 758, 759, 760, 760, 761, 761, 761, 762, 762,
02806 763, 763, 764, 765, 766, 766, 767, 768, 769, 770,
02807 770, 771, 771, 772, 772, 773, 773, 774, 775, 775,
02808 776, 776, 777, 778, 779, 779, 780, 781, 781, 782,
02809 782, 783, 784, 785, 786, 786, 787, 788, 789, 789,
02810 790, 790, 791, 792, 793, 793, 794, 795, 796, 796,
02811 797, 797, 798, 799, 799, 800, 801, 802, 802, 803,
02812 803, 804, 805, 806, 806, 807, 808, 809, 809, 810,
02813 810, 811, 811, 812, 812, 813, 814, 815, 815, 816,
02814 817, 817, 818, 819, 820, 821, 821, 822, 822, 823,
02815 823, 824, 824, 825, 825, 826, 826, 827, 827, 828,
02816 828, 829, 830, 831, 832, 832, 833, 833, 833, 833,
02817 833, 833, 833, 833, 833, 834, 834, 835, 835, 836,
02818 837, 837, 838, 838, 839, 840, 841, 841, 842, 842,
02819 843, 843, 844, 844, 845, 846, 847, 847, 848, 849,
02820 850, 851, 851, 852, 852, 852, 853, 853, 854, 855,
02821 856, 857, 857, 858, 859, 859, 860, 860, 861, 862,
02822 863, 864, 864, 865, 866, 867, 867, 868, 868, 869,
02823 870, 871, 871, 872, 873, 874, 874, 875, 875, 876,
02824 877, 877, 878, 879, 879, 880, 881, 882, 883, 883,
02825 884, 884, 885, 885, 886, 886, 887, 887, 888, 888,
02826 889, 889, 890, 890, 891, 892, 893, 894, 894, 895,
02827 895, 895, 895, 895, 895, 895, 895, 895, 896, 896,
02828 897, 897, 898, 899, 899, 900, 900, 901, 902, 903,
02829 903, 904, 904, 905, 905, 906, 906, 907, 908, 909,
02830 909, 910, 911, 912, 913, 913, 914, 914, 914, 915,
02831 915, 916, 917, 918, 919, 919, 920, 921, 921, 922,
02832 922, 923, 924, 925, 926, 926, 927, 928, 929, 929,
02833 930, 930, 931, 932, 933, 933, 934, 935, 936, 936,
02834 937, 937, 938, 939, 939, 940, 941, 941, 942, 943,
02835 944, 945, 945, 946, 946, 947, 947, 948, 948, 949,
02836 949, 950, 950, 951, 951, 952, 952, 953, 954, 955,
02837 956, 956, 957, 957, 957, 957, 957, 957, 957, 957,
02838 957, 958, 958, 959, 959, 960, 961, 961, 962, 962,
02839 963, 964, 965, 965, 966, 966, 967, 967, 968, 968,
02840 969, 970, 971, 971, 972, 973, 974, 975, 975, 976,
02841 976, 976, 977, 977, 978, 979, 980, 981, 981, 982,
02842 983, 983, 984, 984, 985, 986, 987, 987, 988, 989,
02843 990, 990, 991, 992, 993, 994, 994, 995, 996, 997,
02844 997, 998, 999, 1000, 1001, 1001, 1002, 1002, 1003, 1004,
02845 1005, 1006, 1006, 1007, 1007, 1007, 1007, 1007, 1007, 1007,
02846 1007, 1007, 1008, 1008, 1009, 1009, 1010, 1011, 1011, 1012,
02847 1012, 1013, 1013, 1014, 1015, 1016, 1017, 1017, 1018, 1018,
02848 1018, 1019, 1019, 1020, 1021, 1022, 1023, 1023, 1024, 1025,
02849 1025, 1026, 1027, 1028, 1028, 1029, 1029, 1030, 1031, 1032,
02850 1032, 1033, 1034, 1035, 1036, 1036, 1037, 1037, 1037, 1037,
02851 1037, 1038, 1038, 1039, 1039, 1040, 1041, 1042, 1042, 1043,
02852 1044, 1044, 1045, 1045, 1046, 1047, 1048, 1048, 1049, 1050,
02853 1051, 1051, 1052, 1052, 1053, 1054, 1055, 1055, 1056, 1057,
02854 1058, 1059, 1059, 1060, 1060, 1060, 1060, 1061, 1061, 1062,
02855 1062, 1063, 1064, 1065, 1065, 1066, 1067, 1067, 1068, 1068,
02856 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078,
02857 1079, 1080, 1081, 1082, 1082, 1083, 1083, 1083, 1084, 1085,
02858 1085, 1086, 1086, 1086, 1086, 1087, 1088, 1089, 1089, 1090,
02859 1091, 1092, 1093, 1093, 1094, 1094, 1094, 1094, 1094, 1095,
02860 1096, 1096, 1097, 1097, 1098, 1099, 1100, 1100, 1101, 1101,
02861 1102, 1103, 1104, 1104, 1105, 1105, 1106, 1107, 1108, 1108,
02862 1109, 1109, 1110, 1111, 1112, 1112, 1113, 1113, 1114, 1115,
02863 1115, 1116, 1116, 1117, 1118, 1119, 1120, 1120, 1121, 1121,
02864 1122, 1123, 1124, 1124, 1125, 1125, 1126, 1127, 1127, 1128,
02865 1128, 1129, 1130, 1131, 1131, 1132, 1133, 1134, 1134, 1135,
02866 1135, 1136, 1137, 1138, 1139, 1139, 1140, 1141, 1142, 1143,
02867 1144, 1145, 1145, 1146, 1147, 1148, 1149, 1150, 1151, 1151,
02868 1152, 1153, 1154, 1155, 1156, 1157, 1157, 1158, 1159, 1160,
02869 1161, 1162, 1163, 1163, 1164, 1165, 1166, 1167, 1168, 1169,
02870 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1175, 1176, 1177,
02871 1178, 1179, 1180, 1181, 1182, 1183, 1183, 1184, 1184, 1184,
02872 1184, 1184, 1184, 1185, 1185, 1186, 1187, 1188, 1189, 1189,
02873 1190, 1191, 1192, 1192, 1193, 1193, 1193, 1193, 1193, 1193,
02874 1193, 1193, 1193, 1194, 1194, 1195, 1195, 1196, 1196, 1196,
02875 1196, 1196, 1196, 1196, 1196, 1197, 1198, 1199, 1200, 1200,
02876 1201, 1201, 1202, 1203, 1203, 1204, 1205, 1206, 1206, 1207,
02877 1208, 1209, 1210, 1211, 1212, 1212, 1213, 1214, 1215, 1216,
02878 1217, 1218, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225,
02879 1225, 1226, 1226, 1227, 1228, 1228, 1229, 1230, 1231, 1231,
02880 1232, 1233, 1234, 1235, 1236, 1237, 1238, 1238, 1239, 1239,
02881 1240, 1241, 1241, 1242, 1242, 1243, 1244, 1244, 1245, 1246,
02882 1247, 1248, 1248, 1249, 1250, 1251, 1252, 1252, 1253, 1253,
02883 1254, 1254, 1255, 1256, 1257, 1257, 1258, 1259, 1260, 1260,
02884 1261, 1262, 1263, 1264, 1265, 1265, 1266, 1266, 1267, 1268,
02885 1268, 1269, 1269, 1270, 1271, 1271, 1272, 1273, 1274, 1274,
02886 1275, 1276, 1277, 1277, 1278, 1279, 1280, 1281, 1282, 1283,
02887 1283, 1284, 1284, 1285, 1286, 1286, 1287, 1288, 1289, 1289,
02888 1290, 1291, 1292, 1293, 1294, 1295, 1296, 1296, 1297, 1297,
02889 1298, 1299, 1299, 1300, 1300, 1301, 1302, 1302, 1303, 1304,
02890 1305, 1305, 1306, 1307, 1308, 1308, 1309, 1309, 1309, 1310,
02891 1311, 1312, 1313, 1313, 1314, 1315, 1316, 1317, 1318, 1319,
02892 1320, 1321, 1322, 1323, 1323, 1324, 1325, 1326, 1327, 1328,
02893 1329, 1330, 1330, 1331, 1332, 1333, 1334, 1334, 1335, 1336,
02894 1337, 1338, 1338, 1339, 1339, 1339, 1339, 1340, 1340, 1341,
02895 1342, 1343, 1344, 1345, 1346, 1347, 1348, 1349, 1350, 1351,
02896 1352, 1353, 1354, 1355, 1356, 1357, 1358, 1359, 1360, 1361,
02897 1362, 1363, 1364, 1365, 1366, 1367, 1368, 1369, 1370, 1371,
02898 1372, 1373, 1374, 1375, 1376, 1376, 1377, 1378, 1379, 1379,
02899 1380, 1381, 1382, 1382, 1383, 1384, 1385, 1385, 1386, 1387,
02900 1388, 1388, 1389, 1390, 1391, 1391, 1392, 1393, 1394, 1394,
02901 1395, 1396, 1397, 1397, 1398, 1399, 1400, 1400, 1401, 1402,
02902 1403, 1403, 1404, 1405, 1406, 1406, 1407, 1408, 1409, 1409,
02903 1410, 1411, 1412, 1412, 1413, 1414, 1415, 1415, 1416, 1417,
02904 1418, 1418, 1419, 1420, 1421, 1421, 1422, 1423, 1424, 1424,
02905 1425, 1426, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427,
02906 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427,
02907 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1427, 1429,
02908 1428, 1430, 1430, 1432, 1431, 1433, 1433, 1435, 1434, 1437,
02909 1436, 1439, 1438, 1441, 1440, 1443, 1442, 1445, 1444, 1447,
02910 1446, 1449, 1448, 1451, 1450, 1453, 1452, 1455, 1454, 1457,
02911 1456, 1458, 1459, 1460, 1462, 1461, 1464, 1463, 1466, 1465,
02912 1468, 1467, 1470, 1469, 1471, 1472, 1473, 1473, 1474, 1474,
02913 1475, 1475, 1475, 1477, 1476, 1479, 1478, 1480, 1480, 1481,
02914 1480, 1482, 1482, 1483, 1483, 1484, 1485, 1487, 1486, 1488,
02915 1488, 1490, 1489, 1491, 1491, 1493, 1492, 1494, 1494, 1496,
02916 1495, 1497, 1497, 1499, 1498, 1500, 1500, 1501, 1501, 1501,
02917 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501, 1501,
02918 1501, 1501, 1501, 1501, 1501, 1501, 1502, 1503, 1504, 1504,
02919 1505, 1506, 1507, 1508, 1508, 1509, 1510, 1511, 1512, 1512,
02920 1513, 1514, 1515, 1516, 1516, 1517, 1518, 1519, 1520, 1521,
02921 1522, 1523, 1524, 1525, 1526, 1527, 1528, 1529, 1530, 1531,
02922 1532, 1532, 1533, 1534, 1535, 1536, 1536, 1537, 1538, 1539,
02923 1540, 1541, 1541, 1542, 1543, 1544, 1545, 1546, 1547, 1548,
02924 1549, 1550, 1551, 1552, 1553, 1555, 1554, 1556, 1556, 1557,
02925 1558, 1559, 1560, 1561, 1562, 1563, 1564, 1565
02926 };
02927
02928
02929 static const yytype_uint8 yyr2[] =
02930 {
02931 0, 2, 3, 3, 1, 1, 0, 1, 1, 1,
02932 1, 3, 1, 1, 0, 6, 0, 1, 0, 2,
02933 1, 1, 1, 2, 1, 3, 1, 1, 2, 1,
02934 1, 1, 1, 1, 1, 1, 1, 1, 3, 1,
02935 1, 1, 2, 1, 1, 1, 1, 1, 2, 1,
02936 3, 1, 1, 2, 3, 1, 1, 0, 2, 1,
02937 1, 2, 1, 2, 1, 1, 1, 2, 1, 3,
02938 1, 2, 1, 1, 1, 2, 1, 3, 1, 2,
02939 1, 1, 1, 2, 1, 3, 1, 2, 1, 1,
02940 1, 2, 1, 3, 1, 2, 1, 1, 1, 2,
02941 1, 3, 1, 2, 1, 1, 1, 2, 1, 3,
02942 1, 2, 1, 1, 1, 2, 1, 3, 1, 3,
02943 1, 1, 1, 1, 2, 1, 3, 1, 1, 2,
02944 3, 1, 1, 0, 2, 1, 1, 1, 2, 1,
02945 0, 2, 1, 1, 1, 2, 1, 3, 1, 1,
02946 2, 1, 1, 1, 1, 1, 1, 2, 1, 1,
02947 1, 2, 1, 3, 1, 3, 1, 1, 0, 2,
02948 1, 1, 3, 1, 3, 1, 1, 0, 2, 1,
02949 1, 3, 1, 3, 1, 1, 0, 2, 1, 1,
02950 3, 1, 3, 1, 0, 1, 3, 1, 3, 1,
02951 1, 1, 1, 2, 1, 3, 1, 1, 2, 3,
02952 1, 1, 0, 2, 1, 1, 1, 2, 1, 0,
02953 2, 1, 1, 1, 2, 1, 3, 1, 1, 2,
02954 1, 1, 1, 1, 1, 1, 2, 1, 1, 1,
02955 2, 1, 3, 1, 2, 1, 1, 1, 2, 1,
02956 3, 1, 2, 1, 1, 1, 2, 1, 3, 1,
02957 2, 1, 1, 1, 2, 1, 3, 1, 2, 1,
02958 1, 1, 2, 1, 3, 1, 3, 1, 1, 1,
02959 1, 2, 1, 3, 1, 1, 2, 3, 1, 1,
02960 0, 2, 1, 1, 1, 2, 1, 0, 2, 1,
02961 1, 1, 2, 1, 3, 1, 1, 2, 1, 1,
02962 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
02963 1, 1, 1, 2, 1, 3, 1, 2, 1, 1,
02964 1, 2, 1, 3, 1, 2, 1, 1, 1, 2,
02965 1, 3, 1, 2, 1, 1, 1, 2, 1, 3,
02966 1, 2, 1, 1, 1, 2, 1, 3, 1, 3,
02967 1, 1, 1, 1, 2, 1, 3, 1, 1, 2,
02968 3, 1, 0, 2, 1, 1, 1, 1, 1, 1,
02969 2, 1, 3, 1, 1, 1, 3, 1, 1, 0,
02970 2, 1, 1, 3, 1, 3, 1, 1, 0, 2,
02971 1, 1, 3, 1, 3, 1, 1, 0, 2, 1,
02972 1, 3, 1, 3, 1, 0, 1, 3, 1, 3,
02973 1, 1, 1, 1, 2, 1, 3, 1, 1, 2,
02974 3, 1, 1, 0, 2, 1, 1, 1, 2, 1,
02975 0, 3, 1, 1, 0, 2, 1, 1, 1, 1,
02976 1, 1, 2, 1, 3, 2, 1, 2, 3, 1,
02977 1, 0, 2, 1, 1, 1, 4, 3, 3, 9,
02978 3, 1, 1, 1, 2, 1, 1, 1, 1, 1,
02979 2, 1, 3, 1, 1, 2, 3, 1, 1, 0,
02980 2, 1, 1, 2, 1, 0, 2, 1, 1, 1,
02981 2, 1, 3, 1, 0, 3, 1, 0, 1, 1,
02982 1, 1, 3, 4, 0, 3, 1, 1, 1, 1,
02983 2, 1, 3, 1, 1, 2, 3, 1, 0, 2,
02984 1, 1, 3, 0, 3, 1, 1, 1, 1, 2,
02985 1, 3, 1, 1, 2, 3, 1, 0, 2, 1,
02986 1, 1, 1, 2, 1, 3, 1, 0, 2, 1,
02987 1, 1, 1, 3, 7, 0, 1, 0, 1, 0,
02988 1, 0, 1, 0, 1, 0, 1, 0, 1, 0,
02989 2, 3, 1, 1, 0, 2, 1, 1, 1, 1,
02990 1, 1, 1, 1, 1, 1, 1, 2, 1, 3,
02991 1, 1, 1, 2, 3, 1, 0, 2, 1, 1,
02992 1, 1, 2, 1, 3, 1, 1, 2, 3, 1,
02993 1, 0, 2, 1, 1, 1, 1, 1, 1, 3,
02994 1, 0, 3, 1, 0, 1, 1, 1, 1, 3,
02995 3, 0, 3, 1, 1, 1, 1, 2, 1, 3,
02996 1, 1, 2, 3, 1, 0, 2, 1, 1, 3,
02997 0, 2, 1, 1, 1, 1, 3, 7, 0, 1,
02998 0, 1, 0, 1, 0, 1, 0, 1, 0, 1,
02999 0, 1, 0, 2, 3, 1, 1, 0, 2, 1,
03000 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
03001 2, 1, 3, 1, 1, 1, 2, 3, 1, 0,
03002 2, 1, 1, 1, 1, 2, 1, 3, 1, 1,
03003 2, 3, 1, 1, 0, 2, 1, 1, 1, 1,
03004 1, 1, 3, 1, 0, 3, 1, 0, 1, 1,
03005 1, 1, 3, 3, 0, 3, 1, 1, 1, 1,
03006 2, 1, 3, 1, 1, 2, 3, 1, 0, 2,
03007 1, 1, 3, 0, 2, 1, 1, 1, 1, 3,
03008 7, 0, 1, 0, 1, 0, 1, 0, 1, 0,
03009 1, 0, 1, 0, 1, 0, 2, 3, 1, 1,
03010 0, 2, 1, 1, 1, 1, 1, 1, 1, 1,
03011 1, 1, 1, 2, 1, 3, 1, 1, 1, 2,
03012 3, 1, 0, 2, 1, 1, 1, 1, 2, 1,
03013 3, 1, 1, 2, 3, 1, 1, 0, 2, 1,
03014 1, 1, 1, 1, 1, 3, 1, 0, 3, 1,
03015 0, 1, 1, 1, 1, 4, 0, 3, 1, 1,
03016 1, 1, 1, 4, 1, 0, 3, 1, 1, 1,
03017 1, 1, 3, 1, 0, 2, 0, 2, 3, 1,
03018 1, 0, 2, 1, 1, 1, 1, 1, 1, 1,
03019 1, 1, 1, 1, 2, 1, 3, 1, 1, 1,
03020 2, 1, 2, 3, 1, 1, 0, 2, 1, 1,
03021 1, 1, 1, 1, 3, 1, 0, 2, 1, 0,
03022 3, 1, 1, 1, 1, 2, 1, 3, 1, 1,
03023 2, 3, 1, 1, 0, 2, 1, 1, 1, 1,
03024 1, 1, 1, 2, 1, 3, 1, 1, 2, 1,
03025 1, 1, 1, 1, 3, 1, 0, 3, 1, 1,
03026 1, 1, 2, 1, 3, 1, 1, 2, 3, 1,
03027 1, 0, 2, 1, 1, 1, 1, 1, 1, 2,
03028 1, 3, 1, 1, 2, 1, 1, 1, 1, 1,
03029 3, 1, 4, 4, 4, 4, 4, 4, 4, 4,
03030 4, 4, 4, 1, 1, 1, 1, 1, 2, 0,
03031 2, 1, 1, 1, 1, 2, 1, 1, 1, 1,
03032 3, 1, 0, 2, 1, 1, 1, 1, 1, 1,
03033 1, 1, 1, 1, 3, 1, 1, 1, 1, 1,
03034 3, 1, 1, 1, 1, 1, 3, 1, 1, 1,
03035 1, 1, 3, 1, 1, 1, 1, 1, 3, 1,
03036 1, 0, 2, 3, 1, 1, 0, 2, 1, 1,
03037 3, 3, 1, 1, 2, 1, 3, 1, 1, 0,
03038 2, 3, 1, 0, 1, 3, 3, 1, 1, 2,
03039 1, 3, 3, 1, 1, 1, 1, 3, 1, 3,
03040 1, 1, 1, 1, 3, 1, 3, 1, 1, 1,
03041 1, 3, 1, 3, 1, 1, 1, 1, 3, 1,
03042 3, 1, 1, 1, 1, 3, 1, 3, 1, 1,
03043 1, 1, 3, 1, 3, 1, 1, 1, 1, 3,
03044 1, 1, 3, 1, 1, 0, 2, 1, 1, 1,
03045 1, 1, 1, 1, 1, 1, 3, 2, 0, 3,
03046 1, 1, 0, 2, 1, 1, 1, 1, 1, 1,
03047 1, 1, 1, 2, 1, 0, 2, 1, 1, 1,
03048 1, 1, 1, 1, 1, 4, 1, 1, 0, 2,
03049 1, 1, 3, 0, 2, 2, 1, 1, 1, 1,
03050 3, 1, 2, 1, 1, 1, 1, 3, 1, 2,
03051 1, 1, 1, 1, 3, 1, 4, 1, 1, 0,
03052 2, 1, 1, 3, 0, 2, 2, 1, 1, 1,
03053 1, 3, 1, 4, 1, 1, 0, 2, 1, 1,
03054 3, 0, 2, 0, 2, 1, 1, 1, 1, 3,
03055 1, 0, 2, 3, 1, 1, 0, 2, 1, 1,
03056 1, 1, 1, 3, 0, 2, 3, 1, 0, 1,
03057 3, 4, 1, 1, 0, 2, 1, 1, 3, 0,
03058 2, 0, 2, 1, 1, 1, 1, 3, 0, 2,
03059 2, 1, 1, 1, 1, 3, 4, 1, 1, 0,
03060 2, 1, 1, 3, 0, 2, 2, 1, 1, 1,
03061 1, 3, 1, 4, 1, 1, 0, 2, 1, 1,
03062 3, 0, 2, 0, 2, 1, 1, 1, 1, 3,
03063 0, 2, 3, 1, 0, 2, 1, 1, 1, 3,
03064 5, 1, 0, 1, 1, 3, 1, 1, 5, 1,
03065 3, 1, 1, 1, 1, 1, 3, 1, 3, 1,
03066 1, 1, 1, 1, 3, 1, 0, 2, 3, 1,
03067 1, 0, 2, 1, 1, 1, 1, 1, 1, 1,
03068 3, 2, 4, 4, 4, 4, 4, 4, 4, 4,
03069 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
03070 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
03071 4, 4, 4, 4, 1, 1, 1, 3, 1, 1,
03072 1, 3, 1, 1, 1, 3, 1, 1, 1, 3,
03073 1, 1, 1, 3, 1, 1, 1, 3, 1, 1,
03074 1, 3, 1, 1, 1, 3, 1, 1, 1, 3,
03075 1, 1, 1, 3, 1, 1, 1, 3, 1, 1,
03076 1, 3, 1, 1, 1, 3, 1, 1, 1, 3,
03077 1, 1, 1, 3, 1, 1, 1, 3, 1, 1,
03078 1, 3, 1, 1, 1, 1, 1, 1, 1, 1,
03079 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
03080 1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
03081 3, 1, 2, 0, 3, 1, 2, 0, 5, 0,
03082 5, 0, 5, 0, 4, 0, 5, 0, 5, 0,
03083 4, 0, 4, 0, 4, 0, 4, 0, 4, 0,
03084 4, 3, 1, 1, 0, 4, 0, 6, 0, 4,
03085 0, 4, 0, 4, 3, 1, 1, 2, 0, 2,
03086 1, 1, 1, 0, 4, 0, 4, 1, 2, 0,
03087 4, 0, 2, 1, 1, 4, 4, 0, 4, 0,
03088 2, 0, 4, 0, 2, 0, 4, 0, 2, 0,
03089 4, 0, 2, 0, 4, 0, 2, 1, 1, 1,
03090 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
03091 1, 1, 1, 1, 1, 1, 3, 1, 1, 2,
03092 4, 3, 1, 1, 2, 4, 3, 1, 1, 2,
03093 4, 3, 1, 1, 2, 4, 2, 1, 2, 2,
03094 1, 3, 2, 1, 2, 2, 1, 2, 4, 1,
03095 0, 1, 2, 4, 1, 0, 1, 2, 3, 2,
03096 1, 1, 2, 2, 1, 3, 2, 1, 2, 2,
03097 1, 3, 2, 1, 3, 0, 4, 0, 2, 2,
03098 1, 3, 2, 1, 6, 2, 1, 2
03099 };
03100
03101
03102
03103
03104 static const yytype_uint16 yydefact[] =
03105 {
03106 0, 5, 4, 0, 16, 6, 1, 1006, 14, 18,
03107 17, 0, 7, 0, 13, 2, 12, 20, 140, 0,
03108 1012, 1009, 1005, 1007, 1008, 16, 10, 3, 8, 9,
03109 142, 219, 0, 0, 24, 19, 21, 22, 0, 1011,
03110 14, 221, 297, 0, 0, 146, 141, 143, 144, 39,
03111 64, 120, 104, 112, 23, 72, 80, 88, 96, 0,
03112 26, 27, 29, 0, 30, 0, 31, 0, 32, 0,
03113 33, 0, 34, 0, 35, 0, 36, 0, 37, 0,
03114 1010, 0, 1023, 1022, 0, 1029, 1028, 0, 1035, 1034,
03115 0, 1041, 1040, 0, 1047, 1046, 1013, 1014, 1019, 1020,
03116 1021, 1015, 1025, 1026, 1027, 1016, 1031, 1032, 1033, 1017,
03117 1037, 1038, 1039, 1018, 1043, 1044, 1045, 11, 299, 440,
03118 0, 0, 225, 220, 222, 223, 193, 184, 166, 175,
03119 199, 158, 145, 0, 148, 149, 151, 0, 152, 168,
03120 153, 177, 154, 186, 155, 194, 156, 0, 25, 28,
03121 999, 1418, 0, 1454, 0, 0, 40, 41, 45, 44,
03122 1416, 1417, 43, 1452, 1453, 0, 68, 63, 65, 66,
03123 0, 76, 71, 73, 74, 0, 84, 79, 81, 82,
03124 0, 92, 87, 89, 90, 0, 100, 95, 97, 98,
03125 0, 108, 103, 105, 106, 0, 116, 111, 113, 114,
03126 999, 0, 121, 0, 0, 0, 0, 0, 442, 15,
03127 444, 0, 303, 298, 300, 301, 245, 237, 277, 269,
03128 261, 253, 224, 0, 227, 228, 230, 0, 231, 0,
03129 232, 0, 233, 0, 234, 0, 235, 0, 147, 150,
03130 0, 162, 157, 159, 160, 0, 167, 0, 176, 0,
03131 185, 0, 195, 0, 200, 0, 0, 0, 0, 0,
03132 49, 38, 46, 47, 42, 70, 67, 0, 78, 75,
03133 0, 86, 83, 0, 94, 91, 0, 102, 99, 0,
03134 110, 107, 0, 118, 115, 0, 0, 0, 125, 119,
03135 122, 123, 1024, 1030, 1036, 1042, 1048, 0, 443, 344,
03136 352, 420, 336, 320, 328, 360, 414, 405, 387, 396,
03137 302, 0, 305, 306, 308, 0, 309, 0, 310, 0,
03138 311, 0, 312, 0, 313, 0, 314, 389, 315, 398,
03139 316, 407, 317, 415, 318, 0, 226, 229, 0, 241,
03140 236, 238, 239, 0, 249, 244, 246, 247, 0, 257,
03141 252, 254, 255, 0, 265, 260, 262, 263, 0, 273,
03142 268, 270, 271, 0, 278, 164, 161, 0, 0, 165,
03143 1458, 0, 169, 171, 170, 1456, 1457, 0, 174, 178,
03144 180, 179, 0, 183, 187, 189, 188, 0, 192, 0,
03145 204, 198, 201, 202, 999, 998, 1001, 1002, 1003, 1004,
03146 1000, 1419, 1455, 48, 55, 0, 51, 52, 57, 69,
03147 77, 85, 93, 101, 109, 117, 999, 124, 131, 0,
03148 127, 128, 133, 0, 453, 441, 450, 451, 999, 0,
03149 0, 0, 445, 446, 448, 449, 447, 304, 307, 0,
03150 324, 319, 321, 322, 0, 332, 327, 329, 330, 0,
03151 340, 335, 337, 338, 0, 348, 343, 345, 346, 0,
03152 356, 351, 353, 354, 999, 0, 361, 0, 388, 0,
03153 397, 0, 406, 0, 416, 0, 421, 243, 240, 0,
03154 251, 248, 0, 259, 256, 0, 267, 264, 0, 993,
03155 994, 272, 0, 275, 0, 282, 276, 279, 280, 163,
03156 0, 173, 0, 0, 182, 0, 191, 197, 0, 203,
03157 210, 0, 206, 207, 212, 991, 50, 53, 0, 56,
03158 986, 126, 129, 0, 132, 459, 452, 0, 946, 456,
03159 461, 0, 0, 0, 0, 326, 323, 0, 334, 331,
03160 0, 342, 339, 0, 350, 347, 0, 358, 355, 0,
03161 0, 0, 365, 359, 362, 363, 0, 386, 390, 392,
03162 391, 0, 395, 399, 401, 400, 0, 404, 408, 410,
03163 409, 0, 413, 0, 425, 419, 422, 423, 242, 250,
03164 258, 266, 274, 281, 288, 0, 284, 285, 290, 172,
03165 1459, 181, 190, 196, 205, 208, 0, 211, 0, 62,
03166 54, 1430, 0, 58, 60, 59, 1428, 1429, 0, 139,
03167 130, 1462, 0, 134, 137, 135, 136, 1460, 1461, 454,
03168 948, 457, 455, 0, 0, 460, 999, 0, 0, 0,
03169 325, 333, 341, 349, 357, 999, 371, 364, 0, 367,
03170 368, 372, 0, 394, 0, 403, 0, 412, 418, 0,
03171 424, 431, 0, 427, 428, 433, 283, 286, 0, 289,
03172 0, 218, 209, 213, 216, 214, 215, 61, 0, 138,
03173 0, 999, 0, 949, 0, 458, 0, 0, 999, 462,
03174 463, 464, 465, 989, 1375, 1381, 1386, 992, 366, 369,
03175 0, 393, 402, 411, 417, 426, 429, 0, 432, 0,
03176 296, 287, 291, 294, 292, 293, 217, 1431, 1463, 0,
03177 0, 953, 947, 950, 951, 471, 495, 0, 999, 999,
03178 0, 0, 381, 1410, 0, 373, 370, 378, 379, 376,
03179 1408, 1409, 377, 375, 374, 0, 439, 430, 434, 437,
03180 435, 436, 295, 999, 952, 959, 0, 955, 956, 961,
03181 497, 504, 0, 0, 472, 473, 477, 476, 475, 468,
03182 467, 999, 385, 384, 380, 0, 383, 0, 438, 990,
03183 954, 957, 0, 960, 506, 631, 507, 0, 501, 496,
03184 498, 499, 0, 481, 470, 478, 479, 474, 466, 382,
03185 1411, 0, 970, 958, 967, 968, 0, 962, 966, 964,
03186 965, 963, 633, 734, 634, 999, 0, 508, 503, 500,
03187 0, 480, 487, 0, 483, 484, 489, 969, 979, 0,
03188 978, 0, 972, 973, 975, 976, 977, 0, 736, 837,
03189 737, 999, 0, 635, 0, 514, 511, 505, 509, 510,
03190 502, 482, 485, 0, 488, 981, 0, 971, 974, 0,
03191 839, 909, 840, 999, 0, 738, 0, 641, 638, 632,
03192 636, 637, 999, 516, 0, 533, 0, 0, 494, 486,
03193 490, 492, 491, 980, 1378, 911, 0, 0, 999, 0,
03194 841, 0, 744, 741, 735, 739, 740, 999, 643, 0,
03195 660, 0, 988, 512, 535, 557, 0, 0, 0, 517,
03196 493, 469, 999, 0, 912, 0, 846, 844, 838, 842,
03197 843, 999, 746, 0, 763, 0, 985, 639, 662, 682,
03198 0, 0, 0, 644, 559, 579, 0, 0, 536, 0,
03199 0, 521, 515, 518, 519, 0, 0, 916, 910, 913,
03200 914, 999, 848, 906, 0, 982, 742, 765, 785, 0,
03201 0, 0, 747, 640, 668, 665, 661, 663, 664, 0,
03202 0, 648, 642, 645, 646, 513, 565, 562, 558, 560,
03203 561, 0, 540, 534, 537, 538, 0, 520, 527, 0,
03204 523, 524, 528, 999, 922, 915, 0, 918, 919, 924,
03205 983, 0, 999, 0, 849, 743, 771, 768, 764, 766,
03206 767, 0, 0, 751, 745, 748, 749, 685, 683, 687,
03207 1083, 0, 670, 669, 0, 0, 647, 654, 0, 650,
03208 651, 655, 582, 580, 584, 0, 567, 566, 539, 546,
03209 0, 542, 543, 547, 1384, 522, 525, 0, 987, 917,
03210 920, 0, 923, 908, 845, 907, 0, 855, 852, 847,
03211 850, 851, 788, 786, 790, 0, 773, 772, 0, 750,
03212 757, 0, 753, 754, 758, 0, 686, 666, 1090, 672,
03213 671, 0, 0, 0, 1131, 1380, 649, 652, 0, 0,
03214 583, 563, 569, 568, 541, 544, 0, 0, 0, 529,
03215 526, 530, 531, 0, 934, 921, 931, 932, 925, 930,
03216 928, 929, 926, 927, 999, 857, 866, 0, 0, 789,
03217 769, 775, 774, 1374, 752, 755, 0, 0, 701, 684,
03218 698, 699, 0, 1446, 0, 1422, 0, 1434, 0, 688,
03219 690, 689, 697, 696, 1420, 1421, 693, 695, 1432, 1433,
03220 692, 1444, 1445, 694, 691, 1097, 674, 673, 0, 0,
03221 0, 1051, 1086, 1082, 1084, 1085, 0, 656, 653, 657,
03222 658, 0, 598, 581, 595, 596, 1470, 0, 585, 587,
03223 586, 594, 593, 590, 589, 591, 588, 592, 1468, 1469,
03224 571, 570, 0, 554, 548, 545, 551, 552, 549, 550,
03225 0, 0, 933, 943, 0, 942, 0, 936, 937, 939,
03226 940, 941, 984, 0, 0, 0, 858, 0, 804, 787,
03227 801, 802, 1414, 0, 791, 792, 793, 798, 1412, 1413,
03228 800, 799, 796, 795, 797, 794, 777, 776, 0, 759,
03229 756, 760, 761, 722, 708, 700, 0, 703, 705, 709,
03230 704, 719, 724, 0, 0, 0, 0, 1104, 676, 675,
03231 0, 0, 1051, 1093, 1089, 1091, 1092, 0, 0, 1088,
03232 1049, 1050, 0, 0, 619, 605, 597, 0, 600, 602,
03233 606, 601, 616, 621, 0, 573, 572, 556, 553, 0,
03234 532, 0, 945, 0, 935, 938, 854, 869, 853, 867,
03235 871, 0, 864, 861, 856, 859, 860, 825, 811, 803,
03236 0, 806, 808, 812, 807, 822, 827, 0, 779, 778,
03237 0, 702, 706, 0, 720, 0, 723, 0, 1447, 1423,
03238 1435, 1111, 678, 677, 0, 0, 1051, 1100, 1096, 1098,
03239 1099, 1095, 0, 1376, 0, 0, 1054, 1052, 1056, 1087,
03240 659, 599, 603, 0, 617, 0, 620, 1471, 575, 574,
03241 555, 1397, 944, 0, 870, 0, 0, 805, 809, 0,
03242 823, 0, 826, 1415, 781, 780, 762, 0, 716, 710,
03243 707, 713, 714, 711, 712, 1051, 731, 721, 729, 730,
03244 725, 726, 728, 727, 1377, 1118, 680, 679, 0, 0,
03245 1051, 1107, 1103, 1105, 1106, 1102, 0, 1094, 0, 0,
03246 1065, 1061, 1062, 1063, 0, 1055, 0, 613, 607, 604,
03247 610, 611, 608, 609, 1051, 628, 618, 626, 627, 622,
03248 623, 625, 624, 577, 576, 0, 885, 868, 882, 883,
03249 1426, 0, 872, 874, 873, 881, 880, 879, 1424, 1425,
03250 877, 876, 878, 875, 1379, 863, 1133, 862, 865, 1135,
03251 0, 819, 813, 810, 816, 817, 814, 815, 1051, 834,
03252 824, 832, 833, 828, 829, 831, 830, 783, 782, 995,
03253 996, 997, 715, 0, 718, 0, 733, 1125, 667, 681,
03254 0, 0, 1051, 1114, 1110, 1112, 1113, 1109, 0, 1101,
03255 0, 0, 1064, 0, 1053, 0, 0, 1057, 1059, 1058,
03256 612, 0, 615, 0, 630, 564, 578, 894, 884, 0,
03257 888, 887, 891, 896, 889, 0, 0, 1134, 818, 0,
03258 821, 0, 836, 770, 784, 717, 732, 0, 1051, 1121,
03259 1117, 1119, 1120, 1116, 0, 1108, 1387, 1066, 0, 0,
03260 0, 614, 629, 886, 890, 892, 0, 895, 1427, 1148,
03261 1145, 1132, 1143, 1144, 1450, 0, 0, 0, 999, 1136,
03262 1139, 1138, 1142, 1140, 1137, 1448, 1449, 1141, 820, 835,
03263 1051, 1128, 1124, 1126, 1127, 1123, 0, 1115, 1060, 0,
03264 0, 1051, 903, 893, 901, 902, 897, 898, 900, 899,
03265 1150, 0, 1165, 1152, 0, 0, 0, 0, 1130, 0,
03266 1122, 1398, 1400, 0, 905, 1146, 1147, 0, 1151, 1451,
03267 0, 0, 999, 1129, 904, 1336, 1176, 1207, 1224, 1262,
03268 1304, 1287, 1331, 1166, 1167, 1178, 1168, 1209, 1169, 1226,
03269 1170, 1264, 1171, 1289, 1172, 1306, 1173, 1332, 1174, 0,
03270 0, 1164, 1149, 1406, 0, 0, 0, 0, 0, 0,
03271 0, 0, 0, 1153, 1154, 1157, 1158, 1159, 1160, 1162,
03272 1155, 1156, 1161, 1404, 1405, 1373, 1382, 1399, 0, 1177,
03273 0, 1208, 0, 1225, 0, 1263, 0, 1288, 0, 1305,
03274 1442, 0, 0, 1333, 1440, 1441, 0, 0, 1337, 1163,
03275 999, 0, 0, 0, 0, 0, 0, 0, 0, 0,
03276 1438, 0, 0, 1179, 1180, 1181, 1436, 1437, 0, 1210,
03277 1211, 1212, 0, 1227, 1228, 1229, 0, 1265, 1266, 1267,
03278 0, 1290, 1291, 1292, 0, 1307, 1308, 1309, 0, 0,
03279 0, 0, 1335, 1407, 0, 0, 0, 0, 0, 0,
03280 0, 0, 1186, 1175, 1183, 0, 0, 0, 1214, 1206,
03281 1231, 1223, 1269, 1261, 1294, 1286, 1311, 1303, 1443, 1612,
03282 1617, 1622, 1627, 1630, 1639, 1644, 1650, 1654, 1657, 1660,
03283 1663, 1665, 1670, 1673, 1676, 1607, 1633, 1636, 0, 1587,
03284 0, 1588, 0, 1589, 0, 1590, 0, 1591, 0, 1592,
03285 0, 1605, 0, 1593, 0, 1594, 1640, 1595, 1645, 1596,
03286 0, 1597, 0, 1598, 0, 1599, 0, 1600, 0, 1601,
03287 1602, 0, 1603, 0, 1604, 0, 0, 1341, 0, 0,
03288 1388, 1402, 1403, 1389, 1390, 1391, 1392, 1401, 1193, 0,
03289 0, 0, 1051, 1189, 1185, 1187, 1188, 1439, 0, 0,
03290 0, 1233, 0, 1271, 0, 0, 0, 1313, 0, 1667,
03291 1334, 1330, 0, 0, 0, 0, 0, 0, 0, 0,
03292 0, 1626, 0, 1629, 1517, 1509, 1511, 1515, 1519, 1521,
03293 1567, 1583, 1529, 1513, 1536, 1523, 1525, 1527, 1555, 1532,
03294 1534, 1575, 1571, 1579, 1499, 1503, 1507, 1545, 1538, 1540,
03295 1542, 0, 1493, 1494, 1474, 1475, 1477, 1478, 1479, 1480,
03296 1482, 1483, 1484, 1486, 1485, 1487, 1489, 0, 1490, 1488,
03297 1496, 1497, 1498, 1472, 1548, 1473, 1476, 1495, 1491, 1492,
03298 1481, 1632, 0, 1635, 0, 0, 1641, 0, 1646, 0,
03299 1651, 1649, 0, 1653, 0, 1656, 0, 1659, 0, 1662,
03300 0, 1669, 0, 1672, 0, 1675, 1372, 1349, 1356, 0,
03301 0, 1342, 1182, 1200, 1184, 0, 1051, 1196, 1192, 1194,
03302 1195, 1191, 0, 1383, 1217, 1215, 0, 1213, 1235, 1232,
03303 0, 1230, 1273, 1270, 0, 1268, 1297, 1295, 0, 1293,
03304 1315, 1312, 0, 1310, 0, 0, 0, 1608, 1606, 0,
03305 0, 1613, 1611, 0, 0, 1618, 1616, 0, 0, 1623,
03306 1621, 1628, 0, 0, 0, 0, 0, 0, 0, 1569,
03307 1585, 0, 0, 0, 0, 0, 0, 1561, 0, 1577,
03308 1573, 1581, 0, 0, 0, 0, 0, 0, 1634, 0,
03309 0, 1637, 0, 0, 0, 1652, 0, 1658, 0, 0,
03310 0, 0, 1677, 0, 0, 1350, 1051, 1345, 1340, 1343,
03311 1344, 1069, 1203, 1199, 1201, 1202, 1198, 0, 1190, 1051,
03312 1220, 1216, 1218, 1219, 1241, 1238, 1234, 1236, 1237, 1278,
03313 1276, 1272, 1274, 1275, 1051, 1300, 1296, 1298, 1299, 1320,
03314 1318, 1314, 1316, 1317, 1666, 1668, 0, 1609, 0, 1614,
03315 0, 1619, 0, 1624, 1631, 0, 0, 0, 0, 0,
03316 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
03317 0, 0, 0, 0, 0, 1501, 1500, 0, 1505, 1504,
03318 0, 0, 0, 0, 1533, 1531, 0, 1546, 0, 1550,
03319 1551, 1544, 1549, 1552, 1648, 0, 1638, 0, 1643, 1655,
03320 1661, 1664, 1671, 0, 1339, 1359, 1338, 1357, 1361, 1051,
03321 1353, 1348, 1351, 1352, 1347, 0, 0, 1205, 1067, 1068,
03322 0, 1197, 1222, 0, 0, 1240, 0, 1302, 0, 0,
03323 1610, 1615, 1620, 1625, 0, 0, 0, 0, 1520, 1522,
03324 1568, 1570, 1584, 1586, 1530, 1514, 0, 1524, 1526, 1528,
03325 0, 1557, 0, 0, 1556, 1562, 1563, 1564, 1535, 1576,
03326 1578, 1572, 1574, 1580, 1582, 1502, 1506, 0, 1539, 1541,
03327 1543, 1547, 1553, 1642, 1647, 0, 0, 1360, 1355, 0,
03328 1346, 0, 1072, 1070, 1073, 1204, 1221, 1239, 1244, 1242,
03329 1246, 1281, 1277, 1279, 0, 1301, 1323, 1319, 1321, 1324,
03330 1518, 1510, 1512, 1516, 0, 1558, 1559, 0, 0, 1508,
03331 0, 0, 1148, 1369, 1358, 1367, 1368, 999, 999, 1362,
03332 1363, 1364, 1365, 1366, 1354, 0, 1080, 1076, 1077, 1078,
03333 0, 1074, 0, 1245, 0, 1284, 1280, 1282, 1283, 0,
03334 1537, 0, 0, 0, 1554, 1674, 1165, 0, 0, 0,
03335 0, 1079, 0, 1071, 1254, 1252, 1243, 1250, 1251, 0,
03336 0, 1247, 1248, 1249, 0, 0, 1466, 0, 1325, 1322,
03337 1328, 1327, 1326, 1464, 1465, 1560, 1566, 1565, 1371, 1370,
03338 999, 999, 1081, 0, 0, 0, 0, 1285, 0, 0,
03339 1393, 1394, 1075, 1253, 1257, 1255, 1258, 0, 0, 1329,
03340 1467, 0, 0, 1259, 1385, 1396, 0, 0, 1256, 0,
03341 0, 1395, 1260
03342 };
03343
03344
03345 static const yytype_int16 yydefgoto[] =
03346 {
03347 -1, 3, 4, 5, 13, 27, 28, 29, 15, 16,
03348 8, 9, 18, 19, 35, 36, 37, 59, 60, 61,
03349 62, 63, 155, 156, 157, 261, 262, 263, 405, 406,
03350 407, 408, 518, 519, 603, 600, 64, 65, 167, 168,
03351 169, 267, 66, 67, 172, 173, 174, 270, 68, 69,
03352 177, 178, 179, 273, 70, 71, 182, 183, 184, 276,
03353 72, 73, 187, 188, 189, 279, 74, 75, 192, 193,
03354 194, 282, 76, 77, 197, 198, 199, 285, 78, 79,
03355 201, 289, 290, 291, 419, 420, 421, 422, 523, 524,
03356 613, 610, 31, 32, 46, 47, 48, 133, 134, 135,
03357 136, 137, 242, 243, 244, 367, 138, 139, 245, 246,
03358 372, 369, 500, 140, 141, 247, 248, 379, 378, 503,
03359 142, 143, 249, 250, 384, 383, 505, 144, 145, 251,
03360 388, 508, 146, 147, 253, 391, 392, 393, 511, 512,
03361 513, 514, 596, 597, 663, 662, 42, 43, 123, 124,
03362 125, 223, 224, 225, 226, 227, 340, 341, 342, 479,
03363 228, 229, 345, 346, 347, 482, 230, 231, 350, 351,
03364 352, 485, 232, 233, 355, 356, 357, 488, 234, 235,
03365 360, 361, 362, 492, 236, 237, 363, 496, 497, 498,
03366 585, 586, 587, 588, 658, 659, 702, 701, 119, 120,
03367 213, 214, 215, 311, 312, 313, 314, 315, 441, 442,
03368 443, 537, 316, 317, 446, 447, 448, 540, 318, 319,
03369 451, 452, 453, 543, 320, 321, 456, 457, 458, 546,
03370 322, 323, 461, 462, 463, 549, 324, 325, 465, 553,
03371 554, 555, 638, 639, 640, 641, 690, 725, 726, 727,
03372 728, 765, 766, 326, 327, 467, 468, 558, 557, 642,
03373 328, 329, 469, 470, 563, 562, 644, 330, 331, 471,
03374 472, 568, 567, 646, 332, 333, 473, 572, 649, 334,
03375 335, 475, 575, 576, 577, 652, 653, 654, 655, 697,
03376 698, 738, 737, 209, 210, 297, 298, 432, 425, 426,
03377 427, 527, 528, 529, 530, 624, 625, 679, 680, 681,
03378 682, 675, 716, 717, 753, 754, 755, 784, 785, 786,
03379 813, 814, 815, 816, 843, 844, 870, 869, 751, 752,
03380 779, 780, 781, 810, 775, 776, 806, 837, 838, 839,
03381 864, 865, 866, 898, 932, 933, 934, 979, 980, 981,
03382 982, 1037, 1089, 1090, 895, 896, 927, 973, 974, 975,
03383 1030, 1031, 1032, 1033, 1086, 1184, 1185, 1186, 1187, 1279,
03384 925, 926, 968, 969, 970, 1025, 1026, 1082, 1180, 1275,
03385 1348, 1423, 1505, 965, 1023, 1024, 1079, 1080, 1168, 1163,
03386 1164, 1165, 1267, 1268, 1269, 1270, 1343, 1408, 1409, 1410,
03387 1411, 1501, 1271, 1272, 1273, 1345, 1346, 1419, 1416, 1417,
03388 1418, 1503, 803, 804, 832, 859, 860, 861, 889, 890,
03389 891, 922, 962, 963, 964, 1018, 1019, 1020, 1021, 1078,
03390 1157, 1158, 919, 920, 956, 957, 958, 1011, 1012, 1069,
03391 1146, 1248, 1322, 1386, 1478, 953, 1008, 1009, 1065, 1066,
03392 1129, 1119, 1120, 1121, 1236, 1237, 1238, 1239, 1313, 1369,
03393 1370, 1371, 1372, 1473, 1240, 1241, 1242, 1315, 1316, 1380,
03394 1377, 1378, 1379, 1475, 829, 830, 854, 884, 885, 886,
03395 913, 914, 915, 951, 1004, 1005, 1006, 1061, 1062, 1063,
03396 1064, 1116, 1229, 1230, 948, 949, 998, 999, 1000, 1055,
03397 1056, 1111, 1226, 1308, 1364, 1467, 1523, 995, 1053, 1054,
03398 1108, 1109, 1214, 1209, 1210, 1211, 1300, 1301, 1302, 1303,
03399 1359, 1452, 1453, 1454, 1455, 1519, 1304, 1305, 1306, 1361,
03400 1362, 1463, 1460, 1461, 1462, 1521, 851, 852, 879, 908,
03401 909, 910, 943, 944, 993, 1049, 1050, 1051, 1288, 1106,
03402 1107, 1205, 1294, 1295, 1296, 1447, 1356, 1203, 1289, 1290,
03403 1353, 1354, 1432, 1427, 1428, 1429, 1509, 1510, 1511, 1512,
03404 1513, 1546, 1547, 1586, 1583, 1584, 1585, 1603, 991, 1045,
03405 876, 877, 903, 938, 939, 940, 986, 987, 988, 989,
03406 1041, 1042, 1098, 1095, 1096, 1097, 1196, 1197, 1198, 1199,
03407 1200, 1201, 1283, 622, 623, 672, 712, 713, 714, 746,
03408 747, 748, 749, 772, 773, 797, 793, 794, 795, 821,
03409 822, 823, 824, 825, 826, 846, 855, 880, 994, 833,
03410 202, 904, 807, 433, 673, 158, 466, 493, 1474, 255,
03411 256, 400, 10, 11, 22, 23, 24, 38, 39, 96,
03412 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
03413 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
03414 1259, 1260, 1337, 1338, 1404, 1405, 1497, 1494, 1261, 1401,
03415 1402, 1403, 2157, 2158, 2223, 2224, 2270, 2293, 2159, 2267,
03416 2268, 2269, 1013, 1014, 1153, 1154, 1155, 1262, 1070, 1071,
03417 1254, 1255, 1256, 1332, 1147, 1148, 1328, 1329, 1330, 1396,
03418 1249, 1250, 1392, 1393, 1394, 1488, 1323, 1324, 1484, 1485,
03419 1486, 1534, 1387, 1388, 1530, 1531, 1532, 1576, 1479, 1480,
03420 1572, 1573, 1574, 1599, 1073, 1448, 1449, 1516, 1517, 1559,
03421 1551, 1552, 1553, 1591, 1592, 1593, 1607, 1608, 1653, 1642,
03422 1606, 1623, 1624, 1625, 1668, 1669, 1703, 1743, 1829, 1744,
03423 1745, 1834, 1835, 1836, 1962, 1830, 1831, 1958, 1959, 1960,
03424 2057, 1954, 1955, 2053, 2054, 2055, 2160, 1626, 1627, 1670,
03425 1671, 1709, 1749, 1840, 1965, 1966, 2061, 2062, 2063, 2163,
03426 1628, 1629, 1672, 1673, 1713, 1751, 1842, 1969, 1970, 2066,
03427 2067, 2068, 2164, 2165, 2229, 2230, 2272, 2273, 2301, 2296,
03428 2297, 2298, 2324, 2335, 2336, 2342, 2348, 1630, 1631, 1674,
03429 1675, 1717, 1753, 1844, 1973, 1974, 2071, 2072, 2073, 2166,
03430 2233, 2234, 2276, 2277, 2278, 1632, 1633, 1676, 1677, 1721,
03431 1755, 1846, 1977, 1978, 2076, 2077, 2078, 2168, 1634, 1635,
03432 1678, 1679, 1725, 1757, 1848, 1981, 1982, 2081, 2082, 2083,
03433 2169, 2238, 2239, 2279, 2308, 2309, 1636, 1637, 1682, 1851,
03434 1638, 1639, 1687, 1732, 2146, 1818, 1819, 1950, 2048, 2049,
03435 2050, 2155, 1948, 1949, 2044, 2151, 2152, 2153, 2219, 2043,
03436 2147, 2148, 2216, 2217, 2259, 2254, 2255, 2256, 2287, 1688,
03437 1560, 952, 434, 1074, 1130, 798, 1206, 923, 435, 1561,
03438 1704, 899, 2302, 436, 1335, 1654, 1655, 1656, 1657, 1658,
03439 2260, 2261, 2343, 2303, 1091, 1498, 1562, 1499, 1659, 1660,
03440 1661, 1662, 1663, 1664, 729, 730, 731, 1217, 1218, 1219,
03441 159, 160, 161, 1133, 1134, 1135, 1437, 1438, 1439, 605,
03442 606, 607, 1137, 1138, 1139, 1705, 1706, 1707, 1683, 1684,
03443 1685, 1140, 1141, 1142, 1564, 1565, 1566, 162, 163, 164,
03444 374, 375, 376, 616, 617, 618, 2312, 2313, 2314, 1177,
03445 1178, 1179, 1891, 1892, 2022, 2116, 1893, 2023, 2119, 1894,
03446 2024, 1895, 2004, 1896, 2005, 1897, 2012, 1898, 2006, 1899,
03447 2003, 1900, 2007, 1901, 2008, 1902, 2014, 1903, 2015, 1904,
03448 2016, 1905, 2011, 1906, 1907, 2125, 1908, 2018, 1909, 2013,
03449 1910, 2025, 1911, 2026, 1912, 2027, 1913, 1914, 2131, 2030,
03450 2132, 2133, 2250, 1915, 2017, 2194, 2281, 2109, 2195, 2196,
03451 2197, 1916, 2009, 2101, 1917, 2020, 2112, 1918, 2019, 2111,
03452 1919, 2021, 2113, 1920, 2010, 2102, 1778, 1779, 1780, 1988,
03453 1853, 1781, 1782, 1992, 1855, 1783, 1784, 1996, 1857, 1785,
03454 1786, 2000, 1859, 1787, 1788, 1861, 1789, 1790, 1863, 1791,
03455 1792, 1921, 1793, 1794, 1923, 1795, 1796, 1925, 2136, 1797,
03456 1798, 1927, 2138, 1926, 1799, 1800, 1931, 1801, 1802, 1933,
03457 1803, 1804, 1935, 1805, 1806, 1937, 1807, 1808, 1939, 1809,
03458 1849, 1984, 1810, 1811, 1941, 1812, 1813, 1943, 1814, 1815,
03459 1945
03460 };
03461
03462
03463
03464 #define YYPACT_NINF -2074
03465 static const yytype_int16 yypact[] =
03466 {
03467 425, -2074, -2074, 148, 17, 210, -2074, -2074, 228, -62,
03468 -2074, 464, -2074, 469, -2074, -2074, -2074, -2074, -7, 474,
03469 -2074, -2074, -2074, -2074, -2074, 17, -2074, -2074, -2074, -2074,
03470 -2074, 1, 488, -13, -2074, -2074, -2074, -2074, 191, 1083,
03471 228, -2074, 20, 514, 87, -2074, -2074, -2074, -2074, -2074,
03472 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 29,
03473 -20, -2074, -2074, 217, -2074, 520, -2074, 555, -2074, 561,
03474 -2074, 585, -2074, 618, -2074, 629, -2074, 644, -2074, 295,
03475 -2074, 340, -2074, -2074, 347, -2074, -2074, 351, -2074, -2074,
03476 356, -2074, -2074, 371, -2074, -2074, -2074, -2074, -2074, -2074,
03477 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03478 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 67,
03479 653, 42, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03480 -2074, -2074, -2074, 79, 455, -2074, -2074, 656, -2074, -2074,
03481 -2074, -2074, -2074, -2074, -2074, 505, -2074, 295, -2074, -2074,
03482 -2074, -2074, 389, -2074, 393, 671, 217, -2074, -2074, -2074,
03483 -2074, -2074, -2074, -2074, -2074, 128, -2074, -2074, -2074, -2074,
03484 16, -2074, -2074, -2074, -2074, 13, -2074, -2074, -2074, -2074,
03485 9, -2074, -2074, -2074, -2074, 8, -2074, -2074, -2074, -2074,
03486 137, -2074, -2074, -2074, -2074, 85, -2074, -2074, -2074, -2074,
03487 -2074, 673, -2074, 275, 279, 282, 284, 312, -2074, -2074,
03488 -2074, 18, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03489 -2074, -2074, -2074, 115, 435, -2074, -2074, 675, -2074, 681,
03490 -2074, 683, -2074, 687, -2074, 689, -2074, 295, -2074, -2074,
03491 102, -2074, -2074, -2074, -2074, 424, 269, 436, 269, 443,
03492 269, 445, -2074, 693, -2074, 456, -2, 459, 461, 233,
03493 -2074, -2074, -2074, -2074, -2074, -2074, -2074, 411, -2074, -2074,
03494 166, -2074, -2074, 175, -2074, -2074, 183, -2074, -2074, 173,
03495 -2074, -2074, 439, -2074, -2074, 420, 516, -25, -2074, -2074,
03496 -2074, -2074, -2074, -2074, -2074, -2074, -2074, 695, 156, -2074,
03497 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03498 -2074, 216, 384, -2074, -2074, 699, -2074, 767, -2074, 770,
03499 -2074, 774, -2074, 776, -2074, 507, -2074, -2074, -2074, -2074,
03500 -2074, -2074, -2074, 505, -2074, 295, -2074, -2074, 129, -2074,
03501 -2074, -2074, -2074, 255, -2074, -2074, -2074, -2074, 138, -2074,
03502 -2074, -2074, -2074, 92, -2074, -2074, -2074, -2074, 160, -2074,
03503 -2074, -2074, -2074, 778, -2074, -2074, -2074, 450, 787, -2074,
03504 -2074, 545, -2074, -2074, -2074, -2074, -2074, 787, -2074, -2074,
03505 -2074, -2074, 787, -2074, -2074, -2074, -2074, 544, -2074, -11,
03506 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03507 -2074, -2074, -2074, -2074, -2074, 495, 470, -2074, -2074, -2074,
03508 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 508,
03509 232, -2074, -2074, -60, -2074, -2074, -2074, -2074, -2074, 569,
03510 571, 575, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 126,
03511 -2074, -2074, -2074, -2074, 136, -2074, -2074, -2074, -2074, 105,
03512 -2074, -2074, -2074, -2074, 331, -2074, -2074, -2074, -2074, 146,
03513 -2074, -2074, -2074, -2074, -2074, 785, -2074, 577, 269, 579,
03514 269, 583, 269, 587, -2074, 788, -2074, -2074, -2074, 536,
03515 -2074, -2074, 562, -2074, -2074, 519, -2074, -2074, 529, -2074,
03516 -2074, -2074, 557, -2074, -10, -2074, -2074, -2074, -2074, -2074,
03517 600, -2074, 652, 609, -2074, 638, -2074, -2074, 651, -2074,
03518 -2074, 628, 366, -2074, -2074, -2074, -2074, -2074, 806, 346,
03519 -2074, -2074, -2074, 810, 396, -2074, -2074, 395, 86, -2074,
03520 -2074, 707, 709, 711, 713, -2074, -2074, 640, -2074, -2074,
03521 642, -2074, -2074, 660, -2074, -2074, 692, -2074, -2074, 678,
03522 731, 62, -2074, -2074, -2074, -2074, 787, -2074, -2074, -2074,
03523 -2074, 787, -2074, -2074, -2074, -2074, 787, -2074, -2074, -2074,
03524 -2074, 733, -2074, -8, -2074, -2074, -2074, -2074, -2074, -2074,
03525 -2074, -2074, -2074, -2074, -2074, 676, 410, -2074, -2074, -2074,
03526 -2074, -2074, -2074, -2074, -2074, -2074, 812, 396, 662, -2074,
03527 -2074, -2074, 744, -2074, -2074, -2074, -2074, -2074, 413, -2074,
03528 -2074, -2074, 752, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03529 -2074, -2074, -2074, 727, 749, 379, -2074, 755, 757, 759,
03530 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 672, 690,
03531 -2074, -2074, 666, -2074, 670, -2074, 686, -2074, -2074, 694,
03532 -2074, -2074, 708, 466, -2074, -2074, -2074, -2074, 814, 396,
03533 478, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 842, -2074,
03534 844, -2074, 821, -2074, 745, -2074, 853, 855, -2074, -2074,
03535 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03536 246, -2074, -2074, -2074, -2074, -2074, -2074, 824, 396, 524,
03537 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 860,
03538 83, -2074, -2074, -2074, -2074, -2074, 808, 217, -2074, -2074,
03539 864, 93, -2074, -2074, 869, -2074, -2074, -2074, -2074, -2074,
03540 -2074, -2074, -2074, -2074, -2074, 538, -2074, -2074, -2074, -2074,
03541 -2074, -2074, -2074, -2074, -2074, -2074, 803, 796, -2074, -2074,
03542 -2074, 581, 826, 828, 217, -2074, -2074, -2074, -2074, -2074,
03543 -2074, -2074, -2074, -2074, -2074, 791, -2074, 872, -2074, -2074,
03544 -2074, -2074, 830, 440, -2074, 589, 866, 141, -2074, -2074,
03545 -2074, -2074, 74, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03546 -2074, 272, -2074, -2074, -2074, -2074, 880, -2074, -2074, -2074,
03547 -2074, -2074, -2074, 599, 873, -2074, 832, -2074, -2074, -2074,
03548 839, -2074, -2074, 811, 820, -2074, -2074, -2074, -2074, 893,
03549 -2074, 819, 480, -2074, -2074, -2074, -2074, 904, -2074, 635,
03550 894, -2074, 835, -2074, 910, 780, -2074, -2074, -2074, -2074,
03551 -2074, -2074, -2074, 837, 296, -2074, 764, -2074, -2074, 912,
03552 -2074, 856, 900, -2074, 1163, -2074, 926, 790, -2074, -2074,
03553 -2074, -2074, -2074, -2074, 634, 836, 725, 851, -2074, -2074,
03554 -2074, -2074, -2074, -2074, -2074, -2074, 863, 925, -2074, 1165,
03555 -2074, 944, 902, -2074, -2074, -2074, -2074, -2074, -2074, 663,
03556 919, 761, -2074, -2074, -2074, 921, 725, 959, 1168, -2074,
03557 -2074, -2074, -2074, 1181, -2074, 963, 696, -2074, -2074, -2074,
03558 -2074, -2074, -2074, 685, 933, 782, -2074, -2074, -2074, -2074,
03559 1183, 973, 1187, -2074, -2074, -2074, 1189, 1193, -2074, 977,
03560 -59, -2074, -2074, -2074, -2074, 979, 343, -2074, -2074, -2074,
03561 -2074, -2074, -2074, -2074, 958, -2074, -2074, -2074, -2074, 1229,
03562 985, 1231, -2074, 664, 682, -2074, -2074, -2074, -2074, 989,
03563 -65, -2074, -2074, -2074, -2074, 668, 682, -2074, -2074, -2074,
03564 -2074, -57, -2074, -2074, -2074, -2074, 997, -2074, -2074, 852,
03565 715, -2074, -2074, -2074, -2074, -2074, 939, 948, -2074, -2074,
03566 -2074, -77, -2074, 1235, -2074, 677, 682, -2074, -2074, -2074,
03567 -2074, 1012, -12, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03568 -2074, 975, 717, -2074, 868, 1014, -2074, -2074, 879, 735,
03569 -2074, -2074, -2074, -2074, -2074, 983, 717, -2074, -2074, -2074,
03570 923, 737, -2074, -2074, -2074, -2074, -2074, 54, -2074, -2074,
03571 -2074, 1239, 512, -2074, -2074, -2074, 1032, 896, -2074, -2074,
03572 -2074, -2074, -2074, -2074, -2074, 999, 717, -2074, 1034, -2074,
03573 -2074, 1016, 772, -2074, -2074, 1241, 1018, -2074, -2074, 748,
03574 -2074, 868, 1061, 1243, -2074, -2074, -2074, -2074, 64, 1245,
03575 641, -2074, 748, -2074, -2074, -2074, 40, 787, 1063, -2074,
03576 -2074, -2074, -2074, 107, -2074, -2074, -2074, -2074, -2074, -2074,
03577 -2074, -2074, -2074, -2074, -2074, -2074, -2074, 858, 1247, 1066,
03578 -2074, 748, -2074, -2074, -2074, -2074, 186, -92, -2074, -2074,
03579 -2074, -2074, 1065, -2074, 1074, -2074, 1076, -2074, 1078, -2074,
03580 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03581 -2074, -2074, -2074, -2074, -2074, -2074, 789, -2074, 868, 1249,
03582 1077, 929, -2074, -2074, -2074, -2074, 787, -2074, -2074, -2074,
03583 -2074, -82, -2074, -2074, -2074, -2074, -2074, 1101, -2074, -2074,
03584 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03585 789, -2074, 6, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03586 816, 1100, -2074, -2074, 1103, -2074, 1041, 506, -2074, -2074,
03587 -2074, -2074, -2074, -183, 1104, 1251, -2074, -81, -2074, -2074,
03588 -2074, -2074, -2074, 1111, -2074, -2074, -2074, -2074, -2074, -2074,
03589 -2074, -2074, -2074, -2074, -2074, -2074, 789, -2074, 787, -2074,
03590 -2074, -2074, -2074, -2074, -2074, -2074, 807, 850, -2074, -2074,
03591 1001, -2074, -2074, 1141, 1145, 1147, 1149, -2074, 838, -2074,
03592 868, 1253, 929, -2074, -2074, -2074, -2074, 1153, 915, -2074,
03593 1015, -2074, 845, 871, -2074, -2074, -2074, 833, 907, -2074,
03594 -2074, 1021, -2074, -2074, 1206, 838, -2074, -2074, -2074, 922,
03595 -2074, 1219, -2074, 1185, -2074, -2074, -2074, -2074, -2074, -2074,
03596 -2074, 1334, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03597 1006, 1052, -2074, -2074, 1194, -2074, -2074, 1337, 838, -2074,
03598 1054, -2074, -2074, 52, -2074, 1255, 226, 1339, -2074, -2074,
03599 -2074, -2074, 1025, -2074, 868, 1257, 929, -2074, -2074, -2074,
03600 -2074, -2074, 1033, -2074, 1342, 1259, -2074, -2074, -2074, -2074,
03601 -2074, -2074, -2074, 68, -2074, 1261, 226, -2074, 1025, -2074,
03602 -2074, -2074, -2074, 1264, 479, 1343, 12, -2074, -2074, 163,
03603 -2074, 1266, 226, -2074, 1025, -2074, -2074, 23, -2074, -2074,
03604 -2074, -2074, -2074, -2074, -2074, 929, -2074, -2074, -2074, -2074,
03605 -2074, -2074, -2074, -2074, -2074, -2074, 1027, -2074, 868, 1268,
03606 929, -2074, -2074, -2074, -2074, -2074, 1035, -2074, 1348, 89,
03607 -2074, -2074, -2074, -2074, 1345, 1048, 15, -2074, -2074, -2074,
03608 -2074, -2074, -2074, -2074, 929, -2074, -2074, -2074, -2074, -2074,
03609 -2074, -2074, -2074, 1027, -2074, -55, -2074, -2074, -2074, -2074,
03610 -2074, 1353, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03611 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03612 31, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 929, -2074,
03613 -2074, -2074, -2074, -2074, -2074, -2074, -2074, 1027, -2074, -2074,
03614 -2074, -2074, -2074, 1064, -2074, 1208, -2074, -2074, -2074, -2074,
03615 868, 1272, 929, -2074, -2074, -2074, -2074, -2074, 1043, -2074,
03616 1354, 1204, -2074, 1357, -2074, 1356, 1358, -2074, -2074, -2074,
03617 -2074, 1067, -2074, 1214, -2074, -2074, -2074, -2074, -2074, 1036,
03618 1087, 1220, -2074, -2074, -2074, 1361, 1274, 261, -2074, 1079,
03619 -2074, 1222, -2074, -2074, -2074, -2074, -2074, 1276, 929, -2074,
03620 -2074, -2074, -2074, -2074, 1053, -2074, -2074, -2074, 1225, 1370,
03621 1371, -2074, -2074, -2074, -2074, -2074, 1278, 226, -2074, 1136,
03622 -2074, -2074, -2074, -2074, -2074, 1376, 1372, 1373, -2074, -2074,
03623 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03624 929, -2074, -2074, -2074, -2074, -2074, 1058, -2074, -2074, 1375,
03625 1377, 929, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03626 -2074, 1102, -2074, -2074, 1378, 1381, 1382, 1383, -2074, 1068,
03627 -2074, -2074, -2074, 1240, -2074, -2074, 294, 1280, 392, -2074,
03628 1384, 1385, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03629 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03630 -2074, -2074, -2074, -2074, -2074, -2074, -2074, 1119, -2074, 1195,
03631 1154, -2074, -2074, -2074, 1387, 1389, 1390, 1391, 1392, 1393,
03632 1394, 1395, 1396, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03633 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 1397, 174,
03634 1398, 174, 1399, 174, 1400, 174, 1403, 174, 1404, 174,
03635 -2074, 1402, 1405, -2074, -2074, -2074, 1408, 1407, -2074, -2074,
03636 -2074, 1412, 1413, 1414, 1415, 1416, 1417, 1418, 787, 1139,
03637 -2074, 1422, 1419, -2074, -2074, -2074, -2074, -2074, 1139, -2074,
03638 -2074, -2074, 1139, -2074, -2074, -2074, 1139, -2074, -2074, -2074,
03639 1139, -2074, -2074, -2074, 1139, -2074, -2074, -2074, 1420, 341,
03640 1423, 1179, -2074, -2074, 1424, 1425, 1426, 1427, 1428, 1430,
03641 1431, 1432, -2074, -2074, 1161, 1284, 1433, 1436, 1161, -2074,
03642 1161, -2074, 1161, -2074, 1161, -2074, 1161, -2074, -2074, -2074,
03643 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03644 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 1155, -2074,
03645 1212, -2074, 1213, -2074, 1215, -2074, 1216, -2074, 341, -2074,
03646 341, -2074, 769, -2074, 341, -2074, 1007, -2074, 1007, -2074,
03647 1286, -2074, 341, -2074, 341, -2074, 341, -2074, 341, -2074,
03648 -2074, 769, -2074, 769, -2074, 341, 1440, -2074, 1200, 868,
03649 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 1196,
03650 1180, 1288, 929, -2074, -2074, -2074, -2074, -2074, 1444, 1182,
03651 1198, 1184, 1199, 1188, 1201, 1191, 1192, 1197, 1202, -2074,
03652 -2074, -2074, 1450, 1290, 1452, 1292, 1455, 1294, 1457, 1296,
03653 1060, -2074, 341, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03654 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03655 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03656 -2074, 1037, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03657 -2074, -2074, -2074, -2074, -2074, -2074, -2074, 769, -2074, -2074,
03658 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03659 -2074, -2074, 1031, -2074, 1466, 1460, -2074, 1462, -2074, 1059,
03660 -2074, -2074, 341, -2074, 1056, -2074, 341, -2074, 341, -2074,
03661 341, -2074, 769, -2074, 1045, -2074, -2074, -2074, -2074, 868,
03662 1298, -2074, -2074, -2074, -2074, 1300, 929, -2074, -2074, -2074,
03663 -2074, -2074, 1209, -2074, -2074, -2074, 1302, -2074, -2074, -2074,
03664 1304, -2074, -2074, -2074, 1306, -2074, -2074, -2074, 1308, -2074,
03665 -2074, -2074, 1310, -2074, 309, 1470, 1046, -2074, -2074, 1473,
03666 1203, -2074, -2074, 1474, 1205, -2074, -2074, 1475, 1207, -2074,
03667 -2074, -2074, 1075, 769, 769, 769, 769, 769, 769, -2074,
03668 -2074, 769, 769, 769, 769, 769, 769, -2074, 769, -2074,
03669 -2074, -2074, 1312, 1314, 769, 341, 341, 341, -2074, 1105,
03670 14, -2074, 1476, 341, 341, -2074, 1070, -2074, 1062, 1071,
03671 1069, 769, -2074, 1082, 1318, -2074, 929, -2074, -2074, -2074,
03672 -2074, 1332, -2074, -2074, -2074, -2074, -2074, 1224, -2074, 929,
03673 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03674 -2074, -2074, -2074, -2074, 929, -2074, -2074, -2074, -2074, -2074,
03675 -2074, -2074, -2074, -2074, -2074, -2074, 1481, -2074, 1484, -2074,
03676 1488, -2074, 1490, -2074, -2074, 769, 769, 769, 769, 1140,
03677 1137, 500, 556, 1133, 1132, 769, 1129, 1128, 1127, 61,
03678 1122, 605, 658, 697, 1115, -2074, -2074, 1114, -2074, -2074,
03679 769, 1109, 1108, 1107, -2074, -2074, 1116, -2074, 1509, -2074,
03680 -2074, -2074, -2074, -2074, -2074, 1106, -2074, 1110, -2074, -2074,
03681 -2074, -2074, -2074, 769, -2074, -2074, -2074, -2074, -2074, 929,
03682 -2074, -2074, -2074, -2074, -2074, 1265, 915, -2074, 1367, -2074,
03683 1246, -2074, -2074, 1248, 1252, 1369, -67, -2074, 1254, -63,
03684 -2074, -2074, -2074, -2074, 1167, 1169, 1171, 1172, -2074, -2074,
03685 -2074, -2074, -2074, -2074, -2074, -2074, 769, -2074, -2074, -2074,
03686 738, -2074, 1513, 1517, -2074, -2074, -2074, -2074, -2074, -2074,
03687 -2074, -2074, -2074, -2074, -2074, -2074, -2074, 1135, -2074, -2074,
03688 -2074, -2074, -2074, -2074, -2074, 341, 1320, 307, -2074, 1279,
03689 -2074, 1323, -2074, -2074, 1299, -2074, -2074, -2074, -2074, -2074,
03690 -2074, -2074, -2074, -2074, 1325, -2074, -2074, -2074, -2074, -2074,
03691 -2074, -2074, -2074, -2074, 1162, -2074, -2074, 1527, 787, -2074,
03692 1528, 1112, 1136, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03693 -2074, -2074, -2074, -2074, -2074, 90, -2074, -2074, -2074, -2074,
03694 1525, -2074, 1327, -76, 769, -2074, -2074, -2074, -2074, 169,
03695 -2074, 1157, 1530, 1531, -2074, -2074, -2074, 1295, 1536, 1537,
03696 1388, -2074, 787, -2074, -2074, -2074, -2074, -2074, -2074, 1538,
03697 1539, -2074, -2074, -2074, 1401, 1542, -2074, 1541, -2074, -2074,
03698 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 294, -2074,
03699 -2074, -2074, -2074, 1406, -58, 1543, 787, -2074, 1409, 1544,
03700 -2074, -2074, -2074, -2074, -2074, -2074, 1316, 1545, 1546, -2074,
03701 -2074, 1548, 1547, -2074, -2074, -2074, 787, 1553, -2074, 1552,
03702 1287, -2074, -2074
03703 };
03704
03705
03706 static const yytype_int16 yypgoto[] =
03707 {
03708 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 1522, -2074,
03709 1540, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 1503,
03710 -2074, -2074, -2074, -2074, 1410, -2074, -2074, -2074, -2074, -2074,
03711 1158, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03712 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03713 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03714 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03715 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03716 -2074, -2074, -2074, -2074, -2074, -2074, 1148, -2074, -2074, -2074,
03717 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 1435,
03718 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03719 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03720 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03721 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03722 1055, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03723 -2074, -2074, -2074, 1346, -2074, -2074, -2074, -2074, -2074, -2074,
03724 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03725 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03726 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03727 -2074, -2074, 986, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03728 -2074, -2074, -2074, -2074, -2074, 1262, -2074, -2074, -2074, -2074,
03729 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03730 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03731 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03732 -2074, -2074, -2074, -2074, 932, -2074, -2074, -2074, -2074, -2074,
03733 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03734 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03735 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03736 -2074, -2074, -2074, -2074, -2074, -2074, -2074, 920, -2074, -2074,
03737 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03738 -2074, -2074, -2074, 1047, -2074, -2074, -2074, -2074, -2074, -2074,
03739 -2074, -2074, -2074, -2074, -2074, -2074, 822, -2074, -2074, -2074,
03740 -2074, -2074, 763, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03741 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03742 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 598,
03743 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03744 -2074, -2074, 548, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03745 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03746 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03747 -2074, -2074, -2074, -2074, 313, -2074, -2074, -2074, -2074, -2074,
03748 -2074, -2074, -2074, 311, -2074, -2074, -2074, -2074, -2074, -2074,
03749 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03750 -2074, -2074, -2074, -2074, -2074, -2074, -2074, 564, -2074, -2074,
03751 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03752 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03753 -2074, -2074, -2074, -2074, -2074, -2074, 348, -2074, -2074, -2074,
03754 -2074, -2074, -2074, -2074, -2074, 344, -2074, -2074, -2074, -2074,
03755 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03756 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 518,
03757 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03758 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03759 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 285, -2074,
03760 -2074, -2074, -2074, -2074, -2074, -2074, -2074, 283, -2074, -2074,
03761 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03762 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03763 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03764 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 77,
03765 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03766 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 602, -2074,
03767 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, 394, -2074,
03768 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03769 -2074, 843, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03770 -2074, 771, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03771 -102, -2074, -2074, -2074, -2074, -583, -2074, -366, -1238, -200,
03772 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03773 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03774 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03775 -1244, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03776 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03777 -2074, -2074, -597, -2074, -2074, -2074, -2074, -2074, -656, -2074,
03778 -2074, -2074, -2074, -2074, -939, -2074, -2074, -2074, -2074, -2074,
03779 -1041, -2074, -2074, -2074, -2074, -2074, -1003, -2074, -2074, -2074,
03780 -2074, -2074, -1201, -2074, -2074, -2074, -2074, -2074, -1173, -2074,
03781 -2074, -2074, -2074, -2074, -1037, -1312, -2074, -2074, -2074, -2074,
03782 -2074, -2074, -2074, -2074, -660, -2074, -2074, -2074, -2074, -2074,
03783 -692, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -1212,
03784 -2074, -2074, -2074, -2074, -2074, -1210, -2074, -2074, -2074, -2074,
03785 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03786 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03787 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03788 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03789 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03790 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03791 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03792 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03793 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03794 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03795 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03796 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03797 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03798 -2074, 486, -2074, -1313, -1065, 554, 243, 532, -2074, -2074,
03799 -1093, -798, -2074, -2074, -557, -2074, -2074, -2074, -2074, -2074,
03800 -2074, -2074, -2074, -2074, -1055, -679, -2074, -2073, -2074, -2074,
03801 -2074, -2074, -2074, -2074, -741, -2074, -2074, -2074, -2074, -2074,
03802 -136, -2074, -2074, -1054, -2074, -2074, -2074, -2074, -2074, -510,
03803 -2074, -2074, -2074, -2074, -2074, -1052, -2074, -2074, -2074, -2074,
03804 -2074, -1032, -2074, -2074, -616, -2074, -2074, -689, -2074, -2074,
03805 -243, -2074, -2074, -593, -2074, -2074, -2074, -2074, -2074, -2074,
03806 -2074, -2074, -1738, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03807 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03808 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03809 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03810 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03811 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03812 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03813 -2074, -2074, -2074, -2074, -2074, -2074, -1687, -2074, -2074, -2074,
03814 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03815 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03816 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03817 -2074, -2074, -2074, -196, -2074, -2074, -2074, -2074, -2074, -2074,
03818 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03819 -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074, -2074,
03820 -2074
03821 };
03822
03823
03824
03825
03826
03827 #define YYTABLE_NINF -1
03828 static const yytype_uint16 yytable[] =
03829 {
03830 286, 733, 501, 1381, 666, 381, 395, 386, 1331, 252,
03831 1277, 504, 277, 274, 615, 1169, 506, 271, 525, 1469,
03832 268, 1470, 1471, 1159, 2126, 2127, 1172, 1469, 758, 1470,
03833 1471, 1188, 799, 1420, 1149, 1469, 49, 1470, 1471, 1059,
03834 50, 1043, 417, 49, 1216, 254, 51, 50, 1174, 1464,
03835 1182, 1183, 299, 51, 1028, 1221, 509, 583, 1233, 650,
03836 52, 1231, 1367, 1368, 1087, 758, 705, 52, 1264, 1297,
03837 300, 2190, 2191, 1940, 1156, 1942, 53, 1223, 1406, 1407,
03838 1016, 2231, 1395, 53, 301, 2236, 977, 665, 216, 283,
03839 217, 2333, 302, 1491, 2290, 1507, 486, 1286, 928, 762,
03840 763, 1860, 303, 1862, 304, 741, 365, 1922, 218, 541,
03841 373, 1251, 380, 1514, 385, 1932, 305, 1934, 219, 1936,
03842 306, 1938, 307, 126, 308, 127, 309, 128, 1944, 129,
03843 535, 1476, 265, 477, 756, 364, 220, 7, 2299, 1276,
03844 538, 280, 221, 1181, 483, 808, 1487, 1424, 6, 704,
03845 547, 2271, 1287, 130, 636, 872, 744, 1445, 620, 811,
03846 2300, 637, 812, 1468, 525, 745, 489, 490, 1502, 2029,
03847 1504, 756, 1227, 1450, 1451, 2002, 1192, 131, 478, 2305,
03848 542, 428, 284, 153, 154, 1309, 764, 487, 740, 266,
03849 643, 611, 612, 366, 515, 645, 1228, 474, 1544, 548,
03850 647, 1044, 809, 1234, 2041, 2232, 2311, 601, 602, 2237,
03851 1298, 536, 1520, 1325, 1522, 2334, 520, 1265, 281, 601,
03852 602, 601, 602, 539, 12, 560, 1446, 565, 531, 570,
03853 1017, 601, 602, 476, 1587, 601, 602, 491, 1533, 484,
03854 978, 17, 1029, 14, 1235, 2036, 1492, 2291, 150, 2038,
03855 1506, 2039, 526, 2040, 1266, 1299, 721, 722, 1373, 1193,
03856 1194, 480, 1195, 801, 550, 2095, 2096, 2097, 2098, 2099,
03857 2100, 1088, 1349, 2103, 2104, 2105, 2106, 2107, 2108, 1060,
03858 2110, 1508, 1170, 1088, 1575, 1088, 2120, 1389, 1412, 1433,
03859 403, 54, 2192, 1446, 1524, 1088, 2193, 2085, 30, 1088,
03860 1436, 1100, 481, 2143, 1456, 1365, 1278, 55, 41, 56,
03861 418, 57, 80, 58, 55, 1500, 56, 200, 57, 1472,
03862 58, 404, 1441, 1518, 510, 584, 1598, 651, 310, 118,
03863 601, 602, 559, 148, 564, 544, 569, 1604, 2121, 2122,
03864 2123, 275, 278, 272, 269, 203, 2135, 2137, 2306, 2307,
03865 222, 1481, 204, 601, 602, 817, 205, 2174, 2175, 2176,
03866 2177, 206, 429, 2181, 2183, 430, 545, 2186, 431, 1027,
03867 1083, 1700, 1701, 2200, 2202, 2204, 207, 1143, 208, 1702,
03868 151, 152, 2207, 604, 1072, 238, 153, 154, 614, 151,
03869 152, 1175, 257, 132, 1088, 676, 258, 677, 292, 1057,
03870 1112, 1495, 1496, 611, 612, 2215, 293, 723, 724, 151,
03871 152, 984, 678, 294, 985, 153, 154, 1088, 299, 295,
03872 1224, 370, 371, 336, 818, 819, 683, 820, 601, 602,
03873 153, 154, 151, 152, 368, 687, 300, 1, 2, 396,
03874 397, 398, 399, 1527, 370, 371, 377, 734, 2244, 1103,
03875 301, 296, 2246, 382, 2128, 387, 1554, 1555, 302, 151,
03876 152, 664, 394, 1556, 1557, 153, 154, 401, 303, 402,
03877 304, 709, 409, 1144, 20, 21, 153, 154, 720, 25,
03878 26, 216, 305, 217, 33, 34, 306, 1176, 307, 1558,
03879 308, 126, 309, 127, 410, 128, 1748, 129, 44, 45,
03880 1750, 218, 1554, 1555, 1752, 411, 1951, 413, 1754, 151,
03881 152, 219, 1756, 601, 602, 412, 1225, 415, 759, 760,
03882 414, 130, 416, 703, 121, 122, 437, 1092, 2251, 220,
03883 165, 166, 1102, 2257, 2258, 221, 2304, 1615, 1839, 464,
03884 1841, 499, 1843, 769, 1845, 131, 1847, 1616, 502, 1617,
03885 507, 1618, 516, 1619, 732, 1620, 1136, 1621, 404, 151,
03886 152, 788, 739, 601, 602, 170, 171, 418, 1160, 1622,
03887 1173, 175, 176, 611, 612, 521, 1189, 532, 1710, 533,
03888 1714, 757, 1718, 534, 1722, 578, 1726, 556, 1961, 561,
03889 1759, 1643, 1644, 566, 1760, 180, 181, 571, 1761, 1222,
03890 796, 723, 724, 151, 152, 834, 1232, 601, 602, 579,
03891 1645, 1646, 1647, 1648, 1649, 1650, 1651, 1652, 757, 1711,
03892 580, 1715, 1759, 1719, 581, 1723, 1760, 1727, 185, 186,
03893 1761, 856, 818, 819, 582, 820, 2045, 800, 1122, 190,
03894 191, 589, 151, 152, 1123, 1124, 601, 602, 153, 154,
03895 1125, 1126, 591, 881, 195, 196, 611, 612, 1193, 1194,
03896 590, 1195, 892, 211, 212, 1442, 240, 241, 151, 152,
03897 1430, 1431, 796, 723, 724, 151, 152, 592, 905, 601,
03898 602, 259, 260, 287, 288, 338, 339, 916, 593, 611,
03899 612, 343, 344, 348, 349, 594, 1204, 353, 354, 358,
03900 359, 510, 935, 389, 390, 423, 424, 619, 871, 439,
03901 440, 945, 2056, 626, 1762, 627, 1763, 628, 1764, 629,
03902 1765, 1190, 1766, 1383, 1767, 630, 1768, 633, 1769, 631,
03903 1770, 634, 1771, 2084, 1772, 632, 1773, 635, 1774, 648,
03904 1775, 990, 1776, 656, 1777, 584, 1762, 668, 1763, 669,
03905 1764, 667, 1765, 1422, 1766, 670, 1767, 671, 1768, 674,
03906 1769, 1443, 1770, 684, 1771, 685, 1772, 686, 1773, 1466,
03907 1774, 688, 1775, 691, 1776, 695, 1777, 444, 445, 692,
03908 449, 450, 636, 1038, 454, 455, 459, 460, 494, 495,
03909 1263, 693, 1046, 489, 490, 551, 552, 694, 573, 574,
03910 1122, 651, 2154, 1374, 151, 152, 1123, 1124, 601, 602,
03911 153, 154, 1125, 1126, 706, 2162, 598, 599, 611, 612,
03912 608, 609, 660, 661, 699, 700, 1166, 1167, 1567, 715,
03913 2167, 710, 711, 1413, 735, 736, 777, 778, 782, 783,
03914 791, 792, 835, 836, 1440, 857, 858, 867, 868, 1457,
03915 707, 1864, 708, 1865, 897, 1866, 718, 1867, 719, 1868,
03916 742, 1869, 1310, 1870, 2180, 1871, 743, 1872, 750, 1873,
03917 761, 1874, 767, 1875, 768, 1876, 770, 1877, 745, 1878,
03918 790, 1879, 774, 1880, 789, 1881, 802, 1882, 827, 1883,
03919 805, 1884, 828, 1885, 831, 1886, 841, 1887, 845, 1888,
03920 840, 1889, 847, 1890, 1202, 2218, 1101, 1864, 812, 1865,
03921 849, 1866, 850, 1867, 853, 1868, 862, 1869, 873, 1870,
03922 874, 1871, 2182, 1872, 863, 1873, 875, 1874, 878, 1875,
03923 1132, 1876, 887, 1877, 888, 1878, 893, 1879, 897, 1880,
03924 900, 1881, 901, 1882, 1171, 1883, 894, 1884, 902, 1885,
03925 911, 1886, 912, 1887, 1589, 1888, 1864, 1889, 1865, 1890,
03926 1866, 917, 1867, 918, 1868, 924, 1869, 929, 1870, 941,
03927 1871, 921, 1872, 1220, 1873, 942, 1874, 947, 1875, 946,
03928 1876, 959, 1877, 976, 1878, 983, 1879, 992, 1880, 950,
03929 1881, 2199, 1882, 1001, 1883, 1015, 1884, 1035, 1885, 1007,
03930 1886, 1010, 1887, 1022, 1888, 1034, 1889, 1563, 1890, 1864,
03931 1039, 1865, 1052, 1866, 978, 1867, 984, 1868, 1058, 1869,
03932 1067, 1870, 1075, 1871, 1076, 1872, 1072, 1873, 1081, 1874,
03933 1017, 1875, 1068, 1876, 1084, 1877, 1029, 1878, 1104, 1879,
03934 1105, 1880, 1113, 1881, 1110, 1882, 2201, 1883, 1864, 1884,
03935 1865, 1885, 1866, 1886, 1867, 1887, 1868, 1888, 1869, 1889,
03936 1870, 1890, 1871, 1060, 1872, 1145, 1873, 1114, 1874, 1150,
03937 1875, 1191, 1876, 1243, 1877, 1204, 1878, 1244, 1879, 1245,
03938 1880, 1246, 1881, 1257, 1882, 1258, 1883, 2203, 1884, 1864,
03939 1885, 1865, 1886, 1866, 1887, 1867, 1888, 1868, 1889, 1869,
03940 1890, 1870, 1247, 1871, 1274, 1872, 1281, 1873, 1282, 1874,
03941 1284, 1875, 1291, 1876, 1307, 1877, 1280, 1878, 2245, 1879,
03942 1864, 1880, 1865, 1881, 1866, 1882, 1867, 1883, 1868, 1884,
03943 1869, 1885, 1870, 1886, 1871, 1887, 1872, 1888, 1873, 1889,
03944 1874, 1890, 1875, 1311, 1876, 1234, 1877, 1317, 1878, 1334,
03945 1879, 1233, 1880, 1318, 1881, 1319, 1882, 1320, 1883, 1321,
03946 1884, 1333, 1885, 1336, 1886, 1339, 1887, 1340, 1888, 1341,
03947 1889, 1264, 1890, 882, 883, 906, 907, 1122, 930, 931,
03948 1382, 151, 152, 1123, 1124, 601, 602, 153, 154, 1125,
03949 1126, 936, 937, 954, 955, 611, 612, 960, 961, 966,
03950 967, 1127, 1128, 971, 972, 81, 1265, 82, 83, 84,
03951 1421, 85, 86, 87, 1347, 88, 89, 90, 1435, 91,
03952 92, 93, 1350, 94, 95, 1122, 1465, 1351, 921, 151,
03953 152, 1123, 1124, 601, 602, 153, 154, 1125, 1126, 996,
03954 997, 1002, 1003, 611, 612, 1047, 1048, 1212, 1213, 1093,
03955 1094, 1117, 1118, 1151, 1152, 1161, 1162, 1207, 1208, 1252,
03956 1253, 1292, 1293, 1326, 1327, 1375, 1376, 1390, 1391, 1399,
03957 1400, 1414, 1415, 950, 1425, 1426, 1458, 1459, 1482, 1483,
03958 1495, 1496, 1528, 1529, 1549, 1550, 1570, 1571, 1581, 1582,
03959 1640, 1641, 1680, 1681, 1832, 1833, 1929, 1930, 1956, 1957,
03960 1986, 1987, 1990, 1991, 1994, 1995, 1998, 1999, 2046, 2047,
03961 2051, 2052, 2059, 2060, 2064, 2065, 2069, 2070, 2074, 2075,
03962 2079, 2080, 2114, 2115, 2117, 2118, 2144, 2145, 2149, 2150,
03963 2252, 2253, 1741, 2265, 2266, 2274, 2275, 2294, 2295, 1352,
03964 1355, 2129, 1357, 1298, 1297, 1363, 1366, 1384, 1385, 1397,
03965 1398, 1444, 1477, 1489, 1490, 1493, 1515, 1535, 1597, 1526,
03966 1525, 1537, 1536, 1538, 1539, 1542, 1540, 1541, 1446, 1548,
03967 1507, 1568, 1543, 1569, 1578, 1577, 1579, 1580, 1590, 1594,
03968 1595, 1596, 1600, 1601, 1605, 1602, 1609, 1610, 1611, 1612,
03969 1690, 1614, 1665, 1666, 1613, 1689, 1686, 1691, 1692, 1693,
03970 1694, 1695, 1696, 1697, 1698, 1728, 1742, 1699, 1708, 1712,
03971 1716, 1588, 1667, 1720, 1724, 1729, 1730, 1731, 1734, 1735,
03972 1736, 1737, 1738, 1739, 1740, 1746, 1817, 1747, 1758, 1816,
03973 1828, 1850, 1820, 1821, 1822, 1823, 1824, 2130, 1825, 1826,
03974 1827, 1837, 1838, 1852, 1854, 1924, 1856, 1858, 1946, 1947,
03975 1952, 1953, 1963, 1964, 1967, 1968, 1979, 1971, 1985, 1972,
03976 1989, 1975, 1976, 1993, 1983, 1997, 2001, 2031, 1980, 2032,
03977 2033, 2028, 2034, 2035, 2037, 2042, 2086, 2058, 2087, 2088,
03978 2090, 2092, 2140, 2094, 2134, 2089, 2139, 2124, 2156, 2170,
03979 1733, 2091, 2171, 2141, 2161, 2142, 2172, 2093, 2173, 2179,
03980 2178, 2184, 2185, 2187, 2188, 2189, 2198, 2205, 2206, 2208,
03981 2209, 2210, 2212, 2220, 2211, 2222, 2213, 2228, 2225, 2240,
03982 2226, 2247, 2214, 2241, 2227, 2248, 2235, 2242, 2263, 2264,
03983 2243, 2249, 1496, 2282, 2280, 2292, 2284, 2315, 2316, 2317,
03984 2285, 2319, 2320, 2321, 2329, 2322, 2325, 2326, 2328, 2337,
03985 2327, 2341, 2340, 2344, 2345, 2332, 2346, 2347, 2339, 2350,
03986 2351, 2352, 117, 149, 517, 40, 264, 595, 522, 239,
03987 337, 689, 657, 696, 438, 621, 787, 842, 1036, 1085,
03988 1115, 1342, 1344, 1077, 1314, 1312, 1358, 1360, 1545, 1040,
03989 771, 1285, 2286, 848, 2318, 1215, 1099, 1434, 1131, 2221,
03990 2310, 2262, 1928, 0, 0, 0, 0, 0, 0, 0,
03991 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
03992 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
03993 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
03994 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
03995 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
03996 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
03997 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
03998 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
03999 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04000 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04001 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04002 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04003 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04004 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04005 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04006 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04007 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04008 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04009 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04010 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04011 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04012 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04013 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04014 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04015 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04016 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04017 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04018 0, 0, 2283, 0, 0, 0, 0, 0, 0, 0,
04019 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04020 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04021 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04022 0, 0, 0, 0, 0, 0, 2323, 0, 0, 0,
04023 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04024 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04025 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04026 2338, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04027 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04028 2349, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04029 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04030 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04031 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04032 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04033 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04034 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04035 0, 0, 0, 0, 0, 0, 0, 2288, 2289, 0,
04036 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04037 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04038 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04039 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04040 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04041 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
04042 2330, 2331
04043 };
04044
04045 static const yytype_int16 yycheck[] =
04046 {
04047 200, 690, 368, 1316, 597, 248, 8, 250, 1252, 145,
04048 4, 377, 4, 4, 524, 1080, 382, 4, 78, 4,
04049 4, 6, 7, 1078, 10, 11, 1080, 4, 717, 6,
04050 7, 1086, 773, 1346, 1071, 4, 56, 6, 7, 51,
04051 60, 118, 67, 56, 1109, 147, 66, 60, 1080, 1362,
04052 10, 11, 34, 66, 111, 1109, 67, 67, 150, 67,
04053 80, 1116, 10, 11, 10, 754, 659, 80, 150, 150,
04054 52, 10, 11, 1811, 10, 1813, 96, 1109, 10, 11,
04055 145, 148, 1326, 96, 66, 148, 145, 597, 46, 4,
04056 48, 149, 74, 4, 4, 150, 4, 280, 896, 6,
04057 7, 1788, 84, 1790, 86, 698, 4, 1794, 66, 4,
04058 246, 1148, 248, 1425, 250, 1802, 98, 1804, 76, 1806,
04059 102, 1808, 104, 36, 106, 38, 108, 40, 1815, 42,
04060 4, 1375, 4, 4, 717, 237, 94, 120, 214, 1180,
04061 4, 4, 100, 1082, 6, 4, 1390, 1348, 0, 659,
04062 4, 2224, 335, 66, 92, 844, 73, 145, 72, 85,
04063 236, 99, 88, 1364, 78, 82, 6, 7, 1406, 1907,
04064 1414, 754, 1111, 10, 11, 1862, 69, 90, 49, 10,
04065 75, 25, 97, 169, 170, 1226, 93, 95, 698, 61,
04066 556, 177, 178, 91, 394, 561, 10, 333, 1510, 53,
04067 566, 278, 61, 295, 1942, 272, 2279, 167, 168, 272,
04068 291, 85, 1450, 1250, 1458, 273, 416, 299, 81, 167,
04069 168, 167, 168, 87, 14, 468, 281, 470, 428, 472,
04070 295, 167, 168, 335, 1547, 167, 168, 77, 1482, 101,
04071 299, 303, 299, 15, 336, 1932, 157, 157, 31, 1936,
04072 1423, 1938, 312, 1940, 336, 336, 10, 11, 1313, 152,
04073 153, 6, 155, 773, 464, 2003, 2004, 2005, 2006, 2007,
04074 2008, 231, 1275, 2011, 2012, 2013, 2014, 2015, 2016, 291,
04075 2018, 336, 1080, 231, 1528, 231, 2024, 1324, 1343, 1354,
04076 57, 304, 231, 281, 1467, 231, 235, 1984, 305, 231,
04077 1354, 1042, 47, 2041, 1359, 1308, 300, 327, 307, 329,
04078 335, 331, 121, 333, 327, 300, 329, 22, 331, 296,
04079 333, 88, 1354, 292, 335, 335, 1570, 335, 310, 309,
04080 167, 168, 468, 304, 470, 4, 472, 1581, 2025, 2026,
04081 2027, 332, 334, 330, 328, 5, 2033, 2034, 179, 180,
04082 308, 1388, 5, 167, 168, 83, 5, 2095, 2096, 2097,
04083 2098, 5, 206, 2101, 2102, 209, 35, 2105, 212, 966,
04084 1026, 197, 198, 2111, 2112, 2113, 5, 1066, 311, 205,
04085 163, 164, 2120, 519, 158, 306, 169, 170, 524, 163,
04086 164, 1080, 3, 306, 231, 16, 3, 18, 123, 996,
04087 1056, 232, 233, 177, 178, 2143, 127, 161, 162, 163,
04088 164, 68, 33, 131, 71, 169, 170, 231, 34, 135,
04089 1109, 175, 176, 308, 152, 153, 626, 155, 167, 168,
04090 169, 170, 163, 164, 10, 635, 52, 12, 13, 441,
04091 442, 443, 444, 1480, 175, 176, 10, 690, 2186, 1042,
04092 66, 139, 2190, 10, 440, 10, 195, 196, 74, 163,
04093 164, 597, 6, 202, 203, 169, 170, 8, 84, 8,
04094 86, 671, 61, 1066, 10, 11, 169, 170, 678, 10,
04095 11, 46, 98, 48, 10, 11, 102, 1080, 104, 228,
04096 106, 36, 108, 38, 328, 40, 1708, 42, 10, 11,
04097 1712, 66, 195, 196, 1716, 330, 1819, 334, 1720, 163,
04098 164, 76, 1724, 167, 168, 332, 1109, 97, 718, 719,
04099 81, 66, 6, 659, 10, 11, 310, 1037, 2215, 94,
04100 10, 11, 1042, 226, 227, 100, 2274, 243, 1748, 32,
04101 1750, 91, 1752, 743, 1754, 90, 1756, 253, 3, 255,
04102 6, 257, 57, 259, 690, 261, 1066, 263, 88, 163,
04103 164, 761, 698, 167, 168, 10, 11, 335, 1078, 275,
04104 1080, 10, 11, 177, 178, 67, 1086, 8, 1671, 8,
04105 1673, 717, 1675, 8, 1677, 49, 1679, 10, 1832, 10,
04106 281, 199, 200, 10, 285, 10, 11, 10, 289, 1109,
04107 160, 161, 162, 163, 164, 805, 1116, 167, 168, 47,
04108 218, 219, 220, 221, 222, 223, 224, 225, 754, 1671,
04109 101, 1673, 281, 1675, 95, 1677, 285, 1679, 10, 11,
04110 289, 831, 152, 153, 77, 155, 1949, 773, 159, 10,
04111 11, 41, 163, 164, 165, 166, 167, 168, 169, 170,
04112 171, 172, 43, 853, 10, 11, 177, 178, 152, 153,
04113 8, 155, 862, 10, 11, 1354, 10, 11, 163, 164,
04114 191, 192, 160, 161, 162, 163, 164, 39, 878, 167,
04115 168, 10, 11, 10, 11, 10, 11, 887, 37, 177,
04116 178, 10, 11, 10, 11, 67, 217, 10, 11, 10,
04117 11, 335, 902, 10, 11, 10, 11, 312, 844, 10,
04118 11, 911, 1956, 6, 405, 6, 407, 6, 409, 6,
04119 411, 1087, 413, 1316, 415, 85, 417, 35, 419, 87,
04120 421, 53, 423, 424, 425, 75, 427, 6, 429, 6,
04121 431, 941, 433, 67, 435, 335, 405, 3, 407, 336,
04122 409, 89, 411, 1346, 413, 3, 415, 30, 417, 10,
04123 419, 1354, 421, 8, 423, 8, 425, 8, 427, 1362,
04124 429, 99, 431, 107, 433, 67, 435, 10, 11, 109,
04125 10, 11, 92, 983, 10, 11, 10, 11, 10, 11,
04126 1156, 105, 992, 6, 7, 10, 11, 103, 10, 11,
04127 159, 335, 2046, 1313, 163, 164, 165, 166, 167, 168,
04128 169, 170, 171, 172, 336, 2059, 10, 11, 177, 178,
04129 10, 11, 10, 11, 10, 11, 185, 186, 1517, 84,
04130 2074, 10, 11, 1343, 10, 11, 10, 11, 10, 11,
04131 10, 11, 10, 11, 1354, 10, 11, 10, 11, 1359,
04132 8, 351, 8, 353, 213, 355, 3, 357, 3, 359,
04133 336, 361, 1228, 363, 364, 365, 6, 367, 60, 369,
04134 6, 371, 3, 373, 336, 375, 73, 377, 82, 379,
04135 8, 381, 301, 383, 93, 385, 297, 387, 8, 389,
04136 24, 391, 293, 393, 21, 395, 85, 397, 5, 399,
04137 61, 401, 83, 403, 1104, 2149, 1042, 351, 88, 353,
04138 6, 355, 277, 357, 20, 359, 6, 361, 154, 363,
04139 8, 365, 366, 367, 144, 369, 70, 371, 28, 373,
04140 1066, 375, 6, 377, 144, 379, 302, 381, 213, 383,
04141 89, 385, 79, 387, 1080, 389, 110, 391, 23, 393,
04142 6, 395, 50, 397, 1547, 399, 351, 401, 353, 403,
04143 355, 298, 357, 44, 359, 44, 361, 8, 363, 6,
04144 365, 210, 367, 1109, 369, 279, 371, 44, 373, 294,
04145 375, 8, 377, 6, 379, 6, 381, 29, 383, 207,
04146 385, 386, 387, 8, 389, 6, 391, 145, 393, 335,
04147 395, 319, 397, 335, 399, 8, 401, 1517, 403, 351,
04148 71, 353, 335, 355, 299, 357, 68, 359, 6, 361,
04149 45, 363, 8, 365, 145, 367, 158, 369, 45, 371,
04150 295, 373, 315, 375, 111, 377, 299, 379, 6, 381,
04151 144, 383, 8, 385, 45, 387, 388, 389, 351, 391,
04152 353, 393, 355, 395, 357, 397, 359, 399, 361, 401,
04153 363, 403, 365, 291, 367, 317, 369, 51, 371, 8,
04154 373, 8, 375, 8, 377, 217, 379, 3, 381, 3,
04155 383, 3, 385, 6, 387, 156, 389, 390, 391, 351,
04156 393, 353, 395, 355, 397, 357, 399, 359, 401, 361,
04157 403, 363, 313, 365, 3, 367, 6, 369, 5, 371,
04158 69, 373, 8, 375, 3, 377, 300, 379, 380, 381,
04159 351, 383, 353, 385, 355, 387, 357, 389, 359, 391,
04160 361, 393, 363, 395, 365, 397, 367, 399, 369, 401,
04161 371, 403, 373, 336, 375, 295, 377, 6, 379, 234,
04162 381, 150, 383, 8, 385, 8, 387, 8, 389, 321,
04163 391, 8, 393, 148, 395, 320, 397, 296, 399, 336,
04164 401, 150, 403, 10, 11, 10, 11, 159, 10, 11,
04165 1316, 163, 164, 165, 166, 167, 168, 169, 170, 171,
04166 172, 10, 11, 10, 11, 177, 178, 10, 11, 10,
04167 11, 183, 184, 10, 11, 122, 299, 124, 125, 126,
04168 1346, 128, 129, 130, 8, 132, 133, 134, 1354, 136,
04169 137, 138, 300, 140, 141, 159, 1362, 8, 210, 163,
04170 164, 165, 166, 167, 168, 169, 170, 171, 172, 10,
04171 11, 10, 11, 177, 178, 10, 11, 181, 182, 10,
04172 11, 10, 11, 10, 11, 10, 11, 10, 11, 10,
04173 11, 10, 11, 10, 11, 10, 11, 10, 11, 10,
04174 11, 10, 11, 207, 10, 11, 10, 11, 10, 11,
04175 232, 233, 10, 11, 10, 11, 10, 11, 10, 11,
04176 10, 11, 173, 174, 10, 11, 10, 11, 10, 11,
04177 10, 11, 10, 11, 10, 11, 10, 11, 10, 11,
04178 10, 11, 10, 11, 10, 11, 10, 11, 10, 11,
04179 10, 11, 10, 11, 10, 11, 244, 245, 10, 11,
04180 10, 11, 1698, 10, 11, 10, 11, 10, 11, 154,
04181 6, 2030, 336, 291, 150, 8, 292, 8, 323, 316,
04182 8, 8, 325, 318, 6, 10, 3, 314, 1558, 151,
04183 296, 157, 8, 6, 8, 151, 8, 300, 281, 8,
04184 150, 292, 336, 151, 149, 322, 6, 6, 242, 3,
04185 8, 8, 324, 8, 282, 8, 8, 6, 6, 6,
04186 3, 151, 8, 8, 326, 241, 201, 8, 8, 8,
04187 8, 8, 8, 8, 8, 3, 267, 10, 10, 10,
04188 10, 1547, 1612, 10, 10, 10, 8, 10, 6, 6,
04189 6, 6, 6, 6, 6, 3, 247, 8, 8, 6,
04190 269, 276, 8, 8, 8, 8, 8, 2030, 8, 8,
04191 8, 8, 6, 231, 231, 438, 231, 231, 8, 249,
04192 254, 271, 8, 271, 256, 271, 264, 258, 8, 271,
04193 8, 260, 271, 8, 262, 8, 406, 436, 271, 3,
04194 10, 434, 10, 414, 418, 430, 6, 268, 432, 6,
04195 6, 6, 420, 408, 8, 282, 416, 382, 156, 8,
04196 1690, 286, 8, 422, 270, 426, 8, 290, 8, 362,
04197 360, 368, 370, 374, 376, 378, 384, 392, 394, 400,
04198 402, 404, 3, 248, 398, 148, 410, 148, 272, 352,
04199 272, 8, 412, 354, 272, 8, 272, 356, 2217, 250,
04200 358, 396, 233, 6, 372, 10, 8, 380, 8, 8,
04201 428, 246, 6, 6, 3, 157, 8, 8, 6, 6,
04202 149, 235, 8, 8, 8, 149, 8, 10, 149, 6,
04203 8, 274, 40, 60, 406, 25, 156, 512, 420, 134,
04204 224, 639, 586, 653, 312, 528, 754, 814, 980, 1031,
04205 1062, 1268, 1271, 1019, 1240, 1237, 1301, 1304, 1511, 987,
04206 747, 1197, 2252, 822, 2286, 1109, 1042, 1354, 1066, 2156,
04207 2279, 2217, 1798, -1, -1, -1, -1, -1, -1, -1,
04208 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04209 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04210 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04211 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04212 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04213 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04214 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04215 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04216 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04217 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04218 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04219 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04220 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04221 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04222 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04223 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04224 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04225 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04226 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04227 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04228 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04229 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04230 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04231 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04232 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04233 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04234 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04235 -1, -1, 2248, -1, -1, -1, -1, -1, -1, -1,
04236 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04237 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04238 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04239 -1, -1, -1, -1, -1, -1, 2292, -1, -1, -1,
04240 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04241 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04242 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04243 2326, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04244 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04245 2346, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04246 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04247 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04248 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04249 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04250 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04251 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04252 -1, -1, -1, -1, -1, -1, -1, 2257, 2258, -1,
04253 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04254 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04255 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04256 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04257 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04258 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
04259 2320, 2321
04260 };
04261
04262
04263
04264 static const yytype_uint16 yystos[] =
04265 {
04266 0, 12, 13, 446, 447, 448, 0, 120, 455, 456,
04267 1087, 1088, 14, 449, 15, 453, 454, 303, 457, 458,
04268 10, 11, 1089, 1090, 1091, 10, 11, 450, 451, 452,
04269 305, 537, 538, 10, 11, 459, 460, 461, 1092, 1093,
04270 455, 307, 591, 592, 10, 11, 539, 540, 541, 56,
04271 60, 66, 80, 96, 304, 327, 329, 331, 333, 462,
04272 463, 464, 465, 466, 481, 482, 487, 488, 493, 494,
04273 499, 500, 505, 506, 511, 512, 517, 518, 523, 524,
04274 121, 122, 124, 125, 126, 128, 129, 130, 132, 133,
04275 134, 136, 137, 138, 140, 141, 1094, 1095, 1096, 1097,
04276 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107,
04277 1108, 1109, 1110, 1111, 1112, 1113, 1114, 453, 309, 643,
04278 644, 10, 11, 593, 594, 595, 36, 38, 40, 42,
04279 66, 90, 306, 542, 543, 544, 545, 546, 551, 552,
04280 558, 559, 565, 566, 572, 573, 577, 578, 304, 464,
04281 31, 163, 164, 169, 170, 467, 468, 469, 1080, 1385,
04282 1386, 1387, 1412, 1413, 1414, 10, 11, 483, 484, 485,
04283 10, 11, 489, 490, 491, 10, 11, 495, 496, 497,
04284 10, 11, 501, 502, 503, 10, 11, 507, 508, 509,
04285 10, 11, 513, 514, 515, 10, 11, 519, 520, 521,
04286 22, 525, 1075, 5, 5, 5, 5, 5, 311, 738,
04287 739, 10, 11, 645, 646, 647, 46, 48, 66, 76,
04288 94, 100, 308, 596, 597, 598, 599, 600, 605, 606,
04289 611, 612, 617, 618, 623, 624, 629, 630, 306, 544,
04290 10, 11, 547, 548, 549, 553, 554, 560, 561, 567,
04291 568, 574, 1385, 579, 1075, 1084, 1085, 3, 3, 10,
04292 11, 470, 471, 472, 469, 4, 61, 486, 4, 328,
04293 492, 4, 330, 498, 4, 332, 504, 4, 334, 510,
04294 4, 81, 516, 4, 97, 522, 1084, 10, 11, 526,
04295 527, 528, 123, 127, 131, 135, 139, 740, 741, 34,
04296 52, 66, 74, 84, 86, 98, 102, 104, 106, 108,
04297 310, 648, 649, 650, 651, 652, 657, 658, 663, 664,
04298 669, 670, 675, 676, 681, 682, 698, 699, 705, 706,
04299 712, 713, 719, 720, 724, 725, 308, 598, 10, 11,
04300 601, 602, 603, 10, 11, 607, 608, 609, 10, 11,
04301 613, 614, 615, 10, 11, 619, 620, 621, 10, 11,
04302 625, 626, 627, 631, 1075, 4, 91, 550, 10, 556,
04303 175, 176, 555, 1385, 1415, 1416, 1417, 10, 563, 562,
04304 1385, 1415, 10, 570, 569, 1385, 1415, 10, 575, 10,
04305 11, 580, 581, 582, 6, 8, 441, 442, 443, 444,
04306 1086, 8, 8, 57, 88, 473, 474, 475, 476, 61,
04307 328, 330, 332, 334, 81, 97, 6, 67, 335, 529,
04308 530, 531, 532, 10, 11, 743, 744, 745, 25, 206,
04309 209, 212, 742, 1078, 1347, 1353, 1358, 310, 650, 10,
04310 11, 653, 654, 655, 10, 11, 659, 660, 661, 10,
04311 11, 665, 666, 667, 10, 11, 671, 672, 673, 10,
04312 11, 677, 678, 679, 32, 683, 1081, 700, 701, 707,
04313 708, 714, 715, 721, 1385, 726, 1075, 4, 49, 604,
04314 6, 47, 610, 6, 101, 616, 4, 95, 622, 6,
04315 7, 77, 628, 1082, 10, 11, 632, 633, 634, 91,
04316 557, 1082, 3, 564, 1082, 571, 1082, 6, 576, 67,
04317 335, 583, 584, 585, 586, 1084, 57, 475, 477, 478,
04318 1084, 67, 531, 533, 534, 78, 312, 746, 747, 748,
04319 749, 1084, 8, 8, 8, 4, 85, 656, 4, 87,
04320 662, 4, 75, 668, 4, 35, 674, 4, 53, 680,
04321 1084, 10, 11, 684, 685, 686, 10, 703, 702, 1385,
04322 1415, 10, 710, 709, 1385, 1415, 10, 717, 716, 1385,
04323 1415, 10, 722, 10, 11, 727, 728, 729, 49, 47,
04324 101, 95, 77, 67, 335, 635, 636, 637, 638, 41,
04325 8, 43, 39, 37, 67, 585, 587, 588, 10, 11,
04326 480, 167, 168, 479, 1385, 1394, 1395, 1396, 10, 11,
04327 536, 177, 178, 535, 1385, 1394, 1418, 1419, 1420, 312,
04328 72, 748, 1048, 1049, 750, 751, 6, 6, 6, 6,
04329 85, 87, 75, 35, 53, 6, 92, 99, 687, 688,
04330 689, 690, 704, 1082, 711, 1082, 718, 1082, 6, 723,
04331 67, 335, 730, 731, 732, 733, 67, 637, 639, 640,
04332 10, 11, 590, 589, 1385, 1394, 1418, 89, 3, 336,
04333 3, 30, 1050, 1079, 10, 756, 16, 18, 33, 752,
04334 753, 754, 755, 1084, 8, 8, 8, 1084, 99, 689,
04335 691, 107, 109, 105, 103, 67, 732, 734, 735, 10,
04336 11, 642, 641, 1385, 1394, 1418, 336, 8, 8, 1084,
04337 10, 11, 1051, 1052, 1053, 84, 757, 758, 3, 3,
04338 1084, 10, 11, 161, 162, 692, 693, 694, 695, 1379,
04339 1380, 1381, 1385, 1412, 1415, 10, 11, 737, 736, 1385,
04340 1394, 1418, 336, 6, 73, 82, 1054, 1055, 1056, 1057,
04341 60, 773, 774, 759, 760, 761, 1080, 1385, 1412, 1084,
04342 1084, 6, 6, 7, 93, 696, 697, 3, 336, 1084,
04343 73, 1056, 1058, 1059, 301, 779, 780, 10, 11, 775,
04344 776, 777, 10, 11, 762, 763, 764, 761, 1084, 93,
04345 8, 10, 11, 1061, 1062, 1063, 160, 1060, 1350, 1379,
04346 1385, 1394, 297, 857, 858, 24, 781, 1077, 4, 61,
04347 778, 85, 88, 765, 766, 767, 768, 83, 152, 153,
04348 155, 1064, 1065, 1066, 1067, 1068, 1069, 8, 293, 919,
04349 920, 21, 859, 1074, 1084, 10, 11, 782, 783, 784,
04350 61, 85, 767, 769, 770, 5, 1070, 83, 1066, 6,
04351 277, 981, 982, 20, 921, 1071, 1084, 10, 11, 860,
04352 861, 862, 6, 144, 785, 786, 787, 10, 11, 772,
04353 771, 1385, 1412, 154, 8, 70, 1025, 1026, 28, 983,
04354 1072, 1084, 10, 11, 922, 923, 924, 6, 144, 863,
04355 864, 865, 1084, 302, 110, 799, 800, 213, 788, 1356,
04356 89, 79, 23, 1027, 1076, 1084, 10, 11, 984, 985,
04357 986, 6, 50, 925, 926, 927, 1084, 298, 44, 877,
04358 878, 210, 866, 1352, 44, 815, 816, 801, 1356, 8,
04359 10, 11, 789, 790, 791, 1084, 10, 11, 1028, 1029,
04360 1030, 6, 279, 987, 988, 1084, 294, 44, 939, 940,
04361 207, 928, 1346, 890, 10, 11, 879, 880, 881, 8,
04362 10, 11, 867, 868, 869, 828, 10, 11, 817, 818,
04363 819, 10, 11, 802, 803, 804, 6, 145, 299, 792,
04364 793, 794, 795, 6, 68, 71, 1031, 1032, 1033, 1034,
04365 1084, 1023, 29, 989, 1073, 952, 10, 11, 941, 942,
04366 943, 8, 10, 11, 929, 930, 931, 335, 891, 892,
04367 319, 882, 883, 1137, 1138, 6, 145, 295, 870, 871,
04368 872, 873, 335, 829, 830, 820, 821, 1137, 111, 299,
04369 805, 806, 807, 808, 8, 145, 794, 796, 1084, 71,
04370 1033, 1035, 1036, 118, 278, 1024, 1084, 10, 11, 990,
04371 991, 992, 335, 953, 954, 944, 945, 1137, 6, 51,
04372 291, 932, 933, 934, 935, 893, 894, 45, 315, 884,
04373 1143, 1144, 158, 1179, 1348, 8, 145, 872, 874, 831,
04374 832, 45, 822, 1143, 111, 807, 809, 10, 231, 797,
04375 798, 1369, 1394, 10, 11, 1038, 1039, 1040, 1037, 1350,
04376 1379, 1385, 1394, 1418, 6, 144, 994, 995, 955, 956,
04377 45, 946, 1143, 8, 51, 934, 936, 10, 11, 896,
04378 897, 898, 159, 165, 166, 171, 172, 183, 184, 895,
04379 1349, 1352, 1385, 1388, 1389, 1390, 1394, 1397, 1398, 1399,
04380 1406, 1407, 1408, 1412, 1418, 317, 885, 1149, 1150, 1179,
04381 8, 10, 11, 1139, 1140, 1141, 10, 875, 876, 1369,
04382 1394, 10, 11, 834, 835, 836, 185, 186, 833, 1349,
04383 1356, 1385, 1388, 1394, 1406, 1412, 1418, 1424, 1425, 1426,
04384 823, 1149, 10, 11, 810, 811, 812, 813, 1369, 1394,
04385 1082, 8, 69, 152, 153, 155, 1041, 1042, 1043, 1044,
04386 1045, 1046, 1084, 1002, 217, 996, 1351, 10, 11, 958,
04387 959, 960, 181, 182, 957, 1346, 1349, 1382, 1383, 1384,
04388 1385, 1388, 1394, 1406, 1412, 1418, 947, 1149, 10, 937,
04389 938, 1369, 1394, 150, 295, 336, 899, 900, 901, 902,
04390 909, 910, 911, 8, 3, 3, 3, 313, 886, 1155,
04391 1156, 1179, 10, 11, 1145, 1146, 1147, 6, 156, 1115,
04392 1116, 1123, 1142, 1082, 150, 299, 336, 837, 838, 839,
04393 840, 847, 848, 849, 3, 824, 1155, 4, 300, 814,
04394 300, 6, 5, 1047, 69, 1043, 280, 335, 993, 1003,
04395 1004, 8, 10, 11, 997, 998, 999, 150, 291, 336,
04396 961, 962, 963, 964, 971, 972, 973, 3, 948, 1155,
04397 1082, 336, 901, 903, 910, 912, 913, 6, 8, 8,
04398 8, 321, 887, 1161, 1162, 1179, 10, 11, 1151, 1152,
04399 1153, 1115, 1148, 8, 234, 1359, 148, 1117, 1118, 320,
04400 296, 336, 839, 841, 848, 850, 851, 8, 825, 1161,
04401 300, 8, 154, 1005, 1006, 6, 1001, 336, 963, 965,
04402 972, 974, 975, 8, 949, 1161, 292, 10, 11, 904,
04403 905, 906, 907, 1369, 1394, 10, 11, 915, 916, 917,
04404 914, 1348, 1385, 1418, 8, 323, 888, 1167, 1168, 1179,
04405 10, 11, 1157, 1158, 1159, 1115, 1154, 316, 8, 10,
04406 11, 1124, 1125, 1126, 1119, 1120, 10, 11, 842, 843,
04407 844, 845, 1369, 1394, 10, 11, 853, 854, 855, 852,
04408 1348, 1385, 1418, 826, 1167, 10, 11, 1008, 1009, 1010,
04409 191, 192, 1007, 1349, 1351, 1385, 1388, 1391, 1392, 1393,
04410 1394, 1406, 1412, 1418, 8, 145, 281, 1000, 1180, 1181,
04411 10, 11, 966, 967, 968, 969, 1369, 1394, 10, 11,
04412 977, 978, 979, 976, 1348, 1385, 1418, 950, 1167, 4,
04413 6, 7, 296, 908, 1083, 918, 1115, 325, 889, 1173,
04414 1174, 1179, 10, 11, 1163, 1164, 1165, 1115, 1160, 318,
04415 6, 4, 157, 10, 1122, 232, 233, 1121, 1370, 1372,
04416 300, 846, 1083, 856, 1115, 827, 1173, 150, 336, 1011,
04417 1012, 1013, 1014, 1015, 1180, 3, 1182, 1183, 292, 970,
04418 1083, 980, 1115, 951, 1173, 296, 151, 1179, 10, 11,
04419 1169, 1170, 1171, 1115, 1166, 314, 8, 157, 6, 8,
04420 8, 300, 151, 336, 1180, 1014, 1016, 1017, 8, 10,
04421 11, 1185, 1186, 1187, 195, 196, 202, 203, 228, 1184,
04422 1345, 1354, 1371, 1394, 1409, 1410, 1411, 1412, 292, 151,
04423 10, 11, 1175, 1176, 1177, 1115, 1172, 322, 149, 6,
04424 6, 10, 11, 1019, 1020, 1021, 1018, 1348, 1385, 1418,
04425 242, 1188, 1189, 1190, 3, 8, 8, 1084, 1115, 1178,
04426 324, 8, 8, 1022, 1115, 282, 1195, 1191, 1192, 8,
04427 6, 6, 6, 326, 151, 243, 253, 255, 257, 259,
04428 261, 263, 275, 1196, 1197, 1198, 1222, 1223, 1235, 1236,
04429 1262, 1263, 1280, 1281, 1293, 1294, 1311, 1312, 1315, 1316,
04430 10, 11, 1194, 199, 200, 218, 219, 220, 221, 222,
04431 223, 224, 225, 1193, 1360, 1361, 1362, 1363, 1364, 1373,
04432 1374, 1375, 1376, 1377, 1378, 8, 8, 1084, 1199, 1200,
04433 1224, 1225, 1237, 1238, 1264, 1265, 1282, 1283, 1295, 1296,
04434 173, 174, 1313, 1403, 1404, 1405, 201, 1317, 1344, 241,
04435 3, 8, 8, 8, 8, 8, 8, 8, 8, 10,
04436 197, 198, 205, 1201, 1355, 1400, 1401, 1402, 10, 1226,
04437 1355, 1400, 10, 1239, 1355, 1400, 10, 1266, 1355, 1400,
04438 10, 1284, 1355, 1400, 10, 1297, 1355, 1400, 3, 10,
04439 8, 10, 1318, 1084, 6, 6, 6, 6, 6, 6,
04440 6, 1082, 267, 1202, 1204, 1205, 3, 8, 1204, 1227,
04441 1204, 1240, 1204, 1267, 1204, 1285, 1204, 1298, 8, 281,
04442 285, 289, 405, 407, 409, 411, 413, 415, 417, 419,
04443 421, 423, 425, 427, 429, 431, 433, 435, 1501, 1502,
04444 1503, 1506, 1507, 1510, 1511, 1514, 1515, 1518, 1519, 1521,
04445 1522, 1524, 1525, 1527, 1528, 1530, 1531, 1534, 1535, 1539,
04446 1540, 1542, 1543, 1545, 1546, 1548, 1549, 1551, 1552, 1554,
04447 1557, 1558, 1560, 1561, 1563, 1564, 6, 247, 1320, 1321,
04448 8, 8, 8, 8, 8, 8, 8, 8, 269, 1203,
04449 1210, 1211, 10, 11, 1206, 1207, 1208, 8, 6, 1210,
04450 1228, 1210, 1241, 1210, 1268, 1210, 1286, 1210, 1299, 1555,
04451 276, 1314, 231, 1505, 231, 1509, 231, 1513, 231, 1517,
04452 1501, 1520, 1501, 1523, 351, 353, 355, 357, 359, 361,
04453 363, 365, 367, 369, 371, 373, 375, 377, 379, 381,
04454 383, 385, 387, 389, 391, 393, 395, 397, 399, 401,
04455 403, 1427, 1428, 1431, 1434, 1436, 1438, 1440, 1442, 1444,
04456 1446, 1448, 1450, 1452, 1454, 1456, 1458, 1459, 1461, 1463,
04457 1465, 1467, 1469, 1471, 1472, 1478, 1486, 1489, 1492, 1495,
04458 1498, 1526, 1501, 1529, 438, 1532, 1538, 1536, 1538, 10,
04459 11, 1541, 1501, 1544, 1501, 1547, 1501, 1550, 1501, 1553,
04460 1427, 1559, 1427, 1562, 1501, 1565, 8, 249, 1327, 1328,
04461 1322, 1348, 254, 271, 1216, 1217, 10, 11, 1212, 1213,
04462 1214, 1115, 1209, 8, 271, 1229, 1230, 256, 271, 1242,
04463 1243, 258, 271, 1269, 1270, 260, 271, 1287, 1288, 264,
04464 271, 1300, 1301, 262, 1556, 8, 10, 11, 1504, 8,
04465 10, 11, 1508, 8, 10, 11, 1512, 8, 10, 11,
04466 1516, 406, 1501, 1445, 1437, 1439, 1443, 1447, 1449, 1487,
04467 1499, 1457, 1441, 1464, 1451, 1453, 1455, 1479, 1462, 1493,
04468 1490, 1496, 1429, 1432, 1435, 1466, 1468, 1470, 434, 1427,
04469 1474, 436, 3, 10, 10, 414, 1501, 418, 1501, 1501,
04470 1501, 1427, 430, 1334, 1329, 1348, 10, 11, 1323, 1324,
04471 1325, 10, 11, 1218, 1219, 1220, 1115, 1215, 268, 10,
04472 11, 1231, 1232, 1233, 10, 11, 1244, 1245, 1246, 10,
04473 11, 1271, 1272, 1273, 10, 11, 1289, 1290, 1291, 10,
04474 11, 1302, 1303, 1304, 424, 1501, 6, 432, 6, 282,
04475 6, 286, 6, 290, 408, 1427, 1427, 1427, 1427, 1427,
04476 1427, 1488, 1500, 1427, 1427, 1427, 1427, 1427, 1427, 1482,
04477 1427, 1494, 1491, 1497, 10, 11, 1430, 10, 11, 1433,
04478 1427, 1501, 1501, 1501, 382, 1460, 10, 11, 440, 1412,
04479 1418, 1473, 1475, 1476, 8, 1501, 1533, 1501, 1537, 416,
04480 420, 422, 426, 1427, 244, 245, 1319, 1335, 1336, 10,
04481 11, 1330, 1331, 1332, 1115, 1326, 156, 1127, 1128, 1133,
04482 1221, 270, 1115, 1234, 1247, 1248, 1274, 1115, 1292, 1305,
04483 8, 8, 8, 8, 1427, 1427, 1427, 1427, 360, 362,
04484 364, 1427, 366, 1427, 368, 370, 1427, 374, 376, 378,
04485 10, 11, 231, 235, 1480, 1483, 1484, 1485, 384, 386,
04486 1427, 388, 1427, 390, 1427, 392, 394, 1427, 400, 402,
04487 404, 398, 3, 410, 412, 1427, 1337, 1338, 1115, 1333,
04488 248, 1359, 148, 1129, 1130, 272, 272, 272, 148, 1249,
04489 1250, 148, 272, 1275, 1276, 272, 148, 272, 1306, 1307,
04490 352, 354, 356, 358, 1427, 380, 1427, 8, 8, 396,
04491 1477, 1501, 10, 11, 1340, 1341, 1342, 226, 227, 1339,
04492 1365, 1366, 1409, 1412, 250, 10, 11, 1134, 1135, 1136,
04493 1131, 1372, 1251, 1252, 10, 11, 1277, 1278, 1279, 1308,
04494 372, 1481, 6, 1082, 8, 428, 1189, 1343, 1084, 1084,
04495 4, 157, 10, 1132, 10, 11, 1254, 1255, 1256, 214,
04496 236, 1253, 1357, 1368, 1427, 10, 179, 180, 1309, 1310,
04497 1370, 1372, 1421, 1422, 1423, 380, 8, 8, 1195, 246,
04498 6, 6, 157, 1082, 1257, 8, 8, 149, 6, 3,
04499 1084, 1084, 149, 149, 273, 1258, 1259, 6, 1082, 149,
04500 8, 235, 1260, 1367, 8, 8, 8, 10, 1261, 1082,
04501 6, 8, 274
04502 };
04503
04504 #define yyerrok (yyerrstatus = 0)
04505 #define yyclearin (yychar = YYEMPTY)
04506 #define YYEMPTY (-2)
04507 #define YYEOF 0
04508
04509 #define YYACCEPT goto yyacceptlab
04510 #define YYABORT goto yyabortlab
04511 #define YYERROR goto yyerrorlab
04512
04513
04514
04515
04516
04517
04518 #define YYFAIL goto yyerrlab
04519
04520 #define YYRECOVERING() (!!yyerrstatus)
04521
04522 #define YYBACKUP(Token, Value) \
04523 do \
04524 if (yychar == YYEMPTY && yylen == 1) \
04525 { \
04526 yychar = (Token); \
04527 yylval = (Value); \
04528 yytoken = YYTRANSLATE (yychar); \
04529 YYPOPSTACK (1); \
04530 goto yybackup; \
04531 } \
04532 else \
04533 { \
04534 yyerror (&yylloc, osresult, parserData, osglData, osnlData, YY_("syntax error: cannot back up")); \
04535 YYERROR; \
04536 } \
04537 while (YYID (0))
04538
04539
04540 #define YYTERROR 1
04541 #define YYERRCODE 256
04542
04543
04544
04545
04546
04547
04548 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
04549 #ifndef YYLLOC_DEFAULT
04550 # define YYLLOC_DEFAULT(Current, Rhs, N) \
04551 do \
04552 if (YYID (N)) \
04553 { \
04554 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
04555 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
04556 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
04557 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
04558 } \
04559 else \
04560 { \
04561 (Current).first_line = (Current).last_line = \
04562 YYRHSLOC (Rhs, 0).last_line; \
04563 (Current).first_column = (Current).last_column = \
04564 YYRHSLOC (Rhs, 0).last_column; \
04565 } \
04566 while (YYID (0))
04567 #endif
04568
04569
04570
04571
04572
04573
04574 #ifndef YY_LOCATION_PRINT
04575 # if YYLTYPE_IS_TRIVIAL
04576 # define YY_LOCATION_PRINT(File, Loc) \
04577 fprintf (File, "%d.%d-%d.%d", \
04578 (Loc).first_line, (Loc).first_column, \
04579 (Loc).last_line, (Loc).last_column)
04580 # else
04581 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
04582 # endif
04583 #endif
04584
04585
04586
04587
04588 #ifdef YYLEX_PARAM
04589 # define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM)
04590 #else
04591 # define YYLEX yylex (&yylval, &yylloc, scanner)
04592 #endif
04593
04594
04595 #if YYDEBUG
04596
04597 # ifndef YYFPRINTF
04598 # include <stdio.h>
04599 # define YYFPRINTF fprintf
04600 # endif
04601
04602 # define YYDPRINTF(Args) \
04603 do { \
04604 if (yydebug) \
04605 YYFPRINTF Args; \
04606 } while (YYID (0))
04607
04608 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
04609 do { \
04610 if (yydebug) \
04611 { \
04612 YYFPRINTF (stderr, "%s ", Title); \
04613 yy_symbol_print (stderr, \
04614 Type, Value, Location, osresult, parserData, osglData, osnlData); \
04615 YYFPRINTF (stderr, "\n"); \
04616 } \
04617 } while (YYID (0))
04618
04619
04620
04621
04622
04623
04624
04625 #if (defined __STDC__ || defined __C99__FUNC__ \
04626 || defined __cplusplus || defined _MSC_VER)
04627 static void
04628 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, OSResult *osresult, OSrLParserData *parserData, OSgLParserData *osglData, OSnLParserData *osnlData)
04629 #else
04630 static void
04631 yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, osresult, parserData, osglData, osnlData)
04632 FILE *yyoutput;
04633 int yytype;
04634 YYSTYPE const * const yyvaluep;
04635 YYLTYPE const * const yylocationp;
04636 OSResult *osresult;
04637 OSrLParserData *parserData;
04638 OSgLParserData *osglData;
04639 OSnLParserData *osnlData;
04640 #endif
04641 {
04642 if (!yyvaluep)
04643 return;
04644 YYUSE (yylocationp);
04645 YYUSE (osresult);
04646 YYUSE (parserData);
04647 YYUSE (osglData);
04648 YYUSE (osnlData);
04649 # ifdef YYPRINT
04650 if (yytype < YYNTOKENS)
04651 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
04652 # else
04653 YYUSE (yyoutput);
04654 # endif
04655 switch (yytype)
04656 {
04657 default:
04658 break;
04659 }
04660 }
04661
04662
04663
04664
04665
04666
04667 #if (defined __STDC__ || defined __C99__FUNC__ \
04668 || defined __cplusplus || defined _MSC_VER)
04669 static void
04670 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, OSResult *osresult, OSrLParserData *parserData, OSgLParserData *osglData, OSnLParserData *osnlData)
04671 #else
04672 static void
04673 yy_symbol_print (yyoutput, yytype, yyvaluep, yylocationp, osresult, parserData, osglData, osnlData)
04674 FILE *yyoutput;
04675 int yytype;
04676 YYSTYPE const * const yyvaluep;
04677 YYLTYPE const * const yylocationp;
04678 OSResult *osresult;
04679 OSrLParserData *parserData;
04680 OSgLParserData *osglData;
04681 OSnLParserData *osnlData;
04682 #endif
04683 {
04684 if (yytype < YYNTOKENS)
04685 YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
04686 else
04687 YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
04688
04689 YY_LOCATION_PRINT (yyoutput, *yylocationp);
04690 YYFPRINTF (yyoutput, ": ");
04691 yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, osresult, parserData, osglData, osnlData);
04692 YYFPRINTF (yyoutput, ")");
04693 }
04694
04695
04696
04697
04698
04699
04700 #if (defined __STDC__ || defined __C99__FUNC__ \
04701 || defined __cplusplus || defined _MSC_VER)
04702 static void
04703 yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
04704 #else
04705 static void
04706 yy_stack_print (yybottom, yytop)
04707 yytype_int16 *yybottom;
04708 yytype_int16 *yytop;
04709 #endif
04710 {
04711 YYFPRINTF (stderr, "Stack now");
04712 for (; yybottom <= yytop; yybottom++)
04713 {
04714 int yybot = *yybottom;
04715 YYFPRINTF (stderr, " %d", yybot);
04716 }
04717 YYFPRINTF (stderr, "\n");
04718 }
04719
04720 # define YY_STACK_PRINT(Bottom, Top) \
04721 do { \
04722 if (yydebug) \
04723 yy_stack_print ((Bottom), (Top)); \
04724 } while (YYID (0))
04725
04726
04727
04728
04729
04730
04731 #if (defined __STDC__ || defined __C99__FUNC__ \
04732 || defined __cplusplus || defined _MSC_VER)
04733 static void
04734 yy_reduce_print (YYSTYPE *yyvsp, YYLTYPE *yylsp, int yyrule, OSResult *osresult, OSrLParserData *parserData, OSgLParserData *osglData, OSnLParserData *osnlData)
04735 #else
04736 static void
04737 yy_reduce_print (yyvsp, yylsp, yyrule, osresult, parserData, osglData, osnlData)
04738 YYSTYPE *yyvsp;
04739 YYLTYPE *yylsp;
04740 int yyrule;
04741 OSResult *osresult;
04742 OSrLParserData *parserData;
04743 OSgLParserData *osglData;
04744 OSnLParserData *osnlData;
04745 #endif
04746 {
04747 int yynrhs = yyr2[yyrule];
04748 int yyi;
04749 unsigned long int yylno = yyrline[yyrule];
04750 YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
04751 yyrule - 1, yylno);
04752
04753 for (yyi = 0; yyi < yynrhs; yyi++)
04754 {
04755 YYFPRINTF (stderr, " $%d = ", yyi + 1);
04756 yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
04757 &(yyvsp[(yyi + 1) - (yynrhs)])
04758 , &(yylsp[(yyi + 1) - (yynrhs)]) , osresult, parserData, osglData, osnlData);
04759 YYFPRINTF (stderr, "\n");
04760 }
04761 }
04762
04763 # define YY_REDUCE_PRINT(Rule) \
04764 do { \
04765 if (yydebug) \
04766 yy_reduce_print (yyvsp, yylsp, Rule, osresult, parserData, osglData, osnlData); \
04767 } while (YYID (0))
04768
04769
04770
04771 int yydebug;
04772 #else
04773 # define YYDPRINTF(Args)
04774 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
04775 # define YY_STACK_PRINT(Bottom, Top)
04776 # define YY_REDUCE_PRINT(Rule)
04777 #endif
04778
04779
04780
04781 #ifndef YYINITDEPTH
04782 # define YYINITDEPTH 200
04783 #endif
04784
04785
04786
04787
04788
04789
04790
04791
04792 #ifndef YYMAXDEPTH
04793 # define YYMAXDEPTH 10000
04794 #endif
04795
04796
04797
04798 #if YYERROR_VERBOSE
04799
04800 # ifndef yystrlen
04801 # if defined __GLIBC__ && defined _STRING_H
04802 # define yystrlen strlen
04803 # else
04804
04805 #if (defined __STDC__ || defined __C99__FUNC__ \
04806 || defined __cplusplus || defined _MSC_VER)
04807 static YYSIZE_T
04808 yystrlen (const char *yystr)
04809 #else
04810 static YYSIZE_T
04811 yystrlen (yystr)
04812 const char *yystr;
04813 #endif
04814 {
04815 YYSIZE_T yylen;
04816 for (yylen = 0; yystr[yylen]; yylen++)
04817 continue;
04818 return yylen;
04819 }
04820 # endif
04821 # endif
04822
04823 # ifndef yystpcpy
04824 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
04825 # define yystpcpy stpcpy
04826 # else
04827
04828
04829 #if (defined __STDC__ || defined __C99__FUNC__ \
04830 || defined __cplusplus || defined _MSC_VER)
04831 static char *
04832 yystpcpy (char *yydest, const char *yysrc)
04833 #else
04834 static char *
04835 yystpcpy (yydest, yysrc)
04836 char *yydest;
04837 const char *yysrc;
04838 #endif
04839 {
04840 char *yyd = yydest;
04841 const char *yys = yysrc;
04842
04843 while ((*yyd++ = *yys++) != '\0')
04844 continue;
04845
04846 return yyd - 1;
04847 }
04848 # endif
04849 # endif
04850
04851 # ifndef yytnamerr
04852
04853
04854
04855
04856
04857
04858
04859 static YYSIZE_T
04860 yytnamerr (char *yyres, const char *yystr)
04861 {
04862 if (*yystr == '"')
04863 {
04864 YYSIZE_T yyn = 0;
04865 char const *yyp = yystr;
04866
04867 for (;;)
04868 switch (*++yyp)
04869 {
04870 case '\'':
04871 case ',':
04872 goto do_not_strip_quotes;
04873
04874 case '\\':
04875 if (*++yyp != '\\')
04876 goto do_not_strip_quotes;
04877
04878 default:
04879 if (yyres)
04880 yyres[yyn] = *yyp;
04881 yyn++;
04882 break;
04883
04884 case '"':
04885 if (yyres)
04886 yyres[yyn] = '\0';
04887 return yyn;
04888 }
04889 do_not_strip_quotes: ;
04890 }
04891
04892 if (! yyres)
04893 return yystrlen (yystr);
04894
04895 return yystpcpy (yyres, yystr) - yyres;
04896 }
04897 # endif
04898
04899
04900
04901
04902
04903
04904
04905
04906 static YYSIZE_T
04907 yysyntax_error (char *yyresult, int yystate, int yychar)
04908 {
04909 int yyn = yypact[yystate];
04910
04911 if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
04912 return 0;
04913 else
04914 {
04915 int yytype = YYTRANSLATE (yychar);
04916 YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
04917 YYSIZE_T yysize = yysize0;
04918 YYSIZE_T yysize1;
04919 int yysize_overflow = 0;
04920 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
04921 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
04922 int yyx;
04923
04924 # if 0
04925
04926
04927 YY_("syntax error, unexpected %s");
04928 YY_("syntax error, unexpected %s, expecting %s");
04929 YY_("syntax error, unexpected %s, expecting %s or %s");
04930 YY_("syntax error, unexpected %s, expecting %s or %s or %s");
04931 YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
04932 # endif
04933 char *yyfmt;
04934 char const *yyf;
04935 static char const yyunexpected[] = "syntax error, unexpected %s";
04936 static char const yyexpecting[] = ", expecting %s";
04937 static char const yyor[] = " or %s";
04938 char yyformat[sizeof yyunexpected
04939 + sizeof yyexpecting - 1
04940 + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
04941 * (sizeof yyor - 1))];
04942 char const *yyprefix = yyexpecting;
04943
04944
04945
04946 int yyxbegin = yyn < 0 ? -yyn : 0;
04947
04948
04949 int yychecklim = YYLAST - yyn + 1;
04950 int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
04951 int yycount = 1;
04952
04953 yyarg[0] = yytname[yytype];
04954 yyfmt = yystpcpy (yyformat, yyunexpected);
04955
04956 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
04957 if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
04958 {
04959 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
04960 {
04961 yycount = 1;
04962 yysize = yysize0;
04963 yyformat[sizeof yyunexpected - 1] = '\0';
04964 break;
04965 }
04966 yyarg[yycount++] = yytname[yyx];
04967 yysize1 = yysize + yytnamerr (0, yytname[yyx]);
04968 yysize_overflow |= (yysize1 < yysize);
04969 yysize = yysize1;
04970 yyfmt = yystpcpy (yyfmt, yyprefix);
04971 yyprefix = yyor;
04972 }
04973
04974 yyf = YY_(yyformat);
04975 yysize1 = yysize + yystrlen (yyf);
04976 yysize_overflow |= (yysize1 < yysize);
04977 yysize = yysize1;
04978
04979 if (yysize_overflow)
04980 return YYSIZE_MAXIMUM;
04981
04982 if (yyresult)
04983 {
04984
04985
04986
04987 char *yyp = yyresult;
04988 int yyi = 0;
04989 while ((*yyp = *yyf) != '\0')
04990 {
04991 if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
04992 {
04993 yyp += yytnamerr (yyp, yyarg[yyi++]);
04994 yyf += 2;
04995 }
04996 else
04997 {
04998 yyp++;
04999 yyf++;
05000 }
05001 }
05002 }
05003 return yysize;
05004 }
05005 }
05006 #endif
05007
05008
05009
05010
05011
05012
05013
05014 #if (defined __STDC__ || defined __C99__FUNC__ \
05015 || defined __cplusplus || defined _MSC_VER)
05016 static void
05017 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp, OSResult *osresult, OSrLParserData *parserData, OSgLParserData *osglData, OSnLParserData *osnlData)
05018 #else
05019 static void
05020 yydestruct (yymsg, yytype, yyvaluep, yylocationp, osresult, parserData, osglData, osnlData)
05021 const char *yymsg;
05022 int yytype;
05023 YYSTYPE *yyvaluep;
05024 YYLTYPE *yylocationp;
05025 OSResult *osresult;
05026 OSrLParserData *parserData;
05027 OSgLParserData *osglData;
05028 OSnLParserData *osnlData;
05029 #endif
05030 {
05031 YYUSE (yyvaluep);
05032 YYUSE (yylocationp);
05033 YYUSE (osresult);
05034 YYUSE (parserData);
05035 YYUSE (osglData);
05036 YYUSE (osnlData);
05037
05038 if (!yymsg)
05039 yymsg = "Deleting";
05040 YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
05041
05042 switch (yytype)
05043 {
05044
05045 default:
05046 break;
05047 }
05048 }
05049
05050
05051 #ifdef YYPARSE_PARAM
05052 #if defined __STDC__ || defined __cplusplus
05053 int yyparse (void *YYPARSE_PARAM);
05054 #else
05055 int yyparse ();
05056 #endif
05057 #else
05058 #if defined __STDC__ || defined __cplusplus
05059 int yyparse (OSResult *osresult, OSrLParserData *parserData, OSgLParserData *osglData, OSnLParserData *osnlData);
05060 #else
05061 int yyparse ();
05062 #endif
05063 #endif
05064
05065
05066
05067
05068
05069
05070
05071
05072
05073 #ifdef YYPARSE_PARAM
05074 #if (defined __STDC__ || defined __C99__FUNC__ \
05075 || defined __cplusplus || defined _MSC_VER)
05076 int
05077 yyparse (void *YYPARSE_PARAM)
05078 #else
05079 int
05080 yyparse (YYPARSE_PARAM)
05081 void *YYPARSE_PARAM;
05082 #endif
05083 #else
05084 #if (defined __STDC__ || defined __C99__FUNC__ \
05085 || defined __cplusplus || defined _MSC_VER)
05086 int
05087 yyparse (OSResult *osresult, OSrLParserData *parserData, OSgLParserData *osglData, OSnLParserData *osnlData)
05088 #else
05089 int
05090 yyparse (osresult, parserData, osglData, osnlData)
05091 OSResult *osresult;
05092 OSrLParserData *parserData;
05093 OSgLParserData *osglData;
05094 OSnLParserData *osnlData;
05095 #endif
05096 #endif
05097 {
05098
05099 int yychar;
05100
05101
05102 YYSTYPE yylval;
05103
05104
05105 YYLTYPE yylloc;
05106
05107
05108 int yynerrs;
05109
05110 int yystate;
05111
05112 int yyerrstatus;
05113
05114
05115
05116
05117
05118
05119
05120
05121
05122
05123 yytype_int16 yyssa[YYINITDEPTH];
05124 yytype_int16 *yyss;
05125 yytype_int16 *yyssp;
05126
05127
05128 YYSTYPE yyvsa[YYINITDEPTH];
05129 YYSTYPE *yyvs;
05130 YYSTYPE *yyvsp;
05131
05132
05133 YYLTYPE yylsa[YYINITDEPTH];
05134 YYLTYPE *yyls;
05135 YYLTYPE *yylsp;
05136
05137
05138 YYLTYPE yyerror_range[2];
05139
05140 YYSIZE_T yystacksize;
05141
05142 int yyn;
05143 int yyresult;
05144
05145 int yytoken;
05146
05147
05148 YYSTYPE yyval;
05149 YYLTYPE yyloc;
05150
05151 #if YYERROR_VERBOSE
05152
05153 char yymsgbuf[128];
05154 char *yymsg = yymsgbuf;
05155 YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
05156 #endif
05157
05158 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N))
05159
05160
05161
05162 int yylen = 0;
05163
05164 yytoken = 0;
05165 yyss = yyssa;
05166 yyvs = yyvsa;
05167 yyls = yylsa;
05168 yystacksize = YYINITDEPTH;
05169
05170 YYDPRINTF ((stderr, "Starting parse\n"));
05171
05172 yystate = 0;
05173 yyerrstatus = 0;
05174 yynerrs = 0;
05175 yychar = YYEMPTY;
05176
05177
05178
05179
05180
05181 yyssp = yyss;
05182 yyvsp = yyvs;
05183 yylsp = yyls;
05184
05185 #if YYLTYPE_IS_TRIVIAL
05186
05187 yylloc.first_line = yylloc.last_line = 1;
05188 yylloc.first_column = yylloc.last_column = 1;
05189 #endif
05190
05191 goto yysetstate;
05192
05193
05194
05195
05196 yynewstate:
05197
05198
05199 yyssp++;
05200
05201 yysetstate:
05202 *yyssp = yystate;
05203
05204 if (yyss + yystacksize - 1 <= yyssp)
05205 {
05206
05207 YYSIZE_T yysize = yyssp - yyss + 1;
05208
05209 #ifdef yyoverflow
05210 {
05211
05212
05213
05214 YYSTYPE *yyvs1 = yyvs;
05215 yytype_int16 *yyss1 = yyss;
05216 YYLTYPE *yyls1 = yyls;
05217
05218
05219
05220
05221
05222 yyoverflow (YY_("memory exhausted"),
05223 &yyss1, yysize * sizeof (*yyssp),
05224 &yyvs1, yysize * sizeof (*yyvsp),
05225 &yyls1, yysize * sizeof (*yylsp),
05226 &yystacksize);
05227
05228 yyls = yyls1;
05229 yyss = yyss1;
05230 yyvs = yyvs1;
05231 }
05232 #else
05233 # ifndef YYSTACK_RELOCATE
05234 goto yyexhaustedlab;
05235 # else
05236
05237 if (YYMAXDEPTH <= yystacksize)
05238 goto yyexhaustedlab;
05239 yystacksize *= 2;
05240 if (YYMAXDEPTH < yystacksize)
05241 yystacksize = YYMAXDEPTH;
05242
05243 {
05244 yytype_int16 *yyss1 = yyss;
05245 union yyalloc *yyptr =
05246 (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
05247 if (! yyptr)
05248 goto yyexhaustedlab;
05249 YYSTACK_RELOCATE (yyss_alloc, yyss);
05250 YYSTACK_RELOCATE (yyvs_alloc, yyvs);
05251 YYSTACK_RELOCATE (yyls_alloc, yyls);
05252 # undef YYSTACK_RELOCATE
05253 if (yyss1 != yyssa)
05254 YYSTACK_FREE (yyss1);
05255 }
05256 # endif
05257 #endif
05258
05259 yyssp = yyss + yysize - 1;
05260 yyvsp = yyvs + yysize - 1;
05261 yylsp = yyls + yysize - 1;
05262
05263 YYDPRINTF ((stderr, "Stack size increased to %lu\n",
05264 (unsigned long int) yystacksize));
05265
05266 if (yyss + yystacksize - 1 <= yyssp)
05267 YYABORT;
05268 }
05269
05270 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
05271
05272 if (yystate == YYFINAL)
05273 YYACCEPT;
05274
05275 goto yybackup;
05276
05277
05278
05279
05280 yybackup:
05281
05282
05283
05284
05285
05286 yyn = yypact[yystate];
05287 if (yyn == YYPACT_NINF)
05288 goto yydefault;
05289
05290
05291
05292
05293 if (yychar == YYEMPTY)
05294 {
05295 YYDPRINTF ((stderr, "Reading a token: "));
05296 yychar = YYLEX;
05297 }
05298
05299 if (yychar <= YYEOF)
05300 {
05301 yychar = yytoken = YYEOF;
05302 YYDPRINTF ((stderr, "Now at end of input.\n"));
05303 }
05304 else
05305 {
05306 yytoken = YYTRANSLATE (yychar);
05307 YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
05308 }
05309
05310
05311
05312 yyn += yytoken;
05313 if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
05314 goto yydefault;
05315 yyn = yytable[yyn];
05316 if (yyn <= 0)
05317 {
05318 if (yyn == 0 || yyn == YYTABLE_NINF)
05319 goto yyerrlab;
05320 yyn = -yyn;
05321 goto yyreduce;
05322 }
05323
05324
05325
05326 if (yyerrstatus)
05327 yyerrstatus--;
05328
05329
05330 YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
05331
05332
05333 yychar = YYEMPTY;
05334
05335 yystate = yyn;
05336 *++yyvsp = yylval;
05337 *++yylsp = yylloc;
05338 goto yynewstate;
05339
05340
05341
05342
05343
05344 yydefault:
05345 yyn = yydefact[yystate];
05346 if (yyn == 0)
05347 goto yyerrlab;
05348 goto yyreduce;
05349
05350
05351
05352
05353
05354 yyreduce:
05355
05356 yylen = yyr2[yyn];
05357
05358
05359
05360
05361
05362
05363
05364
05365
05366 yyval = yyvsp[1-yylen];
05367
05368
05369 YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen);
05370 YY_REDUCE_PRINT (yyn);
05371 switch (yyn)
05372 {
05373 case 4:
05374
05375 {
05376 #ifdef DEBUG
05377 yydebug = 1;
05378 #endif
05379 }
05380 break;
05381
05382 case 5:
05383
05384 {
05385 #ifdef DEBUG
05386 yydebug = 1;
05387 #endif
05388 parserData->parser_errors = "";
05389 parserData->suppressFurtherErrorMessages = false;
05390 parserData->ignoreDataAfterErrors = false;
05391 }
05392 break;
05393
05394 case 12:
05395
05396 {
05397 if (parserData->parser_errors != "")
05398 {
05399 parserData->parser_errors += ("\n\nOSrL input is either invalid or not well-formed.\n");
05400 osrlerror( NULL, osresult, parserData, osglData, osnlData, parserData->parser_errors);
05401 }
05402 }
05403 break;
05404
05405 case 14:
05406
05407 { parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "unexpected end of file, expecting </osol>");}
05408 break;
05409
05410 case 17:
05411
05412 {
05413 if (!osresult->setHeader(osglData->fileName, osglData->source,
05414 osglData->description, osglData->fileCreator, osglData->licence) )
05415 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "setHeader failed");
05416 }
05417 break;
05418
05419 case 20:
05420
05421 {
05422 parserData->generalStatusPresent = false;
05423 parserData->generalMessagePresent = false;
05424 parserData->generalServiceURIPresent = false;
05425 parserData->generalServiceNamePresent = false;
05426 parserData->generalInstanceNamePresent = false;
05427 parserData->generalJobIDPresent = false;
05428 parserData->generalSolverInvokedPresent = false;
05429 parserData->generalTimeStampPresent = false;
05430 parserData->otherGeneralResultsPresent = false;
05431 osresult->general = new GeneralResult();
05432 }
05433 break;
05434
05435 case 39:
05436
05437 {
05438 if (parserData->generalStatusPresent)
05439 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one generalStatus element allowed");
05440 if (osresult->general->generalStatus != NULL)
05441 osrlerror(NULL, NULL, parserData, osglData, osnlData, "generalStatus previously allocated");
05442 parserData->generalStatusPresent = true;
05443 parserData->numberAttributePresent = false;
05444 parserData->numberOf = 0;
05445 osglData->typePresent = false;
05446 osglData->type = "";
05447 osglData->descriptionPresent = false;
05448 osglData->description = "";
05449 }
05450 break;
05451
05452 case 40:
05453
05454 {
05455 if (!osglData->typePresent)
05456 osrlerror(NULL, NULL, parserData, osglData, osnlData, "type attribute must be present for generalStatus element");
05457 parserData->kounter = 0;
05458 }
05459 break;
05460
05461 case 43:
05462
05463 {
05464 if (osresult->setGeneralStatusType(osglData->type) == false)
05465 osrlerror(NULL, NULL, parserData, osglData, osnlData, "general status type does not match any legal value");
05466 }
05467 break;
05468
05469 case 44:
05470
05471 {
05472 osresult->setGeneralStatusDescription(osglData->description);
05473 }
05474 break;
05475
05476 case 45:
05477
05478 {
05479 if (osresult->setNumberOfGeneralSubstatuses(parserData->tempInt) == false)
05480 osrlerror(NULL, NULL, parserData, osglData, osnlData, "Attempting to reallocate substatus array. Potential loss of data.");
05481 parserData->numberOf = parserData->tempInt;
05482 parserData->kounter = 0;
05483 }
05484 break;
05485
05486 case 46:
05487
05488 { if (parserData->numberOf > 0)
05489 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <substatus> element");
05490 }
05491 break;
05492
05493 case 47:
05494
05495 { if (parserData->kounter != parserData->numberOf)
05496 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <substatus> elements than specified");
05497 }
05498 break;
05499
05500 case 54:
05501
05502 {
05503 parserData->kounter++;
05504 }
05505 break;
05506
05507 case 55:
05508
05509 {
05510 if (parserData->kounter >= parserData->numberOf)
05511 osrlerror( NULL, NULL, parserData, osglData, osnlData, "more <substatus> elements than specified");
05512 osglData->namePresent = false;
05513 osglData->descriptionPresent = false;
05514 osglData->name = "";
05515 osglData->description = "";
05516 }
05517 break;
05518
05519 case 56:
05520
05521 {
05522 if (!osglData->namePresent)
05523 osrlerror (NULL, NULL, parserData, osglData, osnlData, "<substatus> must have name attribute");
05524 }
05525 break;
05526
05527 case 59:
05528
05529 {
05530 if (osresult->setGeneralSubstatusName(parserData->kounter, osglData->name) == false)
05531 osrlerror(NULL, NULL, parserData, osglData, osnlData, "Error while setting <general> substatus name");
05532 }
05533 break;
05534
05535 case 60:
05536
05537 {
05538 if (osresult->setGeneralSubstatusDescription(parserData->kounter, osglData->description) == false)
05539 osrlerror(NULL, NULL, parserData, osglData, osnlData, "Error while setting <general> substatus description");
05540 }
05541 break;
05542
05543 case 64:
05544
05545 {
05546 if (parserData->generalMessagePresent)
05547 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one message element allowed");
05548 parserData->generalMessagePresent = true;
05549 }
05550 break;
05551
05552 case 70:
05553
05554 {osresult->setGeneralMessage((yyvsp[(1) - (1)].sval)); free((yyvsp[(1) - (1)].sval)); parserData->errorText = NULL;}
05555 break;
05556
05557 case 72:
05558
05559 {
05560 if (parserData->generalServiceURIPresent)
05561 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one serviceURI element allowed");
05562 parserData->generalServiceURIPresent = true;
05563 }
05564 break;
05565
05566 case 78:
05567
05568 {
05569 osresult->setServiceURI((yyvsp[(1) - (1)].sval)); free((yyvsp[(1) - (1)].sval)); parserData->errorText = NULL;
05570 }
05571 break;
05572
05573 case 80:
05574
05575 {
05576 if (parserData->generalServiceNamePresent)
05577 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one serviceName element allowed");
05578 parserData->generalServiceNamePresent = true;
05579 }
05580 break;
05581
05582 case 86:
05583
05584 {
05585 osresult->setServiceName((yyvsp[(1) - (1)].sval)); free((yyvsp[(1) - (1)].sval)); parserData->errorText = NULL;
05586 }
05587 break;
05588
05589 case 88:
05590
05591 {
05592 if (parserData->generalInstanceNamePresent)
05593 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one instanceName element allowed");
05594 parserData->generalInstanceNamePresent = true;
05595 }
05596 break;
05597
05598 case 94:
05599
05600 {
05601 osresult->setInstanceName((yyvsp[(1) - (1)].sval)); free((yyvsp[(1) - (1)].sval)); parserData->errorText = NULL;
05602 }
05603 break;
05604
05605 case 96:
05606
05607 {
05608 if (parserData->generalJobIDPresent)
05609 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one jobID element allowed");
05610 parserData->generalJobIDPresent = true;
05611 }
05612 break;
05613
05614 case 102:
05615
05616 {
05617 osresult->setJobID((yyvsp[(1) - (1)].sval)); free((yyvsp[(1) - (1)].sval)); parserData->errorText = NULL;
05618 }
05619 break;
05620
05621 case 104:
05622
05623 {
05624 if (parserData->generalSolverInvokedPresent)
05625 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one solverInvoked element allowed");
05626 parserData->generalSolverInvokedPresent = true;
05627 }
05628 break;
05629
05630 case 110:
05631
05632 {
05633 osresult->setSolverInvoked((yyvsp[(1) - (1)].sval)); free((yyvsp[(1) - (1)].sval)); parserData->errorText = NULL;
05634 }
05635 break;
05636
05637 case 112:
05638
05639 {
05640 if (parserData->generalTimeStampPresent)
05641 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one timeStamp element allowed");
05642 parserData->generalTimeStampPresent = true;
05643 }
05644 break;
05645
05646 case 118:
05647
05648 {
05649 osresult->setTimeStamp((yyvsp[(1) - (1)].sval)); free((yyvsp[(1) - (1)].sval)); parserData->errorText = NULL;
05650 }
05651 break;
05652
05653 case 120:
05654
05655 {
05656 if (parserData->otherGeneralResultsPresent)
05657 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one general other results element allowed");
05658 parserData->otherGeneralResultsPresent = true;
05659 }
05660 break;
05661
05662 case 121:
05663
05664 {
05665 if (parserData->tempInt < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of other general results cannot be negative");
05666 if (osresult->setNumberOfOtherGeneralResults(parserData->tempInt) == false)
05667 osrlerror(NULL, NULL, parserData, osglData, osnlData, "Attempting to reallocate other general results array. Potential loss of data.");
05668 parserData->numberOf = parserData->tempInt;
05669 parserData->kounter = 0;
05670 }
05671 break;
05672
05673 case 122:
05674
05675 {
05676 if (parserData->numberOf > 0)
05677 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <other> element");
05678 }
05679 break;
05680
05681 case 123:
05682
05683 {
05684 if (parserData->kounter < parserData->numberOf - 1)
05685 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <other> elements than specified");
05686 }
05687 break;
05688
05689 case 130:
05690
05691 {
05692 parserData->kounter++;
05693 }
05694 break;
05695
05696 case 131:
05697
05698 {
05699 if (parserData->kounter >= parserData->numberOf)
05700 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <other> elements than specified");
05701 osglData->namePresent = false;
05702 osglData->valuePresent = false;
05703 osglData->descriptionPresent = false;
05704 osglData->name = "";
05705 osglData->value = "";
05706 osglData->description = "";
05707 }
05708 break;
05709
05710 case 132:
05711
05712 {
05713 if (!osglData->namePresent)
05714 osrlerror (NULL, NULL, parserData, osglData, osnlData, "<other> must have name attribute");
05715 }
05716 break;
05717
05718 case 135:
05719
05720 {
05721 if (osglData->name.length() == 0)
05722 osrlerror(NULL, NULL, parserData, osglData, osnlData, "otherResult name cannot be empty");
05723 if (osresult->setOtherGeneralResultName(parserData->kounter, osglData->name) == false)
05724 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setGeneralOtherResultName failed");
05725 }
05726 break;
05727
05728 case 136:
05729
05730 {
05731 if (osresult->setOtherGeneralResultValue(parserData->kounter, osglData->value) == false)
05732 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setGeneralOtherResultValue failed");
05733 }
05734 break;
05735
05736 case 137:
05737
05738 {
05739 if (osresult->setOtherGeneralResultDescription(parserData->kounter, osglData->description) == false)
05740 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setGeneralOtherResultDescription failed");
05741 }
05742 break;
05743
05744 case 142:
05745
05746 {
05747 parserData->systemInformationPresent = false;
05748 parserData->systemAvailableDiskSpacePresent = false;
05749 parserData->systemAvailableMemoryPresent = false;
05750 parserData->systemAvailableCPUSpeedPresent = false;
05751 parserData->systemAvailableCPUNumberPresent = false;
05752 parserData->otherSystemResultsPresent = false;
05753 osresult->system = new SystemResult();
05754 }
05755 break;
05756
05757 case 158:
05758
05759 {
05760 if (parserData->systemInformationPresent)
05761 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one systemInformation element allowed");
05762 parserData->systemInformationPresent = true;
05763 }
05764 break;
05765
05766 case 164:
05767
05768 {
05769 osresult->setSystemInformation((yyvsp[(1) - (1)].sval));
05770 free((yyvsp[(1) - (1)].sval));
05771 parserData->errorText = NULL;
05772 }
05773 break;
05774
05775 case 166:
05776
05777 {
05778 if (parserData->systemAvailableDiskSpacePresent)
05779 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one availableDiskSpace element allowed");
05780 parserData->systemAvailableDiskSpacePresent = true;
05781 osglData->unitPresent = false;
05782 osglData->unit = "byte";
05783 osglData->descriptionPresent = false;
05784 osglData->description = "";
05785 }
05786 break;
05787
05788 case 170:
05789
05790 {
05791 if (osresult->setAvailableDiskSpaceUnit( osglData->unit) == false)
05792 osrlerror(NULL, NULL, parserData, osglData, osnlData, "availableDiskSpace unit not recognized");
05793 parserData->errorText = NULL;
05794 }
05795 break;
05796
05797 case 171:
05798
05799 {
05800 osresult->setAvailableDiskSpaceDescription( osglData->description);
05801 parserData->errorText = NULL;
05802 }
05803 break;
05804
05805 case 173:
05806
05807 {
05808 osresult->setAvailableDiskSpaceValue(parserData->tempVal);
05809 parserData->errorText = NULL;
05810 }
05811 break;
05812
05813 case 175:
05814
05815 {
05816 if (parserData->systemAvailableMemoryPresent)
05817 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one availableMemory element allowed");
05818 parserData->systemAvailableMemoryPresent = true;
05819 osglData->unitPresent = false;
05820 osglData->unit = "byte";
05821 osglData->descriptionPresent = false;
05822 osglData->description = "";
05823 }
05824 break;
05825
05826 case 179:
05827
05828 {
05829 if (osresult->setAvailableMemoryUnit( osglData->unit) == false)
05830 osrlerror(NULL, NULL, parserData, osglData, osnlData, "availableDiskSpace unit not recognized");
05831 parserData->errorText = NULL;
05832 }
05833 break;
05834
05835 case 180:
05836
05837 {
05838 osresult->setAvailableMemoryDescription( osglData->description);
05839 parserData->errorText = NULL;
05840 }
05841 break;
05842
05843 case 182:
05844
05845 {
05846 osresult->setAvailableMemoryValue(parserData->tempVal);
05847 parserData->errorText = NULL;
05848 }
05849 break;
05850
05851 case 184:
05852
05853 {
05854 if (parserData->systemAvailableCPUSpeedPresent)
05855 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one availableCPUSpeed element allowed");
05856 parserData->systemAvailableCPUSpeedPresent = true;
05857 osglData->unitPresent = false;
05858 osglData->unit = "hertz";
05859 osglData->descriptionPresent = false;
05860 osglData->description = "";
05861 }
05862 break;
05863
05864 case 188:
05865
05866 {
05867 if (osresult->setAvailableCPUSpeedUnit( osglData->unit) == false)
05868 osrlerror(NULL, NULL, parserData, osglData, osnlData, "available CPU Speed could not be set");
05869 parserData->errorText = NULL;
05870 }
05871 break;
05872
05873 case 189:
05874
05875 {
05876 osresult->setAvailableCPUSpeedDescription( osglData->description);
05877 parserData->errorText = NULL;
05878 }
05879 break;
05880
05881 case 191:
05882
05883 {
05884 osresult->setAvailableCPUSpeedValue(parserData->tempVal);
05885 parserData->errorText = NULL;
05886 }
05887 break;
05888
05889 case 193:
05890
05891 {
05892 if (parserData->systemAvailableCPUNumberPresent)
05893 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one availableCPUNumber element allowed");
05894 parserData->systemAvailableCPUNumberPresent = true;
05895 osglData->descriptionPresent = false;
05896 osglData->description = "";
05897 }
05898 break;
05899
05900 case 195:
05901
05902 {
05903 osresult->setAvailableCPUNumberDescription( osglData->description);
05904 parserData->errorText = NULL;
05905 }
05906 break;
05907
05908 case 197:
05909
05910 {
05911 osresult->setAvailableCPUNumberValue( (yyvsp[(1) - (1)].ival)); parserData->errorText = NULL;
05912 }
05913 break;
05914
05915 case 199:
05916
05917 {
05918 if (parserData->otherSystemResultsPresent)
05919 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one system other results element allowed");
05920 parserData->otherSystemResultsPresent = true;
05921 }
05922 break;
05923
05924 case 200:
05925
05926 {
05927 if (parserData->tempInt < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of other system results cannot be negative");
05928 if (osresult->setNumberOfOtherSystemResults(parserData->tempInt) == false)
05929 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setNumberOfOtherSystemResults failed");
05930 parserData->numberOf = parserData->tempInt;
05931 parserData->kounter = 0;
05932 }
05933 break;
05934
05935 case 201:
05936
05937 {
05938 if (parserData->numberOf > 0)
05939 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <other> element");
05940 }
05941 break;
05942
05943 case 202:
05944
05945 {
05946 if (parserData->kounter < parserData->numberOf - 1)
05947 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <other> elements than specified");
05948 }
05949 break;
05950
05951 case 209:
05952
05953 {
05954 parserData->kounter++;
05955 }
05956 break;
05957
05958 case 210:
05959
05960 {
05961 if (parserData->kounter >= parserData->numberOf)
05962 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <other> elements than specified");
05963 osglData->namePresent = false;
05964 osglData->valuePresent = false;
05965 osglData->descriptionPresent = false;
05966 osglData->name = "";
05967 osglData->value = "";
05968 osglData->description = "";
05969 }
05970 break;
05971
05972 case 211:
05973
05974 {
05975 if (!osglData->namePresent)
05976 osrlerror (NULL, NULL, parserData, osglData, osnlData, "<other> must have name attribute");
05977 }
05978 break;
05979
05980 case 214:
05981
05982 {
05983 if (osglData->name.length() == 0)
05984 osrlerror(NULL, NULL, parserData, osglData, osnlData, "otherResult name cannot be empty");
05985 if (osresult->setOtherSystemResultName(parserData->kounter, osglData->name) == false)
05986 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSystemOtherResultName failed");
05987 }
05988 break;
05989
05990 case 215:
05991
05992 {
05993 if (osresult->setOtherSystemResultValue(parserData->kounter, osglData->value) == false)
05994 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSystemOtherResultValue failed");
05995 }
05996 break;
05997
05998 case 216:
05999
06000 {
06001 if (osresult->setOtherSystemResultDescription(parserData->kounter, osglData->description) == false)
06002 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSystemOtherResultDescription failed");
06003 }
06004 break;
06005
06006 case 221:
06007
06008 {
06009 parserData->serviceCurrentStatePresent = false;
06010 parserData->serviceCurrentJobCountPresent = false;
06011 parserData->serviceTotalJobsSoFarPresent = false;
06012 parserData->timeServiceStartedPresent = false;
06013 parserData->serviceUtilizationPresent = false;
06014 parserData->otherServiceResultsPresent = false;
06015 osresult->service = new ServiceResult();
06016 }
06017 break;
06018
06019 case 237:
06020
06021 {
06022 if (parserData->serviceCurrentStatePresent)
06023 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one currentState element allowed");
06024 parserData->serviceCurrentStatePresent = true;
06025 }
06026 break;
06027
06028 case 243:
06029
06030 {
06031 parserData->tempStr = (yyvsp[(1) - (1)].sval); free((yyvsp[(1) - (1)].sval));
06032 if (osresult->setCurrentState(parserData->tempStr) == false)
06033 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setCurrentState failed; current system state not recognized");
06034 parserData->errorText = NULL;
06035 }
06036 break;
06037
06038 case 245:
06039
06040 {
06041 if (parserData->serviceCurrentJobCountPresent)
06042 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one currentJobCount element allowed");
06043 parserData->serviceCurrentJobCountPresent = true;
06044 }
06045 break;
06046
06047 case 251:
06048
06049 {
06050 osresult->setCurrentJobCount((yyvsp[(1) - (1)].ival)); parserData->errorText = NULL;
06051 }
06052 break;
06053
06054 case 253:
06055
06056 {
06057 if (parserData->serviceTotalJobsSoFarPresent)
06058 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one totalJobsSoFar element allowed");
06059 parserData->serviceTotalJobsSoFarPresent = true;
06060 }
06061 break;
06062
06063 case 259:
06064
06065 {
06066 osresult->setTotalJobsSoFar((yyvsp[(1) - (1)].ival)); parserData->errorText = NULL;
06067 }
06068 break;
06069
06070 case 261:
06071
06072 {
06073 if (parserData->timeServiceStartedPresent)
06074 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one timeServiceStarted element allowed");
06075 parserData->timeServiceStartedPresent = true;
06076 }
06077 break;
06078
06079 case 267:
06080
06081 {
06082 osresult->setTimeServiceStarted((yyvsp[(1) - (1)].sval)); free((yyvsp[(1) - (1)].sval)); parserData->errorText = NULL;
06083 }
06084 break;
06085
06086 case 269:
06087
06088 {
06089 if (parserData->serviceUtilizationPresent)
06090 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one serviceUtilization element allowed");
06091 parserData->serviceUtilizationPresent = true;
06092 }
06093 break;
06094
06095 case 275:
06096
06097 {
06098 if (osresult->setServiceUtilization( parserData->tempVal) == false)
06099 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setServiceUtilization failed");
06100 parserData->errorText = NULL;
06101 }
06102 break;
06103
06104 case 277:
06105
06106 {
06107 if (parserData->otherServiceResultsPresent)
06108 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one service other results element allowed");
06109 parserData->otherServiceResultsPresent = true;
06110 }
06111 break;
06112
06113 case 278:
06114
06115 {
06116 if (parserData->tempInt < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of other service results cannot be negative");
06117 if (osresult->setNumberOfOtherServiceResults(parserData->tempInt) == false)
06118 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setNumberOfOtherServiceResults failed");
06119 parserData->numberOf = parserData->tempInt;
06120 parserData->kounter = 0;
06121 }
06122 break;
06123
06124 case 279:
06125
06126 {
06127 if (parserData->numberOf > 0)
06128 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <other> element");
06129 }
06130 break;
06131
06132 case 280:
06133
06134 {
06135 if (parserData->kounter < parserData->numberOf - 1)
06136 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <other> elements than specified");
06137 }
06138 break;
06139
06140 case 287:
06141
06142 {
06143 parserData->kounter++;
06144 }
06145 break;
06146
06147 case 288:
06148
06149 {
06150 if (parserData->kounter >= parserData->numberOf)
06151 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <other> elements than specified");
06152 osglData->namePresent = false;
06153 osglData->valuePresent = false;
06154 osglData->descriptionPresent = false;
06155 osglData->name = "";
06156 osglData->value = "";
06157 osglData->description = "";
06158 }
06159 break;
06160
06161 case 289:
06162
06163 {
06164 if (!osglData->namePresent)
06165 osrlerror (NULL, NULL, parserData, osglData, osnlData, "<other> must have name attribute");
06166 }
06167 break;
06168
06169 case 292:
06170
06171 {
06172 if (osglData->name.length() == 0)
06173 osrlerror(NULL, NULL, parserData, osglData, osnlData, "otherResult name cannot be empty");
06174 if (osresult->setOtherServiceResultName(parserData->kounter, osglData->name) == false)
06175 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setServiceOtherResultName failed");
06176 }
06177 break;
06178
06179 case 293:
06180
06181 {
06182 if (osresult->setOtherServiceResultValue(parserData->kounter, osglData->value) == false)
06183 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setServiceOtherResultValue failed");
06184 }
06185 break;
06186
06187 case 294:
06188
06189 {
06190 if (osresult->setOtherServiceResultDescription(parserData->kounter, osglData->description) == false)
06191 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setServiceOtherResultDescription failed");
06192 }
06193 break;
06194
06195 case 299:
06196
06197 {
06198 parserData->jobStatusPresent = false;
06199 parserData->jobSubmitTimePresent = false;
06200 parserData->scheduledStartTimePresent = false;
06201 parserData->actualStartTimePresent = false;
06202 parserData->jobEndTimePresent = false;
06203 parserData->jobTimingInformationPresent = false;
06204 parserData->jobUsedDiskSpacePresent = false;
06205 parserData->jobUsedMemoryPresent = false;
06206 parserData->jobUsedCPUSpeedPresent = false;
06207 parserData->jobUsedCPUNumberPresent = false;
06208 parserData->otherJobResultsPresent = false;
06209 osresult->job = new JobResult();
06210 }
06211 break;
06212
06213 case 320:
06214
06215 {
06216 if (parserData->jobStatusPresent)
06217 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one job status element allowed");
06218 parserData->jobStatusPresent = true;
06219 }
06220 break;
06221
06222 case 326:
06223
06224 {
06225 parserData->tempStr = (yyvsp[(1) - (1)].sval); free((yyvsp[(1) - (1)].sval));
06226 if (osresult->setJobStatus(parserData->tempStr) == false)
06227 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setJobStatus failed");
06228 parserData->errorText = NULL;
06229 }
06230 break;
06231
06232 case 328:
06233
06234 {
06235 if (parserData->jobSubmitTimePresent)
06236 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one submitTime element allowed");
06237 parserData->jobSubmitTimePresent = true;
06238 }
06239 break;
06240
06241 case 334:
06242
06243 {
06244 osresult->setJobSubmitTime((yyvsp[(1) - (1)].sval)); free((yyvsp[(1) - (1)].sval)); parserData->errorText = NULL;
06245 }
06246 break;
06247
06248 case 336:
06249
06250 {
06251 if (parserData->scheduledStartTimePresent)
06252 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one scheduledStartTime element allowed");
06253 parserData->scheduledStartTimePresent = true;
06254 }
06255 break;
06256
06257 case 342:
06258
06259 {
06260 osresult->setScheduledStartTime((yyvsp[(1) - (1)].sval)); free((yyvsp[(1) - (1)].sval)); parserData->errorText = NULL;
06261 }
06262 break;
06263
06264 case 344:
06265
06266 {
06267 if (parserData->actualStartTimePresent)
06268 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one actualStartTime element allowed");
06269 parserData->actualStartTimePresent = true;
06270 }
06271 break;
06272
06273 case 350:
06274
06275 {
06276 osresult->setActualStartTime((yyvsp[(1) - (1)].sval)); free((yyvsp[(1) - (1)].sval)); parserData->errorText = NULL;
06277 }
06278 break;
06279
06280 case 352:
06281
06282 {
06283 if (parserData->jobEndTimePresent)
06284 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one job endTime element allowed");
06285 parserData->jobEndTimePresent = true;
06286 }
06287 break;
06288
06289 case 358:
06290
06291 {
06292 osresult->setJobEndTime((yyvsp[(1) - (1)].sval)); free((yyvsp[(1) - (1)].sval)); parserData->errorText = NULL;
06293 }
06294 break;
06295
06296 case 360:
06297
06298 {
06299 if (parserData->jobTimingInformationPresent)
06300 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one timingInformation element allowed");
06301 parserData->jobTimingInformationPresent = true;
06302 }
06303 break;
06304
06305 case 361:
06306
06307 {
06308 if (parserData->tempInt < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of time measurements cannot be negative");
06309 if (osresult->setNumberOfTimes(parserData->tempInt) == false)
06310 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setNumberOfTimes failed");
06311 parserData->numberOfTimes = parserData->tempInt;
06312 parserData->ivar = 0;
06313 }
06314 break;
06315
06316 case 362:
06317
06318 {
06319 if (parserData->numberOfTimes > 0)
06320 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <time> element");
06321 }
06322 break;
06323
06324 case 363:
06325
06326 {
06327 if (parserData->ivar != parserData->numberOfTimes)
06328 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <time> elements than specified");
06329 }
06330 break;
06331
06332 case 371:
06333
06334 {
06335 if (parserData->ivar >= parserData->numberOfTimes)
06336 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <time> elements than specified");
06337 osglData->unitPresent = false;
06338 osglData->typePresent = false;
06339 osglData->categoryPresent = false;
06340 osglData->descriptionPresent = false;
06341 osglData->unit = "second";
06342 osglData->type = "elapsedTime";
06343 osglData->category = "total";
06344 osglData->description = "";
06345 }
06346 break;
06347
06348 case 383:
06349
06350 {
06351 if (osresult->setTimingInformation(parserData->ivar, osglData->type, osglData->category,
06352 osglData->unit, osglData->description, parserData->timeValue) == false)
06353 osrlerror(NULL, NULL, parserData, osglData, osnlData, "timing information could not be stored");
06354 parserData->ivar++;
06355 }
06356 break;
06357
06358 case 384:
06359
06360 { parserData->timeValue = (yyvsp[(1) - (1)].dval); }
06361 break;
06362
06363 case 385:
06364
06365 { parserData->timeValue = (yyvsp[(1) - (1)].ival); }
06366 break;
06367
06368 case 387:
06369
06370 {
06371 if (parserData->jobUsedDiskSpacePresent)
06372 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one usedDiskSpace element allowed");
06373 parserData->jobUsedDiskSpacePresent = true;
06374 osglData->unitPresent = false;
06375 osglData->unit = "byte";
06376 osglData->descriptionPresent = false;
06377 osglData->description = "";
06378 }
06379 break;
06380
06381 case 391:
06382
06383 {
06384 if (osresult->setUsedDiskSpaceUnit( osglData->unit) == false)
06385 osrlerror(NULL, NULL, parserData, osglData, osnlData, "availableDiskSpace unit could not be set");
06386 parserData->errorText = NULL;
06387 }
06388 break;
06389
06390 case 392:
06391
06392 {
06393 osresult->setUsedDiskSpaceDescription( osglData->description);
06394 parserData->errorText = NULL;
06395 }
06396 break;
06397
06398 case 394:
06399
06400 {
06401 osresult->setUsedDiskSpaceValue(parserData->tempVal);
06402 parserData->errorText = NULL;
06403 }
06404 break;
06405
06406 case 396:
06407
06408 {
06409 if (parserData->jobUsedMemoryPresent)
06410 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one usedMemory element allowed");
06411 parserData->jobUsedMemoryPresent = true;
06412 osglData->unitPresent = false;
06413 osglData->unit = "byte";
06414 osglData->descriptionPresent = false;
06415 osglData->description = "";
06416 }
06417 break;
06418
06419 case 400:
06420
06421 {
06422 if (osresult->setUsedMemoryUnit( osglData->unit) == false)
06423 osrlerror(NULL, NULL, parserData, osglData, osnlData, "usedMemory unit could not be set");
06424 parserData->errorText = NULL;
06425 }
06426 break;
06427
06428 case 401:
06429
06430 {
06431 osresult->setUsedMemoryDescription( osglData->description);
06432 parserData->errorText = NULL;
06433 }
06434 break;
06435
06436 case 403:
06437
06438 {
06439 osresult->setUsedMemoryValue(parserData->tempVal);
06440 parserData->errorText = NULL;
06441 }
06442 break;
06443
06444 case 405:
06445
06446 {
06447 if (parserData->jobUsedCPUSpeedPresent)
06448 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one usedCPUSpeed element allowed");
06449 parserData->jobUsedCPUSpeedPresent = true;
06450 osglData->unitPresent = false;
06451 osglData->unit = "hertz";
06452 osglData->descriptionPresent = false;
06453 osglData->description = "";
06454 }
06455 break;
06456
06457 case 409:
06458
06459 {
06460 if (osresult->setUsedCPUSpeedUnit( osglData->unit) == false)
06461 osrlerror(NULL, NULL, parserData, osglData, osnlData, "availableCPUSpeed unit could not be set");
06462 parserData->errorText = NULL;
06463 }
06464 break;
06465
06466 case 410:
06467
06468 {
06469 osresult->setUsedCPUSpeedDescription( osglData->description);
06470 parserData->errorText = NULL;
06471 }
06472 break;
06473
06474 case 412:
06475
06476 {
06477 osresult->setUsedCPUSpeedValue(parserData->tempVal);
06478 parserData->errorText = NULL;
06479 }
06480 break;
06481
06482 case 414:
06483
06484 {
06485 if (parserData->jobUsedCPUNumberPresent)
06486 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one usedCPUNumber element allowed");
06487 parserData->jobUsedCPUNumberPresent = true;
06488 osglData->descriptionPresent = false;
06489 osglData->description = "";
06490 }
06491 break;
06492
06493 case 416:
06494
06495 {
06496 osresult->setUsedCPUNumberDescription( osglData->description);
06497 parserData->errorText = NULL;
06498 }
06499 break;
06500
06501 case 418:
06502
06503 {
06504 osresult->setUsedCPUNumberValue( (yyvsp[(1) - (1)].ival)); parserData->errorText = NULL;
06505 }
06506 break;
06507
06508 case 420:
06509
06510 {
06511 if (parserData->otherJobResultsPresent)
06512 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one job other results element allowed");
06513 parserData->otherJobResultsPresent = true;
06514 }
06515 break;
06516
06517 case 421:
06518
06519 {
06520 if (parserData->tempInt < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of other job results cannot be negative");
06521 if (osresult->setNumberOfOtherJobResults(parserData->tempInt) == false)
06522 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setNumberOfOtherJobResults failed");
06523 parserData->numberOf = parserData->tempInt;
06524 parserData->kounter = 0;
06525 }
06526 break;
06527
06528 case 422:
06529
06530 {
06531 if (parserData->numberOf > 0)
06532 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <other> element");
06533 }
06534 break;
06535
06536 case 423:
06537
06538 {
06539 if (parserData->kounter < parserData->numberOf - 1)
06540 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <other> elements than specified");
06541 }
06542 break;
06543
06544 case 430:
06545
06546 {
06547 parserData->kounter++;
06548 }
06549 break;
06550
06551 case 431:
06552
06553 {
06554 if (parserData->kounter >= parserData->numberOf)
06555 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <other> elements than specified");
06556 osglData->namePresent = false;
06557 osglData->valuePresent = false;
06558 osglData->descriptionPresent = false;
06559 osglData->name = "";
06560 osglData->value = "";
06561 osglData->description = "";
06562 }
06563 break;
06564
06565 case 432:
06566
06567 {
06568 if (!osglData->namePresent)
06569 osrlerror (NULL, NULL, parserData, osglData, osnlData, "<other> must have name attribute");
06570 }
06571 break;
06572
06573 case 435:
06574
06575 {
06576 if (osglData->name.length() == 0)
06577 osrlerror(NULL, NULL, parserData, osglData, osnlData, "otherResult name cannot be empty");
06578 if (osresult->setOtherJobResultName(parserData->kounter, osglData->name) == false)
06579 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setJobOtherResultName failed");
06580 }
06581 break;
06582
06583 case 436:
06584
06585 {
06586 if (osresult->setOtherJobResultValue(parserData->kounter, osglData->value) == false)
06587 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setJobOtherResultValue failed");
06588 }
06589 break;
06590
06591 case 437:
06592
06593 {
06594 if (osresult->setOtherJobResultDescription(parserData->kounter, osglData->description) == false)
06595 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setJobOtherResultDescription failed");
06596 }
06597 break;
06598
06599 case 442:
06600
06601 {
06602 parserData->numberAttributePresent = false;
06603 parserData->nVarPresent = false;
06604 parserData->nObjPresent = false;
06605 parserData->nConPresent = false;
06606 }
06607 break;
06608
06609 case 443:
06610
06611 {
06612 if (!parserData->numberAttributePresent)
06613 osrlerror (NULL, NULL, parserData, osglData, osnlData, "numberOfSolutions was never set");
06614 }
06615 break;
06616
06617 case 446:
06618
06619 {
06620 parserData->numberOfSolutions = parserData->tempInt;
06621 if (osresult->setSolutionNumber(parserData->tempInt) == false)
06622 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSolutionNumber failed");
06623 parserData->solutionIdx = 0;
06624 }
06625 break;
06626
06627 case 447:
06628
06629 {
06630 if (osresult->setVariableNumber(osglData->numberOfVariables) == false)
06631 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setVariableNumber failed");
06632 }
06633 break;
06634
06635 case 448:
06636
06637 {
06638 if (osresult->setConstraintNumber(osglData->numberOfConstraints) == false)
06639 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setConstraintNumber failed");
06640 }
06641 break;
06642
06643 case 449:
06644
06645 {
06646 if (osresult->setObjectiveNumber(osglData->numberOfObjectives) == false)
06647 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setObjectiveNumber failed");
06648 }
06649 break;
06650
06651 case 450:
06652
06653 {
06654 if (parserData->numberOfSolutions > 0)
06655 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <solution> element");
06656 }
06657 break;
06658
06659 case 451:
06660
06661 {
06662 if (parserData->solutionIdx != parserData->numberOfSolutions)
06663 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <solution> elements than specified");
06664 }
06665 break;
06666
06667 case 459:
06668
06669 {
06670 if (parserData->solutionIdx >= parserData->numberOfSolutions)
06671 osrlerror(NULL, NULL, parserData, osglData, osnlData, "too many solutions");
06672 parserData->idxAttributePresent = false;
06673 parserData->nameAttributePresent = false;
06674 parserData->weightedObjAttributePresent = false;
06675 }
06676 break;
06677
06678 case 466:
06679
06680 {
06681 if (parserData->idxAttributePresent)
06682 osrlerror(NULL, NULL, parserData, osglData, osnlData, "target objective idx previously set");
06683 parserData->idxAttributePresent = true;
06684 if((yyvsp[(3) - (4)].ival) >= 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "target objective index must be negative");
06685 if (osresult->setSolutionTargetObjectiveIdx(parserData->solutionIdx, (yyvsp[(3) - (4)].ival)) == false)
06686 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSolutionTargetObjectiveIdx failed");
06687 }
06688 break;
06689
06690 case 467:
06691
06692 {
06693 if (parserData->nameAttributePresent)
06694 osrlerror(NULL, NULL, parserData, osglData, osnlData, "target objective name previously set");
06695 parserData->nameAttributePresent = true;
06696 parserData->tempStr = (yyvsp[(2) - (3)].sval); free((yyvsp[(2) - (3)].sval));
06697 if (osresult->setSolutionTargetObjectiveName(parserData->solutionIdx, parserData->tempStr) == false)
06698 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSolutionTargetObjectiveName failed");
06699 }
06700 break;
06701
06702 case 468:
06703
06704 {
06705 if (parserData->weightedObjAttributePresent)
06706 osrlerror(NULL, NULL, parserData, osglData, osnlData, "weighted objective attribute previously set");
06707 parserData->weightedObjAttributePresent = true;
06708 parserData->tempStr = (yyvsp[(2) - (3)].sval); free((yyvsp[(2) - (3)].sval));
06709 if (parserData->tempStr == "true")
06710 {
06711 if (osresult->setSolutionWeightedObjectives(parserData->solutionIdx, true) == false)
06712 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSolutionWeightedObjectives failed");
06713 }
06714 else if (parserData->tempStr == "false")
06715 {
06716 if (osresult->setSolutionWeightedObjectives(parserData->solutionIdx, false) == false)
06717 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSolutionWeightedObjectives failed");
06718 }
06719 else
06720 osrlerror(NULL, NULL, parserData, osglData, osnlData, "weightedobjectives must be true or false");
06721 }
06722 break;
06723
06724 case 469:
06725
06726 {
06727 parserData->solutionIdx++;
06728 }
06729 break;
06730
06731 case 471:
06732
06733 {
06734 osglData->typePresent = false;
06735 osglData->type = "";
06736 osglData->description = "";
06737 osglData->descriptionPresent = false;
06738 parserData->numberAttributePresent = false;
06739 parserData->numberOf = 0;
06740 }
06741 break;
06742
06743 case 472:
06744
06745 {
06746 if (!osglData->typePresent)
06747 osrlerror(NULL, NULL, parserData, osglData, osnlData, "type attribute must be present for solution status element");
06748 }
06749 break;
06750
06751 case 475:
06752
06753 {
06754 if (osresult->setSolutionStatusType(parserData->solutionIdx, osglData->type) == false)
06755 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSolutionStatusType failed");
06756 }
06757 break;
06758
06759 case 476:
06760
06761 {
06762 if (osresult->setSolutionStatusDescription(parserData->solutionIdx, osglData->description) == false)
06763 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSolutionStatusDescription failed");
06764 }
06765 break;
06766
06767 case 477:
06768
06769 {
06770 if (osresult->setNumberOfSolutionSubstatuses(parserData->solutionIdx, parserData->tempInt) == false)
06771 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setNumberOfSolutionSubstatuses failed");
06772 parserData->numberOf = parserData->tempInt;
06773 parserData->kounter = 0;
06774 }
06775 break;
06776
06777 case 478:
06778
06779 {
06780 if (parserData->numberOf > 0)
06781 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <substatus> element");
06782 }
06783 break;
06784
06785 case 479:
06786
06787 {
06788 if (parserData->kounter != parserData->numberOf)
06789 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <substatus> elements than specified");
06790 }
06791 break;
06792
06793 case 486:
06794
06795 {
06796 parserData->kounter++;
06797 }
06798 break;
06799
06800 case 487:
06801
06802 {
06803 if (parserData->kounter >= parserData->numberOf)
06804 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <substatus> elements than specified");
06805 osglData->typePresent = false;
06806 osglData->type = "";
06807 osglData->descriptionPresent = false;
06808 osglData->description = "";
06809 }
06810 break;
06811
06812 case 488:
06813
06814 {
06815 if (!osglData->typePresent)
06816 osrlerror (NULL, NULL, parserData, osglData, osnlData, "<substatus> must have type attribute");
06817 }
06818 break;
06819
06820 case 491:
06821
06822 {
06823 if (osresult->setSolutionSubstatusType(parserData->solutionIdx, parserData->kounter,
06824 osglData->type) == false)
06825 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSolutionSubstatusType failed");
06826 }
06827 break;
06828
06829 case 492:
06830
06831 {
06832 if (osresult->setSolutionSubstatusDescription(parserData->solutionIdx, parserData->kounter,
06833 osglData->description) == false)
06834 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSolutionSubstatusDescription failed");
06835 }
06836 break;
06837
06838 case 503:
06839
06840 {
06841 parserData->tempStr = (yyvsp[(1) - (1)].sval);
06842 free((yyvsp[(1) - (1)].sval));
06843 osresult->setSolutionMessage(parserData->solutionIdx, parserData->tempStr);
06844 parserData->errorText = NULL;
06845 }
06846 break;
06847
06848 case 506:
06849
06850 {
06851 parserData->numberOfOtherVariableResults = 0;
06852 osresult->optimization->solution[parserData->solutionIdx]->variables = new VariableSolution();
06853 }
06854 break;
06855
06856 case 508:
06857
06858 {
06859 if (osresult->setNumberOfOtherVariableResults(parserData->solutionIdx, parserData->tempInt) == false)
06860 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setNumberOfOtherVariableResults failed");
06861 parserData->numberOfOtherVariableResults = parserData->tempInt;
06862 parserData->iOther = 0;
06863 }
06864 break;
06865
06866 case 516:
06867
06868 {
06869 osglData->numberOfVarPresent = false;
06870 }
06871 break;
06872
06873 case 517:
06874
06875 {
06876 if (osresult->setNumberOfVarValues(parserData->solutionIdx, osglData->numberOfVar) == false)
06877 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setNumberOfVarValues failed");
06878 parserData->kounter = 0;
06879 }
06880 break;
06881
06882 case 518:
06883
06884 {
06885 if (osglData->numberOfVar > 0)
06886 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <var> element");
06887 }
06888 break;
06889
06890 case 519:
06891
06892 {
06893 if (parserData->kounter != osglData->numberOfVar)
06894 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <var> elements than specified");
06895 }
06896 break;
06897
06898 case 526:
06899
06900 {
06901 if (!osglData->idxPresent)
06902 osrlerror(NULL, NULL, parserData, osglData, osnlData, "idx attribute not set");
06903 if (osresult->setVarValue(parserData->solutionIdx, parserData->kounter,
06904 osglData->idx, osglData->name, parserData->tempVal) == false)
06905 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setVarValue failed");
06906 parserData->kounter++;
06907 }
06908 break;
06909
06910 case 527:
06911
06912 {
06913 if (parserData->kounter >= osglData->numberOfVar)
06914 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <var> elements than specified");
06915 osglData->idxPresent = false;
06916 osglData->namePresent = false;
06917 osglData->name = "";
06918 }
06919 break;
06920
06921 case 535:
06922
06923 {
06924 osglData->numberOfVarPresent = false;
06925 }
06926 break;
06927
06928 case 536:
06929
06930 {
06931 if (osresult->setNumberOfVarValuesString(parserData->solutionIdx, osglData->numberOfVar) == false)
06932 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setNumberOfVarValuesString failed");
06933 parserData->kounter = 0;
06934 }
06935 break;
06936
06937 case 537:
06938
06939 {
06940 if (osglData->numberOfVar > 0)
06941 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <var> element");
06942 }
06943 break;
06944
06945 case 538:
06946
06947 {
06948 if (parserData->kounter != osglData->numberOfVar)
06949 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <var> elements than specified");
06950 }
06951 break;
06952
06953 case 545:
06954
06955 {
06956 if (!osglData->idxPresent)
06957 osrlerror(NULL, NULL, parserData, osglData, osnlData, "idx attribute not set");
06958 if (osresult->setVarValueString(parserData->solutionIdx, parserData->kounter,
06959 osglData->idx, osglData->name, parserData->tempStr) == false)
06960 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setVarValueString failed");
06961 parserData->kounter++;
06962 }
06963 break;
06964
06965 case 546:
06966
06967 {
06968 if (parserData->kounter >= osglData->numberOfVar)
06969 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <var> elements than specified");
06970 osglData->idxPresent = false;
06971 osglData->namePresent = false;
06972 osglData->name = "";
06973 }
06974 break;
06975
06976 case 551:
06977
06978 {parserData->tempStr = "";}
06979 break;
06980
06981 case 556:
06982
06983 {
06984 parserData->tempStr = (yyvsp[(1) - (1)].sval); free((yyvsp[(1) - (1)].sval));
06985 }
06986 break;
06987
06988 case 559:
06989
06990 {
06991 osresult->optimization->solution[parserData->solutionIdx]->variables->basisStatus = new BasisStatus();
06992 }
06993 break;
06994
06995 case 566:
06996
06997 {
06998 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_variables, ENUM_BASIS_STATUS_basic, osglData->osglIntArray, osglData->numberOfEl) != true)
06999 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set variables basic failed");
07000 delete[] osglData->osglIntArray;
07001 osglData->osglIntArray = NULL;
07002 osglData->numberOfEl = 0;
07003 }
07004 break;
07005
07006 case 568:
07007
07008 {
07009 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_variables, ENUM_BASIS_STATUS_atLower, osglData->osglIntArray, osglData->numberOfEl) != true)
07010 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set variables atLower failed");
07011 delete[] osglData->osglIntArray;
07012 osglData->osglIntArray = NULL;
07013 osglData->numberOfEl = 0;
07014 }
07015 break;
07016
07017 case 570:
07018
07019 {
07020 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_variables, ENUM_BASIS_STATUS_atUpper, osglData->osglIntArray, osglData->numberOfEl) != true)
07021 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set variables atUpper failed");
07022 delete[] osglData->osglIntArray;
07023 osglData->osglIntArray = NULL;
07024 osglData->numberOfEl = 0;
07025 }
07026 break;
07027
07028 case 572:
07029
07030 {
07031 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_variables, ENUM_BASIS_STATUS_atEquality, osglData->osglIntArray, osglData->numberOfEl) != true)
07032 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set variables atEquality failed");
07033 delete[] osglData->osglIntArray;
07034 osglData->osglIntArray = NULL;
07035 osglData->numberOfEl = 0;
07036 }
07037 break;
07038
07039 case 574:
07040
07041 {
07042 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_variables, ENUM_BASIS_STATUS_isFree, osglData->osglIntArray, osglData->numberOfEl) != true)
07043 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set variables isFree failed");
07044 delete[] osglData->osglIntArray;
07045 osglData->osglIntArray = NULL;
07046 osglData->numberOfEl = 0;
07047 }
07048 break;
07049
07050 case 576:
07051
07052 {
07053 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_variables, ENUM_BASIS_STATUS_superbasic, osglData->osglIntArray, osglData->numberOfEl) != true)
07054 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set variables superbasic failed");
07055 delete[] osglData->osglIntArray;
07056 osglData->osglIntArray = NULL;
07057 osglData->numberOfEl = 0;
07058 }
07059 break;
07060
07061 case 578:
07062
07063 {
07064 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_variables, ENUM_BASIS_STATUS_unknown, osglData->osglIntArray, osglData->numberOfEl) != true)
07065 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set variables unknown failed");
07066 delete[] osglData->osglIntArray;
07067 osglData->osglIntArray = NULL;
07068 osglData->numberOfEl = 0;
07069 }
07070 break;
07071
07072 case 581:
07073
07074 {
07075 parserData->iOther++;
07076 }
07077 break;
07078
07079 case 582:
07080
07081 {
07082 if (parserData->iOther >= parserData->numberOfOtherVariableResults)
07083 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <otherVariableResults> than specified");
07084 osglData->namePresent = false;
07085 osglData->typePresent = false;
07086 osglData->valuePresent = false;
07087 osglData->solverPresent = false;
07088 osglData->categoryPresent = false;
07089 osglData->descriptionPresent = false;
07090 osglData->numberOfVarPresent = false;
07091 osglData->varTypePresent = false;
07092 osglData->name = "";
07093 osglData->type = "";
07094 osglData->value = "";
07095 osglData->solver = "";
07096 osglData->category = "";
07097 osglData->description = "";
07098 osglData->varType = "";
07099 osglData->numberOfEnumerationsPresent = false;
07100 osglData->enumTypePresent = false;
07101 osglData->enumType = "";
07102 }
07103 break;
07104
07105 case 583:
07106
07107 {
07108 if(!osglData->namePresent)
07109 osrlerror(NULL, NULL, parserData, osglData, osnlData, "other element requires name attribute");
07110 }
07111 break;
07112
07113 case 586:
07114
07115 {
07116 if (osresult->setOtherVariableResultNumberOfVar(parserData->solutionIdx,
07117 parserData->iOther,
07118 osglData->numberOfVar) == false)
07119 osrlerror(NULL, NULL, parserData, osglData, osnlData,
07120 "setOtherVariableResultNumberOfVar failed");
07121 parserData->kounter = 0;
07122 }
07123 break;
07124
07125 case 587:
07126
07127 {
07128 if (osresult->setOtherVariableResultNumberOfEnumerations(parserData->solutionIdx,
07129 parserData->iOther,
07130 osglData->numberOfEnumerations) == false)
07131 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherVariableResultNumberOfEnumerations failed");
07132 parserData->kounter = 0;
07133 }
07134 break;
07135
07136 case 588:
07137
07138 {
07139 if (osresult->setOtherVariableResultValue(parserData->solutionIdx, parserData->iOther,
07140 osglData->value) == false)
07141 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherVariableResultValue failed");
07142 }
07143 break;
07144
07145 case 589:
07146
07147 {
07148 if (osresult->setOtherVariableResultSolver(parserData->solutionIdx, parserData->iOther,
07149 osglData->solver) == false)
07150 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherVariableResultSolver failed");
07151 }
07152 break;
07153
07154 case 590:
07155
07156 {
07157 if (osresult->setOtherVariableResultName(parserData->solutionIdx, parserData->iOther,
07158 osglData->name) == false)
07159 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherVariableResultName failed");
07160 }
07161 break;
07162
07163 case 591:
07164
07165 {
07166 if (osresult->setOtherVariableResultType(parserData->solutionIdx, parserData->iOther,
07167 osglData->type) == false)
07168 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherVariableResultType failed");
07169 }
07170 break;
07171
07172 case 592:
07173
07174 {
07175 if (osresult->setOtherVariableResultVarType(parserData->solutionIdx, parserData->iOther,
07176 osglData->varType) == false)
07177 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherVariableResultVarType failed");
07178 }
07179 break;
07180
07181 case 593:
07182
07183 {
07184 if (osresult->setOtherVariableResultEnumType(parserData->solutionIdx, parserData->iOther,
07185 osglData->enumType) == false)
07186 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherVariableResultEnumType failed");
07187 }
07188 break;
07189
07190 case 594:
07191
07192 {
07193 if (osresult->setOtherVariableResultDescription(parserData->solutionIdx, parserData->iOther,
07194 osglData->description) == false)
07195 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherVariableResultDescription failed");
07196 }
07197 break;
07198
07199 case 604:
07200
07201 {
07202 if (!osglData->idxPresent)
07203 osrlerror(NULL, NULL, parserData, osglData, osnlData, "idx attribute not set");
07204 parserData->kounter++;
07205 }
07206 break;
07207
07208 case 605:
07209
07210 {
07211 if (parserData->kounter >= osglData->numberOfVar)
07212 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <var> elements than specified");
07213 osglData->idxPresent = false;
07214 osglData->namePresent = false;
07215 osglData->name = "" ;
07216 }
07217 break;
07218
07219 case 608:
07220
07221 {
07222 if (osresult->setOtherVariableResultVarIdx(parserData->solutionIdx, parserData->iOther,
07223 parserData->kounter, osglData->idx) == false)
07224 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherVariableResultVarIdx failed");
07225 }
07226 break;
07227
07228 case 609:
07229
07230 {
07231 if (osresult->setOtherVariableResultVarName(parserData->solutionIdx, parserData->iOther,
07232 parserData->kounter, osglData->name) == false)
07233 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherVariableResultVarName failed");
07234 }
07235 break;
07236
07237 case 615:
07238
07239 {
07240 if (osresult->setOtherVariableResultVar(parserData->solutionIdx, parserData->iOther,
07241 parserData->kounter, parserData->tempStr)
07242 == false)
07243 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherVariableResultVar failed");
07244 }
07245 break;
07246
07247 case 618:
07248
07249 {
07250 if (osresult->setOtherOptionOrResultEnumeration(parserData->solutionIdx, parserData->iOther,
07251 ENUM_PROBLEM_COMPONENT_variables, parserData->kounter, osglData->value,
07252 osglData->description, osglData->osglIntArray, osglData->numberOfEl) != true)
07253 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set other variable option failed");
07254 delete[] osglData->osglIntArray;
07255 osglData->osglIntArray = NULL;
07256 parserData->kounter++;
07257 }
07258 break;
07259
07260 case 619:
07261
07262 {
07263 osglData->numberOfElPresent = false;
07264 osglData->numberOfEl = 0;
07265 osglData->valuePresent = false;
07266 osglData->value = "";
07267 osglData->descriptionPresent = false;
07268 osglData->description = "";
07269 }
07270 break;
07271
07272 case 620:
07273
07274 {
07275 if(!osglData->namePresent)
07276 osrlerror(NULL, NULL, parserData, osglData, osnlData, "other element enumeration requires name attribute");
07277 }
07278 break;
07279
07280 case 623:
07281
07282 {
07283 osglData->osglCounter = 0;
07284 osglData->osglIntArray = new int[osglData->numberOfEl];
07285 }
07286 break;
07287
07288 case 633:
07289
07290 {
07291 parserData->numberOfOtherObjectiveResults = 0;
07292 parserData->iOther = 0;
07293 osresult->optimization->solution[parserData->solutionIdx]->objectives = new ObjectiveSolution();
07294 }
07295 break;
07296
07297 case 635:
07298
07299 {
07300 parserData->numberOfOtherObjectiveResults = parserData->tempInt;
07301 if (osresult->setNumberOfOtherObjectiveResults(parserData->solutionIdx, parserData->tempInt) == false)
07302 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setNumberOfOtherObjectiveResults failed");
07303 parserData->iOther = 0;
07304 }
07305 break;
07306
07307 case 643:
07308
07309 {
07310 osglData->numberOfObjPresent = false;
07311 }
07312 break;
07313
07314 case 644:
07315
07316 {
07317 if (osresult->setNumberOfObjValues(parserData->solutionIdx, osglData->numberOfObj) == false)
07318 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setNumberOfObjValues failed");
07319 parserData->kounter = 0;
07320 }
07321 break;
07322
07323 case 645:
07324
07325 {
07326 if (osglData->numberOfObj > 0)
07327 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <obj> element");
07328 }
07329 break;
07330
07331 case 646:
07332
07333 {
07334 if (parserData->kounter != osglData->numberOfObj)
07335 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <obj> elements than specified");
07336 }
07337 break;
07338
07339 case 653:
07340
07341 {
07342 if (osresult->setObjValue(parserData->solutionIdx, parserData->kounter,
07343 osglData->idx, osglData->name, parserData->tempVal) == false)
07344 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setObjValue failed");
07345 parserData->kounter++;
07346 }
07347 break;
07348
07349 case 654:
07350
07351 {
07352 if (parserData->kounter >= osglData->numberOfObj)
07353 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <obj> elements than specified");
07354 osglData->idxPresent = false;
07355 osglData->idx = -1;
07356 osglData->namePresent = false;
07357 osglData->name = "" ;
07358 }
07359 break;
07360
07361 case 662:
07362
07363 {
07364 osresult->optimization->solution[parserData->solutionIdx]->objectives->basisStatus = new BasisStatus();
07365 }
07366 break;
07367
07368 case 669:
07369
07370 {
07371 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_objectives, ENUM_BASIS_STATUS_basic, osglData->osglIntArray, osglData->numberOfEl) != true)
07372 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set objectives basic failed");
07373 delete[] osglData->osglIntArray;
07374 osglData->osglIntArray = NULL;
07375 osglData->numberOfEl = 0;
07376 }
07377 break;
07378
07379 case 671:
07380
07381 {
07382 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_objectives, ENUM_BASIS_STATUS_atLower, osglData->osglIntArray, osglData->numberOfEl) != true)
07383 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set objectives atLower failed");
07384 delete[] osglData->osglIntArray;
07385 osglData->osglIntArray = NULL;
07386 osglData->numberOfEl = 0;
07387 }
07388 break;
07389
07390 case 673:
07391
07392 {
07393 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_objectives, ENUM_BASIS_STATUS_atUpper, osglData->osglIntArray, osglData->numberOfEl) != true)
07394 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set objectives atUpper failed");
07395 delete[] osglData->osglIntArray;
07396 osglData->osglIntArray = NULL;
07397 osglData->numberOfEl = 0;
07398 }
07399 break;
07400
07401 case 675:
07402
07403 {
07404 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_objectives, ENUM_BASIS_STATUS_atEquality, osglData->osglIntArray, osglData->numberOfEl) != true)
07405 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set objectives atEquality failed");
07406 delete[] osglData->osglIntArray;
07407 osglData->osglIntArray = NULL;
07408 osglData->numberOfEl = 0;
07409 }
07410 break;
07411
07412 case 677:
07413
07414 {
07415 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_objectives, ENUM_BASIS_STATUS_isFree, osglData->osglIntArray, osglData->numberOfEl) != true)
07416 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set objectives isFree failed");
07417 delete[] osglData->osglIntArray;
07418 osglData->osglIntArray = NULL;
07419 osglData->numberOfEl = 0;
07420 }
07421 break;
07422
07423 case 679:
07424
07425 {
07426 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_objectives, ENUM_BASIS_STATUS_superbasic, osglData->osglIntArray, osglData->numberOfEl) != true)
07427 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set objectives superbasic failed");
07428 delete[] osglData->osglIntArray;
07429 osglData->osglIntArray = NULL;
07430 osglData->numberOfEl = 0;
07431 }
07432 break;
07433
07434 case 681:
07435
07436 {
07437 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_objectives, ENUM_BASIS_STATUS_unknown, osglData->osglIntArray, osglData->numberOfEl) != true)
07438 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set objectives unknown failed");
07439 delete[] osglData->osglIntArray;
07440 osglData->osglIntArray = NULL;
07441 osglData->numberOfEl = 0;
07442 }
07443 break;
07444
07445 case 684:
07446
07447 {
07448 parserData->iOther++;
07449 }
07450 break;
07451
07452 case 685:
07453
07454 {
07455 if (parserData->iOther >= parserData->numberOfOtherObjectiveResults)
07456 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <otherObjectiveResults> than specified");
07457 osglData->namePresent = false;
07458 osglData->typePresent = false;
07459 osglData->valuePresent = false;
07460 osglData->solverPresent = false;
07461 osglData->categoryPresent = false;
07462 osglData->descriptionPresent = false;
07463 osglData->numberOfObjPresent = false;
07464 osglData->objTypePresent = false;
07465 osglData->name = "";
07466 osglData->type = "";
07467 osglData->value = "";
07468 osglData->solver = "";
07469 osglData->category = "";
07470 osglData->description = "";
07471 osglData->objType = "";
07472 osglData->numberOfEnumerationsPresent = false;
07473 osglData->enumTypePresent = false;
07474 osglData->enumType = "";
07475 }
07476 break;
07477
07478 case 686:
07479
07480 {
07481 if(!osglData->namePresent)
07482 osrlerror(NULL, NULL, parserData, osglData, osnlData, "other element requires name attribute");
07483 }
07484 break;
07485
07486 case 689:
07487
07488 {
07489 if (osresult->setOtherObjectiveResultNumberOfObj(parserData->solutionIdx,
07490 parserData->iOther,
07491 osglData->numberOfObj) == false)
07492 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherObjectiveResultNumberOfObj failed");
07493 parserData->kounter = 0;
07494 }
07495 break;
07496
07497 case 690:
07498
07499 {
07500 if (osresult->setOtherObjectiveResultNumberOfEnumerations(parserData->solutionIdx,
07501 parserData->iOther,
07502 osglData->numberOfEnumerations) == false)
07503 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherObjectiveResultNumberOfEnumerations failed");
07504 parserData->kounter = 0;
07505 }
07506 break;
07507
07508 case 691:
07509
07510 {
07511 if (osresult->setOtherObjectiveResultValue(parserData->solutionIdx, parserData->iOther,
07512 osglData->value) == false)
07513 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherObjectiveResultValue failed");
07514 }
07515 break;
07516
07517 case 692:
07518
07519 {
07520 if (osresult->setOtherObjectiveResultSolver(parserData->solutionIdx, parserData->iOther,
07521 osglData->solver) == false)
07522 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherObjectiveResultSolver failed");
07523 }
07524 break;
07525
07526 case 693:
07527
07528 {
07529 if (osresult->setOtherObjectiveResultName(parserData->solutionIdx, parserData->iOther,
07530 osglData->name) == false)
07531 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherObjectiveResultName failed");
07532 }
07533 break;
07534
07535 case 694:
07536
07537 {
07538 if (osresult->setOtherObjectiveResultType(parserData->solutionIdx, parserData->iOther,
07539 osglData->type) == false)
07540 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherObjectiveResultType failed");
07541 }
07542 break;
07543
07544 case 695:
07545
07546 {
07547 if (osresult->setOtherObjectiveResultObjType(parserData->solutionIdx, parserData->iOther,
07548 osglData->objType) == false)
07549 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherObjectiveResultObjType failed");
07550 }
07551 break;
07552
07553 case 696:
07554
07555 {
07556 if (osresult->setOtherObjectiveResultEnumType(parserData->solutionIdx, parserData->iOther,
07557 osglData->enumType) == false)
07558 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherObjectiveResultEnumType failed");
07559 }
07560 break;
07561
07562 case 697:
07563
07564 {
07565 if (osresult->setOtherObjectiveResultDescription(parserData->solutionIdx,
07566 parserData->iOther,
07567 osglData->description) == false)
07568 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherObjectiveResultDescription failed");
07569 }
07570 break;
07571
07572 case 707:
07573
07574 {
07575 parserData->kounter++;
07576 }
07577 break;
07578
07579 case 708:
07580
07581 {
07582 if (parserData->kounter >= osglData->numberOfObj)
07583 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <obj> elements than specified");
07584 osglData->idxPresent = false;
07585 osglData->idx = -1;
07586 osglData->namePresent = false;
07587 osglData->name = "" ;
07588 }
07589 break;
07590
07591 case 711:
07592
07593 {
07594 if (osresult->setOtherObjectiveResultObjIdx(parserData->solutionIdx, parserData->iOther,
07595 parserData->kounter, osglData->idx) == false)
07596 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherObjectiveResultObjIdx failed");
07597 }
07598 break;
07599
07600 case 712:
07601
07602 {
07603 if (osresult->setOtherObjectiveResultObjName(parserData->solutionIdx, parserData->iOther,
07604 parserData->kounter, osglData->name) == false)
07605 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherObjectiveResultObjName failed");
07606 }
07607 break;
07608
07609 case 718:
07610
07611 {
07612 if (osresult->setOtherObjectiveResultObj(parserData->solutionIdx, parserData->iOther, parserData->kounter, parserData->tempStr) == false)
07613 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherObjectiveResultObj failed");
07614 }
07615 break;
07616
07617 case 721:
07618
07619 {
07620 if (osresult->setOtherOptionOrResultEnumeration(parserData->solutionIdx, parserData->iOther,
07621 ENUM_PROBLEM_COMPONENT_objectives, parserData->kounter, osglData->value,
07622 osglData->description, osglData->osglIntArray, osglData->numberOfEl) != true)
07623 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set other objective option failed");
07624 delete[] osglData->osglIntArray;
07625 osglData->osglIntArray = NULL;
07626 osglData->numberOfEl = 0;
07627 parserData->kounter++;
07628 }
07629 break;
07630
07631 case 722:
07632
07633 {
07634 osglData->numberOfElPresent = false;
07635 osglData->numberOfEl = 0;
07636 osglData->valuePresent = false;
07637 osglData->descriptionPresent = false;
07638 osglData->value = "";
07639 osglData->description = "";
07640 }
07641 break;
07642
07643 case 723:
07644
07645 {
07646 if(!osglData->namePresent)
07647 osrlerror(NULL, NULL, parserData, osglData, osnlData, "other element enumeration requires name attribute");
07648 }
07649 break;
07650
07651 case 726:
07652
07653 {
07654 osglData->osglCounter = 0;
07655 osglData->osglIntArray = new int[osglData->numberOfEl];
07656 }
07657 break;
07658
07659 case 736:
07660
07661 {
07662 parserData->numberOfOtherConstraintResults = 0;
07663 parserData->iOther = 0;
07664 osresult->optimization->solution[parserData->solutionIdx]->constraints = new ConstraintSolution();
07665 }
07666 break;
07667
07668 case 738:
07669
07670 {
07671 parserData->numberOfOtherConstraintResults = parserData->tempInt;
07672 if (osresult->setNumberOfOtherConstraintResults(parserData->solutionIdx, parserData->tempInt) == false)
07673 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setNumberOfOtherConstraintResults failed");
07674 parserData->iOther = 0;
07675 }
07676 break;
07677
07678 case 746:
07679
07680 {
07681 osglData->numberOfConPresent = false;
07682 }
07683 break;
07684
07685 case 747:
07686
07687 {
07688 if (osresult->setNumberOfDualValues(parserData->solutionIdx, osglData->numberOfCon) == false)
07689 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setNumberOfDualValues failed");
07690 parserData->kounter = 0;
07691 }
07692 break;
07693
07694 case 748:
07695
07696 {
07697 if (osglData->numberOfCon > 0)
07698 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <con> element");
07699 }
07700 break;
07701
07702 case 749:
07703
07704 {
07705 if (parserData->kounter != osglData->numberOfCon)
07706 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <con> elements than specified");
07707 }
07708 break;
07709
07710 case 756:
07711
07712 {
07713 if (osresult->setDualValue(parserData->solutionIdx, parserData->kounter,
07714 osglData->idx, osglData->name, parserData->tempVal ) == false)
07715 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setDualValue failed");
07716 parserData->kounter++;
07717 }
07718 break;
07719
07720 case 757:
07721
07722 {
07723 if (parserData->kounter >= osglData->numberOfCon)
07724 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <con> elements than specified");
07725 osglData->idxPresent = false;
07726 osglData->namePresent = false;
07727 osglData->name = "";
07728 }
07729 break;
07730
07731 case 765:
07732
07733 {
07734 osresult->optimization->solution[parserData->solutionIdx]->constraints->basisStatus = new BasisStatus();
07735 }
07736 break;
07737
07738 case 772:
07739
07740 {
07741 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_constraints, ENUM_BASIS_STATUS_basic, osglData->osglIntArray, osglData->numberOfEl) != true)
07742 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set slacks basic failed");
07743 delete[] osglData->osglIntArray;
07744 osglData->osglIntArray = NULL;
07745 osglData->numberOfEl = 0;
07746 }
07747 break;
07748
07749 case 774:
07750
07751 {
07752 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_constraints, ENUM_BASIS_STATUS_atLower, osglData->osglIntArray, osglData->numberOfEl) != true)
07753 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set slacks atLower failed");
07754 delete[] osglData->osglIntArray;
07755 osglData->osglIntArray = NULL;
07756 osglData->numberOfEl = 0;
07757 }
07758 break;
07759
07760 case 776:
07761
07762 {
07763 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_constraints, ENUM_BASIS_STATUS_atUpper, osglData->osglIntArray, osglData->numberOfEl) != true)
07764 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set slacks atUpper failed");
07765 delete[] osglData->osglIntArray;
07766 osglData->osglIntArray = NULL;
07767 osglData->numberOfEl = 0;
07768 }
07769 break;
07770
07771 case 778:
07772
07773 {
07774 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_constraints, ENUM_BASIS_STATUS_atEquality, osglData->osglIntArray, osglData->numberOfEl) != true)
07775 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set slacks atEquality failed");
07776 delete[] osglData->osglIntArray;
07777 osglData->osglIntArray = NULL;
07778 osglData->numberOfEl = 0;
07779 }
07780 break;
07781
07782 case 780:
07783
07784 {
07785 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_constraints, ENUM_BASIS_STATUS_isFree, osglData->osglIntArray, osglData->numberOfEl) != true)
07786 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set slacks isFree failed");
07787 delete[] osglData->osglIntArray;
07788 osglData->osglIntArray = NULL;
07789 osglData->numberOfEl = 0;
07790 }
07791 break;
07792
07793 case 782:
07794
07795 {
07796 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_constraints, ENUM_BASIS_STATUS_superbasic, osglData->osglIntArray, osglData->numberOfEl) != true)
07797 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set variables superbasic failed");
07798 delete[] osglData->osglIntArray;
07799 osglData->osglIntArray = NULL;
07800 osglData->numberOfEl = 0;
07801 }
07802 break;
07803
07804 case 784:
07805
07806 {
07807 if (osresult->setBasisStatus(parserData->solutionIdx, ENUM_PROBLEM_COMPONENT_constraints, ENUM_BASIS_STATUS_unknown, osglData->osglIntArray, osglData->numberOfEl) != true)
07808 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set slacks unknown failed");
07809 delete[] osglData->osglIntArray;
07810 osglData->osglIntArray = NULL;
07811 osglData->numberOfEl = 0;
07812 }
07813 break;
07814
07815 case 787:
07816
07817 {
07818 parserData->iOther++;
07819 }
07820 break;
07821
07822 case 788:
07823
07824 {
07825 if (parserData->iOther >= parserData->numberOfOtherConstraintResults)
07826 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <otherConstraintResults> than specified");
07827 osglData->namePresent = false;
07828 osglData->typePresent = false;
07829 osglData->valuePresent = false;
07830 osglData->solverPresent = false;
07831 osglData->categoryPresent = false;
07832 osglData->descriptionPresent = false;
07833 osglData->numberOfConPresent = false;
07834 osglData->conTypePresent = false;
07835 osglData->name = "";
07836 osglData->type = "";
07837 osglData->value = "";
07838 osglData->solver = "";
07839 osglData->category = "";
07840 osglData->description = "";
07841 osglData->conType = "";
07842 osglData->numberOfEnumerationsPresent = false;
07843 osglData->enumTypePresent = false;
07844 osglData->enumType = "";
07845 }
07846 break;
07847
07848 case 789:
07849
07850 {
07851 if (!osglData->namePresent)
07852 osrlerror(NULL, NULL, parserData, osglData, osnlData, "other element requires name attribute");
07853 }
07854 break;
07855
07856 case 792:
07857
07858 {
07859 if (osresult->setOtherConstraintResultNumberOfCon(parserData->solutionIdx,
07860 parserData->iOther,
07861 osglData->numberOfCon) == false)
07862 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherConstraintResultNumberOfCon failed");
07863 parserData->kounter = 0;
07864 }
07865 break;
07866
07867 case 793:
07868
07869 {
07870 if (osresult->setOtherConstraintResultNumberOfEnumerations(parserData->solutionIdx,
07871 parserData->iOther,
07872 osglData->numberOfEnumerations) == false)
07873 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherConstraintResultNumberOfEnumerations failed");
07874 parserData->kounter = 0;
07875 }
07876 break;
07877
07878 case 794:
07879
07880 {
07881 if (osresult->setOtherConstraintResultValue(parserData->solutionIdx, parserData->iOther,
07882 osglData->value) == false)
07883 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherConstraintResultValue failed");
07884 }
07885 break;
07886
07887 case 795:
07888
07889 {
07890 if (osresult->setOtherConstraintResultSolver(parserData->solutionIdx, parserData->iOther,
07891 osglData->solver) == false)
07892 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherConstraintResultSolver failed");
07893 }
07894 break;
07895
07896 case 796:
07897
07898 {
07899 if (osresult->setOtherConstraintResultName(parserData->solutionIdx, parserData->iOther,
07900 osglData->name) == false)
07901 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherConstraintResultName failed");
07902 }
07903 break;
07904
07905 case 797:
07906
07907 {
07908 if (osresult->setOtherConstraintResultType(parserData->solutionIdx, parserData->iOther,
07909 osglData->type) == false)
07910 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherConstraintResultType failed");
07911 }
07912 break;
07913
07914 case 798:
07915
07916 {
07917 if (osresult->setOtherConstraintResultConType(parserData->solutionIdx, parserData->iOther,
07918 osglData->conType) == false)
07919 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherConstraintResultConType failed");
07920 }
07921 break;
07922
07923 case 799:
07924
07925 {
07926 if (osresult->setOtherConstraintResultEnumType(parserData->solutionIdx, parserData->iOther,
07927 osglData->enumType) == false)
07928 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherConstraintResultEnumType failed");
07929 }
07930 break;
07931
07932 case 800:
07933
07934 {
07935 if (osresult->setOtherConstraintResultDescription(parserData->solutionIdx, parserData->iOther,
07936 osglData->description) == false)
07937 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherConstraintResultDescription failed");
07938 }
07939 break;
07940
07941 case 810:
07942
07943 {
07944 if (!osglData->idxPresent)
07945 osrlerror(NULL, NULL, parserData, osglData, osnlData, "idx attribute not set");
07946 parserData->kounter++;
07947 }
07948 break;
07949
07950 case 811:
07951
07952 {
07953 if (parserData->kounter >= osglData->numberOfCon)
07954 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <con> elements than specified");
07955 osglData->idxPresent = false;
07956 osglData->namePresent = false;
07957 osglData->name = "" ;
07958 }
07959 break;
07960
07961 case 814:
07962
07963 {
07964 if (osresult->setOtherConstraintResultConIdx(parserData->solutionIdx, parserData->iOther, parserData->kounter, osglData->idx) == false)
07965 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherConstraintResultConIdx failed");
07966 }
07967 break;
07968
07969 case 815:
07970
07971 {
07972 if (osresult->setOtherConstraintResultConName(parserData->solutionIdx, parserData->iOther,
07973 parserData->kounter, osglData->name) == false)
07974 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherConstraintResultConName failed");
07975 }
07976 break;
07977
07978 case 821:
07979
07980 {
07981 if (osresult->setOtherConstraintResultCon(parserData->solutionIdx, parserData->iOther,
07982 parserData->kounter, parserData->tempStr) == false)
07983 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherConstraintResultCon failed");
07984 }
07985 break;
07986
07987 case 824:
07988
07989 {
07990 if (osresult->setOtherOptionOrResultEnumeration(parserData->solutionIdx, parserData->iOther,
07991 ENUM_PROBLEM_COMPONENT_constraints, parserData->kounter, osglData->value,
07992 osglData->description, osglData->osglIntArray, osglData->numberOfEl) != true)
07993 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set other constraint option failed");
07994 delete[] osglData->osglIntArray;
07995 osglData->osglIntArray = NULL;
07996 osglData->numberOfEl = 0;
07997 parserData->kounter++;
07998 }
07999 break;
08000
08001 case 825:
08002
08003 {
08004 osglData->numberOfElPresent = false;
08005 osglData->numberOfEl = 0;
08006 osglData->valuePresent = false;
08007 osglData->value = "";
08008 osglData->descriptionPresent = false;
08009 osglData->description = "";
08010 }
08011 break;
08012
08013 case 826:
08014
08015 {
08016 if(!osglData->namePresent)
08017 osrlerror(NULL, NULL, parserData, osglData, osnlData, "other element enumeration requires name attribute");
08018 }
08019 break;
08020
08021 case 829:
08022
08023 {
08024 osglData->osglCounter = 0;
08025 osglData->osglIntArray = new int[osglData->numberOfEl];
08026 }
08027 break;
08028
08029 case 839:
08030
08031 {
08032 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming
08033 = new MatrixProgrammingSolution();
08034 }
08035 break;
08036
08037 case 841:
08038
08039 {
08040 parserData->numberOfOtherMatrixProgrammingResults = parserData->tempInt;
08041 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming
08042 ->numberOfOtherMatrixProgrammingResults = parserData->tempInt;
08043 }
08044 break;
08045
08046 case 847:
08047
08048 {
08049 if (osglData->matrixCounter < osglData->numberOfMatrixVar)
08050 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData,
08051 "actual number of matrixVar less than number attribute");
08052 }
08053 break;
08054
08055 case 848:
08056
08057 {
08058 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08059 = new MatrixVariableSolution();
08060 }
08061 break;
08062
08063 case 849:
08064
08065 {
08066 parserData->numberOfOtherMatrixVariableResults = parserData->tempInt;
08067 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08068 ->numberOfOtherMatrixVariableResults = parserData->tempInt;
08069 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08070 ->other = new OtherMatrixVariableResult*[parserData->tempInt];
08071 for (int i=0; i < parserData->tempInt; i++)
08072 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08073 ->other[i] = NULL;
08074 parserData->iOther = 0;
08075 }
08076 break;
08077
08078 case 857:
08079
08080 {
08081 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables->values
08082 = new MatrixVariableValues();
08083 osglData->numberOfMatrixVarPresent = false;
08084 }
08085 break;
08086
08087 case 858:
08088
08089 {
08090 osglData->numberOfMatrixVar = parserData->tempInt;
08091 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming
08092 ->matrixVariables->values->numberOfMatrixVar = parserData->tempInt;
08093
08094 osglData->matrixWithMatrixVarIdx = new OSMatrixWithMatrixVarIdx*[parserData->tempInt];
08095 for (int i=0; i < parserData->tempInt; i++)
08096 osglData->matrixWithMatrixVarIdx[i] = NULL;
08097 osglData->matrixCounter = 0;
08098 }
08099 break;
08100
08101 case 863:
08102
08103 {
08104 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming
08105 ->matrixVariables->values->matrixVar = osglData->matrixWithMatrixVarIdx;
08106 }
08107 break;
08108
08109 case 868:
08110
08111 {
08112 parserData->iOther++;
08113 }
08114 break;
08115
08116 case 869:
08117
08118 {
08119 if (parserData->iOther >= parserData->numberOfOtherMatrixVariableResults)
08120 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <otherMatrixVariableResults> than specified");
08121 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08122 ->other[parserData->iOther] = new OtherMatrixVariableResult();
08123
08124 osglData->namePresent = false;
08125 osglData->typePresent = false;
08126 osglData->valuePresent = false;
08127 osglData->solverPresent = false;
08128 osglData->categoryPresent = false;
08129 osglData->descriptionPresent = false;
08130 osglData->name = "";
08131 osglData->type = "";
08132 osglData->value = "";
08133 osglData->solver = "";
08134 osglData->category = "";
08135 osglData->description = "";
08136 osglData->numberOfMatrixVarPresent = false;
08137 osglData->numberOfEnumerationsPresent = false;
08138 osglData->matrixVarTypePresent = false;
08139 osglData->enumTypePresent = false;
08140 osglData->matrixVarType = "";
08141 osglData->enumType = "";
08142
08143 osglData->matrixCounter = 0;
08144 }
08145 break;
08146
08147 case 870:
08148
08149 {
08150 if(!osglData->namePresent)
08151 osrlerror(NULL, NULL, parserData, osglData, osnlData,
08152 "<other> element requires name attribute");
08153 }
08154 break;
08155
08156 case 873:
08157
08158 {
08159 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08160 ->other[parserData->iOther]->numberOfMatrixVar = osglData->numberOfMatrixVar;
08161
08162 osglData->matrixWithMatrixVarIdx = new OSMatrixWithMatrixVarIdx*[osglData->numberOfMatrixVar];
08163 for (int i=0; i < parserData->tempInt; i++)
08164 osglData->matrixWithMatrixVarIdx[i] = NULL;
08165 osglData->matrixCounter = 0;
08166 }
08167 break;
08168
08169 case 874:
08170
08171 {
08172 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08173 ->other[parserData->iOther]->numberOfEnumerations = osglData->numberOfEnumerations;
08174 parserData->kounter = 0;
08175 }
08176 break;
08177
08178 case 875:
08179
08180 {
08181 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08182 ->other[parserData->iOther]->value = osglData->value;
08183 }
08184 break;
08185
08186 case 876:
08187
08188 {
08189 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08190 ->other[parserData->iOther]->solver = osglData->solver;
08191 }
08192 break;
08193
08194 case 877:
08195
08196 {
08197 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08198 ->other[parserData->iOther]->name = osglData->name;
08199 }
08200 break;
08201
08202 case 878:
08203
08204 {
08205 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08206 ->other[parserData->iOther]->type = osglData->type;
08207 }
08208 break;
08209
08210 case 879:
08211
08212 {
08213 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08214 ->other[parserData->iOther]->matrixType = osglData->matrixVarType;
08215 }
08216 break;
08217
08218 case 880:
08219
08220 {
08221 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08222 ->other[parserData->iOther]->enumType = osglData->enumType;
08223 }
08224 break;
08225
08226 case 881:
08227
08228 {
08229 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08230 ->other[parserData->iOther]->description = osglData->description;
08231 }
08232 break;
08233
08234 case 888:
08235
08236 {
08237 osresult->optimization->solution[parserData->solutionIdx]->matrixProgramming->matrixVariables
08238 ->other[parserData->iOther]->matrixVar = osglData->matrixWithMatrixVarIdx;
08239 }
08240 break;
08241
08242 case 893:
08243
08244 {
08245 if (osresult->setOtherOptionOrResultEnumeration(parserData->solutionIdx, parserData->iOther,
08246 ENUM_PROBLEM_COMPONENT_variables, parserData->kounter, osglData->value,
08247 osglData->description, osglData->osglIntArray, osglData->numberOfEl) != true)
08248 osrlerror(NULL, NULL, parserData, osglData, osnlData, "set other variable option failed");
08249 delete[] osglData->osglIntArray;
08250 osglData->osglIntArray = NULL;
08251 osglData->numberOfEl = 0;
08252 parserData->kounter++;
08253 }
08254 break;
08255
08256 case 894:
08257
08258 {
08259 osglData->numberOfElPresent = false;
08260 osglData->numberOfEl = 0;
08261 osglData->valuePresent = false;
08262 osglData->value = "";
08263 osglData->descriptionPresent = false;
08264 osglData->description = "";
08265 }
08266 break;
08267
08268 case 895:
08269
08270 {
08271 if(!osglData->namePresent)
08272 osrlerror(NULL, NULL, parserData, osglData, osnlData, "other element enumeration requires name attribute");
08273 }
08274 break;
08275
08276 case 898:
08277
08278 {
08279 osglData->osglCounter = 0;
08280 osglData->osglIntArray = new int[osglData->numberOfEl];
08281 }
08282 break;
08283
08284 case 908:
08285
08286 {
08287 parserData->numberOf = 0;
08288 }
08289 break;
08290
08291 case 911:
08292
08293 {
08294 parserData->numberOf = 0;
08295 }
08296 break;
08297
08298 case 912:
08299
08300 {
08301 if (osresult->setNumberOfOtherSolutionResults(parserData->solutionIdx, parserData->tempInt) == false)
08302 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setNumberOfOtherSolutionResults failed");
08303 parserData->numberOf = parserData->tempInt;
08304 parserData->iOther = 0;
08305 }
08306 break;
08307
08308 case 913:
08309
08310 {
08311 if (parserData->numberOf > 0)
08312 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <otherSolutionResult> element");
08313 }
08314 break;
08315
08316 case 914:
08317
08318 {
08319 if (parserData->iOther != parserData->numberOf)
08320 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <otherSolutionResult> elements than specified");
08321 }
08322 break;
08323
08324 case 921:
08325
08326 {
08327 parserData->iOther++;
08328 }
08329 break;
08330
08331 case 922:
08332
08333 {
08334 if (parserData->iOther >= parserData->numberOf)
08335 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <otherSolutionResult> elements than specified");
08336 osglData->numberOfItemsPresent = false;
08337 osglData->namePresent = false;
08338 osglData->valuePresent = false;
08339 osglData->categoryPresent = false;
08340 osglData->descriptionPresent = false;
08341 osglData->category = "";
08342 osglData->description = "";
08343 osglData->numberOfItems = 0;
08344 }
08345 break;
08346
08347 case 923:
08348
08349 {
08350 if (!osglData->namePresent)
08351 osrlerror (NULL, NULL, parserData, osglData, osnlData, "<otherSolutionResult> element must have name attribute");
08352
08353
08354 }
08355 break;
08356
08357 case 926:
08358
08359 {
08360 if (osresult->setOtherSolutionResultName(parserData->solutionIdx, parserData->iOther,
08361 osglData->name) == false)
08362 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherSolutionResultName failed");
08363 }
08364 break;
08365
08366 case 927:
08367
08368 {
08369 if (osresult->setOtherSolutionResultValue(parserData->solutionIdx, parserData->iOther,
08370 osglData->value) == false)
08371 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherSolutionResultValuee failed");
08372 }
08373 break;
08374
08375 case 928:
08376
08377 {
08378 if (osresult->setOtherSolutionResultCategory(parserData->solutionIdx, parserData->iOther,
08379 osglData->category) == false)
08380 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherSolutionResultCategory failed");
08381 }
08382 break;
08383
08384 case 929:
08385
08386 {
08387 if (osresult->setOtherSolutionResultDescription(parserData->solutionIdx, parserData->iOther,
08388 osglData->description) == false)
08389 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherSolutionResultDescription failed");
08390 }
08391 break;
08392
08393 case 930:
08394
08395 {
08396 if (osresult->setOtherSolutionResultNumberOfItems(parserData->solutionIdx,
08397 parserData->iOther,
08398 osglData->numberOfItems) == false)
08399 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherSolutionResultNumberOfItems failed");
08400 parserData->kounter = 0;
08401 }
08402 break;
08403
08404 case 931:
08405
08406 {
08407 if (osglData->numberOfItems > 0)
08408 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <item> element");
08409 }
08410 break;
08411
08412 case 932:
08413
08414 {
08415 if (parserData->kounter != osglData->numberOfItems)
08416 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <item> elements than specified");
08417 }
08418 break;
08419
08420 case 939:
08421
08422 {
08423 parserData->kounter++;
08424 }
08425 break;
08426
08427 case 940:
08428
08429 {
08430 if (parserData->kounter >= osglData->numberOfItems)
08431 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <item> elements than specified");
08432 }
08433 break;
08434
08435 case 945:
08436
08437 {
08438 if (parserData->kounter >= osglData->numberOfItems)
08439 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <item> elements than specified");
08440 parserData->itemContent = (yyvsp[(1) - (1)].sval); free((yyvsp[(1) - (1)].sval));
08441 if (osresult->setOtherSolutionResultItem(parserData->solutionIdx, parserData->iOther,
08442 parserData->kounter, parserData->itemContent)
08443 == false)
08444 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setOtherSolutionResultItem failed");
08445 }
08446 break;
08447
08448 case 948:
08449
08450 {
08451 parserData->numberOf = 0;
08452 }
08453 break;
08454
08455 case 949:
08456
08457 {
08458 if (osresult->setNumberOfSolverOutputs(parserData->tempInt) == false)
08459 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setNumberOfSolverOutputs failed");
08460 parserData->numberOf = parserData->tempInt;
08461 parserData->iOther = 0;
08462 }
08463 break;
08464
08465 case 950:
08466
08467 {
08468 if (parserData->numberOf > 0)
08469 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <solverOutput> element");
08470 }
08471 break;
08472
08473 case 951:
08474
08475 {
08476 if (parserData->iOther != parserData->numberOf)
08477 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <solverOutput> elements than specified");
08478 }
08479 break;
08480
08481 case 958:
08482
08483 {
08484 parserData->iOther++;
08485 }
08486 break;
08487
08488 case 959:
08489
08490 {
08491 if (parserData->iOther >= parserData->numberOf)
08492 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <solverOutput> elements than specified");
08493 osglData->numberOfItemsPresent = false;
08494 osglData->namePresent = false;
08495 osglData->categoryPresent = false;
08496 osglData->descriptionPresent = false;
08497 osglData->category = "";
08498 osglData->description = "";
08499 }
08500 break;
08501
08502 case 960:
08503
08504 {
08505 if (!osglData->namePresent)
08506 osrlerror (NULL, NULL, parserData, osglData, osnlData, "<solverOutput> element must have name attribute");
08507 if (!osglData->numberOfItemsPresent)
08508 osrlerror (NULL, NULL, parserData, osglData, osnlData, "<solverOutput> element must have numberOfItems attribute");
08509 }
08510 break;
08511
08512 case 963:
08513
08514 {
08515 if (osresult->setSolverOutputName(parserData->iOther, osglData->name) == false)
08516 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSolverOutputName failed");
08517 }
08518 break;
08519
08520 case 964:
08521
08522 {
08523 if (osresult->setSolverOutputCategory(parserData->iOther, osglData->category) == false)
08524 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSolverOutputCategory failed");
08525 }
08526 break;
08527
08528 case 965:
08529
08530 {
08531 if (osresult->setSolverOutputDescription(parserData->iOther, osglData->description) == false)
08532 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSolverOutputDescription failed");
08533 }
08534 break;
08535
08536 case 966:
08537
08538 {
08539 if (osresult->setSolverOutputNumberOfItems(parserData->iOther, osglData->numberOfItems) == false)
08540 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSolverOutputNumberOfItems failed");
08541 parserData->kounter = 0;
08542 }
08543 break;
08544
08545 case 967:
08546
08547 {
08548 if (osglData->numberOfItems > 0)
08549 osrlerror(NULL, NULL, parserData, osglData, osnlData, "expected at least one <item> element");
08550 }
08551 break;
08552
08553 case 968:
08554
08555 {
08556 if (parserData->kounter != osglData->numberOfItems)
08557 osrlerror(NULL, NULL, parserData, osglData, osnlData, "fewer <item> elements than specified");
08558 }
08559 break;
08560
08561 case 975:
08562
08563 {
08564 parserData->kounter++;
08565 }
08566 break;
08567
08568 case 976:
08569
08570 {
08571 if (parserData->kounter >= osglData->numberOfItems)
08572 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <item> elements than specified");
08573 }
08574 break;
08575
08576 case 981:
08577
08578 {
08579 if (parserData->kounter >= osglData->numberOfItems)
08580 osrlerror(NULL, NULL, parserData, osglData, osnlData, "more <item> elements than specified");
08581 parserData->itemContent = (yyvsp[(1) - (1)].sval); free((yyvsp[(1) - (1)].sval));
08582 if (osresult->setSolverOutputItem(parserData->iOther, parserData->kounter,
08583 parserData->itemContent) == false)
08584 osrlerror(NULL, NULL, parserData, osglData, osnlData, "setSolverOutputItem failed");
08585 }
08586 break;
08587
08588 case 982:
08589
08590 {
08591 if ((yyvsp[(3) - (4)].ival) < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of other constraint results cannot be negative");
08592 parserData->tempInt = (yyvsp[(3) - (4)].ival);
08593 }
08594 break;
08595
08596 case 983:
08597
08598 {
08599 if ((yyvsp[(3) - (4)].ival) < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of other matrix programming results cannot be negative");
08600 parserData->tempInt = (yyvsp[(3) - (4)].ival);
08601 }
08602 break;
08603
08604 case 984:
08605
08606 {
08607 if ((yyvsp[(3) - (4)].ival) < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of other matrix variable results cannot be negative");
08608 parserData->tempInt = (yyvsp[(3) - (4)].ival);
08609 }
08610 break;
08611
08612 case 985:
08613
08614 {
08615 if ((yyvsp[(3) - (4)].ival) < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of other objective results cannot be negative");
08616 parserData->tempInt = (yyvsp[(3) - (4)].ival);
08617 }
08618 break;
08619
08620 case 986:
08621
08622 {
08623 if ((yyvsp[(3) - (4)].ival) < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of other results cannot be negative");
08624 parserData->tempInt = (yyvsp[(3) - (4)].ival);
08625 }
08626 break;
08627
08628 case 987:
08629
08630 {
08631 if ((yyvsp[(3) - (4)].ival) < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of other solution results cannot be negative");
08632 parserData->tempInt = (yyvsp[(3) - (4)].ival);
08633 }
08634 break;
08635
08636 case 988:
08637
08638 {
08639 if ((yyvsp[(3) - (4)].ival) < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of other variable results cannot be negative");
08640 parserData->tempInt = (yyvsp[(3) - (4)].ival);
08641 }
08642 break;
08643
08644 case 989:
08645
08646 {
08647 if (parserData->numberAttributePresent)
08648 osrlerror(NULL, NULL, parserData, osglData, osnlData, "numberOfSolutions attribute previously set");
08649 if ((yyvsp[(3) - (4)].ival) < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of solutions cannot be negative");
08650 parserData->numberAttributePresent = true;
08651 parserData->tempInt = (yyvsp[(3) - (4)].ival);
08652 }
08653 break;
08654
08655 case 990:
08656
08657 {
08658 if ((yyvsp[(3) - (4)].ival) < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of other solver outputs cannot be negative");
08659 parserData->tempInt = (yyvsp[(3) - (4)].ival);
08660 }
08661 break;
08662
08663 case 991:
08664
08665 {
08666 if (parserData->numberAttributePresent )
08667 osrlerror(NULL, NULL, parserData, osglData, osnlData, "only one numberOfSubstatuses attribute allowed");
08668 parserData->numberAttributePresent = true;
08669 if ((yyvsp[(3) - (4)].ival) < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "number of <substatus> elements cannot be negative");
08670 parserData->tempInt = (yyvsp[(3) - (4)].ival);
08671 }
08672 break;
08673
08674 case 992:
08675
08676 {
08677 parserData->tempInt = (yyvsp[(3) - (4)].ival);
08678 }
08679 break;
08680
08681 case 993:
08682
08683 {parserData->tempVal = (yyvsp[(1) - (1)].ival);}
08684 break;
08685
08686 case 994:
08687
08688 {parserData->tempVal = (yyvsp[(1) - (1)].dval);}
08689 break;
08690
08691 case 995:
08692
08693 { parserData->tempStr = (yyvsp[(1) - (1)].sval); free((yyvsp[(1) - (1)].sval)); }
08694 break;
08695
08696 case 996:
08697
08698 { parserData->tempStr = os_dtoa_format((yyvsp[(1) - (1)].ival)); }
08699 break;
08700
08701 case 997:
08702
08703 { parserData->tempStr = os_dtoa_format((yyvsp[(1) - (1)].dval)); }
08704 break;
08705
08706 case 1006:
08707
08708 {
08709 osglData->fileName = "";
08710 osglData->source = "";
08711 osglData->description = "";
08712 osglData->fileCreator = "";
08713 osglData->licence = "";
08714 osglData->fileNamePresent = false;
08715 osglData->sourcePresent = false;
08716 osglData->descriptionPresent = false;
08717 osglData->fileCreatorPresent = false;
08718 osglData->licencePresent = false;
08719 }
08720 break;
08721
08722 case 1019:
08723
08724 {
08725 if (osglData->fileNamePresent == true)
08726 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "Repeated header information: file name");
08727 else
08728 osglData->fileNamePresent = true;
08729 }
08730 break;
08731
08732 case 1024:
08733
08734 {
08735 osglData->fileName = (yyvsp[(2) - (3)].sval);
08736 free((yyvsp[(2) - (3)].sval));
08737 }
08738 break;
08739
08740 case 1025:
08741
08742 {
08743 if (osglData->sourcePresent == true)
08744 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "Repeated header information: source");
08745 else
08746 osglData->sourcePresent = true;
08747 }
08748 break;
08749
08750 case 1030:
08751
08752 {
08753 osglData->source = (yyvsp[(2) - (3)].sval);
08754 free((yyvsp[(2) - (3)].sval));
08755 }
08756 break;
08757
08758 case 1031:
08759
08760 {
08761 if (osglData->descriptionPresent == true)
08762 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "Repeated header information: description");
08763 else
08764 osglData->descriptionPresent = true;
08765 }
08766 break;
08767
08768 case 1036:
08769
08770 {
08771 osglData->description = (yyvsp[(2) - (3)].sval);
08772 free((yyvsp[(2) - (3)].sval));
08773 }
08774 break;
08775
08776 case 1037:
08777
08778 {
08779 if (osglData->fileCreatorPresent == true)
08780 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "Repeated header information: file creator");
08781 else
08782 osglData->fileCreatorPresent = true;
08783 }
08784 break;
08785
08786 case 1042:
08787
08788 {
08789 osglData->fileCreator = (yyvsp[(2) - (3)].sval);
08790 free((yyvsp[(2) - (3)].sval));
08791 }
08792 break;
08793
08794 case 1043:
08795
08796 {
08797 if (osglData->licencePresent == true)
08798 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "Repeated header information: licence");
08799 else
08800 osglData->licencePresent = true;
08801 }
08802 break;
08803
08804 case 1048:
08805
08806 {
08807 osglData->licence = (yyvsp[(2) - (3)].sval);
08808 free((yyvsp[(2) - (3)].sval));
08809 }
08810 break;
08811
08812 case 1049:
08813
08814 {
08815 if (osglData->osglCounter < osglData->numberOfEl)
08816 {
08817 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "fewer data elements than specified");
08818 parserData->ignoreDataAfterErrors = true;
08819 }
08820 }
08821 break;
08822
08823 case 1054:
08824
08825 {
08826 osglData->multPresent = false;
08827 osglData->incrPresent = false;
08828 osglData->mult = 1;
08829 osglData->incr = 0;
08830 }
08831 break;
08832
08833 case 1060:
08834
08835 {
08836 if (osglData->osglCounter + osglData->mult > osglData->numberOfEl)
08837 {
08838 if (!parserData->suppressFurtherErrorMessages)
08839 {
08840 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more data elements than specified");
08841 parserData->suppressFurtherErrorMessages = true;
08842 parserData->ignoreDataAfterErrors = true;
08843 }
08844 }
08845 else
08846 for (int i=0; i<osglData->mult; i++)
08847 osglData->osglIntArray[osglData->osglCounter++] = (yyvsp[(2) - (3)].ival) + i*osglData->incr;
08848 }
08849 break;
08850
08851 case 1066:
08852
08853 {
08854 char* b64string = (yyvsp[(2) - (3)].sval);
08855 if( b64string == NULL)
08856 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "base 64 data expected");
08857 if (osglData->base64Size != sizeof(int))
08858 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "base 64 encoded with a size of int different than on this machine");
08859
08860 std::string base64decodeddata = Base64::decodeb64( b64string );
08861 int base64decodeddatalength = base64decodeddata.length();
08862 int *intvec = NULL;
08863 if ( osglData->numberOfEl != (base64decodeddatalength/osglData->base64Size) )
08864 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "base 64 data length does not match numberOfEl");
08865 else
08866 {
08867 intvec = (int*)&base64decodeddata[0];
08868 for(int i = 0; i < (base64decodeddatalength/osglData->base64Size); i++)
08869 {
08870 osglData->osglIntArray[i] = *(intvec++);
08871 }
08872 }
08873
08874 free((yyvsp[(2) - (3)].sval));
08875 }
08876 break;
08877
08878 case 1067:
08879
08880 {
08881 if (osglData->osglCounter < osglData->numberOfEl)
08882 {
08883 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "fewer data elements than specified");
08884 parserData->ignoreDataAfterErrors = true;
08885 }
08886 }
08887 break;
08888
08889 case 1072:
08890
08891 {
08892 osglData->multPresent = false;
08893 osglData->incrPresent = false;
08894 osglData->mult = 1;
08895 }
08896 break;
08897
08898 case 1075:
08899
08900 {
08901 if (osglData->osglCounter + osglData->mult > osglData->numberOfEl)
08902 {
08903 if (!parserData->suppressFurtherErrorMessages)
08904 {
08905 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more data elements than specified");
08906 parserData->suppressFurtherErrorMessages = true;
08907 parserData->ignoreDataAfterErrors = true;
08908 }
08909 }
08910 else
08911 for (int i=0; i<osglData->mult; i++)
08912 osglData->osglDblArray[osglData->osglCounter++] = parserData->tempVal;
08913 }
08914 break;
08915
08916 case 1081:
08917
08918 {
08919 char* b64string = (yyvsp[(2) - (3)].sval);
08920 if( b64string == NULL)
08921 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "base 64 data expected");
08922 if (osglData->base64Size != sizeof(int))
08923 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "base 64 encoded with a size of int different than on this machine");
08924
08925 std::string base64decodeddata = Base64::decodeb64( b64string );
08926 int base64decodeddatalength = base64decodeddata.length();
08927 double *dblvec = NULL;
08928 if ( osglData->numberOfEl != (base64decodeddatalength/osglData->base64Size) )
08929 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "base 64 data length does not match numberOfEl");
08930 else
08931 {
08932 dblvec = (double*)&base64decodeddata[0];
08933 for(int i = 0; i < (base64decodeddatalength/osglData->base64Size); i++)
08934 {
08935 osglData->osglDblArray[i] = *(dblvec++);
08936 }
08937 }
08938
08939 free((yyvsp[(2) - (3)].sval));
08940 }
08941 break;
08942
08943 case 1083:
08944
08945 {
08946 osglData->numberOfElPresent = false;
08947 }
08948 break;
08949
08950 case 1090:
08951
08952 {
08953 osglData->numberOfElPresent = false;
08954 }
08955 break;
08956
08957 case 1097:
08958
08959 {
08960 osglData->numberOfElPresent = false;
08961 }
08962 break;
08963
08964 case 1104:
08965
08966 {
08967 osglData->numberOfElPresent = false;
08968 }
08969 break;
08970
08971 case 1111:
08972
08973 {
08974 osglData->numberOfElPresent = false;
08975 }
08976 break;
08977
08978 case 1118:
08979
08980 {
08981 osglData->numberOfElPresent = false;
08982 }
08983 break;
08984
08985 case 1125:
08986
08987 {
08988 osglData->numberOfElPresent = false;
08989 }
08990 break;
08991
08992 case 1131:
08993
08994 {
08995 osglData->osglCounter = 0;
08996 if (osglData->numberOfEl > 0)
08997 osglData->osglIntArray = new int[osglData->numberOfEl];
08998 }
08999 break;
09000
09001 case 1132:
09002
09003 {
09004
09005 osglData->matrixWithMatrixVarIdx[osglData->matrixCounter] =
09006 (OSMatrixWithMatrixVarIdx*)((OSMatrixWithMatrixVarIdx*)osglData->mtxConstructorVec[0])
09007 ->createConstructorTreeFromPrefix(osglData->mtxConstructorVec);
09008 osglData->matrixWithMatrixVarIdx[osglData->matrixCounter]->idx = osglData->matrixCounter;
09009 osglData->matrixWithMatrixVarIdx[osglData->matrixCounter]->matrixVarIdx
09010 = osglData->matrixVarIdx;
09011 osglData->matrixCounter++;
09012 }
09013 break;
09014
09015 case 1133:
09016
09017 {
09018 if (osglData->matrixCounter >= osglData->numberOfMatrixVar)
09019 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more matrices than specified");
09020 osglData->symmetryPresent = false;
09021 osglData->typePresent = false;
09022 osglData->numberOfRowsPresent = false;
09023 osglData->numberOfColumnsPresent = false;
09024 osglData->namePresent = false;
09025 osglData->matrixVarIdxPresent = false;
09026
09027 osglData->mtxConstructorVec.clear();
09028 osglData->mtxBlocksVec.clear();
09029 osglData->mtxBlkVec.clear();
09030 osglData->nBlocksVec.clear();
09031
09036 osglData->tempC = new OSMatrixWithMatrixVarIdx();
09037 osglData->mtxConstructorVec.push_back((OSMatrixWithMatrixVarIdx*)osglData->tempC);
09038 osglData->mtxBlkVec.push_back((OSMatrixWithMatrixVarIdx*)osglData->tempC);
09039 }
09040 break;
09041
09042 case 1134:
09043
09044 {
09045 if (osglData->numberOfRowsPresent == false)
09046 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "mandatory attribute numberOfRows is missing");
09047 else
09048 ((OSMatrix*)osglData->tempC)->numberOfRows = osglData->numberOfRows;
09049 if (osglData->numberOfColumnsPresent == false)
09050 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "mandatory attribute numberOfColumns is missing");
09051 else
09052 ((OSMatrix*)osglData->tempC)->numberOfColumns = osglData->numberOfColumns;
09053 if (osglData->matrixVarIdxPresent == false)
09054 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "mandatory attribute matrixVarIdx is missing");
09055 else
09056 ((OSMatrixWithMatrixVarIdx*)osglData->tempC)->matrixVarIdx = osglData->matrixVarIdx;
09057 if (osglData->symmetryPresent == true)
09058 ((OSMatrix*)osglData->tempC)->symmetry = (ENUM_MATRIX_SYMMETRY)returnMatrixSymmetry(osglData->symmetry);
09059 if (osglData->namePresent == true)
09060 ((OSMatrix*)osglData->tempC)->name = osglData->name;
09061 if (osglData->typePresent == true)
09062 ((OSMatrix*)osglData->tempC)->matrixType = (ENUM_MATRIX_TYPE)returnMatrixType(osglData->type);
09063 }
09064 break;
09065
09066 case 1146:
09067
09068 {
09069 osglData->mtxBlkVec.back()->m_mChildren =
09070 new MatrixNode*[osglData->mtxBlkVec.back()->inumberOfChildren];
09071 osglData->mtxBlkVec.pop_back();
09072 }
09073 break;
09074
09075 case 1149:
09076
09077 {
09078 osglData->mtxBlkVec.back()->inumberOfChildren++;
09079 }
09080 break;
09081
09082 case 1150:
09083
09084 {
09085 osglData->tempC = new BaseMatrix();
09086 osglData->mtxConstructorVec.push_back((BaseMatrix*)osglData->tempC);
09087
09088 osglData->baseMatrixIdxPresent = false;
09089 osglData->targetMatrixFirstRowPresent = false;
09090 osglData->targetMatrixFirstColPresent = false;
09091 osglData->baseMatrixStartRowPresent = false;
09092 osglData->baseMatrixStartColPresent = false;
09093 osglData->baseMatrixEndRowPresent = false;
09094 osglData->baseMatrixEndColPresent = false;
09095 osglData->baseTransposePresent = false;
09096 osglData->scalarMultiplierPresent = false;
09097 osglData->baseMatrixEndRow = -1;
09098 osglData->baseMatrixEndCol = -1;
09099 }
09100 break;
09101
09102 case 1151:
09103
09104 {
09105 if (osglData->baseMatrixIdxPresent == false)
09106 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "mandatory attribute baseMatrixIdx is missing");
09107 else
09108 {
09109 ((BaseMatrix*)osglData->tempC)->baseMatrixIdx = osglData->baseMatrixIdx;
09110 ((BaseMatrix*)osglData->tempC)->baseMatrix = (OSMatrix*)osglData->matrix[osglData->baseMatrixIdx];
09111 }
09112 if (osglData->targetMatrixFirstRowPresent == true)
09113 ((BaseMatrix*)osglData->tempC)->targetMatrixFirstRow = osglData->targetMatrixFirstRow;
09114 if (osglData->targetMatrixFirstColPresent == true)
09115 ((BaseMatrix*)osglData->tempC)->targetMatrixFirstCol = osglData->targetMatrixFirstCol;
09116 if (osglData->baseMatrixStartRowPresent == true)
09117 ((BaseMatrix*)osglData->tempC)->baseMatrixStartRow = osglData->baseMatrixStartRow;
09118 if (osglData->baseMatrixStartColPresent == true)
09119 ((BaseMatrix*)osglData->tempC)->baseMatrixStartCol = osglData->baseMatrixStartCol;
09120 if (osglData->baseMatrixEndRowPresent == true)
09121 ((BaseMatrix*)osglData->tempC)->baseMatrixEndRow = osglData->baseMatrixEndRow;
09122 if (osglData->baseMatrixEndColPresent == true)
09123 ((BaseMatrix*)osglData->tempC)->baseMatrixEndCol = osglData->baseMatrixEndCol;
09124 if (osglData->baseTransposePresent == true)
09125 ((BaseMatrix*)osglData->tempC)->baseTranspose = osglData->baseTranspose;
09126 if (osglData->scalarMultiplierPresent == true)
09127 ((BaseMatrix*)osglData->tempC)->scalarMultiplier = osglData->scalarMultiplier;
09128 }
09129 break;
09130
09131 case 1166:
09132
09133 {
09134 osglData->mtxBlkVec.back()->inumberOfChildren++;
09135 }
09136 break;
09137
09138 case 1176:
09139
09140 {
09141 osglData->tempC = new ConstantMatrixElements();
09142 osglData->mtxConstructorVec.push_back(osglData->tempC);
09143 osglData->numberOfValuesPresent = false;
09144 osglData->rowMajorPresent = false;
09145 osglData->rowMajor = false;
09146 }
09147 break;
09148
09149 case 1177:
09150
09151 {
09152 if (osglData->numberOfValuesPresent == false)
09153 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "<constantElements>: numberOfValues attribute missing");
09154 }
09155 break;
09156
09157 case 1180:
09158
09159 {
09160 ((ConstantMatrixElements*)osglData->tempC)->numberOfValues = osglData->numberOfValues;
09161 if (osglData->numberOfValues > 0)
09162 ((MatrixType*)osglData->mtxBlkVec.back())->matrixType = ENUM_MATRIX_TYPE_constant;
09163 }
09164 break;
09165
09166 case 1181:
09167
09168 {
09169 ((ConstantMatrixElements*)osglData->tempC)->rowMajor = osglData->rowMajor;
09170 }
09171 break;
09172
09173 case 1185:
09174
09175 {
09176 ((MatrixElements*)osglData->tempC)->start = new IntVector();
09177 ((MatrixElements*)osglData->tempC)->start->numberOfEl = osglData->numberOfEl;
09178 ((MatrixElements*)osglData->tempC)->start->el = osglData->osglIntArray;
09179 osglData->osglIntArray = NULL;
09180 parserData->suppressFurtherErrorMessages = false;
09181 parserData->ignoreDataAfterErrors = false;
09182 }
09183 break;
09184
09185 case 1186:
09186
09187 {
09188 if (osglData->rowMajor == false)
09189 osglData->numberOfEl = ((MatrixType*)osglData->mtxBlkVec.back())->numberOfColumns + 1;
09190 else
09191 osglData->numberOfEl = ((MatrixType*)osglData->mtxBlkVec.back())->numberOfRows + 1;
09192 osglData->osglIntArray = new int[osglData->numberOfEl];
09193 osglData->osglCounter = 0;
09194 }
09195 break;
09196
09197 case 1192:
09198
09199 {
09200 ((MatrixElements*)osglData->tempC)->index = new IntVector();
09201 ((MatrixElements*)osglData->tempC)->index->numberOfEl
09202 = ((MatrixElements*)osglData->tempC)->numberOfValues;
09203 ((MatrixElements*)osglData->tempC)->index->el = osglData->osglIntArray;
09204 osglData->osglIntArray = NULL;
09205 parserData->suppressFurtherErrorMessages = false;
09206 parserData->ignoreDataAfterErrors = false;
09207 }
09208 break;
09209
09210 case 1193:
09211
09212 {
09213 osglData->numberOfEl = ((MatrixElements*)osglData->tempC)->numberOfValues;
09214 osglData->osglIntArray = new int[osglData->numberOfEl];
09215 osglData->osglCounter = 0;
09216 }
09217 break;
09218
09219 case 1199:
09220
09221 {
09222 ((ConstantMatrixElements*)osglData->tempC)->value = new ConstantMatrixValues();
09223 ((ConstantMatrixElements*)osglData->tempC)->value->numberOfEl = osglData->numberOfEl;
09224 ((ConstantMatrixElements*)osglData->tempC)->value->el = osglData->osglDblArray;
09225 osglData->osglDblArray = NULL;
09226 parserData->suppressFurtherErrorMessages = false;
09227 parserData->ignoreDataAfterErrors = false;
09228 }
09229 break;
09230
09231 case 1200:
09232
09233 {
09234 osglData->numberOfEl = ((ConstantMatrixElements*)osglData->tempC)->numberOfValues;
09235 osglData->osglDblArray = new double[osglData->numberOfEl];
09236 osglData->osglCounter = 0;
09237 }
09238 break;
09239
09240 case 1207:
09241
09242 {
09243 osglData->tempC = new VarReferenceMatrixElements();
09244 osglData->mtxConstructorVec.push_back(osglData->tempC);
09245 osglData->numberOfValuesPresent = false;
09246 osglData->rowMajorPresent = false;
09247 osglData->rowMajor = false;
09248 }
09249 break;
09250
09251 case 1208:
09252
09253 {
09254 if (osglData->numberOfValuesPresent == false)
09255 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "<varReferenceElements>: numberOfValues attribute missing");
09256 }
09257 break;
09258
09259 case 1211:
09260
09261 {
09262 ((VarReferenceMatrixElements*)osglData->tempC)->numberOfValues = osglData->numberOfValues;
09263 if (osglData->numberOfValues > 0)
09264 ((MatrixType*)osglData->mtxBlkVec.back())->matrixType = ENUM_MATRIX_TYPE_varReference;
09265 }
09266 break;
09267
09268 case 1212:
09269
09270 {
09271 ((VarReferenceMatrixElements*)osglData->tempC)->rowMajor = osglData->rowMajor;
09272 }
09273 break;
09274
09275 case 1216:
09276
09277 {
09278 ((VarReferenceMatrixElements*)osglData->tempC)->value = new VarReferenceMatrixValues();
09279 ((VarReferenceMatrixElements*)osglData->tempC)->value->numberOfEl = osglData->numberOfEl;
09280 ((VarReferenceMatrixElements*)osglData->tempC)->value->el = osglData->osglIntArray;
09281 osglData->osglIntArray = NULL;
09282 parserData->suppressFurtherErrorMessages = false;
09283 parserData->ignoreDataAfterErrors = false;
09284 }
09285 break;
09286
09287 case 1217:
09288
09289 {
09290 osglData->numberOfEl = ((VarReferenceMatrixElements*)osglData->tempC)->numberOfValues;
09291 osglData->osglIntArray = new int[osglData->numberOfEl];
09292 osglData->osglCounter = 0;
09293 }
09294 break;
09295
09296 case 1224:
09297
09298 {
09299 osglData->tempC = new LinearMatrixElements();
09300 osglData->mtxConstructorVec.push_back(osglData->tempC);
09301 osglData->numberOfValuesPresent = false;
09302 osglData->rowMajorPresent = false;
09303 osglData->rowMajor = false;
09304 }
09305 break;
09306
09307 case 1225:
09308
09309 {
09310 if (osglData->numberOfValuesPresent == false)
09311 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "<linearElements>: numberOfValues attribute missing");
09312 }
09313 break;
09314
09315 case 1228:
09316
09317 {
09318 ((LinearMatrixElements*)osglData->tempC)->numberOfValues = osglData->numberOfValues;
09319 if (osglData->numberOfValues > 0)
09320 ((MatrixType*)osglData->mtxBlkVec.back())->matrixType = ENUM_MATRIX_TYPE_linear;
09321 }
09322 break;
09323
09324 case 1229:
09325
09326 {
09327 ((LinearMatrixElements*)osglData->tempC)->rowMajor = osglData->rowMajor;
09328 }
09329 break;
09330
09331 case 1233:
09332
09333 {
09334 if (osglData->numberOfValues > 0)
09335 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "expected <value> element");
09336 }
09337 break;
09338
09339 case 1234:
09340
09341 {
09342 if (osglData->numberOfValues > osglData->nonzeroCounter)
09343 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "too few <el> elements");
09344 else if (osglData->numberOfValues < osglData->nonzeroCounter)
09345 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "too many <el> elements");
09346 ((LinearMatrixElements*)osglData->tempC)->value->numberOfEl = osglData->numberOfEl;
09347 parserData->suppressFurtherErrorMessages = false;
09348 parserData->ignoreDataAfterErrors = false;
09349 }
09350 break;
09351
09352 case 1235:
09353
09354 {
09355 osglData->numberOfValues = ((LinearMatrixElements*)osglData->tempC)->numberOfValues;
09356 osglData->nonzeroCounter = 0;
09357 ((LinearMatrixElements*)osglData->tempC)->value = new LinearMatrixValues();
09358 ((LinearMatrixElements*)osglData->tempC)->value->numberOfEl
09359 = ((LinearMatrixElements*)osglData->tempC)->numberOfValues;
09360 ((LinearMatrixElements*)osglData->tempC)->value->el
09361 = new LinearMatrixElement*[((LinearMatrixElements*)osglData->tempC)->numberOfValues];
09362 for (int i=0; i < ((LinearMatrixElements*)osglData->tempC)->numberOfValues; i++)
09363 ((LinearMatrixElements*)osglData->tempC)->value->el[i] = new LinearMatrixElement();
09364 osglData->osglCounter = 0;
09365 osglData->numberOfVarIdxPresent = false;
09366 }
09367 break;
09368
09369 case 1243:
09370
09371 {
09372 osglData->nonzeroCounter++;
09373 if (osglData->nonzeroCounter > osglData->numberOfValues)
09374 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "linear matrix elements: too many nonzeros");
09375 }
09376 break;
09377
09378 case 1244:
09379
09380 {
09381 osglData->numberOfVarIdxPresent = false;
09382 osglData->constantPresent = false;
09383 osglData->constant = 0.0;
09384 }
09385 break;
09386
09387 case 1245:
09388
09389 {
09390 if (!osglData->numberOfVarIdxPresent)
09391 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfVarIdx attribute missing");
09392 ((LinearMatrixElements*)osglData->tempC)->value->el[osglData->nonzeroCounter]->numberOfVarIdx
09393 = osglData->numberOfVarIdx;
09394 ((LinearMatrixElements*)osglData->tempC)->value->el[osglData->nonzeroCounter]->varIdx
09395 = new LinearMatrixElementTerm*[osglData->numberOfVarIdx];
09396 ((LinearMatrixElements*)osglData->tempC)->value->el[osglData->nonzeroCounter]->constant
09397 = osglData->constant;
09398 osglData->osglCounter = 0;
09399 }
09400 break;
09401
09402 case 1257:
09403
09404 {
09405 osglData->coefPresent = false;
09406 osglData->coef = 1.0;
09407 ((LinearMatrixElements*)osglData->tempC)->value->el[osglData->nonzeroCounter]->varIdx[osglData->osglCounter]
09408 = new LinearMatrixElementTerm();
09409 }
09410 break;
09411
09412 case 1259:
09413
09414 {
09415 ((LinearMatrixElements*)osglData->tempC)->value->el[osglData->nonzeroCounter]->varIdx[osglData->osglCounter]->coef = osglData->coef;
09416 }
09417 break;
09418
09419 case 1260:
09420
09421 {
09422 ((LinearMatrixElements*)osglData->tempC)->value->el[osglData->nonzeroCounter]->varIdx[osglData->osglCounter]->idx = (yyvsp[(2) - (3)].ival);
09423 osglData->osglCounter++;
09424 }
09425 break;
09426
09427 case 1262:
09428
09429 {
09430 osglData->tempC = new GeneralMatrixElements();
09431 osglData->mtxConstructorVec.push_back(osglData->tempC);
09432 osglData->numberOfValuesPresent = false;
09433 osglData->rowMajorPresent = false;
09434 osglData->rowMajor = false;
09435 }
09436 break;
09437
09438 case 1263:
09439
09440 {
09441 if (osglData->numberOfValuesPresent == false)
09442 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "<generalElements>: numberOfValues attribute missing");
09443 }
09444 break;
09445
09446 case 1266:
09447
09448 {
09449 ((GeneralMatrixElements*)osglData->tempC)->numberOfValues = osglData->numberOfValues;
09450 if (osglData->numberOfValues > 0)
09451 ((MatrixType*)osglData->mtxBlkVec.back())->matrixType = ENUM_MATRIX_TYPE_general;
09452 }
09453 break;
09454
09455 case 1267:
09456
09457 {
09458 ((GeneralMatrixElements*)osglData->tempC)->rowMajor = osglData->rowMajor;
09459 }
09460 break;
09461
09462 case 1273:
09463
09464 {
09465 osglData->nonzeroCounter = 0;
09466 osglData->numberOfValues = ((GeneralMatrixElements*)osglData->tempC)->numberOfValues;
09467
09468 ((GeneralMatrixElements*)osglData->tempC)->value = new GeneralMatrixValues();
09469 ((GeneralMatrixElements*)osglData->tempC)->value->numberOfEl
09470 = osglData->numberOfValues;
09471 ((GeneralMatrixElements*)osglData->tempC)->value->el
09472 = new ScalarExpressionTree*[osglData->numberOfValues];
09473
09474 for (int i=0; i<osglData->numberOfValues; i++)
09475 ((GeneralMatrixElements*)osglData->tempC)->value->el[i] = new ScalarExpressionTree();
09476 }
09477 break;
09478
09479 case 1281:
09480
09481 {
09482 if (osglData->nonzeroCounter >= osglData->numberOfValues)
09483 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of <el> terms greater than expected");
09484
09485 osnlData->nlNodeVec.clear();
09486 osnlData->sumVec.clear();
09487 osnlData->allDiffVec.clear();
09488 osnlData->maxVec.clear();
09489 osnlData->minVec.clear();
09490 osnlData->productVec.clear();
09491 osnlData->matrixSumVec.clear();
09492 osnlData->matrixProductVec.clear();
09493 }
09494 break;
09495
09496 case 1285:
09497
09498 {
09499
09500
09501 ((GeneralMatrixElements*)osglData->tempC)->value->el[osglData->nonzeroCounter]->m_treeRoot =
09502 ((OSnLNode*)osnlData->nlNodeVec[ 0])->createExpressionTreeFromPrefix( osnlData->nlNodeVec);
09503 osglData->nonzeroCounter++;
09504 }
09505 break;
09506
09507 case 1287:
09508
09509 {
09510 osglData->tempC = new ObjReferenceMatrixElements();
09511 osglData->mtxConstructorVec.push_back(osglData->tempC);
09512 osglData->numberOfValuesPresent = false;
09513 osglData->rowMajorPresent = false;
09514 osglData->rowMajor = false;
09515 }
09516 break;
09517
09518 case 1288:
09519
09520 {
09521 if (osglData->numberOfValuesPresent == false)
09522 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "<objReferenceElements>: numberOfValues attribute missing");
09523 }
09524 break;
09525
09526 case 1291:
09527
09528 {
09529 ((ObjReferenceMatrixElements*)osglData->tempC)->numberOfValues = osglData->numberOfValues;
09530 if (osglData->numberOfValues > 0)
09531 ((MatrixType*)osglData->mtxBlkVec.back())->matrixType = ENUM_MATRIX_TYPE_objReference;
09532 }
09533 break;
09534
09535 case 1292:
09536
09537 {
09538 ((ObjReferenceMatrixElements*)osglData->tempC)->rowMajor = osglData->rowMajor;
09539 }
09540 break;
09541
09542 case 1296:
09543
09544 {
09545 ((ObjReferenceMatrixElements*)osglData->tempC)->value = new ObjReferenceMatrixValues();
09546 ((ObjReferenceMatrixElements*)osglData->tempC)->value->numberOfEl = osglData->numberOfEl;
09547 ((ObjReferenceMatrixElements*)osglData->tempC)->value->el = osglData->osglIntArray;
09548 osglData->osglIntArray = NULL;
09549 parserData->suppressFurtherErrorMessages = false;
09550 parserData->ignoreDataAfterErrors = false;
09551 }
09552 break;
09553
09554 case 1297:
09555
09556 {
09557 osglData->numberOfEl = ((ObjReferenceMatrixElements*)osglData->tempC)->numberOfValues;
09558 osglData->osglIntArray = new int[osglData->numberOfEl];
09559 osglData->osglCounter = 0;
09560 }
09561 break;
09562
09563 case 1304:
09564
09565 {
09566 osglData->tempC = new ConReferenceMatrixElements();
09567 osglData->mtxConstructorVec.push_back(osglData->tempC);
09568 osglData->numberOfValuesPresent = false;
09569 osglData->rowMajorPresent = false;
09570 osglData->rowMajor = false;
09571 }
09572 break;
09573
09574 case 1305:
09575
09576 {
09577 if (osglData->numberOfValuesPresent == false)
09578 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "<conReferenceElements>: numberOfValues attribute missing");
09579 }
09580 break;
09581
09582 case 1308:
09583
09584 {
09585 ((ConReferenceMatrixElements*)osglData->tempC)->numberOfValues = osglData->numberOfValues;
09586 if (osglData->numberOfValues > 0)
09587 ((MatrixType*)osglData->mtxBlkVec.back())->matrixType = ENUM_MATRIX_TYPE_conReference;
09588 }
09589 break;
09590
09591 case 1309:
09592
09593 {
09594 ((ConReferenceMatrixElements*)osglData->tempC)->rowMajor = osglData->rowMajor;
09595 }
09596 break;
09597
09598 case 1313:
09599
09600 {
09601 if (osglData->numberOfValues > 0)
09602 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "expected <value> element");
09603 }
09604 break;
09605
09606 case 1314:
09607
09608 {
09609 if (osglData->numberOfValues > osglData->nonzeroCounter)
09610 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "too few <el> elements");
09611 else if (osglData->numberOfValues < osglData->nonzeroCounter)
09612 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "too many <el> elements");
09613 ((ConReferenceMatrixElements*)osglData->tempC)->value->numberOfEl = osglData->numberOfEl;
09614 parserData->suppressFurtherErrorMessages = false;
09615 parserData->ignoreDataAfterErrors = false;
09616 }
09617 break;
09618
09619 case 1315:
09620
09621 {
09622 osglData->numberOfValues = ((ConReferenceMatrixElements*)osglData->tempC)->numberOfValues;
09623 osglData->nonzeroCounter = 0;
09624
09625 ((ConReferenceMatrixElements*)osglData->tempC)->value = new ConReferenceMatrixValues();
09626 ((ConReferenceMatrixElements*)osglData->tempC)->value->numberOfEl
09627 = osglData->numberOfValues;
09628 ((ConReferenceMatrixElements*)osglData->tempC)->value->el
09629 = new ConReferenceMatrixElement*[osglData->numberOfValues];
09630
09631 for (int i=0; i<osglData->numberOfValues; i++)
09632 ((ConReferenceMatrixElements*)osglData->tempC)->value->el[i] = new ConReferenceMatrixElement();
09633 }
09634 break;
09635
09636 case 1322:
09637
09638 {
09639
09640
09641
09642 }
09643 break;
09644
09645 case 1323:
09646
09647 {
09648 if (osglData->nonzeroCounter >= osglData->numberOfValues)
09649 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of <el> terms greater than expected");
09650 osglData->valueTypePresent = false;
09651 osglData->multPresent = false;
09652 osglData->incrPresent = false;
09653 osglData->mult = 1;
09654 osglData->incr = 0;
09655 osglData->valueType = "";
09656 }
09657 break;
09658
09659 case 1329:
09660
09661 {
09662 if (osglData->nonzeroCounter + osglData->mult > osglData->numberOfEl)
09663 {
09664 if (!parserData->suppressFurtherErrorMessages)
09665 {
09666 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more data elements than specified");
09667 parserData->suppressFurtherErrorMessages = true;
09668 parserData->ignoreDataAfterErrors = true;
09669 }
09670 }
09671 else
09672 {
09673 if (osglData->valueType == "")
09674 osglData->valueType = "value";
09675 if (returnConReferenceValueType(osglData->valueType) <= 0)
09676 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData,
09677 "valueType must be one of \"value\", \"status\", \"surplus\", \"shortage\"");
09678 else
09679 {
09680 for (int i=0; i<osglData->mult; i++)
09681 {
09682 ((ConReferenceMatrixElements*)osglData->tempC)->value->el[osglData->nonzeroCounter + i]->conReference
09683 = (yyvsp[(2) - (3)].ival) + i*osglData->incr;
09684 ((ConReferenceMatrixElements*)osglData->tempC)->value->el[osglData->nonzeroCounter + i]->valueType
09685 = (ENUM_CONREFERENCE_VALUETYPE)returnConReferenceValueType(osglData->valueType);
09686 }
09687 }
09688 osglData->nonzeroCounter += osglData->mult;
09689 }
09690 }
09691 break;
09692
09693 case 1331:
09694
09695 {
09696 osglData->tempC = new MatrixTransformation();
09697 osglData->mtxConstructorVec.push_back((MatrixTransformation*)osglData->tempC);
09698
09699
09700 osnlData->nlNodeVec.clear();
09701 osnlData->sumVec.clear();
09702 osnlData->allDiffVec.clear();
09703 osnlData->maxVec.clear();
09704 osnlData->minVec.clear();
09705 osnlData->productVec.clear();
09706 osnlData->matrixSumVec.clear();
09707 osnlData->matrixProductVec.clear();
09708
09709 osglData->shapePresent = false;
09710 }
09711 break;
09712
09713 case 1333:
09714
09715 {
09716 if (returnNlExprShape(osglData->shape) > 0)
09717 ((MatrixTransformation*)osglData->tempC)->shape
09718 = (ENUM_NL_EXPR_SHAPE)returnNlExprShape(osglData->shape);
09719 else
09720 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData,
09721 "unknown shape specified in matrix transformation");
09722 }
09723 break;
09724
09725 case 1334:
09726
09727 {
09728
09729 ((MatrixTransformation*)osglData->tempC)->transformation =
09730 ((OSnLMNode*)osnlData->nlNodeVec[ 0])->createExpressionTreeFromPrefix( osnlData->nlNodeVec);
09731 }
09732 break;
09733
09734 case 1335:
09735
09736 {
09737
09738 osglData->rowOffsets.back() = NULL;
09739 osglData->colOffsets.back() = NULL;
09740 osglData->osglIntArray = NULL;
09741 osglData->rowOffsets.pop_back();
09742 osglData->colOffsets.pop_back();
09743 }
09744 break;
09745
09746 case 1336:
09747
09748 {
09749 osglData->tempC = new MatrixBlocks();
09750 osglData->mtxConstructorVec.push_back((MatrixBlocks*)osglData->tempC);
09751 osglData->mtxBlocksVec.push_back((MatrixBlocks*)osglData->tempC);
09752 osglData->numberOfBlocksPresent = false;
09753 }
09754 break;
09755
09756 case 1337:
09757
09758 {
09759 osglData->nBlocksVec.push_back(osglData->numberOfBlocks);
09760 ((MatrixBlocks*)osglData->tempC)->inumberOfChildren = 0;
09761 }
09762 break;
09763
09764 case 1339:
09765
09766 {
09767 if ( ((MatrixBlocks*)osglData->mtxBlocksVec.back())->inumberOfChildren !=
09768 osglData->nBlocksVec.back())
09769 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData,
09770 "Number of blocks does not agree with attribute value numberOfBlocks");
09771
09772 ((MatrixBlocks*)osglData->mtxBlocksVec.back())->m_mChildren
09773 = new MatrixNode*[((MatrixBlocks*)osglData->mtxBlocksVec.back())->inumberOfChildren];
09774 osglData->mtxBlocksVec.pop_back();
09775 osglData->nBlocksVec.pop_back();
09776 }
09777 break;
09778
09779 case 1340:
09780
09781 {
09782 if (osglData->osglCounter != osglData->numberOfEl)
09783 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of colOffsets does not match numberOfEl");
09784 ((MatrixBlocks*)osglData->tempC)->colOffset = new IntVector();
09785 ((MatrixBlocks*)osglData->tempC)->colOffset->numberOfEl = osglData->numberOfEl;
09786 ((MatrixBlocks*)osglData->tempC)->colOffset->el = osglData->osglIntArray;
09787 osglData->colOffsets.push_back(osglData->osglIntArray);
09788 parserData->suppressFurtherErrorMessages = false;
09789 parserData->ignoreDataAfterErrors = false;
09790 }
09791 break;
09792
09793 case 1341:
09794
09795 {
09796 osglData->numberOfEl = 0;
09797 osglData->numberOfElPresent = false;
09798 }
09799 break;
09800
09801 case 1342:
09802
09803 {
09804 osglData->osglCounter = 0;
09805 osglData->osglIntArray = new int[osglData->numberOfEl];
09806 }
09807 break;
09808
09809 case 1348:
09810
09811 {
09812 ((MatrixBlocks*)osglData->tempC)->rowOffset = new IntVector();
09813 ((MatrixBlocks*)osglData->tempC)->rowOffset->numberOfEl = osglData->numberOfEl;
09814 ((MatrixBlocks*)osglData->tempC)->rowOffset->el = osglData->osglIntArray;
09815 osglData->rowOffsets.push_back(osglData->osglIntArray);
09816 parserData->suppressFurtherErrorMessages = false;
09817 parserData->ignoreDataAfterErrors = false;
09818 }
09819 break;
09820
09821 case 1349:
09822
09823 {
09824 osglData->numberOfEl = 0;
09825 osglData->numberOfElPresent = false;
09826 }
09827 break;
09828
09829 case 1350:
09830
09831 {
09832 osglData->osglCounter = 0;
09833 osglData->osglIntArray = new int[osglData->numberOfEl];
09834 }
09835 break;
09836
09837 case 1357:
09838
09839 {
09840 ((MatrixBlocks*)osglData->mtxBlocksVec.back())->inumberOfChildren++;
09841 }
09842 break;
09843
09844 case 1358:
09845
09846 {
09847 osglData->mtxBlkVec.pop_back();
09848 }
09849 break;
09850
09851 case 1359:
09852
09853 {
09854 osglData->tempC = new MatrixBlock();
09855 osglData->mtxConstructorVec.push_back((MatrixBlock*)osglData->tempC);
09856 osglData->mtxBlkVec.push_back(osglData->tempC);
09857
09858 osglData->symmetryPresent = false;
09859 osglData->typePresent = false;
09860 osglData->blockRowIdxPresent = false;
09861 osglData->blockColIdxPresent = false;
09862 }
09863 break;
09864
09865 case 1365:
09866
09867 {
09868 if (verifyMatrixSymmetry(osglData->symmetry) == false)
09869 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "symmetry type not recognized");
09870 parserData->errorText = NULL;
09871 ((MatrixBlock*)osglData->tempC)->symmetry
09872 = (ENUM_MATRIX_SYMMETRY)returnMatrixSymmetry(osglData->symmetry);
09873 }
09874 break;
09875
09876 case 1366:
09877
09878 {
09879 ((MatrixBlock*)osglData->tempC)->type
09880 = (ENUM_MATRIX_TYPE)returnMatrixType(osglData->type);
09881 }
09882 break;
09883
09884 case 1370:
09885
09886 {
09887 osglData->mtxBlkVec.back()->m_mChildren =
09888 new MatrixNode*[osglData->mtxBlkVec.back()->inumberOfChildren];
09889 }
09890 break;
09891
09892 case 1372:
09893
09894 {
09895 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
09896 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
09897 if (osglData->numberOfBlocksPresent)
09898 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfBlocks attribute previously set");
09899 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of <blocks> cannot be negative");
09900 osglData->numberOfBlocksPresent = true;
09901 osglData->numberOfBlocks = (yyvsp[(3) - (4)].ival);
09902 }
09903 break;
09904
09905 case 1373:
09906
09907 {
09908 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
09909 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
09910 if (osglData->numberOfColumnsPresent)
09911 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfColumns attribute previously set");
09912 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of <blocks> cannot be negative");
09913 osglData->numberOfColumnsPresent = true;
09914 osglData->numberOfColumns = (yyvsp[(3) - (4)].ival);
09915 }
09916 break;
09917
09918 case 1374:
09919
09920 {
09921 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
09922 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
09923 if (osglData->numberOfConPresent)
09924 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfCon attribute previously set");
09925 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of <con> cannot be negative");
09926 osglData->numberOfConPresent = true;
09927 osglData->numberOfCon = (yyvsp[(3) - (4)].ival);
09928 }
09929 break;
09930
09931 case 1375:
09932
09933 {
09934 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
09935 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
09936 if (osglData->numberOfConstraintsPresent)
09937 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfConstraints attribute previously set");
09938 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of constraints cannot be negative");
09939 osglData->numberOfConstraintsPresent = true;
09940 osglData->numberOfConstraints = (yyvsp[(3) - (4)].ival);
09941 }
09942 break;
09943
09944 case 1376:
09945
09946 {
09947 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
09948 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
09949 if (osglData->numberOfElPresent)
09950 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfEl attribute previously set");
09951 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of <el> cannot be negative");
09952 osglData->numberOfElPresent = true;
09953 osglData->numberOfEl = (yyvsp[(3) - (4)].ival);
09954 }
09955 break;
09956
09957 case 1377:
09958
09959 {
09960 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
09961 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
09962 if (osglData->numberOfEnumerationsPresent)
09963 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfEnumerations attribute previously set");
09964 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of <enumerations> cannot be negative");
09965 osglData->numberOfEnumerationsPresent = true;
09966 osglData->numberOfEnumerations = (yyvsp[(3) - (4)].ival);
09967 }
09968 break;
09969
09970 case 1378:
09971
09972 {
09973 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
09974 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
09975 if (osglData->numberOfItemsPresent)
09976 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfItems attribute previously set");
09977 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of <items> cannot be negative");
09978 osglData->numberOfItemsPresent = true;
09979 osglData->numberOfItems = (yyvsp[(3) - (4)].ival);
09980 }
09981 break;
09982
09983 case 1379:
09984
09985 {
09986 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
09987 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
09988 if (osglData->numberOfMatrixVarPresent)
09989 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfMatrixVar attribute previously set");
09990 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of <matrixVar> cannot be negative");
09991 osglData->numberOfMatrixVarPresent = true;
09992 osglData->numberOfMatrixVar = (yyvsp[(3) - (4)].ival);
09993 }
09994 break;
09995
09996 case 1380:
09997
09998 {
09999 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10000 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10001 if (osglData->numberOfObjPresent)
10002 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfObj attribute previously set");
10003 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of <obj> cannot be negative");
10004 osglData->numberOfObjPresent = true;
10005 osglData->numberOfObj = (yyvsp[(3) - (4)].ival);
10006 }
10007 break;
10008
10009 case 1381:
10010
10011 {
10012 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10013 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10014 if (osglData->numberOfObjectivesPresent)
10015 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfObjectives attribute previously set");
10016 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of objectives cannot be negative");
10017 osglData->numberOfObjectivesPresent = true;
10018 osglData->numberOfObjectives = (yyvsp[(3) - (4)].ival);
10019 }
10020 break;
10021
10022 case 1382:
10023
10024 {
10025 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10026 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10027 if (osglData->numberOfRowsPresent)
10028 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfRows attribute previously set");
10029 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of <rows> cannot be negative");
10030 osglData->numberOfRowsPresent = true;
10031 osglData->numberOfRows = (yyvsp[(3) - (4)].ival);
10032 }
10033 break;
10034
10035 case 1383:
10036
10037 {
10038 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10039 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10040 if (osglData->numberOfValuesPresent)
10041 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfValues attribute previously set");
10042 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of <values> cannot be negative");
10043 osglData->numberOfValuesPresent = true;
10044 osglData->numberOfValues = (yyvsp[(3) - (4)].ival);
10045 }
10046 break;
10047
10048 case 1384:
10049
10050 {
10051 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10052 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10053 if (osglData->numberOfVarPresent)
10054 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfVar attribute previously set");
10055 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of <var> cannot be negative");
10056 osglData->numberOfVarPresent = true;
10057 osglData->numberOfVar = (yyvsp[(3) - (4)].ival);
10058 }
10059 break;
10060
10061 case 1385:
10062
10063 {
10064 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10065 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10066 if (osglData->numberOfVarIdxPresent)
10067 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfVarIdx attribute previously set");
10068 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of <varIdx> cannot be negative");
10069 osglData->numberOfVarIdxPresent = true;
10070 osglData->numberOfVarIdx = (yyvsp[(3) - (4)].ival);
10071 }
10072 break;
10073
10074 case 1386:
10075
10076 {
10077 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10078 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10079 if (osglData->numberOfVariablesPresent)
10080 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "numberOfVariables attribute previously set");
10081 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "number of variables cannot be negative");
10082 osglData->numberOfVariablesPresent = true;
10083 osglData->numberOfVariables = (yyvsp[(3) - (4)].ival);
10084 }
10085 break;
10086
10087 case 1387:
10088
10089 {
10090 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10091 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10092 if (osglData->base64SizePresent)
10093 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "base64Size attribute previously set");
10094 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "base64Size cannot be negative");
10095 osglData->base64SizePresent = true;
10096 osglData->base64Size = (yyvsp[(3) - (4)].ival);
10097 }
10098 break;
10099
10100 case 1388:
10101
10102 {
10103 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10104 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10105 if (osglData->baseMatrixIdxPresent == true)
10106 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one baseMatrixIdx attribute in <baseMatrix> element");
10107 if ((yyvsp[(3) - (4)].ival) < 0)
10108 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "baseMatrix idx cannot be negative");
10109 if ((yyvsp[(3) - (4)].ival) > osglData->matrixCounter)
10110 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "baseMatrix idx exceeds number of matrices so far");
10111 osglData->baseMatrixIdxPresent = true;
10112 osglData->baseMatrixIdx = (yyvsp[(3) - (4)].ival);
10113 }
10114 break;
10115
10116 case 1389:
10117
10118 {
10119 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10120 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData,
10121 "start and end quotes are not the same");
10122 if (osglData->baseMatrixStartRowPresent == true)
10123 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData,
10124 "more than one baseMatrixStartRow attribute in <baseMatrix> element");
10125 if ((yyvsp[(3) - (4)].ival) < 0)
10126 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData,
10127 "baseMatrix first row cannot be negative");
10128 osglData->baseMatrixStartRowPresent = true;
10129 osglData->baseMatrixStartRow = (yyvsp[(3) - (4)].ival);
10130 }
10131 break;
10132
10133 case 1390:
10134
10135 {
10136 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10137 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData,
10138 "start and end quotes are not the same");
10139 if (osglData->baseMatrixStartColPresent == true)
10140 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData,
10141 "more than one baseMatrixStartCol attribute in <baseMatrix> element");
10142 if ((yyvsp[(3) - (4)].ival) < 0)
10143 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData,
10144 "baseMatrix first column cannot be negative");
10145 osglData->baseMatrixStartColPresent = true;
10146 osglData->baseMatrixStartCol = (yyvsp[(3) - (4)].ival);
10147 }
10148 break;
10149
10150 case 1391:
10151
10152 {
10153 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10154 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10155 if (osglData->baseMatrixEndRowPresent == true)
10156 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one baseMatrixEndRow attribute in <baseMatrix> element");
10157 if ((yyvsp[(3) - (4)].ival) < 0)
10158 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "baseMatrix end row cannot be negative");
10159 osglData->baseMatrixEndRowPresent = true;
10160 osglData->baseMatrixEndRow = (yyvsp[(3) - (4)].ival);
10161 }
10162 break;
10163
10164 case 1392:
10165
10166 {
10167 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10168 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10169 if (osglData->baseMatrixEndColPresent == true)
10170 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one baseMatrixEndCol attribute in <baseMatrix> element");
10171 if ((yyvsp[(3) - (4)].ival) < 0)
10172 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "baseMatrix end col cannot be negative");
10173 osglData->baseMatrixEndColPresent = true;
10174 osglData->baseMatrixEndCol = (yyvsp[(3) - (4)].ival);
10175 }
10176 break;
10177
10178 case 1393:
10179
10180 {
10181 if (osglData->blockRowIdxPresent)
10182 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "blockRowIdx attribute previously set");
10183 else
10184 {
10185 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "blockRowIdx cannot be negative");
10186 osglData->blockRowIdxPresent = true;
10187 osglData->blockRowIdx = (yyvsp[(3) - (4)].ival);
10188 ((MatrixBlock*)osglData->tempC)->blockRowIdx = (yyvsp[(3) - (4)].ival);
10189 }
10190
10191
10192 ((MatrixBlock*)osglData->tempC)->numberOfRows
10193 = osglData->rowOffsets.back()[osglData->blockRowIdx+1]
10194 - osglData->rowOffsets.back()[osglData->blockRowIdx];
10195 }
10196 break;
10197
10198 case 1394:
10199
10200 {
10201 if (osglData->blockColIdxPresent)
10202 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "blockColIdx attribute previously set");
10203 else
10204 {
10205 if ((yyvsp[(3) - (4)].ival) < 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "blockColIdx cannot be negative");
10206 osglData->blockColIdxPresent = true;
10207 osglData->blockColIdx = (yyvsp[(3) - (4)].ival);
10208 ((MatrixBlock*)osglData->tempC)->blockColIdx = (yyvsp[(3) - (4)].ival);
10209 }
10210
10211
10212 ((MatrixBlock*)osglData->tempC)->numberOfColumns
10213 = osglData->colOffsets.back()[osglData->blockColIdx+1]
10214 - osglData->colOffsets.back()[osglData->blockColIdx];
10215 }
10216 break;
10217
10218 case 1395:
10219
10220 {
10221 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10222 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10223 if (osglData->coefPresent == true)
10224 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "linear matrix elements: duplicate coef");
10225 else
10226 {
10227 osglData->coef = parserData->tempVal;
10228 osglData->coefPresent = true;
10229 }
10230 }
10231 break;
10232
10233 case 1396:
10234
10235 {
10236 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10237 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10238 if (osglData->constantPresent == true)
10239 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "linear matrix elements: duplicate constant");
10240 else
10241 {
10242 osglData->constant = parserData->tempVal;
10243 osglData->constantPresent = true;
10244 }
10245 }
10246 break;
10247
10248 case 1397:
10249
10250 {
10251 if (osglData->idxPresent == true)
10252 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one idx attribute");
10253 osglData->idxPresent = true;
10254 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10255 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10256 osglData->idx = (yyvsp[(3) - (4)].ival);
10257 }
10258 break;
10259
10260 case 1398:
10261
10262 {
10263 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10264 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10265 if (osglData->incrPresent)
10266 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "only one incr attribute allowed");
10267 osglData->incrPresent = true;
10268 osglData->incr = (yyvsp[(3) - (4)].ival);
10269 }
10270 break;
10271
10272 case 1399:
10273
10274 {
10275 if (osglData->matrixVarIdxPresent == true)
10276 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one matrixVarIdx attribute in <matrixVar> element");
10277 osglData->matrixVarIdxPresent = true;
10278 if ((yyvsp[(3) - (4)].ival) < 0) osrlerror(NULL, NULL, parserData, osglData, osnlData, "<matrixVarIdx> cannot be negative");
10279 osglData->matrixVarIdx = (yyvsp[(3) - (4)].ival);
10280 }
10281 break;
10282
10283 case 1400:
10284
10285 {
10286 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10287 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10288 if (osglData->multPresent)
10289 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "only one mult attribute allowed");
10290 if ((yyvsp[(3) - (4)].ival) <= 0) parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "mult must be positive");
10291 osglData->multPresent = true;
10292 osglData->mult = (yyvsp[(3) - (4)].ival);
10293 }
10294 break;
10295
10296 case 1401:
10297
10298 {
10299 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10300 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10301 if (osglData->scalarMultiplierPresent == true)
10302 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one scalar multiplier attribute in <baseMatrix> element");
10303 osglData->scalarMultiplierPresent = true;
10304 osglData->scalarMultiplier = parserData->tempVal;
10305 }
10306 break;
10307
10308 case 1402:
10309
10310 {
10311 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10312 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10313 if (osglData->targetMatrixFirstRowPresent == true)
10314 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one targetMatrixFirstRow attribute in <baseMatrix> element");
10315 if ((yyvsp[(3) - (4)].ival) < 0)
10316 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "targetMatrix first row cannot be negative");
10317 osglData->targetMatrixFirstRowPresent = true;
10318 osglData->targetMatrixFirstRow = (yyvsp[(3) - (4)].ival);
10319 }
10320 break;
10321
10322 case 1403:
10323
10324 {
10325 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
10326 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10327 if (osglData->targetMatrixFirstColPresent == true)
10328 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one targetMatrixFirstCol attribute in <baseMatrix> element");
10329 if ((yyvsp[(3) - (4)].ival) < 0)
10330 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "targetMatrix first col cannot be negative");
10331 osglData->targetMatrixFirstColPresent = true;
10332 osglData->targetMatrixFirstCol = (yyvsp[(3) - (4)].ival);
10333 }
10334 break;
10335
10336 case 1406:
10337
10338 {
10339 if (osglData->baseTransposePresent == true)
10340 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData,
10341 "more than one baseTranspose attribute in <baseMatrix> element");
10342 else
10343 osglData->baseTranspose = true;
10344 osglData->baseTransposePresent = true;
10345 }
10346 break;
10347
10348 case 1407:
10349
10350 {
10351 if (osglData->baseTransposePresent == true)
10352 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData,
10353 "more than one baseTranspose attribute in <baseMatrix> element");
10354 else
10355 {
10356 if (strcmp((yyvsp[(2) - (3)].sval),"false") == 0) osglData->baseTranspose = false;
10357 else if (strcmp((yyvsp[(2) - (3)].sval),"true" ) == 0) osglData->baseTranspose = true;
10358 else parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData,
10359 "baseTranspose attribute in <baseMatrix> element must be \"true\" or \"false\"");
10360 }
10361 osglData->baseTransposePresent = true;
10362 free((yyvsp[(2) - (3)].sval));
10363 }
10364 break;
10365
10366 case 1410:
10367
10368 {
10369 if (osglData->categoryPresent == true)
10370 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one category attribute");
10371 osglData->categoryPresent = true;
10372 }
10373 break;
10374
10375 case 1411:
10376
10377 {
10378 if (osglData->categoryPresent == true)
10379 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one category attribute");
10380 osglData->categoryPresent = true;
10381 osglData->category = (yyvsp[(2) - (3)].sval);
10382 free((yyvsp[(2) - (3)].sval));
10383 }
10384 break;
10385
10386 case 1414:
10387
10388 {
10389 if (osglData->conTypePresent == true)
10390 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one conType attribute");
10391 osglData->conTypePresent = true;
10392 }
10393 break;
10394
10395 case 1415:
10396
10397 {
10398 if (osglData->conTypePresent == true)
10399 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one conType attribute");
10400 osglData->conTypePresent = true;
10401 osglData->conType = (yyvsp[(2) - (3)].sval);
10402 free((yyvsp[(2) - (3)].sval));
10403 }
10404 break;
10405
10406 case 1418:
10407
10408 {
10409 if (osglData->descriptionPresent == true)
10410 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one description attribute");
10411 osglData->descriptionPresent = true;
10412 }
10413 break;
10414
10415 case 1419:
10416
10417 {
10418 if (osglData->descriptionPresent == true)
10419 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one description attribute");
10420 osglData->descriptionPresent = true;
10421 osglData->description = (yyvsp[(2) - (3)].sval);
10422 free((yyvsp[(2) - (3)].sval));
10423 }
10424 break;
10425
10426 case 1422:
10427
10428 {
10429 if (osglData->enumTypePresent == true)
10430 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one enumType attribute");
10431 osglData->enumTypePresent = true;
10432 }
10433 break;
10434
10435 case 1423:
10436
10437 {
10438 if (osglData->enumTypePresent == true)
10439 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one enumType attribute");
10440 osglData->enumTypePresent = true;
10441 osglData->enumType = (yyvsp[(2) - (3)].sval);
10442 free((yyvsp[(2) - (3)].sval));
10443 }
10444 break;
10445
10446 case 1426:
10447
10448 {
10449 if (osglData->matrixVarTypePresent == true)
10450 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one matrixVarType attribute");
10451 osglData->matrixVarTypePresent = true;
10452 }
10453 break;
10454
10455 case 1427:
10456
10457 {
10458 if (osglData->matrixVarTypePresent == true)
10459 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one matrixVarType attribute");
10460 osglData->matrixVarTypePresent = true;
10461 osglData->matrixVarType = (yyvsp[(2) - (3)].sval);
10462 free((yyvsp[(2) - (3)].sval));
10463 }
10464 break;
10465
10466 case 1430:
10467
10468 {
10469 if (osglData->namePresent == true)
10470 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one name attribute");
10471 osglData->namePresent = true;
10472 }
10473 break;
10474
10475 case 1431:
10476
10477 {
10478 if (osglData->namePresent == true)
10479 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one name attribute");
10480 osglData->namePresent = true;
10481 osglData->name = (yyvsp[(2) - (3)].sval);
10482 free((yyvsp[(2) - (3)].sval));
10483 }
10484 break;
10485
10486 case 1434:
10487
10488 {
10489 if (osglData->objTypePresent == true)
10490 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one objType attribute");
10491 osglData->objTypePresent = true;
10492 }
10493 break;
10494
10495 case 1435:
10496
10497 {
10498 if (osglData->objTypePresent == true)
10499 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one objType attribute");
10500 osglData->objTypePresent = true;
10501 osglData->objType = (yyvsp[(2) - (3)].sval);
10502 free((yyvsp[(2) - (3)].sval));
10503 }
10504 break;
10505
10506 case 1438:
10507
10508 {
10509 if (osglData->rowMajorPresent)
10510 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "rowMajor attribute encountered more than once");
10511 else
10512 osglData->rowMajor = true;
10513 osglData->rowMajorPresent = true;
10514 }
10515 break;
10516
10517 case 1439:
10518
10519 {
10520 if (osglData->rowMajorPresent)
10521 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "rowMajor attribute encountered more than once");
10522 else
10523 {
10524 if (strcmp((yyvsp[(2) - (3)].sval),"false") == 0) osglData->rowMajor = false;
10525 else if (strcmp((yyvsp[(2) - (3)].sval),"true" ) == 0) osglData->rowMajor = true;
10526 else parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "rowMajor attribute must be \"true\" or \"false\"");
10527 }
10528 osglData->rowMajorPresent = true;
10529 free((yyvsp[(2) - (3)].sval));
10530 }
10531 break;
10532
10533 case 1442:
10534
10535 {
10536 if (osglData->shapePresent == true)
10537 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one shape attribute");
10538 osglData->shapePresent = true;
10539 }
10540 break;
10541
10542 case 1443:
10543
10544 {
10545 if (osglData->shapePresent == true)
10546 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one shape attribute");
10547 osglData->shapePresent = true;
10548 osglData->shape = (yyvsp[(2) - (3)].sval);
10549 free((yyvsp[(2) - (3)].sval));
10550 }
10551 break;
10552
10553 case 1446:
10554
10555 {
10556 if (osglData->solverPresent == true)
10557 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one solver attribute");
10558 osglData->solverPresent = true;
10559 }
10560 break;
10561
10562 case 1447:
10563
10564 {
10565 if (osglData->solverPresent == true)
10566 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one solver attribute");
10567 osglData->solverPresent = true;
10568 osglData->solver = (yyvsp[(2) - (3)].sval);
10569 free((yyvsp[(2) - (3)].sval));
10570 }
10571 break;
10572
10573 case 1450:
10574
10575 {
10576 if (osglData->symmetryPresent == true)
10577 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one symmetry attribute in <matrix> element");
10578 osglData->symmetryPresent = true;
10579 }
10580 break;
10581
10582 case 1451:
10583
10584 {
10585 if (osglData->symmetryPresent == true)
10586 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one symmetry attribute in <matrix> element");
10587 osglData->symmetryPresent = true;
10588 osglData->symmetry = (yyvsp[(2) - (3)].sval);
10589 free((yyvsp[(2) - (3)].sval));
10590 }
10591 break;
10592
10593 case 1454:
10594
10595 {
10596 if (osglData->typePresent == true)
10597 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one type attribute");
10598 osglData->typePresent = true;
10599 }
10600 break;
10601
10602 case 1455:
10603
10604 {
10605 if (osglData->typePresent == true)
10606 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one type attribute");
10607 osglData->typePresent = true;
10608 osglData->type = (yyvsp[(2) - (3)].sval);
10609 free((yyvsp[(2) - (3)].sval));
10610 }
10611 break;
10612
10613 case 1458:
10614
10615 {
10616 if (osglData->unitPresent == true)
10617 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one unit attribute");
10618 osglData->unitPresent = true;
10619 }
10620 break;
10621
10622 case 1459:
10623
10624 {
10625 if (osglData->unitPresent == true)
10626 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one unit attribute");
10627 osglData->unitPresent = true;
10628 osglData->unit = (yyvsp[(2) - (3)].sval);
10629 free((yyvsp[(2) - (3)].sval));
10630 }
10631 break;
10632
10633 case 1462:
10634
10635 {
10636 if (osglData->valuePresent == true)
10637 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one value attribute");
10638 osglData->valuePresent = true;
10639 osglData->value = "";
10640 }
10641 break;
10642
10643 case 1463:
10644
10645 {
10646 if (osglData->valuePresent == true)
10647 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one value attribute");
10648 osglData->valuePresent = true;
10649 osglData->value = (yyvsp[(2) - (3)].sval);
10650 free((yyvsp[(2) - (3)].sval));
10651 }
10652 break;
10653
10654 case 1466:
10655
10656 {
10657 if (osglData->valueTypePresent == true)
10658 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one valueType attribute");
10659 osglData->valueTypePresent = true;
10660 }
10661 break;
10662
10663 case 1467:
10664
10665 {
10666 if (osglData->valueTypePresent == true)
10667 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one valueType attribute");
10668 osglData->valueTypePresent = true;
10669 osglData->valueType = (yyvsp[(2) - (3)].sval);
10670 free((yyvsp[(2) - (3)].sval));
10671 }
10672 break;
10673
10674 case 1470:
10675
10676 {
10677 if (osglData->varTypePresent == true)
10678 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one varType attribute");
10679 osglData->varTypePresent = true;
10680 }
10681 break;
10682
10683 case 1471:
10684
10685 {
10686 if (osglData->varTypePresent == true)
10687 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "more than one varType attribute");
10688 osglData->varTypePresent = true;
10689 osglData->varType = (yyvsp[(2) - (3)].sval);
10690 free((yyvsp[(2) - (3)].sval));
10691 }
10692 break;
10693
10694 case 1499:
10695
10696 { osnlData->nlNodePoint = new OSnLNodeE();
10697 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);}
10698 break;
10699
10700 case 1503:
10701
10702 { osnlData->nlNodePoint = new OSnLNodePI();
10703 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);}
10704 break;
10705
10706 case 1507:
10707
10708 {
10709 osnlData->nlNodePoint = new OSnLNodeTimes();
10710 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10711 }
10712 break;
10713
10714 case 1509:
10715
10716 {
10717 osnlData->nlNodePoint = new OSnLNodePlus();
10718 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10719 }
10720 break;
10721
10722 case 1511:
10723
10724 {
10725 osnlData->nlNodePoint = new OSnLNodeMinus();
10726 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10727 }
10728 break;
10729
10730 case 1513:
10731
10732 {
10733 osnlData->nlNodePoint = new OSnLNodeNegate();
10734 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10735 }
10736 break;
10737
10738 case 1515:
10739
10740 {
10741 osnlData->nlNodePoint = new OSnLNodeDivide();
10742 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10743 }
10744 break;
10745
10746 case 1517:
10747
10748 {
10749 osnlData->nlNodePoint = new OSnLNodePower();
10750 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10751 }
10752 break;
10753
10754 case 1519:
10755
10756 {
10757 osnlData->nlNodePoint = new OSnLNodeLn();
10758 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10759 }
10760 break;
10761
10762 case 1521:
10763
10764 {
10765 osnlData->nlNodePoint = new OSnLNodeSqrt();
10766 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10767 }
10768 break;
10769
10770 case 1523:
10771
10772 {
10773 osnlData->nlNodePoint = new OSnLNodeSquare();
10774 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10775 }
10776 break;
10777
10778 case 1525:
10779
10780 {
10781 osnlData->nlNodePoint = new OSnLNodeCos();
10782 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10783 }
10784 break;
10785
10786 case 1527:
10787
10788 {
10789 osnlData->nlNodePoint = new OSnLNodeSin();
10790 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10791 }
10792 break;
10793
10794 case 1529:
10795
10796 {
10797 osnlData->nlNodePoint = new OSnLNodeExp();
10798 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10799 }
10800 break;
10801
10802 case 1532:
10803
10804 {
10805 osnlData->nlNodePoint = new OSnLNodeAbs();
10806 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10807 }
10808 break;
10809
10810 case 1533:
10811
10812 {
10813 #ifdef OSINSTANCE_AVAILABLE
10814 osinstance->instanceData->nonlinearExpressions->nl[ osnlData->tmpnlcount]->osExpressionTree->bADMustReTape = true;
10815 #endif
10816 }
10817 break;
10818
10819 case 1534:
10820
10821 {
10822 osnlData->nlNodePoint = new OSnLNodeErf();
10823 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10824 }
10825 break;
10826
10827 case 1535:
10828
10829 {
10830 }
10831 break;
10832
10833 case 1536:
10834
10835 {
10836 osnlData->nlNodePoint = new OSnLNodeIf();
10837 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10838 }
10839 break;
10840
10841 case 1537:
10842
10843 {
10844 #ifdef OSINSTANCE_AVAILABLE
10845 osinstance->instanceData->nonlinearExpressions->nl[ osnlData->tmpnlcount]->osExpressionTree->bADMustReTape = true;
10846 #endif
10847 }
10848 break;
10849
10850 case 1538:
10851
10852 {
10853 osnlData->nlNodePoint = new OSnLNodeMatrixDeterminant();
10854 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10855 }
10856 break;
10857
10858 case 1540:
10859
10860 {
10861 osnlData->nlNodePoint = new OSnLNodeMatrixTrace();
10862 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10863 }
10864 break;
10865
10866 case 1542:
10867
10868 {
10869 osnlData->nlNodePoint = new OSnLNodeMatrixToScalar();
10870 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10871 }
10872 break;
10873
10874 case 1544:
10875
10876 {
10877 osglData->valuePresent = false;
10878 osglData->typePresent = false;
10879 osnlData->numberidattON = false;
10880 }
10881 break;
10882
10883 case 1545:
10884
10885 {
10886 osnlData->nlNodeNumberPoint = new OSnLNodeNumber();
10887 osnlData->nlNodeVec.push_back( osnlData->nlNodeNumberPoint);
10888 }
10889 break;
10890
10891 case 1550:
10892
10893 {
10894 osnlData->nlNodeNumberPoint->type = osglData->type;
10895 }
10896 break;
10897
10898 case 1551:
10899
10900 {
10901 osnlData->nlNodeNumberPoint->value = atof(osglData->value.c_str());
10902 }
10903 break;
10904
10905 case 1553:
10906
10907 {
10908 if (osnlData->numberidattON) parserData->parser_errors +=
10909 addErrorMsg( NULL, osresult, parserData, osglData, osnlData,"too many number id attributes");
10910 osnlData->numberidattON = true;
10911 osnlData->nlNodeNumberPoint->id = (yyvsp[(2) - (2)].sval);
10912 free((yyvsp[(2) - (2)].sval));
10913 }
10914 break;
10915
10916 case 1555:
10917
10918 {
10919 osnlData->nlNodeVariablePoint = new OSnLNodeVariable();
10920 osnlData->nlNodeVec.push_back( osnlData->nlNodeVariablePoint);
10921 }
10922 break;
10923
10924 case 1556:
10925
10926 {osnlData->variablecoefattON = false; osnlData->variableidxattON = false;}
10927 break;
10928
10929 case 1559:
10930
10931 {
10932 osnlData->nlNodeVariablePoint->inumberOfChildren = 1;
10933 osnlData->nlNodeVariablePoint->m_mChildren = new OSnLNode*[ 1];
10934 }
10935 break;
10936
10937 case 1563:
10938
10939 {
10940 if (osnlData->variablecoefattON) parserData->parser_errors +=
10941 addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "too many variable coef attributes");
10942 osnlData->variablecoefattON = true;
10943 }
10944 break;
10945
10946 case 1564:
10947
10948 {
10949 if (osnlData->variableidxattON) parserData->parser_errors +=
10950 addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "too many variable idx attributes");
10951 osnlData->variableidxattON = true;
10952 }
10953 break;
10954
10955 case 1565:
10956
10957 {
10958 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) ) parserData->parser_errors +=
10959 addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10960 osnlData->nlNodeVariablePoint->coef = parserData->tempVal;
10961 }
10962 break;
10963
10964 case 1566:
10965
10966 {
10967 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) ) parserData->parser_errors +=
10968 addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
10969 osnlData->nlNodeVariablePoint->idx = (yyvsp[(3) - (4)].ival);
10970 }
10971 break;
10972
10973 case 1567:
10974
10975 {
10976 osnlData->nlNodePoint = new OSnLNodeSum();
10977 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
10978 osnlData->sumVec.push_back( osnlData->nlNodePoint);
10979 }
10980 break;
10981
10982 case 1568:
10983
10984 {
10985 ((OSnLNode*)osnlData->sumVec.back())->m_mChildren
10986 = new OSnLNode*[ ((OSnLNode*)osnlData->sumVec.back())->inumberOfChildren];
10987 osnlData->sumVec.pop_back();
10988 }
10989 break;
10990
10991 case 1570:
10992
10993 { ((OSnLNode*)osnlData->sumVec.back())->inumberOfChildren++; }
10994 break;
10995
10996 case 1571:
10997
10998 {
10999 osnlData->nlNodePoint = new OSnLNodeAllDiff ();
11000 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11001 osnlData->allDiffVec.push_back( osnlData->nlNodePoint);
11002 }
11003 break;
11004
11005 case 1572:
11006
11007 {
11008 ((OSnLNode*)osnlData->allDiffVec.back())->m_mChildren
11009 = new OSnLNode*[ ((OSnLNode*)osnlData->allDiffVec.back())->inumberOfChildren];
11010 osnlData->allDiffVec.pop_back();
11011 #ifdef OSINSTANCE_AVAILABLE
11012 osinstance->instanceData->nonlinearExpressions->nl[ osnlData->tmpnlcount]->osExpressionTree->bADMustReTape = true;
11013 #endif
11014 }
11015 break;
11016
11017 case 1574:
11018
11019 { ((OSnLNode*)osnlData->allDiffVec.back())->inumberOfChildren++; }
11020 break;
11021
11022 case 1575:
11023
11024 {
11025 osnlData->nlNodePoint = new OSnLNodeMax();
11026 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11027 osnlData->maxVec.push_back( osnlData->nlNodePoint);
11028 }
11029 break;
11030
11031 case 1576:
11032
11033 {
11034 osnlData->maxVec.back()->m_mChildren = new OSnLNode*[ osnlData->maxVec.back()->inumberOfChildren];
11035 osnlData->maxVec.pop_back();
11036 #ifdef OSINSTANCE_AVAILABLE
11037 osinstance->instanceData->nonlinearExpressions->nl[ osnlData->tmpnlcount]->osExpressionTree->bADMustReTape = true;
11038 #endif
11039 }
11040 break;
11041
11042 case 1578:
11043
11044 { osnlData->maxVec.back()->inumberOfChildren++; }
11045 break;
11046
11047 case 1579:
11048
11049 {
11050 osnlData->nlNodePoint = new OSnLNodeMin();
11051 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11052 osnlData->minVec.push_back( osnlData->nlNodePoint);
11053 }
11054 break;
11055
11056 case 1580:
11057
11058 {
11059 osnlData->minVec.back()->m_mChildren = new OSnLNode*[ osnlData->minVec.back()->inumberOfChildren];
11060 osnlData->minVec.pop_back();
11061 #ifdef OSINSTANCE_AVAILABLE
11062 osinstance->instanceData->nonlinearExpressions->nl[ osnlData->tmpnlcount]->osExpressionTree->bADMustReTape = true;
11063 #endif
11064 }
11065 break;
11066
11067 case 1582:
11068
11069 { osnlData->minVec.back()->inumberOfChildren++; }
11070 break;
11071
11072 case 1583:
11073
11074 {
11075 osnlData->nlNodePoint = new OSnLNodeProduct();
11076 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11077 osnlData->productVec.push_back( osnlData->nlNodePoint);
11078 }
11079 break;
11080
11081 case 1584:
11082
11083 {
11084 osnlData->productVec.back()->m_mChildren = new OSnLNode*[ osnlData->productVec.back()->inumberOfChildren];
11085 osnlData->productVec.pop_back();
11086 }
11087 break;
11088
11089 case 1586:
11090
11091 { osnlData->productVec.back()->inumberOfChildren++; }
11092 break;
11093
11094 case 1606:
11095
11096 {
11097 osnlData->matrixidxattON = false;
11098 }
11099 break;
11100
11101 case 1607:
11102
11103 {
11104 osnlData->nlMNodeMatrixRef = new OSnLMNodeMatrixReference();
11105 osnlData->nlNodeVec.push_back(osnlData->nlMNodeMatrixRef);
11106 }
11107 break;
11108
11109 case 1610:
11110
11111 {
11112 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
11113 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
11114 osnlData->nlMNodeMatrixRef->idx = (yyvsp[(3) - (4)].ival);
11115 }
11116 break;
11117
11118 case 1611:
11119
11120 {
11121 osnlData->matrixidxattON = false;
11122 }
11123 break;
11124
11125 case 1612:
11126
11127 {
11128 osnlData->nlMNodeMatrixVar = new OSnLMNodeMatrixVar();
11129 osnlData->nlNodeVec.push_back(osnlData->nlMNodeMatrixVar);
11130 }
11131 break;
11132
11133 case 1615:
11134
11135 {
11136 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
11137 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
11138 osnlData->nlMNodeMatrixVar->idx = (yyvsp[(3) - (4)].ival);
11139 }
11140 break;
11141
11142 case 1616:
11143
11144 {
11145 osnlData->matrixidxattON = false;
11146 }
11147 break;
11148
11149 case 1617:
11150
11151 {
11152 osnlData->nlMNodeMatrixObj = new OSnLMNodeMatrixObj();
11153 osnlData->nlNodeVec.push_back(osnlData->nlMNodeMatrixObj);
11154 }
11155 break;
11156
11157 case 1620:
11158
11159 {
11160 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
11161 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
11162 osnlData->nlMNodeMatrixObj->idx = (yyvsp[(3) - (4)].ival);
11163 }
11164 break;
11165
11166 case 1621:
11167
11168 {
11169 osnlData->matrixidxattON = false;
11170 }
11171 break;
11172
11173 case 1622:
11174
11175 {
11176 osnlData->nlMNodeMatrixCon = new OSnLMNodeMatrixCon();
11177 osnlData->nlNodeVec.push_back(osnlData->nlMNodeMatrixCon);
11178 }
11179 break;
11180
11181 case 1625:
11182
11183 {
11184 if ( *(yyvsp[(2) - (4)].sval) != *(yyvsp[(4) - (4)].sval) )
11185 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "start and end quotes are not the same");
11186 osnlData->nlMNodeMatrixCon->idx = (yyvsp[(3) - (4)].ival);
11187 }
11188 break;
11189
11190 case 1627:
11191
11192 {
11193 osnlData->nlNodePoint = new OSnLMNodeMatrixDiagonal();
11194 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11195 }
11196 break;
11197
11198 case 1630:
11199
11200 {
11201 osnlData->nlNodePoint = new OSnLMNodeMatrixDotTimes();
11202 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11203 }
11204 break;
11205
11206 case 1633:
11207
11208 {
11209 osnlData->nlNodePoint = new OSnLMNodeIdentityMatrix();
11210 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11211 }
11212 break;
11213
11214 case 1636:
11215
11216 {
11217 osnlData->nlNodePoint = new OSnLMNodeMatrixInverse();
11218 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11219 }
11220 break;
11221
11222 case 1639:
11223
11224 {
11225 osnlData->nlNodePoint = new OSnLMNodeMatrixLowerTriangle();
11226 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11227 }
11228 break;
11229
11230 case 1641:
11231
11232 {
11233 ((OSnLMNodeMatrixLowerTriangle*)osnlData->nlNodeVec.back())->includeDiagonal = osnlData->includeDiagonalAttribute;
11234 }
11235 break;
11236
11237 case 1644:
11238
11239 {
11240 osnlData->nlNodePoint = new OSnLMNodeMatrixUpperTriangle();
11241 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11242 }
11243 break;
11244
11245 case 1646:
11246
11247 {
11248 ((OSnLMNodeMatrixUpperTriangle*)osnlData->nlNodeVec.back())->includeDiagonal = osnlData->includeDiagonalAttribute;
11249 }
11250 break;
11251
11252 case 1648:
11253
11254 {
11255 if (strcmp((yyvsp[(2) - (3)].sval),"false") == 0) osnlData->includeDiagonalAttribute = false;
11256 else if (strcmp((yyvsp[(2) - (3)].sval),"true" ) == 0) osnlData->includeDiagonalAttribute = true;
11257 else parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "osnlData->includeDiagonal attribute must be \"true\" or \"false\"");
11258 free((yyvsp[(2) - (3)].sval));
11259 }
11260 break;
11261
11262 case 1650:
11263
11264 {
11265 parserData->parser_errors += addErrorMsg( NULL, osresult, parserData, osglData, osnlData, "matrix merge not yet implemented");
11266 }
11267 break;
11268
11269 case 1654:
11270
11271 {
11272 osnlData->nlNodePoint = new OSnLMNodeMatrixMinus();
11273 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11274 }
11275 break;
11276
11277 case 1657:
11278
11279 {
11280 osnlData->nlNodePoint = new OSnLMNodeMatrixNegate();
11281 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11282 }
11283 break;
11284
11285 case 1660:
11286
11287 {
11288 osnlData->nlNodePoint = new OSnLMNodeMatrixPlus();
11289 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11290 }
11291 break;
11292
11293 case 1663:
11294
11295 {
11296 osnlData->nlNodePoint = new OSnLMNodeMatrixTimes();
11297 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11298 }
11299 break;
11300
11301 case 1665:
11302
11303 {
11304 osnlData->nlNodePoint = new OSnLMNodeMatrixProduct();
11305 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11306 osnlData->matrixProductVec.push_back( osnlData->nlNodePoint);
11307 }
11308 break;
11309
11310 case 1666:
11311
11312 {
11313 osnlData->matrixProductVec.back()->m_mMatrixChildren = new OSnLMNode*[ osnlData->matrixProductVec.back()->inumberOfMatrixChildren];
11314 osnlData->matrixProductVec.pop_back();
11315 }
11316 break;
11317
11318 case 1668:
11319
11320 {
11321 osnlData->matrixProductVec.back()->inumberOfMatrixChildren++;
11322 }
11323 break;
11324
11325 case 1670:
11326
11327 {
11328 osnlData->nlNodePoint = new OSnLMNodeMatrixScalarTimes();
11329 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11330 }
11331 break;
11332
11333 case 1673:
11334
11335 {
11336 osnlData->nlNodePoint = new OSnLMNodeMatrixSubmatrixAt();
11337 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11338 }
11339 break;
11340
11341 case 1676:
11342
11343 {
11344 osnlData->nlNodePoint = new OSnLMNodeMatrixTranspose();
11345 osnlData->nlNodeVec.push_back( osnlData->nlNodePoint);
11346 }
11347 break;
11348
11349
11350
11351 default: break;
11352 }
11353 YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
11354
11355 YYPOPSTACK (yylen);
11356 yylen = 0;
11357 YY_STACK_PRINT (yyss, yyssp);
11358
11359 *++yyvsp = yyval;
11360 *++yylsp = yyloc;
11361
11362
11363
11364
11365
11366 yyn = yyr1[yyn];
11367
11368 yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
11369 if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
11370 yystate = yytable[yystate];
11371 else
11372 yystate = yydefgoto[yyn - YYNTOKENS];
11373
11374 goto yynewstate;
11375
11376
11377
11378
11379
11380 yyerrlab:
11381
11382 if (!yyerrstatus)
11383 {
11384 ++yynerrs;
11385 #if ! YYERROR_VERBOSE
11386 yyerror (&yylloc, osresult, parserData, osglData, osnlData, YY_("syntax error"));
11387 #else
11388 {
11389 YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
11390 if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
11391 {
11392 YYSIZE_T yyalloc = 2 * yysize;
11393 if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
11394 yyalloc = YYSTACK_ALLOC_MAXIMUM;
11395 if (yymsg != yymsgbuf)
11396 YYSTACK_FREE (yymsg);
11397 yymsg = (char *) YYSTACK_ALLOC (yyalloc);
11398 if (yymsg)
11399 yymsg_alloc = yyalloc;
11400 else
11401 {
11402 yymsg = yymsgbuf;
11403 yymsg_alloc = sizeof yymsgbuf;
11404 }
11405 }
11406
11407 if (0 < yysize && yysize <= yymsg_alloc)
11408 {
11409 (void) yysyntax_error (yymsg, yystate, yychar);
11410 yyerror (&yylloc, osresult, parserData, osglData, osnlData, yymsg);
11411 }
11412 else
11413 {
11414 yyerror (&yylloc, osresult, parserData, osglData, osnlData, YY_("syntax error"));
11415 if (yysize != 0)
11416 goto yyexhaustedlab;
11417 }
11418 }
11419 #endif
11420 }
11421
11422 yyerror_range[0] = yylloc;
11423
11424 if (yyerrstatus == 3)
11425 {
11426
11427
11428
11429 if (yychar <= YYEOF)
11430 {
11431
11432 if (yychar == YYEOF)
11433 YYABORT;
11434 }
11435 else
11436 {
11437 yydestruct ("Error: discarding",
11438 yytoken, &yylval, &yylloc, osresult, parserData, osglData, osnlData);
11439 yychar = YYEMPTY;
11440 }
11441 }
11442
11443
11444
11445 goto yyerrlab1;
11446
11447
11448
11449
11450
11451 yyerrorlab:
11452
11453
11454
11455
11456 if ( 0)
11457 goto yyerrorlab;
11458
11459 yyerror_range[0] = yylsp[1-yylen];
11460
11461
11462 YYPOPSTACK (yylen);
11463 yylen = 0;
11464 YY_STACK_PRINT (yyss, yyssp);
11465 yystate = *yyssp;
11466 goto yyerrlab1;
11467
11468
11469
11470
11471
11472 yyerrlab1:
11473 yyerrstatus = 3;
11474
11475 for (;;)
11476 {
11477 yyn = yypact[yystate];
11478 if (yyn != YYPACT_NINF)
11479 {
11480 yyn += YYTERROR;
11481 if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
11482 {
11483 yyn = yytable[yyn];
11484 if (0 < yyn)
11485 break;
11486 }
11487 }
11488
11489
11490 if (yyssp == yyss)
11491 YYABORT;
11492
11493 yyerror_range[0] = *yylsp;
11494 yydestruct ("Error: popping",
11495 yystos[yystate], yyvsp, yylsp, osresult, parserData, osglData, osnlData);
11496 YYPOPSTACK (1);
11497 yystate = *yyssp;
11498 YY_STACK_PRINT (yyss, yyssp);
11499 }
11500
11501 *++yyvsp = yylval;
11502
11503 yyerror_range[1] = yylloc;
11504
11505
11506 YYLLOC_DEFAULT (yyloc, (yyerror_range - 1), 2);
11507 *++yylsp = yyloc;
11508
11509
11510 YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
11511
11512 yystate = yyn;
11513 goto yynewstate;
11514
11515
11516
11517
11518
11519 yyacceptlab:
11520 yyresult = 0;
11521 goto yyreturn;
11522
11523
11524
11525
11526 yyabortlab:
11527 yyresult = 1;
11528 goto yyreturn;
11529
11530 #if !defined(yyoverflow) || YYERROR_VERBOSE
11531
11532
11533
11534 yyexhaustedlab:
11535 yyerror (&yylloc, osresult, parserData, osglData, osnlData, YY_("memory exhausted"));
11536 yyresult = 2;
11537
11538 #endif
11539
11540 yyreturn:
11541 if (yychar != YYEMPTY)
11542 yydestruct ("Cleanup: discarding lookahead",
11543 yytoken, &yylval, &yylloc, osresult, parserData, osglData, osnlData);
11544
11545
11546 YYPOPSTACK (yylen);
11547 YY_STACK_PRINT (yyss, yyssp);
11548 while (yyssp != yyss)
11549 {
11550 yydestruct ("Cleanup: popping",
11551 yystos[*yyssp], yyvsp, yylsp, osresult, parserData, osglData, osnlData);
11552 YYPOPSTACK (1);
11553 }
11554 #ifndef yyoverflow
11555 if (yyss != yyssa)
11556 YYSTACK_FREE (yyss);
11557 #endif
11558 #if YYERROR_VERBOSE
11559 if (yymsg != yymsgbuf)
11560 YYSTACK_FREE (yymsg);
11561 #endif
11562
11563 return YYID (yyresult);
11564 }
11565
11566
11567
11568
11569
11570 #if 0
11571 void osrlerror(YYLTYPE* mytype, OSResult *osresult, OSrLParserData* parserData, OSgLParserData* osglData, OSnLParserData *osnlData, std::string errormsg )
11572 {
11573 osrl_empty_vectors( parserData );
11574 osgl_empty_vectors( osglData );
11575 std::ostringstream outStr;
11576 std::string error = errormsg;
11577 error = "OSrL input is either invalid or not well-formed: " + error;
11578 outStr << error << std::endl;
11579 outStr << "Error occurred when reading: " << osrlget_text ( scanner ) << std::endl;
11580 outStr << "See line number: " << osrlget_lineno( scanner) << std::endl;
11581 error = outStr.str();
11582
11583
11584
11585 throw ErrorClass( error);
11586 }
11587 #endif
11588
11589 std::string addErrorMsg(YYLTYPE* mytype, OSResult *osresult, OSrLParserData* parserData, OSgLParserData* osglData, OSnLParserData *osnlData, std::string errormsg )
11590 {
11591 std::ostringstream outStr;
11592 outStr << "At line number " << osrlget_lineno( scanner) << ": ";
11593 outStr << osrlget_text ( scanner ) << std::endl;
11594 outStr << errormsg << std::endl;
11595
11596 return outStr.str();
11597 }
11598
11599 void osrlerror(YYLTYPE* mytype, OSResult *osresult, OSrLParserData* parserData, OSgLParserData* osglData, OSnLParserData *osnlData, std::string errormsg )
11600 {
11601 osrl_empty_vectors( parserData);
11602 osgl_empty_vectors( osglData);
11603 osnl_empty_vectors( osnlData);
11604 throw ErrorClass( errormsg);
11605 }
11606
11607
11608
11609 void yygetOSResult(const char *parsestring, OSResult *osresult, OSrLParserData *parserData, OSgLParserData *osglData, OSnLParserData *osnlData) throw(ErrorClass)
11610 {
11611 try
11612 {
11613 osrl_scan_string( parsestring, scanner);
11614 osrlset_lineno (1 , scanner );
11615
11616
11617
11618 if( osrlparse( osresult, parserData, osglData, osnlData) != 0) {
11619
11620 throw ErrorClass( "Error parsing the OSrL file");
11621 }
11622 }
11623 catch(const ErrorClass& eclass)
11624 {
11625 throw ErrorClass( eclass.errormsg);
11626 }
11627 }
11628
11629
11630 void osrl_empty_vectors( OSrLParserData* parserData)
11631 {
11632 #if 0
11633 int k;
11634 int numOtherVarVec = parserData->otherVarVec.size();
11635
11636 for (k = 0; k < numOtherVarVec; k++)
11637 {
11638 if ( (parserData->otherVarVec[k] != NULL) && (parserData->otherVarVec[k]->otherVarText != NULL) )
11639 delete[] parserData->otherVarVec[k]->otherVarText;
11640 if ( (parserData->otherVarVec[k] != NULL) && (parserData->otherVarVec[k]->otherVarIndex != NULL) )
11641 delete[] parserData->otherVarVec[k]->otherVarIndex;
11642
11643 if ( parserData->otherVarVec[k] != NULL) delete parserData->otherVarVec[k];
11644 }
11645 parserData->otherVarVec.clear();
11646
11647 int numDualVals = parserData->dualVals.size();
11648 for (k = 0; k < numDualVals; k++)
11649 {
11650 if (parserData->dualVals[k] != NULL )
11651 delete parserData->dualVals[k];
11652 }
11653 parserData->dualVals.clear();
11654
11655
11656 int numObjVals = parserData->objVals.size();
11657 for (k = 0; k < numObjVals; k++)
11658 {
11659 if (parserData->objVals[ k] != NULL )
11660 delete parserData->objVals[ k];
11661 }
11662 parserData->objVals.clear();
11663
11664
11665 int numPrimalVals = parserData->primalVals.size();
11666 for (k = 0; k < numPrimalVals; k++)
11667 {
11668 if (parserData->primalVals[ k] != NULL )
11669 delete parserData->primalVals[ k];
11670 }
11671 parserData->primalVals.clear();
11672 #endif
11673 }
11674
11675