diff --git a/Common/OpenFile.cpp b/Common/OpenFile.cpp index 1c4ab96b517516a30ecfde793731820e38fb15a1..ac69c8691e97030118c715ada638d8a79163f48e 100644 --- a/Common/OpenFile.cpp +++ b/Common/OpenFile.cpp @@ -701,6 +701,7 @@ void OpenProject(const std::string &fileName) for(std::map<std::string, std::string>::iterator it = cls.begin(); it != cls.end(); it++) gmsh_yystringsymbols[it->first] = std::vector<std::string>(1, it->second); + nameSpaces.clear(); FunctionManager::Instance()->clear(); #endif diff --git a/Parser/Gmsh.output b/Parser/Gmsh.output new file mode 100644 index 0000000000000000000000000000000000000000..02b2f14a01d2106fdf8e1e9d3e6ac44fa97670dc --- /dev/null +++ b/Parser/Gmsh.output @@ -0,0 +1,62142 @@ +Terminals which are not used + + tDistanceFunction + tElliptic + tChamfer + + +State 262 conflicts: 2 shift/reduce +State 383 conflicts: 2 shift/reduce +State 410 conflicts: 2 shift/reduce +State 802 conflicts: 2 shift/reduce + + +Grammar + + 0 $accept: All $end + + 1 All: GeoFormatItems + 2 | error tEND + + 3 GeoFormatItems: /* empty */ + 4 | GeoFormatItems GeoFormatItem + + 5 GeoFormatItem: Printf + 6 | View + 7 | Affectation + 8 | tSetFactory '(' StringExprVar ')' tEND + 9 | Shape + 10 | Transform + 11 | Delete + 12 | Colorify + 13 | SetPartition + 14 | Visibility + 15 | Extrude + 16 | Boolean + 17 | BooleanShape + 18 | Constraints + 19 | Coherence + 20 | Loop + 21 | Slide + 22 | Command + 23 | LevelSet + 24 | Homology + + 25 SendToFile: '>' + 26 | tGREATERGREATER + + 27 Printf: tPrintf '(' StringExprVar ')' tEND + 28 | tError '(' StringExprVar ')' tEND + 29 | tPrintf '(' StringExprVar ')' SendToFile StringExprVar tEND + 30 | tPrintf '(' StringExprVar ',' RecursiveListOfDouble ')' tEND + 31 | tError '(' StringExprVar ',' RecursiveListOfDouble ')' tEND + 32 | tPrintf '(' StringExprVar ',' RecursiveListOfDouble ')' SendToFile StringExprVar tEND + + 33 View: String__Index StringExprVar '{' Views '}' tEND + 34 | tAlias tSTRING '[' FExpr ']' tEND + 35 | tAliasWithOptions tSTRING '[' FExpr ']' tEND + 36 | tCopyOptions tSTRING '[' FExpr ',' FExpr ']' tEND + + 37 Views: /* empty */ + 38 | Views Element + 39 | Views Text2D + 40 | Views Text3D + 41 | Views InterpolationMatrix + 42 | Views Time + + 43 ElementCoords: FExpr + 44 | ElementCoords ',' FExpr + + 45 ElementValues: FExpr + 46 | ElementValues ',' FExpr + + 47 @1: /* empty */ + + 48 @2: /* empty */ + + 49 Element: tSTRING @1 '(' ElementCoords ')' @2 '{' ElementValues '}' tEND + + 50 Text2DValues: StringExprVar + 51 | Text2DValues ',' StringExprVar + + 52 @3: /* empty */ + + 53 Text2D: tText2D '(' FExpr ',' FExpr ',' FExpr ')' @3 '{' Text2DValues '}' tEND + + 54 Text3DValues: StringExprVar + 55 | Text3DValues ',' StringExprVar + + 56 @4: /* empty */ + + 57 Text3D: tText3D '(' FExpr ',' FExpr ',' FExpr ',' FExpr ')' @4 '{' Text3DValues '}' tEND + + 58 InterpolationMatrix: tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' tEND + 59 | tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' tEND + + 60 @5: /* empty */ + + 61 Time: tTime @5 '{' ElementValues '}' tEND + + 62 NumericAffectation: tAFFECT + 63 | tAFFECTPLUS + 64 | tAFFECTMINUS + 65 | tAFFECTTIMES + 66 | tAFFECTDIVIDE + + 67 NumericIncrement: tPLUSPLUS + 68 | tMINUSMINUS + + 69 LP: '(' + 70 | '[' + + 71 RP: ')' + 72 | ']' + + 73 Affectation: tDefineConstant '[' DefineConstants ']' tEND + 74 | tUndefineConstant '[' UndefineConstants ']' tEND + 75 | DefineStruct tEND + 76 | tSetNumber LP StringExpr ',' FExpr RP tEND + 77 | tSetString LP String__Index ',' StringExpr RP tEND + 78 | String__Index NumericAffectation ListOfDouble tEND + 79 | String__Index NumericIncrement tEND + 80 | String__Index LP RP NumericAffectation ListOfDouble tEND + 81 | String__Index LP '{' RecursiveListOfDouble '}' RP NumericAffectation ListOfDouble tEND + 82 | String__Index '[' FExpr ']' NumericAffectation FExpr tEND + 83 | String__Index '[' FExpr ']' NumericIncrement tEND + 84 | String__Index '(' FExpr ')' NumericAffectation FExpr tEND + 85 | String__Index '(' FExpr ')' NumericIncrement tEND + 86 | String__Index tAFFECT StringExpr tEND + 87 | String__Index LP RP tAFFECT tStr LP RP tEND + 88 | String__Index LP RP tAFFECT tStr LP RecursiveListOfStringExprVar RP tEND + 89 | String__Index LP RP tAFFECTPLUS tStr LP RecursiveListOfStringExprVar RP tEND + 90 | String__Index '.' tSTRING tAFFECT StringExpr tEND + 91 | String__Index '[' FExpr ']' '.' tSTRING tAFFECT StringExpr tEND + 92 | String__Index '.' tSTRING NumericAffectation FExpr tEND + 93 | String__Index '[' FExpr ']' '.' tSTRING NumericAffectation FExpr tEND + 94 | String__Index '.' tSTRING NumericIncrement tEND + 95 | String__Index '[' FExpr ']' '.' tSTRING NumericIncrement tEND + 96 | String__Index '.' tColor '.' tSTRING tAFFECT ColorExpr tEND + 97 | String__Index '[' FExpr ']' '.' tColor '.' tSTRING tAFFECT ColorExpr tEND + 98 | String__Index '.' tColorTable tAFFECT ListOfColor tEND + 99 | String__Index '[' FExpr ']' '.' tColorTable tAFFECT ListOfColor tEND + 100 | String__Index tField tAFFECT FExpr tEND + 101 | tField '[' FExpr ']' tAFFECT tSTRING tEND + 102 | tField '[' FExpr ']' '.' tSTRING tAFFECT FExpr tEND + 103 | tField '[' FExpr ']' '.' tSTRING tAFFECT StringExpr tEND + 104 | tField '[' FExpr ']' '.' tSTRING tAFFECT '{' RecursiveListOfDouble '}' tEND + 105 | tField '[' FExpr ']' '.' tSTRING tEND + 106 | tPlugin '(' tSTRING ')' '.' tSTRING tAFFECT FExpr tEND + 107 | tPlugin '(' tSTRING ')' '.' tSTRING tAFFECT StringExpr tEND + + 108 Comma: /* empty */ + 109 | ',' + + 110 DefineConstants: /* empty */ + 111 | DefineConstants Comma String__Index + 112 | DefineConstants Comma String__Index tAFFECT FExpr + + 113 @6: /* empty */ + + 114 DefineConstants: DefineConstants Comma String__Index tAFFECT '{' ListOfDouble @6 FloatParameterOptionsOrNone '}' + + 115 @7: /* empty */ + + 116 DefineConstants: DefineConstants Comma String__Index LP RP tAFFECT '{' ListOfDouble @7 FloatParameterOptionsOrNone '}' + 117 | DefineConstants Comma String__Index tAFFECT StringExpr + + 118 @8: /* empty */ + + 119 DefineConstants: DefineConstants Comma String__Index tAFFECT '{' StringExpr @8 CharParameterOptionsOrNone '}' + + 120 UndefineConstants: /* empty */ + 121 | UndefineConstants Comma StringExprVar + + 122 Enumeration: FExpr tAFFECT StringExpr + 123 | Enumeration ',' FExpr tAFFECT StringExpr + 124 | FExpr_Multi tAFFECT String__Index '(' ')' + + 125 FloatParameterOptionsOrNone: /* empty */ + 126 | ',' FloatParameterOptions + + 127 FloatParameterOptionsOrNone_NoComma: /* empty */ + 128 | FloatParameterOptions + + 129 FloatParameterOptions: FloatParameterOption + 130 | FloatParameterOptions ',' FloatParameterOption + + 131 FloatParameterOption: tSTRING ListOfDouble + 132 | tSTRING + 133 | tSTRING '{' Enumeration '}' + 134 | tSTRING StringExpr + + 135 CharParameterOptionsOrNone: /* empty */ + 136 | ',' CharParameterOptions + + 137 CharParameterOptions: CharParameterOption + 138 | CharParameterOptions ',' CharParameterOption + + 139 CharParameterOption: tSTRING FExpr + 140 | tSTRING StringExpr + 141 | tMacro StringExpr + 142 | tSTRING '{' RecursiveListOfStringExprVar '}' + + 143 PhysicalId0: FExpr + 144 | StringExpr + 145 | StringExpr ',' FExpr + + 146 PhysicalId1: FExpr + 147 | StringExpr + 148 | StringExpr ',' FExpr + + 149 PhysicalId2: FExpr + 150 | StringExpr + 151 | StringExpr ',' FExpr + + 152 PhysicalId3: FExpr + 153 | StringExpr + 154 | StringExpr ',' FExpr + + 155 InSphereCenter: /* empty */ + 156 | tIn tSphere '{' FExpr '}' + + 157 CircleOptions: /* empty */ + 158 | tPlane VExpr + + 159 Shape: tPoint '(' FExpr ')' tAFFECT VExpr tEND + 160 | tLine '(' FExpr ')' tAFFECT ListOfDouble tEND + 161 | tSpline '(' FExpr ')' tAFFECT ListOfDouble tEND + 162 | tCircle '(' FExpr ')' tAFFECT ListOfDouble CircleOptions tEND + 163 | tEllipse '(' FExpr ')' tAFFECT ListOfDouble CircleOptions tEND + 164 | tBSpline '(' FExpr ')' tAFFECT ListOfDouble tEND + 165 | tBezier '(' FExpr ')' tAFFECT ListOfDouble tEND + 166 | tNurbs '(' FExpr ')' tAFFECT ListOfDouble tNurbsKnots ListOfDouble tNurbsOrder FExpr tEND + 167 | tCompound tLine '(' FExpr ')' tAFFECT ListOfDouble tEND + 168 | tWire '(' FExpr ')' tAFFECT ListOfDouble tEND + 169 | tLine tSTRING '(' FExpr ')' tAFFECT ListOfDouble tEND + 170 | tPlane tSurface '(' FExpr ')' tAFFECT ListOfDouble tEND + 171 | tSurface '(' FExpr ')' tAFFECT ListOfDouble InSphereCenter tEND + 172 | tRuled tSurface '(' FExpr ')' tAFFECT ListOfDouble InSphereCenter tEND + 173 | tEuclidian tCoordinates tEND + 174 | tCoordinates tSurface FExpr tEND + 175 | tParametric tSurface '(' FExpr ')' tAFFECT tBIGSTR tBIGSTR tBIGSTR tEND + 176 | tSphere '(' FExpr ')' tAFFECT ListOfDouble tEND + 177 | tPolarSphere '(' FExpr ')' tAFFECT ListOfDouble tEND + 178 | tBlock '(' FExpr ')' tAFFECT ListOfDouble tEND + 179 | tTorus '(' FExpr ')' tAFFECT ListOfDouble tEND + 180 | tRectangle '(' FExpr ')' tAFFECT ListOfDouble tEND + 181 | tDisk '(' FExpr ')' tAFFECT ListOfDouble tEND + 182 | tCylinder '(' FExpr ')' tAFFECT ListOfDouble tEND + 183 | tCone '(' FExpr ')' tAFFECT ListOfDouble tEND + 184 | tWedge '(' FExpr ')' tAFFECT ListOfDouble tEND + 185 | tThickSolid '(' FExpr ')' tAFFECT ListOfDouble tEND + 186 | tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble tEND + 187 | tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble tSTRING '{' RecursiveListOfListOfDouble '}' tEND + 188 | tSurface tSTRING '(' FExpr ')' tAFFECT ListOfDouble tEND + 189 | tVolume '(' FExpr ')' tAFFECT ListOfDouble tEND + 190 | tThruSections '(' FExpr ')' tAFFECT ListOfDouble tEND + 191 | tRuled tThruSections '(' FExpr ')' tAFFECT ListOfDouble tEND + 192 | tCompound tVolume '(' FExpr ')' tAFFECT ListOfDouble tEND + 193 | tPhysical tPoint '(' PhysicalId0 ')' NumericAffectation ListOfDouble tEND + 194 | tPhysical tLine '(' PhysicalId1 ')' NumericAffectation ListOfDouble tEND + 195 | tPhysical tSurface '(' PhysicalId2 ')' NumericAffectation ListOfDouble tEND + 196 | tPhysical tVolume '(' PhysicalId3 ')' NumericAffectation ListOfDouble tEND + + 197 Transform: tTranslate VExpr '{' MultipleShape '}' + 198 | tRotate '{' VExpr ',' VExpr ',' FExpr '}' '{' MultipleShape '}' + 199 | tSymmetry VExpr '{' MultipleShape '}' + 200 | tDilate '{' VExpr ',' FExpr '}' '{' MultipleShape '}' + 201 | tDilate '{' VExpr ',' VExpr '}' '{' MultipleShape '}' + 202 | tSTRING '{' MultipleShape '}' + 203 | tIntersect tLine '{' RecursiveListOfDouble '}' tSurface '{' FExpr '}' + 204 | tSplit tLine '(' FExpr ')' '{' RecursiveListOfDouble '}' tEND + + 205 MultipleShape: ListOfShapes + 206 | Transform + + 207 ListOfShapes: /* empty */ + 208 | ListOfShapes Shape + 209 | ListOfShapes tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes tVolume '{' RecursiveListOfDouble '}' tEND + + 213 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT ListOfDouble tEND + 214 | tLevelset tPoint '(' FExpr ')' tAFFECT '{' RecursiveListOfListOfDouble '}' tEND + 215 | tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 216 | tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 217 | tLevelset tSphere '(' FExpr ')' tAFFECT '{' VExpr ',' RecursiveListOfDouble '}' tEND + 218 | tLevelset tCylinder '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 219 | tLevelset tCone '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 220 | tLevelset tEllipsoid '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 221 | tLevelset tQuadric '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 222 | tLevelset tSTRING '(' FExpr ')' tAFFECT ListOfDouble tEND + 223 | tLevelset tSTRING '(' FExpr ')' tAFFECT tBIGSTR tEND + 224 | tLevelset tSTRING '{' FExpr '}' tEND + + 225 Delete: tDelete '{' ListOfShapes '}' + 226 | tRecursive tDelete '{' ListOfShapes '}' + 227 | tDelete tField '[' FExpr ']' tEND + 228 | tDelete tSTRING '[' FExpr ']' tEND + 229 | tDelete String__Index tEND + 230 | tDelete tSTRING tSTRING tEND + 231 | tDelete tDefineStruct tEND + + 232 Colorify: tColor ColorExpr '{' ListOfShapes '}' + 233 | tRecursive tColor ColorExpr '{' ListOfShapes '}' + + 234 SetPartition: tSetPartition FExpr '{' ListOfShapes '}' + + 235 Visibility: tShow tBIGSTR tEND + 236 | tHide tBIGSTR tEND + 237 | tShow '{' ListOfShapes '}' + 238 | tRecursive tShow '{' ListOfShapes '}' + 239 | tHide '{' ListOfShapes '}' + 240 | tRecursive tHide '{' ListOfShapes '}' + + 241 Command: String__Index StringExpr tEND + 242 | tOnelabRun '(' RecursiveListOfStringExprVar ')' tEND + 243 | String__Index String__Index '[' FExpr ']' StringExprVar tEND + 244 | String__Index String__Index String__Index '[' FExpr ']' tEND + 245 | String__Index FExpr tEND + 246 | tPlugin '(' tSTRING ')' '.' tSTRING tEND + 247 | tCombine tSTRING tEND + 248 | tExit tEND + 249 | tAbort tEND + 250 | tSyncModel tEND + 251 | tNewModel tEND + 252 | tBoundingBox tEND + 253 | tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' tEND + 254 | tDraw tEND + 255 | tSetChanged tEND + 256 | tCreateTopology tEND + 257 | tCreateTopologyNoHoles tEND + 258 | tRefineMesh tEND + 259 | tAdaptMesh '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' FExpr ',' FExpr '}' tEND + + 260 Slide: tSlide '(' '{' RecursiveListOfDouble '}' ',' StringExpr ',' StringExpr ')' tEND + + 261 Loop: tFor '(' FExpr tDOTS FExpr ')' + 262 | tFor '(' FExpr tDOTS FExpr tDOTS FExpr ')' + 263 | tFor tSTRING tIn '{' FExpr tDOTS FExpr '}' + 264 | tFor tSTRING tIn '{' FExpr tDOTS FExpr tDOTS FExpr '}' + 265 | tEndFor + 266 | tMacro tSTRING + 267 | tMacro StringExpr + 268 | tReturn + 269 | tCall String__Index tEND + 270 | tCall StringExpr tEND + 271 | tIf '(' FExpr ')' + 272 | tElseIf '(' FExpr ')' + 273 | tElse + 274 | tEndIf + + 275 Extrude: tExtrude VExpr '{' ListOfShapes '}' + 276 | tExtrude '{' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes '}' + 277 | tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes '}' + + 278 @9: /* empty */ + + 279 Extrude: tExtrude VExpr '{' ListOfShapes @9 ExtrudeParameters '}' + + 280 @10: /* empty */ + + 281 Extrude: tExtrude '{' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes @10 ExtrudeParameters '}' + + 282 @11: /* empty */ + + 283 Extrude: tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes @11 ExtrudeParameters '}' + + 284 @12: /* empty */ + + 285 Extrude: tExtrude '{' ListOfShapes @12 ExtrudeParameters '}' + 286 | tExtrude '{' ListOfShapes '}' tUsing tWire '{' FExpr '}' + 287 | tThruSections ListOfDouble + 288 | tRuled tThruSections ListOfDouble + 289 | tFillet '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' FExpr '}' + + 290 ExtrudeParameters: ExtrudeParameter + 291 | ExtrudeParameters ExtrudeParameter + + 292 ExtrudeParameter: tLayers '{' FExpr '}' tEND + 293 | tLayers '{' ListOfDouble ',' ListOfDouble '}' tEND + 294 | tScaleLast tEND + 295 | tRecombine tEND + 296 | tRecombine FExpr tEND + 297 | tQuadTriAddVerts tEND + 298 | tQuadTriAddVerts tRecombLaterals tEND + 299 | tQuadTriNoNewVerts tEND + 300 | tQuadTriNoNewVerts tRecombLaterals tEND + 301 | tHole '(' FExpr ')' tAFFECT ListOfDouble tUsing FExpr tEND + 302 | tUsing tSTRING '[' FExpr ']' tEND + + 303 BooleanOperator: tBooleanUnion + 304 | tBooleanIntersection + 305 | tBooleanDifference + 306 | tBooleanSection + 307 | tBooleanFragments + + 308 BooleanOption: /* empty */ + 309 | tDelete tEND + 310 | tRecursive tDelete tEND + 311 | tDelete FExpr tEND + 312 | tRecursive tDelete FExpr tEND + + 313 Boolean: BooleanOperator '{' ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption '}' + 314 | tShapeFromFile '(' StringExprVar ')' + + 315 BooleanShape: BooleanOperator '(' FExpr ')' tAFFECT '{' ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption '}' tEND + + 316 TransfiniteType: /* empty */ + 317 | tUsing tSTRING FExpr + + 318 TransfiniteArrangement: /* empty */ + 319 | tSTRING + + 320 TransfiniteCorners: /* empty */ + 321 | tAFFECT ListOfDouble + + 322 RecombineAngle: /* empty */ + 323 | tAFFECT FExpr + + 324 PeriodicTransform: /* empty */ + 325 | tAffine ListOfDouble + + 326 Constraints: tCharacteristic tLength ListOfDouble tAFFECT FExpr tEND + 327 | tTransfinite tLine ListOfDoubleOrAll tAFFECT FExpr TransfiniteType tEND + 328 | tTransfinite tSurface ListOfDoubleOrAll TransfiniteCorners TransfiniteArrangement tEND + 329 | tTransfinite tVolume ListOfDoubleOrAll TransfiniteCorners tEND + 330 | tTransfQuadTri ListOfDoubleOrAll tEND + 331 | tMeshAlgorithm tSurface '{' RecursiveListOfDouble '}' tAFFECT FExpr tEND + 332 | tRecombine tSurface ListOfDoubleOrAll RecombineAngle tEND + 333 | tRecombine tVolume ListOfDoubleOrAll tEND + 334 | tSmoother tSurface ListOfDoubleOrAll tAFFECT FExpr tEND + 335 | tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform tEND + 336 | tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform tEND + 337 | tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 338 | tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 339 | tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + 340 | tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + 341 | tPeriodic tSurface FExpr '{' RecursiveListOfDouble '}' tAFFECT FExpr '{' RecursiveListOfDouble '}' tEND + 342 | tPoint '{' RecursiveListOfDouble '}' tIn tSurface '{' FExpr '}' tEND + 343 | tLine '{' RecursiveListOfDouble '}' tIn tSurface '{' FExpr '}' tEND + 344 | tPoint '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND + 345 | tLine '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND + 346 | tSurface '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND + 347 | tReverse tSurface ListOfDoubleOrAll tEND + 348 | tReverse tLine ListOfDoubleOrAll tEND + 349 | tRelocateMesh tPoint ListOfDoubleOrAll tEND + 350 | tRelocateMesh tLine ListOfDoubleOrAll tEND + 351 | tRelocateMesh tSurface ListOfDoubleOrAll tEND + 352 | tDegenerated tLine ListOfDouble tEND + 353 | tCompound tLine ListOfDouble tEND + 354 | tCompound tSurface ListOfDouble tEND + 355 | tCompound tVolume ListOfDouble tEND + + 356 Coherence: tCoherence tEND + 357 | tCoherence tSTRING tEND + 358 | tCoherence tPoint '{' RecursiveListOfDouble '}' tEND + + 359 HomologyCommand: tHomology + 360 | tCohomology + 361 | tBetti + + 362 Homology: HomologyCommand tEND + 363 | HomologyCommand '{' ListOfDouble '}' tEND + 364 | HomologyCommand '{' ListOfDouble ',' ListOfDouble '}' tEND + 365 | HomologyCommand '(' ListOfDouble ')' '{' ListOfDouble ',' ListOfDouble '}' tEND + + 366 FExpr: FExpr_Single + 367 | '(' FExpr ')' + 368 | '-' FExpr + 369 | '+' FExpr + 370 | '!' FExpr + 371 | FExpr '-' FExpr + 372 | FExpr '+' FExpr + 373 | FExpr '*' FExpr + 374 | FExpr '/' FExpr + 375 | FExpr '|' FExpr + 376 | FExpr '&' FExpr + 377 | FExpr '%' FExpr + 378 | FExpr '^' FExpr + 379 | FExpr '<' FExpr + 380 | FExpr '>' FExpr + 381 | FExpr tLESSOREQUAL FExpr + 382 | FExpr tGREATEROREQUAL FExpr + 383 | FExpr tEQUAL FExpr + 384 | FExpr tNOTEQUAL FExpr + 385 | FExpr tAND FExpr + 386 | FExpr tOR FExpr + 387 | FExpr tGREATERGREATER FExpr + 388 | FExpr tLESSLESS FExpr + 389 | FExpr '?' FExpr tDOTS FExpr + 390 | tExp LP FExpr RP + 391 | tLog LP FExpr RP + 392 | tLog10 LP FExpr RP + 393 | tSqrt LP FExpr RP + 394 | tSin LP FExpr RP + 395 | tAsin LP FExpr RP + 396 | tCos LP FExpr RP + 397 | tAcos LP FExpr RP + 398 | tTan LP FExpr RP + 399 | tAtan LP FExpr RP + 400 | tAtan2 LP FExpr ',' FExpr RP + 401 | tSinh LP FExpr RP + 402 | tCosh LP FExpr RP + 403 | tTanh LP FExpr RP + 404 | tFabs LP FExpr RP + 405 | tAbs LP FExpr RP + 406 | tFloor LP FExpr RP + 407 | tCeil LP FExpr RP + 408 | tRound LP FExpr RP + 409 | tFmod LP FExpr ',' FExpr RP + 410 | tModulo LP FExpr ',' FExpr RP + 411 | tHypot LP FExpr ',' FExpr RP + 412 | tRand LP FExpr RP + + 413 FExpr_Single: tDOUBLE + 414 | tPi + 415 | tTestLevel + 416 | tMPI_Rank + 417 | tMPI_Size + 418 | tGMSH_MAJOR_VERSION + 419 | tGMSH_MINOR_VERSION + 420 | tGMSH_PATCH_VERSION + 421 | tCpu + 422 | tMemory + 423 | tTotalMemory + + 424 @13: /* empty */ + + 425 FExpr_Single: tDefineNumber LP FExpr @13 FloatParameterOptionsOrNone RP + 426 | DefineStruct + 427 | tGetNumber LP StringExprVar RP + 428 | tGetNumber LP StringExprVar ',' FExpr RP + 429 | Struct_FullName + 430 | Struct_FullName '[' FExpr ']' + 431 | Struct_FullName '(' FExpr ')' + 432 | tExists '(' Struct_FullName ')' + 433 | tExists '(' Struct_FullName '.' tSTRING_Member_Float ')' + 434 | tGetForced '(' Struct_FullName GetForced_Default ')' + 435 | tGetForced '(' Struct_FullName '.' tSTRING_Member_Float GetForced_Default ')' + 436 | tFileExists '(' StringExpr ')' + 437 | '#' String__Index LP RP + 438 | '#' Struct_FullName '.' tSTRING_Member_Float '(' ')' + 439 | tDimNameSpace LP String__Index RP + 440 | tDimNameSpace LP RP + 441 | String__Index NumericIncrement + 442 | String__Index '[' FExpr ']' NumericIncrement + 443 | String__Index '(' FExpr ')' NumericIncrement + 444 | String__Index '.' tSTRING_Member_Float + 445 | String__Index tSCOPE String__Index '.' tSTRING_Member_Float + 446 | String__Index '.' tSTRING_Member_Float '(' FExpr ')' + 447 | String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' + 448 | String__Index '[' FExpr ']' '.' tSTRING + 449 | String__Index '.' tSTRING NumericIncrement + 450 | String__Index '[' FExpr ']' '.' tSTRING NumericIncrement + 451 | tGetValue '(' StringExprVar ',' FExpr ')' + 452 | tFind '(' ListOfDouble ',' ListOfDouble ')' + 453 | tStrFind LP StringExprVar ',' StringExprVar RP + 454 | tStrLen LP StringExprVar RP + 455 | tStrCmp LP StringExprVar ',' StringExprVar RP + 456 | tTextAttributes '(' RecursiveListOfStringExprVar ')' + + 457 GetForced_Default: /* empty */ + 458 | ',' FExpr + + 459 GetForcedStr_Default: /* empty */ + 460 | ',' StringExprVar + + 461 @14: /* empty */ + + 462 DefineStruct: tDefineStruct Struct_FullName AppendOrNot @14 '[' FloatParameterOptionsOrNone_NoComma ']' + + 463 Struct_FullName: String__Index + 464 | String__Index tSCOPE String__Index + + 465 tSTRING_Member_Float: tSTRING + + 466 Append: tAppend + 467 | tAppend FExpr + + 468 AppendOrNot: /* empty */ + 469 | '(' Append ')' + + 470 VExpr: VExpr_Single + 471 | '-' VExpr + 472 | '+' VExpr + 473 | VExpr '-' VExpr + 474 | VExpr '+' VExpr + + 475 VExpr_Single: '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + 476 | '{' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + 477 | '{' FExpr ',' FExpr ',' FExpr '}' + 478 | '(' FExpr ',' FExpr ',' FExpr ')' + + 479 RecursiveListOfListOfDouble: ListOfDouble + 480 | RecursiveListOfListOfDouble ',' ListOfDouble + + 481 ListOfDouble: FExpr + 482 | FExpr_Multi + 483 | '{' '}' + 484 | '{' RecursiveListOfDouble '}' + 485 | '-' '{' RecursiveListOfDouble '}' + 486 | FExpr '*' '{' RecursiveListOfDouble '}' + + 487 ListOfDoubleOrAll: ListOfDouble + 488 | tBIGSTR + + 489 FExpr_Multi: '-' FExpr_Multi + 490 | FExpr '*' FExpr_Multi + 491 | FExpr tDOTS FExpr + 492 | FExpr tDOTS FExpr tDOTS FExpr + 493 | tPoint '{' FExpr '}' + 494 | tPoint tBIGSTR + 495 | tLine tBIGSTR + 496 | tSurface tBIGSTR + 497 | tVolume tBIGSTR + 498 | tPhysical tPoint ListOfDoubleOrAll + 499 | tPhysical tLine ListOfDoubleOrAll + 500 | tPhysical tSurface ListOfDoubleOrAll + 501 | tPhysical tVolume ListOfDoubleOrAll + 502 | tPoint tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + 503 | tLine tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + 504 | tSurface tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + 505 | tVolume tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + 506 | Transform + 507 | Extrude + 508 | Boolean + 509 | String__Index LP RP + 510 | tList '[' String__Index ']' + 511 | tList '[' FExpr_Multi ']' + 512 | tList '(' FExpr_Multi ')' + 513 | tList LP '{' RecursiveListOfDouble '}' RP + 514 | String__Index LP '{' RecursiveListOfDouble '}' RP + 515 | tLinSpace LP FExpr ',' FExpr ',' FExpr RP + 516 | tLogSpace LP FExpr ',' FExpr ',' FExpr RP + 517 | tListFromFile LP StringExprVar RP + 518 | tCatenary LP FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr RP + 519 | tUnique LP FExpr_Multi RP + 520 | tAbs LP FExpr_Multi RP + + 521 RecursiveListOfDouble: FExpr + 522 | FExpr_Multi + 523 | RecursiveListOfDouble ',' FExpr + 524 | RecursiveListOfDouble ',' FExpr_Multi + + 525 ColorExpr: '{' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + 526 | '{' FExpr ',' FExpr ',' FExpr '}' + 527 | String__Index + 528 | tSTRING '.' tColor '.' tSTRING + + 529 ListOfColor: '{' RecursiveListOfColor '}' + 530 | String__Index '[' FExpr ']' '.' tColorTable + + 531 RecursiveListOfColor: ColorExpr + 532 | RecursiveListOfColor ',' ColorExpr + + 533 StringExprVar: StringExpr + 534 | String__Index + 535 | String__Index '[' FExpr ']' + 536 | String__Index '(' FExpr ')' + 537 | String__Index '.' tSTRING_Member_Float + 538 | String__Index tSCOPE String__Index '.' tSTRING_Member_Float + 539 | String__Index '.' tSTRING_Member_Float '(' FExpr ')' + 540 | String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' + 541 | String__Index '[' FExpr ']' '.' tSTRING + 542 | tPhysical tPoint '{' FExpr '}' + 543 | tPhysical tLine '{' FExpr '}' + 544 | tPhysical tSurface '{' FExpr '}' + 545 | tPhysical tVolume '{' FExpr '}' + + 546 StringExpr: tBIGSTR + 547 | tNameToString '[' String__Index ']' + 548 | tToday + 549 | tGmshExecutableName + 550 | tOnelabAction + 551 | tCodeName + 552 | tGetEnv '(' StringExprVar ')' + 553 | tGetStringValue '(' StringExprVar ',' StringExprVar ')' + 554 | tGetString LP StringExprVar RP + 555 | tGetString LP StringExprVar ',' StringExprVar RP + 556 | tGetForcedStr '(' Struct_FullName GetForcedStr_Default ')' + 557 | tGetForcedStr '(' Struct_FullName '.' tSTRING_Member_Float GetForcedStr_Default ')' + 558 | tStrCat LP RecursiveListOfStringExprVar RP + 559 | tStrPrefix '(' StringExprVar ')' + 560 | tStrRelative '(' StringExprVar ')' + 561 | tStrReplace '(' StringExprVar ',' StringExprVar ',' StringExprVar ')' + 562 | tStr LP RecursiveListOfStringExprVar RP + 563 | tUpperCase LP StringExprVar RP + 564 | tLowerCase LP StringExprVar RP + 565 | tLowerCaseIn LP StringExprVar RP + 566 | tStrChoice LP FExpr ',' StringExprVar ',' StringExprVar RP + 567 | tStrSub LP StringExprVar ',' FExpr ',' FExpr RP + 568 | tStrSub LP StringExprVar ',' FExpr RP + 569 | tSprintf LP StringExprVar RP + 570 | tSprintf LP StringExprVar ',' RecursiveListOfDouble RP + 571 | tFixRelativePath LP StringExprVar RP + 572 | tCurrentDirectory + 573 | tDirName LP StringExprVar RP + 574 | tAbsolutePath LP StringExprVar RP + + 575 @15: /* empty */ + + 576 StringExpr: tDefineString LP StringExpr @15 CharParameterOptionsOrNone RP + 577 | tNameStruct LP NameStruct_Arg RP + + 578 NameStruct_Arg: '#' FExpr + 579 | String__Index tSCOPE '#' FExpr + + 580 RecursiveListOfStringExprVar: StringExprVar + 581 | RecursiveListOfStringExprVar ',' StringExprVar + + 582 StringIndex: tSTRING '~' '{' FExpr '}' + 583 | StringIndex '~' '{' FExpr '}' + 584 | tStringToName '[' StringExprVar ']' '~' '{' FExpr '}' + + 585 String__Index: tSTRING + 586 | StringIndex + 587 | tStringToName '[' StringExprVar ']' + + +Terminals, with rules where they appear + +$end (0) 0 +'!' (33) 370 +'#' (35) 437 438 578 579 +'%' (37) 377 +'&' (38) 376 +'(' (40) 8 27 28 29 30 31 32 49 53 57 69 84 85 106 107 124 159 160 + 161 162 163 164 165 166 167 168 169 170 171 172 175 176 177 178 + 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 + 195 196 204 213 214 215 216 217 218 219 220 221 222 223 242 246 + 260 261 262 271 272 301 314 315 365 367 431 432 433 434 435 436 + 438 443 446 447 451 452 456 469 478 512 536 539 540 552 553 556 + 557 559 560 561 +')' (41) 8 27 28 29 30 31 32 49 53 57 71 84 85 106 107 124 159 160 + 161 162 163 164 165 166 167 168 169 170 171 172 175 176 177 178 + 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 + 195 196 204 213 214 215 216 217 218 219 220 221 222 223 242 246 + 260 261 262 271 272 301 314 315 365 367 431 432 433 434 435 436 + 438 443 446 447 451 452 456 469 478 512 536 539 540 552 553 556 + 557 559 560 561 +'*' (42) 373 486 490 +'+' (43) 369 372 472 474 +',' (44) 30 31 32 36 44 46 51 53 55 57 76 77 109 123 126 130 136 138 + 145 148 151 154 198 200 201 215 216 217 218 219 220 221 253 259 + 260 276 277 281 283 293 337 338 364 365 400 409 410 411 428 451 + 452 453 455 458 460 475 476 477 478 480 502 503 504 505 515 516 + 518 523 524 525 526 532 553 555 561 566 567 568 570 581 +'-' (45) 368 371 471 473 485 489 +'.' (46) 90 91 92 93 94 95 96 97 98 99 102 103 104 105 106 107 246 + 433 435 438 444 445 446 447 448 449 450 528 530 537 538 539 540 + 541 557 +'/' (47) 374 +'<' (60) 379 +'>' (62) 25 380 +'?' (63) 389 +'[' (91) 34 35 36 70 73 74 82 83 91 93 95 97 99 101 102 103 104 105 + 227 228 243 244 302 430 442 448 450 462 510 511 530 535 541 547 + 584 587 +']' (93) 34 35 36 72 73 74 82 83 91 93 95 97 99 101 102 103 104 105 + 227 228 243 244 302 430 442 448 450 462 510 511 530 535 541 547 + 584 587 +'^' (94) 378 +'{' (123) 33 49 53 57 58 59 61 81 104 114 116 119 133 142 156 187 197 + 198 199 200 201 202 203 204 209 210 211 212 214 215 216 217 218 + 219 220 221 224 225 226 232 233 234 237 238 239 240 253 259 260 + 263 264 275 276 277 279 281 283 285 286 289 292 293 313 315 331 + 335 336 337 338 339 340 341 342 343 344 345 346 358 363 364 365 + 475 476 477 483 484 485 486 493 502 503 504 505 513 514 525 526 + 529 542 543 544 545 582 583 584 +'|' (124) 375 +'}' (125) 33 49 53 57 58 59 61 81 104 114 116 119 133 142 156 187 197 + 198 199 200 201 202 203 204 209 210 211 212 214 215 216 217 218 + 219 220 221 224 225 226 232 233 234 237 238 239 240 253 259 260 + 263 264 275 276 277 279 281 283 285 286 289 292 293 313 315 331 + 335 336 337 338 339 340 341 342 343 344 345 346 358 363 364 365 + 475 476 477 483 484 485 486 493 502 503 504 505 513 514 525 526 + 529 542 543 544 545 582 583 584 +'~' (126) 582 583 584 +error (256) 2 +tDOUBLE (258) 413 +tSTRING (259) 34 35 36 49 90 91 92 93 94 95 96 97 101 102 103 104 105 + 106 107 131 132 133 134 139 140 142 169 187 188 202 222 223 224 + 228 230 246 247 263 264 266 302 317 319 357 448 449 450 465 528 + 541 582 585 +tBIGSTR (260) 175 223 235 236 488 494 495 496 497 546 +tEND (261) 2 8 27 28 29 30 31 32 33 34 35 36 49 53 57 58 59 61 73 74 + 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 + 96 97 98 99 100 101 102 103 104 105 106 107 159 160 161 162 163 + 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 + 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 + 196 204 209 210 211 212 213 214 215 216 217 218 219 220 221 222 + 223 224 227 228 229 230 231 235 236 241 242 243 244 245 246 247 + 248 249 250 251 252 253 254 255 256 257 258 259 260 269 270 292 + 293 294 295 296 297 298 299 300 301 302 309 310 311 312 315 326 + 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 + 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 + 362 363 364 365 +tAFFECT (262) 62 86 87 88 90 91 96 97 98 99 100 101 102 103 104 106 + 107 112 114 116 117 119 122 123 124 159 160 161 162 163 164 165 + 166 167 168 169 170 171 172 175 176 177 178 179 180 181 182 183 + 184 185 186 187 188 189 190 191 192 213 214 215 216 217 218 219 + 220 221 222 223 301 315 321 323 326 327 331 334 335 336 337 338 + 339 340 341 +tDOTS (263) 261 262 263 264 389 491 492 +tSCOPE (264) 445 447 464 538 540 579 +tPi (265) 414 +tMPI_Rank (266) 416 +tMPI_Size (267) 417 +tEuclidian (268) 173 +tCoordinates (269) 173 174 +tTestLevel (270) 415 +tExp (271) 390 +tLog (272) 391 +tLog10 (273) 392 +tSqrt (274) 393 +tSin (275) 394 +tAsin (276) 395 +tCos (277) 396 +tAcos (278) 397 +tTan (279) 398 +tRand (280) 412 +tAtan (281) 399 +tAtan2 (282) 400 +tSinh (283) 401 +tCosh (284) 402 +tTanh (285) 403 +tFabs (286) 404 +tAbs (287) 405 520 +tFloor (288) 406 +tCeil (289) 407 +tRound (290) 408 +tFmod (291) 409 +tModulo (292) 410 +tHypot (293) 411 +tList (294) 510 511 512 513 +tLinSpace (295) 515 +tLogSpace (296) 516 +tListFromFile (297) 517 +tCatenary (298) 518 +tPrintf (299) 27 29 30 32 +tError (300) 28 31 +tStr (301) 87 88 89 562 +tSprintf (302) 569 570 +tStrCat (303) 558 +tStrPrefix (304) 559 +tStrRelative (305) 560 +tStrReplace (306) 561 +tAbsolutePath (307) 574 +tDirName (308) 573 +tStrSub (309) 567 568 +tStrLen (310) 454 +tFind (311) 452 +tStrFind (312) 453 +tStrCmp (313) 455 +tStrChoice (314) 566 +tUpperCase (315) 563 +tLowerCase (316) 564 +tLowerCaseIn (317) 565 +tTextAttributes (318) 456 +tBoundingBox (319) 252 253 502 503 504 505 +tDraw (320) 254 +tSetChanged (321) 255 +tToday (322) 548 +tFixRelativePath (323) 571 +tCurrentDirectory (324) 572 +tSyncModel (325) 250 +tNewModel (326) 251 +tOnelabAction (327) 550 +tOnelabRun (328) 242 +tCodeName (329) 551 +tCpu (330) 421 +tMemory (331) 422 +tTotalMemory (332) 423 +tCreateTopology (333) 256 +tCreateTopologyNoHoles (334) 257 +tDistanceFunction (335) +tDefineConstant (336) 73 +tUndefineConstant (337) 74 +tDefineNumber (338) 425 +tDefineStruct (339) 231 462 +tNameStruct (340) 577 +tDimNameSpace (341) 439 440 +tAppend (342) 466 467 +tDefineString (343) 576 +tSetNumber (344) 76 +tSetString (345) 77 +tPoint (346) 159 193 209 214 342 344 349 358 493 494 498 502 542 +tCircle (347) 162 +tEllipse (348) 163 +tLine (349) 160 167 169 194 203 204 210 327 335 337 339 343 345 348 + 350 352 353 495 499 503 543 +tSphere (350) 156 176 217 +tPolarSphere (351) 177 +tSurface (352) 170 171 172 174 175 186 187 188 195 203 211 328 331 + 332 334 336 338 340 341 342 343 346 347 351 354 496 500 504 544 +tSpline (353) 161 +tVolume (354) 189 192 196 212 329 333 344 345 346 355 497 501 505 545 +tBlock (355) 178 +tCylinder (356) 182 218 +tCone (357) 183 219 +tTorus (358) 179 +tEllipsoid (359) 220 +tQuadric (360) 221 +tShapeFromFile (361) 314 +tRectangle (362) 180 +tDisk (363) 181 +tWire (364) 168 286 +tCharacteristic (365) 326 +tLength (366) 326 +tParametric (367) 175 +tElliptic (368) +tRefineMesh (369) 258 +tAdaptMesh (370) 259 +tRelocateMesh (371) 349 350 351 +tSetFactory (372) 8 +tThruSections (373) 190 191 287 288 +tWedge (374) 184 +tFillet (375) 289 +tChamfer (376) +tPlane (377) 158 170 213 215 216 +tRuled (378) 172 191 288 +tTransfinite (379) 327 328 329 +tPhysical (380) 193 194 195 196 498 499 500 501 542 543 544 545 +tCompound (381) 167 186 187 192 353 354 355 +tPeriodic (382) 335 336 337 338 339 340 341 +tUsing (383) 286 301 302 317 +tPlugin (384) 106 107 246 +tDegenerated (385) 352 +tRecursive (386) 226 233 238 240 310 312 +tRotate (387) 198 337 338 +tTranslate (388) 197 339 340 +tSymmetry (389) 199 +tDilate (390) 200 201 +tExtrude (391) 275 276 277 279 281 283 285 286 +tLevelset (392) 213 214 215 216 217 218 219 220 221 222 223 224 +tAffine (393) 325 +tBooleanUnion (394) 303 +tBooleanIntersection (395) 304 +tBooleanDifference (396) 305 +tBooleanSection (397) 306 +tBooleanFragments (398) 307 +tThickSolid (399) 185 +tRecombine (400) 295 296 332 333 +tSmoother (401) 334 +tSplit (402) 204 +tDelete (403) 225 226 227 228 229 230 231 309 310 311 312 +tCoherence (404) 356 357 358 +tIntersect (405) 203 +tMeshAlgorithm (406) 331 +tReverse (407) 347 348 +tLayers (408) 292 293 +tScaleLast (409) 294 +tHole (410) 301 +tAlias (411) 34 +tAliasWithOptions (412) 35 +tCopyOptions (413) 36 +tQuadTriAddVerts (414) 297 298 +tQuadTriNoNewVerts (415) 299 300 +tRecombLaterals (416) 298 300 +tTransfQuadTri (417) 330 +tText2D (418) 53 +tText3D (419) 57 +tInterpolationScheme (420) 58 59 +tTime (421) 61 +tCombine (422) 247 +tBSpline (423) 164 +tBezier (424) 165 +tNurbs (425) 166 +tNurbsOrder (426) 166 +tNurbsKnots (427) 166 +tColor (428) 96 97 232 233 528 +tColorTable (429) 98 99 530 +tFor (430) 261 262 263 264 +tIn (431) 156 263 264 342 343 344 345 346 502 503 504 505 +tEndFor (432) 265 +tIf (433) 271 +tElseIf (434) 272 +tElse (435) 273 +tEndIf (436) 274 +tExit (437) 248 +tAbort (438) 249 +tField (439) 100 101 102 103 104 105 227 +tReturn (440) 268 +tCall (441) 269 270 +tSlide (442) 260 +tMacro (443) 141 266 267 +tShow (444) 235 237 238 +tHide (445) 236 239 240 +tGetValue (446) 451 +tGetStringValue (447) 553 +tGetEnv (448) 552 +tGetString (449) 554 555 +tGetNumber (450) 427 428 +tUnique (451) 519 +tHomology (452) 359 +tCohomology (453) 360 +tBetti (454) 361 +tExists (455) 432 433 +tFileExists (456) 436 +tGetForced (457) 434 435 +tGetForcedStr (458) 556 557 +tGMSH_MAJOR_VERSION (459) 418 +tGMSH_MINOR_VERSION (460) 419 +tGMSH_PATCH_VERSION (461) 420 +tGmshExecutableName (462) 549 +tSetPartition (463) 234 +tNameToString (464) 547 +tStringToName (465) 584 587 +tAFFECTDIVIDE (466) 66 +tAFFECTTIMES (467) 65 +tAFFECTMINUS (468) 64 +tAFFECTPLUS (469) 63 89 +tOR (470) 386 +tAND (471) 385 +tNOTEQUAL (472) 384 +tEQUAL (473) 383 +tGREATERGREATER (474) 26 387 +tLESSLESS (475) 388 +tGREATEROREQUAL (476) 382 +tLESSOREQUAL (477) 381 +UNARYPREC (478) +tMINUSMINUS (479) 68 +tPLUSPLUS (480) 67 + + +Nonterminals, with rules where they appear + +$accept (248) + on left: 0 +All (249) + on left: 1 2, on right: 0 +GeoFormatItems (250) + on left: 3 4, on right: 1 4 +GeoFormatItem (251) + on left: 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 + , on right: 4 +SendToFile (252) + on left: 25 26, on right: 29 32 +Printf (253) + on left: 27 28 29 30 31 32, on right: 5 +View (254) + on left: 33 34 35 36, on right: 6 +Views (255) + on left: 37 38 39 40 41 42, on right: 33 38 39 40 41 42 +ElementCoords (256) + on left: 43 44, on right: 44 49 +ElementValues (257) + on left: 45 46, on right: 46 49 61 +Element (258) + on left: 49, on right: 38 +@1 (259) + on left: 47, on right: 49 +@2 (260) + on left: 48, on right: 49 +Text2DValues (261) + on left: 50 51, on right: 51 53 +Text2D (262) + on left: 53, on right: 39 +@3 (263) + on left: 52, on right: 53 +Text3DValues (264) + on left: 54 55, on right: 55 57 +Text3D (265) + on left: 57, on right: 40 +@4 (266) + on left: 56, on right: 57 +InterpolationMatrix (267) + on left: 58 59, on right: 41 +Time (268) + on left: 61, on right: 42 +@5 (269) + on left: 60, on right: 61 +NumericAffectation (270) + on left: 62 63 64 65 66, on right: 78 80 81 82 84 92 93 193 194 + 195 196 +NumericIncrement (271) + on left: 67 68, on right: 79 83 85 94 95 441 442 443 449 450 +LP (272) + on left: 69 70, on right: 76 77 80 81 87 88 89 116 390 391 392 + 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 + 409 410 411 412 425 427 428 437 439 440 453 454 455 509 513 514 + 515 516 517 518 519 520 554 555 558 562 563 564 565 566 567 568 + 569 570 571 573 574 576 577 +RP (273) + on left: 71 72, on right: 76 77 80 81 87 88 89 116 390 391 392 + 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 + 409 410 411 412 425 427 428 437 439 440 453 454 455 509 513 514 + 515 516 517 518 519 520 554 555 558 562 563 564 565 566 567 568 + 569 570 571 573 574 576 577 +Affectation (274) + on left: 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 + 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107, + on right: 7 +Comma (275) + on left: 108 109, on right: 111 112 114 116 117 119 121 +DefineConstants (276) + on left: 110 111 112 114 116 117 119, on right: 73 111 112 114 + 116 117 119 +@6 (277) + on left: 113, on right: 114 +@7 (278) + on left: 115, on right: 116 +@8 (279) + on left: 118, on right: 119 +UndefineConstants (280) + on left: 120 121, on right: 74 121 +Enumeration (281) + on left: 122 123 124, on right: 123 133 +FloatParameterOptionsOrNone (282) + on left: 125 126, on right: 114 116 425 +FloatParameterOptionsOrNone_NoComma (283) + on left: 127 128, on right: 462 +FloatParameterOptions (284) + on left: 129 130, on right: 126 128 130 +FloatParameterOption (285) + on left: 131 132 133 134, on right: 129 130 +CharParameterOptionsOrNone (286) + on left: 135 136, on right: 119 576 +CharParameterOptions (287) + on left: 137 138, on right: 136 138 +CharParameterOption (288) + on left: 139 140 141 142, on right: 137 138 +PhysicalId0 (289) + on left: 143 144 145, on right: 193 +PhysicalId1 (290) + on left: 146 147 148, on right: 194 +PhysicalId2 (291) + on left: 149 150 151, on right: 195 +PhysicalId3 (292) + on left: 152 153 154, on right: 196 +InSphereCenter (293) + on left: 155 156, on right: 171 172 +CircleOptions (294) + on left: 157 158, on right: 162 163 +Shape (295) + on left: 159 160 161 162 163 164 165 166 167 168 169 170 171 172 + 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 + 189 190 191 192 193 194 195 196, on right: 9 208 +Transform (296) + on left: 197 198 199 200 201 202 203 204, on right: 10 206 506 +MultipleShape (297) + on left: 205 206, on right: 197 198 199 200 201 202 +ListOfShapes (298) + on left: 207 208 209 210 211 212, on right: 205 208 209 210 211 + 212 225 226 232 233 234 237 238 239 240 275 276 277 279 281 283 + 285 286 313 315 +LevelSet (299) + on left: 213 214 215 216 217 218 219 220 221 222 223 224, + on right: 23 +Delete (300) + on left: 225 226 227 228 229 230 231, on right: 11 +Colorify (301) + on left: 232 233, on right: 12 +SetPartition (302) + on left: 234, on right: 13 +Visibility (303) + on left: 235 236 237 238 239 240, on right: 14 +Command (304) + on left: 241 242 243 244 245 246 247 248 249 250 251 252 253 254 + 255 256 257 258 259, on right: 22 +Slide (305) + on left: 260, on right: 21 +Loop (306) + on left: 261 262 263 264 265 266 267 268 269 270 271 272 273 274 + , on right: 20 +Extrude (307) + on left: 275 276 277 279 281 283 285 286 287 288 289, + on right: 15 507 +@9 (308) + on left: 278, on right: 279 +@10 (309) + on left: 280, on right: 281 +@11 (310) + on left: 282, on right: 283 +@12 (311) + on left: 284, on right: 285 +ExtrudeParameters (312) + on left: 290 291, on right: 279 281 283 285 291 +ExtrudeParameter (313) + on left: 292 293 294 295 296 297 298 299 300 301 302, + on right: 290 291 +BooleanOperator (314) + on left: 303 304 305 306 307, on right: 313 315 +BooleanOption (315) + on left: 308 309 310 311 312, on right: 313 315 +Boolean (316) + on left: 313 314, on right: 16 508 +BooleanShape (317) + on left: 315, on right: 17 +TransfiniteType (318) + on left: 316 317, on right: 327 +TransfiniteArrangement (319) + on left: 318 319, on right: 328 +TransfiniteCorners (320) + on left: 320 321, on right: 328 329 +RecombineAngle (321) + on left: 322 323, on right: 332 +PeriodicTransform (322) + on left: 324 325, on right: 335 336 +Constraints (323) + on left: 326 327 328 329 330 331 332 333 334 335 336 337 338 339 + 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 + , on right: 18 +Coherence (324) + on left: 356 357 358, on right: 19 +HomologyCommand (325) + on left: 359 360 361, on right: 362 363 364 365 +Homology (326) + on left: 362 363 364 365, on right: 24 +FExpr (327) + on left: 366 367 368 369 370 371 372 373 374 375 376 377 378 379 + 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 + 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 + 412, on right: 34 35 36 43 44 45 46 53 57 76 82 83 84 85 91 92 + 93 95 97 99 100 101 102 103 104 105 106 112 122 123 139 143 145 + 146 148 149 151 152 154 156 159 160 161 162 163 164 165 166 167 + 168 169 170 171 172 174 175 176 177 178 179 180 181 182 183 184 + 185 186 187 188 189 190 191 192 198 200 203 204 213 214 215 216 + 217 218 219 220 221 222 223 224 227 228 234 243 244 245 253 259 + 261 262 263 264 271 272 276 277 281 283 286 289 292 296 301 302 + 311 312 315 317 323 326 327 331 334 337 338 341 342 343 344 345 + 346 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 + 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 + 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 425 + 428 430 431 442 443 446 447 448 450 451 458 467 475 476 477 478 + 481 486 490 491 492 493 502 503 504 505 515 516 518 521 523 525 + 526 530 535 536 539 540 541 542 543 544 545 566 567 568 578 579 + 582 583 584 +FExpr_Single (328) + on left: 413 414 415 416 417 418 419 420 421 422 423 425 426 427 + 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 + 444 445 446 447 448 449 450 451 452 453 454 455 456, + on right: 366 +@13 (329) + on left: 424, on right: 425 +GetForced_Default (330) + on left: 457 458, on right: 434 435 +GetForcedStr_Default (331) + on left: 459 460, on right: 556 557 +DefineStruct (332) + on left: 462, on right: 75 426 +@14 (333) + on left: 461, on right: 462 +Struct_FullName (334) + on left: 463 464, on right: 429 430 431 432 433 434 435 438 462 + 556 557 +tSTRING_Member_Float (335) + on left: 465, on right: 433 435 438 444 445 446 447 537 538 539 + 540 557 +Append (336) + on left: 466 467, on right: 469 +AppendOrNot (337) + on left: 468 469, on right: 462 +VExpr (338) + on left: 470 471 472 473 474, on right: 158 159 197 198 199 200 + 201 215 216 217 218 219 220 221 275 276 277 279 281 283 337 338 + 339 340 471 472 473 474 +VExpr_Single (339) + on left: 475 476 477 478, on right: 470 +RecursiveListOfListOfDouble (340) + on left: 479 480, on right: 58 59 187 214 259 480 +ListOfDouble (341) + on left: 481 482 483 484 485 486, on right: 78 80 81 114 116 131 + 160 161 162 163 164 165 166 167 168 169 170 171 172 176 177 178 + 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 + 195 196 213 222 287 288 293 301 321 325 326 352 353 354 355 363 + 364 365 452 479 480 487 +ListOfDoubleOrAll (342) + on left: 487 488, on right: 327 328 329 330 332 333 334 347 348 + 349 350 351 498 499 500 501 +FExpr_Multi (343) + on left: 489 490 491 492 493 494 495 496 497 498 499 500 501 502 + 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 + 519 520, on right: 124 482 489 490 511 512 519 520 522 524 +RecursiveListOfDouble (344) + on left: 521 522 523 524, on right: 30 31 32 81 104 203 204 209 + 210 211 212 215 216 217 218 219 220 221 259 260 289 331 335 336 + 337 338 339 340 341 342 343 344 345 346 358 484 485 486 513 514 + 523 524 570 +ColorExpr (345) + on left: 525 526 527 528, on right: 96 97 232 233 531 532 +ListOfColor (346) + on left: 529 530, on right: 98 99 +RecursiveListOfColor (347) + on left: 531 532, on right: 529 532 +StringExprVar (348) + on left: 533 534 535 536 537 538 539 540 541 542 543 544 545, + on right: 8 27 28 29 30 31 32 33 50 51 54 55 121 243 314 427 428 + 451 453 454 455 460 517 552 553 554 555 559 560 561 563 564 565 + 566 567 568 569 570 571 573 574 580 581 584 587 +StringExpr (349) + on left: 546 547 548 549 550 551 552 553 554 555 556 557 558 559 + 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 576 + 577, on right: 76 77 86 90 91 103 107 117 119 122 123 134 140 141 + 144 145 147 148 150 151 153 154 241 260 267 270 436 533 576 +@15 (350) + on left: 575, on right: 576 +NameStruct_Arg (351) + on left: 578 579, on right: 577 +RecursiveListOfStringExprVar (352) + on left: 580 581, on right: 88 89 142 242 456 558 562 581 +StringIndex (353) + on left: 582 583 584, on right: 583 586 +String__Index (354) + on left: 585 586 587, on right: 33 77 78 79 80 81 82 83 84 85 86 + 87 88 89 90 91 92 93 94 95 96 97 98 99 100 111 112 114 116 117 + 119 124 229 241 243 244 245 269 437 439 441 442 443 444 445 446 + 447 448 449 450 463 464 509 510 514 527 530 534 535 536 537 538 + 539 540 541 547 579 + + +state 0 + + 0 $accept: . All $end + + error shift, and go to state 1 + + $end reduce using rule 3 (GeoFormatItems) + tSTRING reduce using rule 3 (GeoFormatItems) + tEuclidian reduce using rule 3 (GeoFormatItems) + tCoordinates reduce using rule 3 (GeoFormatItems) + tPrintf reduce using rule 3 (GeoFormatItems) + tError reduce using rule 3 (GeoFormatItems) + tBoundingBox reduce using rule 3 (GeoFormatItems) + tDraw reduce using rule 3 (GeoFormatItems) + tSetChanged reduce using rule 3 (GeoFormatItems) + tSyncModel reduce using rule 3 (GeoFormatItems) + tNewModel reduce using rule 3 (GeoFormatItems) + tOnelabRun reduce using rule 3 (GeoFormatItems) + tCreateTopology reduce using rule 3 (GeoFormatItems) + tCreateTopologyNoHoles reduce using rule 3 (GeoFormatItems) + tDefineConstant reduce using rule 3 (GeoFormatItems) + tUndefineConstant reduce using rule 3 (GeoFormatItems) + tDefineStruct reduce using rule 3 (GeoFormatItems) + tSetNumber reduce using rule 3 (GeoFormatItems) + tSetString reduce using rule 3 (GeoFormatItems) + tPoint reduce using rule 3 (GeoFormatItems) + tCircle reduce using rule 3 (GeoFormatItems) + tEllipse reduce using rule 3 (GeoFormatItems) + tLine reduce using rule 3 (GeoFormatItems) + tSphere reduce using rule 3 (GeoFormatItems) + tPolarSphere reduce using rule 3 (GeoFormatItems) + tSurface reduce using rule 3 (GeoFormatItems) + tSpline reduce using rule 3 (GeoFormatItems) + tVolume reduce using rule 3 (GeoFormatItems) + tBlock reduce using rule 3 (GeoFormatItems) + tCylinder reduce using rule 3 (GeoFormatItems) + tCone reduce using rule 3 (GeoFormatItems) + tTorus reduce using rule 3 (GeoFormatItems) + tShapeFromFile reduce using rule 3 (GeoFormatItems) + tRectangle reduce using rule 3 (GeoFormatItems) + tDisk reduce using rule 3 (GeoFormatItems) + tWire reduce using rule 3 (GeoFormatItems) + tCharacteristic reduce using rule 3 (GeoFormatItems) + tParametric reduce using rule 3 (GeoFormatItems) + tRefineMesh reduce using rule 3 (GeoFormatItems) + tAdaptMesh reduce using rule 3 (GeoFormatItems) + tRelocateMesh reduce using rule 3 (GeoFormatItems) + tSetFactory reduce using rule 3 (GeoFormatItems) + tThruSections reduce using rule 3 (GeoFormatItems) + tWedge reduce using rule 3 (GeoFormatItems) + tFillet reduce using rule 3 (GeoFormatItems) + tPlane reduce using rule 3 (GeoFormatItems) + tRuled reduce using rule 3 (GeoFormatItems) + tTransfinite reduce using rule 3 (GeoFormatItems) + tPhysical reduce using rule 3 (GeoFormatItems) + tCompound reduce using rule 3 (GeoFormatItems) + tPeriodic reduce using rule 3 (GeoFormatItems) + tPlugin reduce using rule 3 (GeoFormatItems) + tDegenerated reduce using rule 3 (GeoFormatItems) + tRecursive reduce using rule 3 (GeoFormatItems) + tRotate reduce using rule 3 (GeoFormatItems) + tTranslate reduce using rule 3 (GeoFormatItems) + tSymmetry reduce using rule 3 (GeoFormatItems) + tDilate reduce using rule 3 (GeoFormatItems) + tExtrude reduce using rule 3 (GeoFormatItems) + tLevelset reduce using rule 3 (GeoFormatItems) + tBooleanUnion reduce using rule 3 (GeoFormatItems) + tBooleanIntersection reduce using rule 3 (GeoFormatItems) + tBooleanDifference reduce using rule 3 (GeoFormatItems) + tBooleanSection reduce using rule 3 (GeoFormatItems) + tBooleanFragments reduce using rule 3 (GeoFormatItems) + tThickSolid reduce using rule 3 (GeoFormatItems) + tRecombine reduce using rule 3 (GeoFormatItems) + tSmoother reduce using rule 3 (GeoFormatItems) + tSplit reduce using rule 3 (GeoFormatItems) + tDelete reduce using rule 3 (GeoFormatItems) + tCoherence reduce using rule 3 (GeoFormatItems) + tIntersect reduce using rule 3 (GeoFormatItems) + tMeshAlgorithm reduce using rule 3 (GeoFormatItems) + tReverse reduce using rule 3 (GeoFormatItems) + tAlias reduce using rule 3 (GeoFormatItems) + tAliasWithOptions reduce using rule 3 (GeoFormatItems) + tCopyOptions reduce using rule 3 (GeoFormatItems) + tTransfQuadTri reduce using rule 3 (GeoFormatItems) + tCombine reduce using rule 3 (GeoFormatItems) + tBSpline reduce using rule 3 (GeoFormatItems) + tBezier reduce using rule 3 (GeoFormatItems) + tNurbs reduce using rule 3 (GeoFormatItems) + tColor reduce using rule 3 (GeoFormatItems) + tFor reduce using rule 3 (GeoFormatItems) + tEndFor reduce using rule 3 (GeoFormatItems) + tIf reduce using rule 3 (GeoFormatItems) + tElseIf reduce using rule 3 (GeoFormatItems) + tElse reduce using rule 3 (GeoFormatItems) + tEndIf reduce using rule 3 (GeoFormatItems) + tExit reduce using rule 3 (GeoFormatItems) + tAbort reduce using rule 3 (GeoFormatItems) + tField reduce using rule 3 (GeoFormatItems) + tReturn reduce using rule 3 (GeoFormatItems) + tCall reduce using rule 3 (GeoFormatItems) + tSlide reduce using rule 3 (GeoFormatItems) + tMacro reduce using rule 3 (GeoFormatItems) + tShow reduce using rule 3 (GeoFormatItems) + tHide reduce using rule 3 (GeoFormatItems) + tHomology reduce using rule 3 (GeoFormatItems) + tCohomology reduce using rule 3 (GeoFormatItems) + tBetti reduce using rule 3 (GeoFormatItems) + tSetPartition reduce using rule 3 (GeoFormatItems) + tStringToName reduce using rule 3 (GeoFormatItems) + + All go to state 2 + GeoFormatItems go to state 3 + + +state 1 + + 2 All: error . tEND + + tEND shift, and go to state 4 + + +state 2 + + 0 $accept: All . $end + + $end shift, and go to state 5 + + +state 3 + + 1 All: GeoFormatItems . + 4 GeoFormatItems: GeoFormatItems . GeoFormatItem + + tSTRING shift, and go to state 6 + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPrintf shift, and go to state 9 + tError shift, and go to state 10 + tBoundingBox shift, and go to state 11 + tDraw shift, and go to state 12 + tSetChanged shift, and go to state 13 + tSyncModel shift, and go to state 14 + tNewModel shift, and go to state 15 + tOnelabRun shift, and go to state 16 + tCreateTopology shift, and go to state 17 + tCreateTopologyNoHoles shift, and go to state 18 + tDefineConstant shift, and go to state 19 + tUndefineConstant shift, and go to state 20 + tDefineStruct shift, and go to state 21 + tSetNumber shift, and go to state 22 + tSetString shift, and go to state 23 + tPoint shift, and go to state 24 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 27 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 30 + tSpline shift, and go to state 31 + tVolume shift, and go to state 32 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tShapeFromFile shift, and go to state 37 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tCharacteristic shift, and go to state 41 + tParametric shift, and go to state 42 + tRefineMesh shift, and go to state 43 + tAdaptMesh shift, and go to state 44 + tRelocateMesh shift, and go to state 45 + tSetFactory shift, and go to state 46 + tThruSections shift, and go to state 47 + tWedge shift, and go to state 48 + tFillet shift, and go to state 49 + tPlane shift, and go to state 50 + tRuled shift, and go to state 51 + tTransfinite shift, and go to state 52 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 54 + tPeriodic shift, and go to state 55 + tPlugin shift, and go to state 56 + tDegenerated shift, and go to state 57 + tRecursive shift, and go to state 58 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tLevelset shift, and go to state 64 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tThickSolid shift, and go to state 70 + tRecombine shift, and go to state 71 + tSmoother shift, and go to state 72 + tSplit shift, and go to state 73 + tDelete shift, and go to state 74 + tCoherence shift, and go to state 75 + tIntersect shift, and go to state 76 + tMeshAlgorithm shift, and go to state 77 + tReverse shift, and go to state 78 + tAlias shift, and go to state 79 + tAliasWithOptions shift, and go to state 80 + tCopyOptions shift, and go to state 81 + tTransfQuadTri shift, and go to state 82 + tCombine shift, and go to state 83 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + tColor shift, and go to state 87 + tFor shift, and go to state 88 + tEndFor shift, and go to state 89 + tIf shift, and go to state 90 + tElseIf shift, and go to state 91 + tElse shift, and go to state 92 + tEndIf shift, and go to state 93 + tExit shift, and go to state 94 + tAbort shift, and go to state 95 + tField shift, and go to state 96 + tReturn shift, and go to state 97 + tCall shift, and go to state 98 + tSlide shift, and go to state 99 + tMacro shift, and go to state 100 + tShow shift, and go to state 101 + tHide shift, and go to state 102 + tHomology shift, and go to state 103 + tCohomology shift, and go to state 104 + tBetti shift, and go to state 105 + tSetPartition shift, and go to state 106 + tStringToName shift, and go to state 107 + + $default reduce using rule 1 (All) + + GeoFormatItem go to state 108 + Printf go to state 109 + View go to state 110 + Affectation go to state 111 + Shape go to state 112 + Transform go to state 113 + LevelSet go to state 114 + Delete go to state 115 + Colorify go to state 116 + SetPartition go to state 117 + Visibility go to state 118 + Command go to state 119 + Slide go to state 120 + Loop go to state 121 + Extrude go to state 122 + BooleanOperator go to state 123 + Boolean go to state 124 + BooleanShape go to state 125 + Constraints go to state 126 + Coherence go to state 127 + HomologyCommand go to state 128 + Homology go to state 129 + DefineStruct go to state 130 + StringIndex go to state 131 + String__Index go to state 132 + + +state 4 + + 2 All: error tEND . + + $default reduce using rule 2 (All) + + +state 5 + + 0 $accept: All $end . + + $default accept + + +state 6 + + 202 Transform: tSTRING . '{' MultipleShape '}' + 582 StringIndex: tSTRING . '~' '{' FExpr '}' + 585 String__Index: tSTRING . + + '{' shift, and go to state 133 + '~' shift, and go to state 134 + + $default reduce using rule 585 (String__Index) + + +state 7 + + 173 Shape: tEuclidian . tCoordinates tEND + + tCoordinates shift, and go to state 135 + + +state 8 + + 174 Shape: tCoordinates . tSurface FExpr tEND + + tSurface shift, and go to state 136 + + +state 9 + + 27 Printf: tPrintf . '(' StringExprVar ')' tEND + 29 | tPrintf . '(' StringExprVar ')' SendToFile StringExprVar tEND + 30 | tPrintf . '(' StringExprVar ',' RecursiveListOfDouble ')' tEND + 32 | tPrintf . '(' StringExprVar ',' RecursiveListOfDouble ')' SendToFile StringExprVar tEND + + '(' shift, and go to state 137 + + +state 10 + + 28 Printf: tError . '(' StringExprVar ')' tEND + 31 | tError . '(' StringExprVar ',' RecursiveListOfDouble ')' tEND + + '(' shift, and go to state 138 + + +state 11 + + 252 Command: tBoundingBox . tEND + 253 | tBoundingBox . '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' tEND + + tEND shift, and go to state 139 + '{' shift, and go to state 140 + + +state 12 + + 254 Command: tDraw . tEND + + tEND shift, and go to state 141 + + +state 13 + + 255 Command: tSetChanged . tEND + + tEND shift, and go to state 142 + + +state 14 + + 250 Command: tSyncModel . tEND + + tEND shift, and go to state 143 + + +state 15 + + 251 Command: tNewModel . tEND + + tEND shift, and go to state 144 + + +state 16 + + 242 Command: tOnelabRun . '(' RecursiveListOfStringExprVar ')' tEND + + '(' shift, and go to state 145 + + +state 17 + + 256 Command: tCreateTopology . tEND + + tEND shift, and go to state 146 + + +state 18 + + 257 Command: tCreateTopologyNoHoles . tEND + + tEND shift, and go to state 147 + + +state 19 + + 73 Affectation: tDefineConstant . '[' DefineConstants ']' tEND + + '[' shift, and go to state 148 + + +state 20 + + 74 Affectation: tUndefineConstant . '[' UndefineConstants ']' tEND + + '[' shift, and go to state 149 + + +state 21 + + 462 DefineStruct: tDefineStruct . Struct_FullName AppendOrNot @14 '[' FloatParameterOptionsOrNone_NoComma ']' + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + + Struct_FullName go to state 151 + StringIndex go to state 131 + String__Index go to state 152 + + +state 22 + + 76 Affectation: tSetNumber . LP StringExpr ',' FExpr RP tEND + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 155 + + +state 23 + + 77 Affectation: tSetString . LP String__Index ',' StringExpr RP tEND + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 156 + + +state 24 + + 159 Shape: tPoint . '(' FExpr ')' tAFFECT VExpr tEND + 342 Constraints: tPoint . '{' RecursiveListOfDouble '}' tIn tSurface '{' FExpr '}' tEND + 344 | tPoint . '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND + + '(' shift, and go to state 157 + '{' shift, and go to state 158 + + +state 25 + + 162 Shape: tCircle . '(' FExpr ')' tAFFECT ListOfDouble CircleOptions tEND + + '(' shift, and go to state 159 + + +state 26 + + 163 Shape: tEllipse . '(' FExpr ')' tAFFECT ListOfDouble CircleOptions tEND + + '(' shift, and go to state 160 + + +state 27 + + 160 Shape: tLine . '(' FExpr ')' tAFFECT ListOfDouble tEND + 169 | tLine . tSTRING '(' FExpr ')' tAFFECT ListOfDouble tEND + 343 Constraints: tLine . '{' RecursiveListOfDouble '}' tIn tSurface '{' FExpr '}' tEND + 345 | tLine . '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND + + tSTRING shift, and go to state 161 + '(' shift, and go to state 162 + '{' shift, and go to state 163 + + +state 28 + + 176 Shape: tSphere . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 164 + + +state 29 + + 177 Shape: tPolarSphere . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 165 + + +state 30 + + 171 Shape: tSurface . '(' FExpr ')' tAFFECT ListOfDouble InSphereCenter tEND + 188 | tSurface . tSTRING '(' FExpr ')' tAFFECT ListOfDouble tEND + 346 Constraints: tSurface . '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND + + tSTRING shift, and go to state 166 + '(' shift, and go to state 167 + '{' shift, and go to state 168 + + +state 31 + + 161 Shape: tSpline . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 169 + + +state 32 + + 189 Shape: tVolume . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 170 + + +state 33 + + 178 Shape: tBlock . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 171 + + +state 34 + + 182 Shape: tCylinder . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 172 + + +state 35 + + 183 Shape: tCone . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 173 + + +state 36 + + 179 Shape: tTorus . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 174 + + +state 37 + + 314 Boolean: tShapeFromFile . '(' StringExprVar ')' + + '(' shift, and go to state 175 + + +state 38 + + 180 Shape: tRectangle . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 176 + + +state 39 + + 181 Shape: tDisk . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 177 + + +state 40 + + 168 Shape: tWire . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 178 + + +state 41 + + 326 Constraints: tCharacteristic . tLength ListOfDouble tAFFECT FExpr tEND + + tLength shift, and go to state 179 + + +state 42 + + 175 Shape: tParametric . tSurface '(' FExpr ')' tAFFECT tBIGSTR tBIGSTR tBIGSTR tEND + + tSurface shift, and go to state 180 + + +state 43 + + 258 Command: tRefineMesh . tEND + + tEND shift, and go to state 181 + + +state 44 + + 259 Command: tAdaptMesh . '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' FExpr ',' FExpr '}' tEND + + '{' shift, and go to state 182 + + +state 45 + + 349 Constraints: tRelocateMesh . tPoint ListOfDoubleOrAll tEND + 350 | tRelocateMesh . tLine ListOfDoubleOrAll tEND + 351 | tRelocateMesh . tSurface ListOfDoubleOrAll tEND + + tPoint shift, and go to state 183 + tLine shift, and go to state 184 + tSurface shift, and go to state 185 + + +state 46 + + 8 GeoFormatItem: tSetFactory . '(' StringExprVar ')' tEND + + '(' shift, and go to state 186 + + +state 47 + + 190 Shape: tThruSections . '(' FExpr ')' tAFFECT ListOfDouble tEND + 287 Extrude: tThruSections . ListOfDouble + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 249 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 260 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 48 + + 184 Shape: tWedge . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 263 + + +state 49 + + 289 Extrude: tFillet . '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' FExpr '}' + + '{' shift, and go to state 264 + + +state 50 + + 170 Shape: tPlane . tSurface '(' FExpr ')' tAFFECT ListOfDouble tEND + + tSurface shift, and go to state 265 + + +state 51 + + 172 Shape: tRuled . tSurface '(' FExpr ')' tAFFECT ListOfDouble InSphereCenter tEND + 191 | tRuled . tThruSections '(' FExpr ')' tAFFECT ListOfDouble tEND + 288 Extrude: tRuled . tThruSections ListOfDouble + + tSurface shift, and go to state 266 + tThruSections shift, and go to state 267 + + +state 52 + + 327 Constraints: tTransfinite . tLine ListOfDoubleOrAll tAFFECT FExpr TransfiniteType tEND + 328 | tTransfinite . tSurface ListOfDoubleOrAll TransfiniteCorners TransfiniteArrangement tEND + 329 | tTransfinite . tVolume ListOfDoubleOrAll TransfiniteCorners tEND + + tLine shift, and go to state 268 + tSurface shift, and go to state 269 + tVolume shift, and go to state 270 + + +state 53 + + 193 Shape: tPhysical . tPoint '(' PhysicalId0 ')' NumericAffectation ListOfDouble tEND + 194 | tPhysical . tLine '(' PhysicalId1 ')' NumericAffectation ListOfDouble tEND + 195 | tPhysical . tSurface '(' PhysicalId2 ')' NumericAffectation ListOfDouble tEND + 196 | tPhysical . tVolume '(' PhysicalId3 ')' NumericAffectation ListOfDouble tEND + + tPoint shift, and go to state 271 + tLine shift, and go to state 272 + tSurface shift, and go to state 273 + tVolume shift, and go to state 274 + + +state 54 + + 167 Shape: tCompound . tLine '(' FExpr ')' tAFFECT ListOfDouble tEND + 186 | tCompound . tSurface '(' FExpr ')' tAFFECT ListOfDouble tEND + 187 | tCompound . tSurface '(' FExpr ')' tAFFECT ListOfDouble tSTRING '{' RecursiveListOfListOfDouble '}' tEND + 192 | tCompound . tVolume '(' FExpr ')' tAFFECT ListOfDouble tEND + 353 Constraints: tCompound . tLine ListOfDouble tEND + 354 | tCompound . tSurface ListOfDouble tEND + 355 | tCompound . tVolume ListOfDouble tEND + + tLine shift, and go to state 275 + tSurface shift, and go to state 276 + tVolume shift, and go to state 277 + + +state 55 + + 335 Constraints: tPeriodic . tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform tEND + 336 | tPeriodic . tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform tEND + 337 | tPeriodic . tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 338 | tPeriodic . tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 339 | tPeriodic . tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + 340 | tPeriodic . tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + 341 | tPeriodic . tSurface FExpr '{' RecursiveListOfDouble '}' tAFFECT FExpr '{' RecursiveListOfDouble '}' tEND + + tLine shift, and go to state 278 + tSurface shift, and go to state 279 + + +state 56 + + 106 Affectation: tPlugin . '(' tSTRING ')' '.' tSTRING tAFFECT FExpr tEND + 107 | tPlugin . '(' tSTRING ')' '.' tSTRING tAFFECT StringExpr tEND + 246 Command: tPlugin . '(' tSTRING ')' '.' tSTRING tEND + + '(' shift, and go to state 280 + + +state 57 + + 352 Constraints: tDegenerated . tLine ListOfDouble tEND + + tLine shift, and go to state 281 + + +state 58 + + 226 Delete: tRecursive . tDelete '{' ListOfShapes '}' + 233 Colorify: tRecursive . tColor ColorExpr '{' ListOfShapes '}' + 238 Visibility: tRecursive . tShow '{' ListOfShapes '}' + 240 | tRecursive . tHide '{' ListOfShapes '}' + + tDelete shift, and go to state 282 + tColor shift, and go to state 283 + tShow shift, and go to state 284 + tHide shift, and go to state 285 + + +state 59 + + 198 Transform: tRotate . '{' VExpr ',' VExpr ',' FExpr '}' '{' MultipleShape '}' + + '{' shift, and go to state 286 + + +state 60 + + 197 Transform: tTranslate . VExpr '{' MultipleShape '}' + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 291 + VExpr_Single go to state 292 + + +state 61 + + 199 Transform: tSymmetry . VExpr '{' MultipleShape '}' + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 293 + VExpr_Single go to state 292 + + +state 62 + + 200 Transform: tDilate . '{' VExpr ',' FExpr '}' '{' MultipleShape '}' + 201 | tDilate . '{' VExpr ',' VExpr '}' '{' MultipleShape '}' + + '{' shift, and go to state 294 + + +state 63 + + 275 Extrude: tExtrude . VExpr '{' ListOfShapes '}' + 276 | tExtrude . '{' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes '}' + 277 | tExtrude . '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes '}' + 279 | tExtrude . VExpr '{' ListOfShapes @9 ExtrudeParameters '}' + 281 | tExtrude . '{' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes @10 ExtrudeParameters '}' + 283 | tExtrude . '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes @11 ExtrudeParameters '}' + 285 | tExtrude . '{' ListOfShapes @12 ExtrudeParameters '}' + 286 | tExtrude . '{' ListOfShapes '}' tUsing tWire '{' FExpr '}' + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 295 + + VExpr go to state 296 + VExpr_Single go to state 292 + + +state 64 + + 213 LevelSet: tLevelset . tPlane '(' FExpr ')' tAFFECT ListOfDouble tEND + 214 | tLevelset . tPoint '(' FExpr ')' tAFFECT '{' RecursiveListOfListOfDouble '}' tEND + 215 | tLevelset . tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 216 | tLevelset . tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 217 | tLevelset . tSphere '(' FExpr ')' tAFFECT '{' VExpr ',' RecursiveListOfDouble '}' tEND + 218 | tLevelset . tCylinder '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 219 | tLevelset . tCone '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 220 | tLevelset . tEllipsoid '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 221 | tLevelset . tQuadric '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 222 | tLevelset . tSTRING '(' FExpr ')' tAFFECT ListOfDouble tEND + 223 | tLevelset . tSTRING '(' FExpr ')' tAFFECT tBIGSTR tEND + 224 | tLevelset . tSTRING '{' FExpr '}' tEND + + tSTRING shift, and go to state 297 + tPoint shift, and go to state 298 + tSphere shift, and go to state 299 + tCylinder shift, and go to state 300 + tCone shift, and go to state 301 + tEllipsoid shift, and go to state 302 + tQuadric shift, and go to state 303 + tPlane shift, and go to state 304 + + +state 65 + + 303 BooleanOperator: tBooleanUnion . + + $default reduce using rule 303 (BooleanOperator) + + +state 66 + + 304 BooleanOperator: tBooleanIntersection . + + $default reduce using rule 304 (BooleanOperator) + + +state 67 + + 305 BooleanOperator: tBooleanDifference . + + $default reduce using rule 305 (BooleanOperator) + + +state 68 + + 306 BooleanOperator: tBooleanSection . + + $default reduce using rule 306 (BooleanOperator) + + +state 69 + + 307 BooleanOperator: tBooleanFragments . + + $default reduce using rule 307 (BooleanOperator) + + +state 70 + + 185 Shape: tThickSolid . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 305 + + +state 71 + + 332 Constraints: tRecombine . tSurface ListOfDoubleOrAll RecombineAngle tEND + 333 | tRecombine . tVolume ListOfDoubleOrAll tEND + + tSurface shift, and go to state 306 + tVolume shift, and go to state 307 + + +state 72 + + 334 Constraints: tSmoother . tSurface ListOfDoubleOrAll tAFFECT FExpr tEND + + tSurface shift, and go to state 308 + + +state 73 + + 204 Transform: tSplit . tLine '(' FExpr ')' '{' RecursiveListOfDouble '}' tEND + + tLine shift, and go to state 309 + + +state 74 + + 225 Delete: tDelete . '{' ListOfShapes '}' + 227 | tDelete . tField '[' FExpr ']' tEND + 228 | tDelete . tSTRING '[' FExpr ']' tEND + 229 | tDelete . String__Index tEND + 230 | tDelete . tSTRING tSTRING tEND + 231 | tDelete . tDefineStruct tEND + + tSTRING shift, and go to state 310 + tDefineStruct shift, and go to state 311 + tField shift, and go to state 312 + tStringToName shift, and go to state 107 + '{' shift, and go to state 313 + + StringIndex go to state 131 + String__Index go to state 314 + + +state 75 + + 356 Coherence: tCoherence . tEND + 357 | tCoherence . tSTRING tEND + 358 | tCoherence . tPoint '{' RecursiveListOfDouble '}' tEND + + tSTRING shift, and go to state 315 + tEND shift, and go to state 316 + tPoint shift, and go to state 317 + + +state 76 + + 203 Transform: tIntersect . tLine '{' RecursiveListOfDouble '}' tSurface '{' FExpr '}' + + tLine shift, and go to state 318 + + +state 77 + + 331 Constraints: tMeshAlgorithm . tSurface '{' RecursiveListOfDouble '}' tAFFECT FExpr tEND + + tSurface shift, and go to state 319 + + +state 78 + + 347 Constraints: tReverse . tSurface ListOfDoubleOrAll tEND + 348 | tReverse . tLine ListOfDoubleOrAll tEND + + tLine shift, and go to state 320 + tSurface shift, and go to state 321 + + +state 79 + + 34 View: tAlias . tSTRING '[' FExpr ']' tEND + + tSTRING shift, and go to state 322 + + +state 80 + + 35 View: tAliasWithOptions . tSTRING '[' FExpr ']' tEND + + tSTRING shift, and go to state 323 + + +state 81 + + 36 View: tCopyOptions . tSTRING '[' FExpr ',' FExpr ']' tEND + + tSTRING shift, and go to state 324 + + +state 82 + + 330 Constraints: tTransfQuadTri . ListOfDoubleOrAll tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 328 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 83 + + 247 Command: tCombine . tSTRING tEND + + tSTRING shift, and go to state 329 + + +state 84 + + 164 Shape: tBSpline . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 330 + + +state 85 + + 165 Shape: tBezier . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 331 + + +state 86 + + 166 Shape: tNurbs . '(' FExpr ')' tAFFECT ListOfDouble tNurbsKnots ListOfDouble tNurbsOrder FExpr tEND + + '(' shift, and go to state 332 + + +state 87 + + 232 Colorify: tColor . ColorExpr '{' ListOfShapes '}' + + tSTRING shift, and go to state 333 + tStringToName shift, and go to state 107 + '{' shift, and go to state 334 + + ColorExpr go to state 335 + StringIndex go to state 131 + String__Index go to state 336 + + +state 88 + + 261 Loop: tFor . '(' FExpr tDOTS FExpr ')' + 262 | tFor . '(' FExpr tDOTS FExpr tDOTS FExpr ')' + 263 | tFor . tSTRING tIn '{' FExpr tDOTS FExpr '}' + 264 | tFor . tSTRING tIn '{' FExpr tDOTS FExpr tDOTS FExpr '}' + + tSTRING shift, and go to state 337 + '(' shift, and go to state 338 + + +state 89 + + 265 Loop: tEndFor . + + $default reduce using rule 265 (Loop) + + +state 90 + + 271 Loop: tIf . '(' FExpr ')' + + '(' shift, and go to state 339 + + +state 91 + + 272 Loop: tElseIf . '(' FExpr ')' + + '(' shift, and go to state 340 + + +state 92 + + 273 Loop: tElse . + + $default reduce using rule 273 (Loop) + + +state 93 + + 274 Loop: tEndIf . + + $default reduce using rule 274 (Loop) + + +state 94 + + 248 Command: tExit . tEND + + tEND shift, and go to state 341 + + +state 95 + + 249 Command: tAbort . tEND + + tEND shift, and go to state 342 + + +state 96 + + 101 Affectation: tField . '[' FExpr ']' tAFFECT tSTRING tEND + 102 | tField . '[' FExpr ']' '.' tSTRING tAFFECT FExpr tEND + 103 | tField . '[' FExpr ']' '.' tSTRING tAFFECT StringExpr tEND + 104 | tField . '[' FExpr ']' '.' tSTRING tAFFECT '{' RecursiveListOfDouble '}' tEND + 105 | tField . '[' FExpr ']' '.' tSTRING tEND + + '[' shift, and go to state 343 + + +state 97 + + 268 Loop: tReturn . + + $default reduce using rule 268 (Loop) + + +state 98 + + 269 Loop: tCall . String__Index tEND + 270 | tCall . StringExpr tEND + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExpr go to state 371 + StringIndex go to state 131 + String__Index go to state 372 + + +state 99 + + 260 Slide: tSlide . '(' '{' RecursiveListOfDouble '}' ',' StringExpr ',' StringExpr ')' tEND + + '(' shift, and go to state 373 + + +state 100 + + 266 Loop: tMacro . tSTRING + 267 | tMacro . StringExpr + + tSTRING shift, and go to state 374 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + + StringExpr go to state 375 + + +state 101 + + 235 Visibility: tShow . tBIGSTR tEND + 237 | tShow . '{' ListOfShapes '}' + + tBIGSTR shift, and go to state 376 + '{' shift, and go to state 377 + + +state 102 + + 236 Visibility: tHide . tBIGSTR tEND + 239 | tHide . '{' ListOfShapes '}' + + tBIGSTR shift, and go to state 378 + '{' shift, and go to state 379 + + +state 103 + + 359 HomologyCommand: tHomology . + + $default reduce using rule 359 (HomologyCommand) + + +state 104 + + 360 HomologyCommand: tCohomology . + + $default reduce using rule 360 (HomologyCommand) + + +state 105 + + 361 HomologyCommand: tBetti . + + $default reduce using rule 361 (HomologyCommand) + + +state 106 + + 234 SetPartition: tSetPartition . FExpr '{' ListOfShapes '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 382 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 107 + + 584 StringIndex: tStringToName . '[' StringExprVar ']' '~' '{' FExpr '}' + 587 String__Index: tStringToName . '[' StringExprVar ']' + + '[' shift, and go to state 384 + + +state 108 + + 4 GeoFormatItems: GeoFormatItems GeoFormatItem . + + $default reduce using rule 4 (GeoFormatItems) + + +state 109 + + 5 GeoFormatItem: Printf . + + $default reduce using rule 5 (GeoFormatItem) + + +state 110 + + 6 GeoFormatItem: View . + + $default reduce using rule 6 (GeoFormatItem) + + +state 111 + + 7 GeoFormatItem: Affectation . + + $default reduce using rule 7 (GeoFormatItem) + + +state 112 + + 9 GeoFormatItem: Shape . + + $default reduce using rule 9 (GeoFormatItem) + + +state 113 + + 10 GeoFormatItem: Transform . + + $default reduce using rule 10 (GeoFormatItem) + + +state 114 + + 23 GeoFormatItem: LevelSet . + + $default reduce using rule 23 (GeoFormatItem) + + +state 115 + + 11 GeoFormatItem: Delete . + + $default reduce using rule 11 (GeoFormatItem) + + +state 116 + + 12 GeoFormatItem: Colorify . + + $default reduce using rule 12 (GeoFormatItem) + + +state 117 + + 13 GeoFormatItem: SetPartition . + + $default reduce using rule 13 (GeoFormatItem) + + +state 118 + + 14 GeoFormatItem: Visibility . + + $default reduce using rule 14 (GeoFormatItem) + + +state 119 + + 22 GeoFormatItem: Command . + + $default reduce using rule 22 (GeoFormatItem) + + +state 120 + + 21 GeoFormatItem: Slide . + + $default reduce using rule 21 (GeoFormatItem) + + +state 121 + + 20 GeoFormatItem: Loop . + + $default reduce using rule 20 (GeoFormatItem) + + +state 122 + + 15 GeoFormatItem: Extrude . + + $default reduce using rule 15 (GeoFormatItem) + + +state 123 + + 313 Boolean: BooleanOperator . '{' ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption '}' + 315 BooleanShape: BooleanOperator . '(' FExpr ')' tAFFECT '{' ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption '}' tEND + + '(' shift, and go to state 385 + '{' shift, and go to state 386 + + +state 124 + + 16 GeoFormatItem: Boolean . + + $default reduce using rule 16 (GeoFormatItem) + + +state 125 + + 17 GeoFormatItem: BooleanShape . + + $default reduce using rule 17 (GeoFormatItem) + + +state 126 + + 18 GeoFormatItem: Constraints . + + $default reduce using rule 18 (GeoFormatItem) + + +state 127 + + 19 GeoFormatItem: Coherence . + + $default reduce using rule 19 (GeoFormatItem) + + +state 128 + + 362 Homology: HomologyCommand . tEND + 363 | HomologyCommand . '{' ListOfDouble '}' tEND + 364 | HomologyCommand . '{' ListOfDouble ',' ListOfDouble '}' tEND + 365 | HomologyCommand . '(' ListOfDouble ')' '{' ListOfDouble ',' ListOfDouble '}' tEND + + tEND shift, and go to state 387 + '(' shift, and go to state 388 + '{' shift, and go to state 389 + + +state 129 + + 24 GeoFormatItem: Homology . + + $default reduce using rule 24 (GeoFormatItem) + + +state 130 + + 75 Affectation: DefineStruct . tEND + + tEND shift, and go to state 390 + + +state 131 + + 583 StringIndex: StringIndex . '~' '{' FExpr '}' + 586 String__Index: StringIndex . + + '~' shift, and go to state 391 + + $default reduce using rule 586 (String__Index) + + +state 132 + + 33 View: String__Index . StringExprVar '{' Views '}' tEND + 78 Affectation: String__Index . NumericAffectation ListOfDouble tEND + 79 | String__Index . NumericIncrement tEND + 80 | String__Index . LP RP NumericAffectation ListOfDouble tEND + 81 | String__Index . LP '{' RecursiveListOfDouble '}' RP NumericAffectation ListOfDouble tEND + 82 | String__Index . '[' FExpr ']' NumericAffectation FExpr tEND + 83 | String__Index . '[' FExpr ']' NumericIncrement tEND + 84 | String__Index . '(' FExpr ')' NumericAffectation FExpr tEND + 85 | String__Index . '(' FExpr ')' NumericIncrement tEND + 86 | String__Index . tAFFECT StringExpr tEND + 87 | String__Index . LP RP tAFFECT tStr LP RP tEND + 88 | String__Index . LP RP tAFFECT tStr LP RecursiveListOfStringExprVar RP tEND + 89 | String__Index . LP RP tAFFECTPLUS tStr LP RecursiveListOfStringExprVar RP tEND + 90 | String__Index . '.' tSTRING tAFFECT StringExpr tEND + 91 | String__Index . '[' FExpr ']' '.' tSTRING tAFFECT StringExpr tEND + 92 | String__Index . '.' tSTRING NumericAffectation FExpr tEND + 93 | String__Index . '[' FExpr ']' '.' tSTRING NumericAffectation FExpr tEND + 94 | String__Index . '.' tSTRING NumericIncrement tEND + 95 | String__Index . '[' FExpr ']' '.' tSTRING NumericIncrement tEND + 96 | String__Index . '.' tColor '.' tSTRING tAFFECT ColorExpr tEND + 97 | String__Index . '[' FExpr ']' '.' tColor '.' tSTRING tAFFECT ColorExpr tEND + 98 | String__Index . '.' tColorTable tAFFECT ListOfColor tEND + 99 | String__Index . '[' FExpr ']' '.' tColorTable tAFFECT ListOfColor tEND + 100 | String__Index . tField tAFFECT FExpr tEND + 241 Command: String__Index . StringExpr tEND + 243 | String__Index . String__Index '[' FExpr ']' StringExprVar tEND + 244 | String__Index . String__Index String__Index '[' FExpr ']' tEND + 245 | String__Index . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tAFFECT shift, and go to state 392 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tTextAttributes shift, and go to state 224 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tNameStruct shift, and go to state 363 + tDimNameSpace shift, and go to state 229 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tField shift, and go to state 394 + tGetValue shift, and go to state 237 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGetForcedStr shift, and go to state 368 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + tAFFECTDIVIDE shift, and go to state 395 + tAFFECTTIMES shift, and go to state 396 + tAFFECTMINUS shift, and go to state 397 + tAFFECTPLUS shift, and go to state 398 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + '(' shift, and go to state 401 + '[' shift, and go to state 402 + '.' shift, and go to state 403 + '#' shift, and go to state 251 + + NumericAffectation go to state 404 + NumericIncrement go to state 405 + LP go to state 406 + FExpr go to state 407 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringExprVar go to state 408 + StringExpr go to state 409 + StringIndex go to state 131 + String__Index go to state 410 + + +state 133 + + 202 Transform: tSTRING '{' . MultipleShape '}' + + tSTRING shift, and go to state 411 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + + $default reduce using rule 207 (ListOfShapes) + + Transform go to state 412 + MultipleShape go to state 413 + ListOfShapes go to state 414 + + +state 134 + + 582 StringIndex: tSTRING '~' . '{' FExpr '}' + + '{' shift, and go to state 415 + + +state 135 + + 173 Shape: tEuclidian tCoordinates . tEND + + tEND shift, and go to state 416 + + +state 136 + + 174 Shape: tCoordinates tSurface . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 417 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 137 + + 27 Printf: tPrintf '(' . StringExprVar ')' tEND + 29 | tPrintf '(' . StringExprVar ')' SendToFile StringExprVar tEND + 30 | tPrintf '(' . StringExprVar ',' RecursiveListOfDouble ')' tEND + 32 | tPrintf '(' . StringExprVar ',' RecursiveListOfDouble ')' SendToFile StringExprVar tEND + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 418 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 138 + + 28 Printf: tError '(' . StringExprVar ')' tEND + 31 | tError '(' . StringExprVar ',' RecursiveListOfDouble ')' tEND + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 421 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 139 + + 252 Command: tBoundingBox tEND . + + $default reduce using rule 252 (Command) + + +state 140 + + 253 Command: tBoundingBox '{' . FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 422 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 141 + + 254 Command: tDraw tEND . + + $default reduce using rule 254 (Command) + + +state 142 + + 255 Command: tSetChanged tEND . + + $default reduce using rule 255 (Command) + + +state 143 + + 250 Command: tSyncModel tEND . + + $default reduce using rule 250 (Command) + + +state 144 + + 251 Command: tNewModel tEND . + + $default reduce using rule 251 (Command) + + +state 145 + + 242 Command: tOnelabRun '(' . RecursiveListOfStringExprVar ')' tEND + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 423 + StringExpr go to state 419 + RecursiveListOfStringExprVar go to state 424 + StringIndex go to state 131 + String__Index go to state 420 + + +state 146 + + 256 Command: tCreateTopology tEND . + + $default reduce using rule 256 (Command) + + +state 147 + + 257 Command: tCreateTopologyNoHoles tEND . + + $default reduce using rule 257 (Command) + + +state 148 + + 73 Affectation: tDefineConstant '[' . DefineConstants ']' tEND + + $default reduce using rule 110 (DefineConstants) + + DefineConstants go to state 425 + + +state 149 + + 74 Affectation: tUndefineConstant '[' . UndefineConstants ']' tEND + + $default reduce using rule 120 (UndefineConstants) + + UndefineConstants go to state 426 + + +state 150 + + 582 StringIndex: tSTRING . '~' '{' FExpr '}' + 585 String__Index: tSTRING . + + '~' shift, and go to state 134 + + $default reduce using rule 585 (String__Index) + + +state 151 + + 462 DefineStruct: tDefineStruct Struct_FullName . AppendOrNot @14 '[' FloatParameterOptionsOrNone_NoComma ']' + + '(' shift, and go to state 427 + + $default reduce using rule 468 (AppendOrNot) + + AppendOrNot go to state 428 + + +state 152 + + 463 Struct_FullName: String__Index . + 464 | String__Index . tSCOPE String__Index + + tSCOPE shift, and go to state 429 + + $default reduce using rule 463 (Struct_FullName) + + +state 153 + + 69 LP: '(' . + + $default reduce using rule 69 (LP) + + +state 154 + + 70 LP: '[' . + + $default reduce using rule 70 (LP) + + +state 155 + + 76 Affectation: tSetNumber LP . StringExpr ',' FExpr RP tEND + + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + + StringExpr go to state 430 + + +state 156 + + 77 Affectation: tSetString LP . String__Index ',' StringExpr RP tEND + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + + StringIndex go to state 131 + String__Index go to state 431 + + +state 157 + + 159 Shape: tPoint '(' . FExpr ')' tAFFECT VExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 432 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 158 + + 342 Constraints: tPoint '{' . RecursiveListOfDouble '}' tIn tSurface '{' FExpr '}' tEND + 344 | tPoint '{' . RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 436 + StringIndex go to state 131 + String__Index go to state 262 + + +state 159 + + 162 Shape: tCircle '(' . FExpr ')' tAFFECT ListOfDouble CircleOptions tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 437 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 160 + + 163 Shape: tEllipse '(' . FExpr ')' tAFFECT ListOfDouble CircleOptions tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 438 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 161 + + 169 Shape: tLine tSTRING . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 439 + + +state 162 + + 160 Shape: tLine '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 440 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 163 + + 343 Constraints: tLine '{' . RecursiveListOfDouble '}' tIn tSurface '{' FExpr '}' tEND + 345 | tLine '{' . RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 441 + StringIndex go to state 131 + String__Index go to state 262 + + +state 164 + + 176 Shape: tSphere '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 442 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 165 + + 177 Shape: tPolarSphere '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 443 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 166 + + 188 Shape: tSurface tSTRING . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 444 + + +state 167 + + 171 Shape: tSurface '(' . FExpr ')' tAFFECT ListOfDouble InSphereCenter tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 445 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 168 + + 346 Constraints: tSurface '{' . RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 446 + StringIndex go to state 131 + String__Index go to state 262 + + +state 169 + + 161 Shape: tSpline '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 447 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 170 + + 189 Shape: tVolume '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 448 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 171 + + 178 Shape: tBlock '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 449 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 172 + + 182 Shape: tCylinder '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 450 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 173 + + 183 Shape: tCone '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 451 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 174 + + 179 Shape: tTorus '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 452 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 175 + + 314 Boolean: tShapeFromFile '(' . StringExprVar ')' + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 453 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 176 + + 180 Shape: tRectangle '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 454 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 177 + + 181 Shape: tDisk '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 455 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 178 + + 168 Shape: tWire '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 456 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 179 + + 326 Constraints: tCharacteristic tLength . ListOfDouble tAFFECT FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 457 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 180 + + 175 Shape: tParametric tSurface . '(' FExpr ')' tAFFECT tBIGSTR tBIGSTR tBIGSTR tEND + + '(' shift, and go to state 458 + + +state 181 + + 258 Command: tRefineMesh tEND . + + $default reduce using rule 258 (Command) + + +state 182 + + 259 Command: tAdaptMesh '{' . RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' FExpr ',' FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 459 + StringIndex go to state 131 + String__Index go to state 262 + + +state 183 + + 349 Constraints: tRelocateMesh tPoint . ListOfDoubleOrAll tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 460 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 184 + + 350 Constraints: tRelocateMesh tLine . ListOfDoubleOrAll tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 461 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 185 + + 351 Constraints: tRelocateMesh tSurface . ListOfDoubleOrAll tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 462 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 186 + + 8 GeoFormatItem: tSetFactory '(' . StringExprVar ')' tEND + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 463 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 187 + + 413 FExpr_Single: tDOUBLE . + + $default reduce using rule 413 (FExpr_Single) + + +state 188 + + 414 FExpr_Single: tPi . + + $default reduce using rule 414 (FExpr_Single) + + +state 189 + + 416 FExpr_Single: tMPI_Rank . + + $default reduce using rule 416 (FExpr_Single) + + +state 190 + + 417 FExpr_Single: tMPI_Size . + + $default reduce using rule 417 (FExpr_Single) + + +state 191 + + 415 FExpr_Single: tTestLevel . + + $default reduce using rule 415 (FExpr_Single) + + +state 192 + + 390 FExpr: tExp . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 464 + + +state 193 + + 391 FExpr: tLog . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 465 + + +state 194 + + 392 FExpr: tLog10 . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 466 + + +state 195 + + 393 FExpr: tSqrt . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 467 + + +state 196 + + 394 FExpr: tSin . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 468 + + +state 197 + + 395 FExpr: tAsin . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 469 + + +state 198 + + 396 FExpr: tCos . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 470 + + +state 199 + + 397 FExpr: tAcos . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 471 + + +state 200 + + 398 FExpr: tTan . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 472 + + +state 201 + + 412 FExpr: tRand . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 473 + + +state 202 + + 399 FExpr: tAtan . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 474 + + +state 203 + + 400 FExpr: tAtan2 . LP FExpr ',' FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 475 + + +state 204 + + 401 FExpr: tSinh . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 476 + + +state 205 + + 402 FExpr: tCosh . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 477 + + +state 206 + + 403 FExpr: tTanh . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 478 + + +state 207 + + 404 FExpr: tFabs . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 479 + + +state 208 + + 405 FExpr: tAbs . LP FExpr RP + 520 FExpr_Multi: tAbs . LP FExpr_Multi RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 480 + + +state 209 + + 406 FExpr: tFloor . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 481 + + +state 210 + + 407 FExpr: tCeil . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 482 + + +state 211 + + 408 FExpr: tRound . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 483 + + +state 212 + + 409 FExpr: tFmod . LP FExpr ',' FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 484 + + +state 213 + + 410 FExpr: tModulo . LP FExpr ',' FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 485 + + +state 214 + + 411 FExpr: tHypot . LP FExpr ',' FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 486 + + +state 215 + + 510 FExpr_Multi: tList . '[' String__Index ']' + 511 | tList . '[' FExpr_Multi ']' + 512 | tList . '(' FExpr_Multi ')' + 513 | tList . LP '{' RecursiveListOfDouble '}' RP + + '(' shift, and go to state 487 + '[' shift, and go to state 488 + + LP go to state 489 + + +state 216 + + 515 FExpr_Multi: tLinSpace . LP FExpr ',' FExpr ',' FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 490 + + +state 217 + + 516 FExpr_Multi: tLogSpace . LP FExpr ',' FExpr ',' FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 491 + + +state 218 + + 517 FExpr_Multi: tListFromFile . LP StringExprVar RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 492 + + +state 219 + + 518 FExpr_Multi: tCatenary . LP FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 493 + + +state 220 + + 454 FExpr_Single: tStrLen . LP StringExprVar RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 494 + + +state 221 + + 452 FExpr_Single: tFind . '(' ListOfDouble ',' ListOfDouble ')' + + '(' shift, and go to state 495 + + +state 222 + + 453 FExpr_Single: tStrFind . LP StringExprVar ',' StringExprVar RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 496 + + +state 223 + + 455 FExpr_Single: tStrCmp . LP StringExprVar ',' StringExprVar RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 497 + + +state 224 + + 456 FExpr_Single: tTextAttributes . '(' RecursiveListOfStringExprVar ')' + + '(' shift, and go to state 498 + + +state 225 + + 421 FExpr_Single: tCpu . + + $default reduce using rule 421 (FExpr_Single) + + +state 226 + + 422 FExpr_Single: tMemory . + + $default reduce using rule 422 (FExpr_Single) + + +state 227 + + 423 FExpr_Single: tTotalMemory . + + $default reduce using rule 423 (FExpr_Single) + + +state 228 + + 425 FExpr_Single: tDefineNumber . LP FExpr @13 FloatParameterOptionsOrNone RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 499 + + +state 229 + + 439 FExpr_Single: tDimNameSpace . LP String__Index RP + 440 | tDimNameSpace . LP RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 500 + + +state 230 + + 493 FExpr_Multi: tPoint . '{' FExpr '}' + 494 | tPoint . tBIGSTR + 502 | tPoint . tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tBIGSTR shift, and go to state 501 + tIn shift, and go to state 502 + '{' shift, and go to state 503 + + +state 231 + + 495 FExpr_Multi: tLine . tBIGSTR + 503 | tLine . tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tBIGSTR shift, and go to state 504 + tIn shift, and go to state 505 + + +state 232 + + 496 FExpr_Multi: tSurface . tBIGSTR + 504 | tSurface . tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tBIGSTR shift, and go to state 506 + tIn shift, and go to state 507 + + +state 233 + + 497 FExpr_Multi: tVolume . tBIGSTR + 505 | tVolume . tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tBIGSTR shift, and go to state 508 + tIn shift, and go to state 509 + + +state 234 + + 287 Extrude: tThruSections . ListOfDouble + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 260 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 235 + + 288 Extrude: tRuled . tThruSections ListOfDouble + + tThruSections shift, and go to state 510 + + +state 236 + + 498 FExpr_Multi: tPhysical . tPoint ListOfDoubleOrAll + 499 | tPhysical . tLine ListOfDoubleOrAll + 500 | tPhysical . tSurface ListOfDoubleOrAll + 501 | tPhysical . tVolume ListOfDoubleOrAll + + tPoint shift, and go to state 511 + tLine shift, and go to state 512 + tSurface shift, and go to state 513 + tVolume shift, and go to state 514 + + +state 237 + + 451 FExpr_Single: tGetValue . '(' StringExprVar ',' FExpr ')' + + '(' shift, and go to state 515 + + +state 238 + + 427 FExpr_Single: tGetNumber . LP StringExprVar RP + 428 | tGetNumber . LP StringExprVar ',' FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 516 + + +state 239 + + 519 FExpr_Multi: tUnique . LP FExpr_Multi RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 517 + + +state 240 + + 432 FExpr_Single: tExists . '(' Struct_FullName ')' + 433 | tExists . '(' Struct_FullName '.' tSTRING_Member_Float ')' + + '(' shift, and go to state 518 + + +state 241 + + 436 FExpr_Single: tFileExists . '(' StringExpr ')' + + '(' shift, and go to state 519 + + +state 242 + + 434 FExpr_Single: tGetForced . '(' Struct_FullName GetForced_Default ')' + 435 | tGetForced . '(' Struct_FullName '.' tSTRING_Member_Float GetForced_Default ')' + + '(' shift, and go to state 520 + + +state 243 + + 418 FExpr_Single: tGMSH_MAJOR_VERSION . + + $default reduce using rule 418 (FExpr_Single) + + +state 244 + + 419 FExpr_Single: tGMSH_MINOR_VERSION . + + $default reduce using rule 419 (FExpr_Single) + + +state 245 + + 420 FExpr_Single: tGMSH_PATCH_VERSION . + + $default reduce using rule 420 (FExpr_Single) + + +state 246 + + 369 FExpr: '+' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 521 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 247 + + 368 FExpr: '-' . FExpr + 485 ListOfDouble: '-' . '{' RecursiveListOfDouble '}' + 489 FExpr_Multi: '-' . FExpr_Multi + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 522 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 523 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 524 + StringIndex go to state 131 + String__Index go to state 262 + + +state 248 + + 370 FExpr: '!' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 525 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 249 + + 190 Shape: tThruSections '(' . FExpr ')' tAFFECT ListOfDouble tEND + 367 FExpr: '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 526 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 250 + + 483 ListOfDouble: '{' . '}' + 484 | '{' . RecursiveListOfDouble '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '}' shift, and go to state 527 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 528 + StringIndex go to state 131 + String__Index go to state 262 + + +state 251 + + 437 FExpr_Single: '#' . String__Index LP RP + 438 | '#' . Struct_FullName '.' tSTRING_Member_Float '(' ')' + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + + Struct_FullName go to state 529 + StringIndex go to state 131 + String__Index go to state 530 + + +state 252 + + 506 FExpr_Multi: Transform . + + $default reduce using rule 506 (FExpr_Multi) + + +state 253 + + 507 FExpr_Multi: Extrude . + + $default reduce using rule 507 (FExpr_Multi) + + +state 254 + + 313 Boolean: BooleanOperator . '{' ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption '}' + + '{' shift, and go to state 386 + + +state 255 + + 508 FExpr_Multi: Boolean . + + $default reduce using rule 508 (FExpr_Multi) + + +state 256 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 481 ListOfDouble: FExpr . + 486 | FExpr . '*' '{' RecursiveListOfDouble '}' + 490 FExpr_Multi: FExpr . '*' FExpr_Multi + 491 | FExpr . tDOTS FExpr + 492 | FExpr . tDOTS FExpr tDOTS FExpr + + tDOTS shift, and go to state 531 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 545 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 481 (ListOfDouble) + + +state 257 + + 366 FExpr: FExpr_Single . + + $default reduce using rule 366 (FExpr) + + +state 258 + + 426 FExpr_Single: DefineStruct . + + $default reduce using rule 426 (FExpr_Single) + + +state 259 + + 429 FExpr_Single: Struct_FullName . + 430 | Struct_FullName . '[' FExpr ']' + 431 | Struct_FullName . '(' FExpr ')' + + '(' shift, and go to state 551 + '[' shift, and go to state 552 + + $default reduce using rule 429 (FExpr_Single) + + +state 260 + + 287 Extrude: tThruSections ListOfDouble . + + $default reduce using rule 287 (Extrude) + + +state 261 + + 482 ListOfDouble: FExpr_Multi . + + $default reduce using rule 482 (ListOfDouble) + + +state 262 + + 441 FExpr_Single: String__Index . NumericIncrement + 442 | String__Index . '[' FExpr ']' NumericIncrement + 443 | String__Index . '(' FExpr ')' NumericIncrement + 444 | String__Index . '.' tSTRING_Member_Float + 445 | String__Index . tSCOPE String__Index '.' tSTRING_Member_Float + 446 | String__Index . '.' tSTRING_Member_Float '(' FExpr ')' + 447 | String__Index . tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' + 448 | String__Index . '[' FExpr ']' '.' tSTRING + 449 | String__Index . '.' tSTRING NumericIncrement + 450 | String__Index . '[' FExpr ']' '.' tSTRING NumericIncrement + 463 Struct_FullName: String__Index . + 464 | String__Index . tSCOPE String__Index + 509 FExpr_Multi: String__Index . LP RP + 514 | String__Index . LP '{' RecursiveListOfDouble '}' RP + + tSCOPE shift, and go to state 553 + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + '(' shift, and go to state 554 + '[' shift, and go to state 555 + '.' shift, and go to state 556 + + '(' [reduce using rule 463 (Struct_FullName)] + '[' [reduce using rule 463 (Struct_FullName)] + $default reduce using rule 463 (Struct_FullName) + + NumericIncrement go to state 557 + LP go to state 558 + + +state 263 + + 184 Shape: tWedge '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 559 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 264 + + 289 Extrude: tFillet '{' . RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 560 + StringIndex go to state 131 + String__Index go to state 262 + + +state 265 + + 170 Shape: tPlane tSurface . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 561 + + +state 266 + + 172 Shape: tRuled tSurface . '(' FExpr ')' tAFFECT ListOfDouble InSphereCenter tEND + + '(' shift, and go to state 562 + + +state 267 + + 191 Shape: tRuled tThruSections . '(' FExpr ')' tAFFECT ListOfDouble tEND + 288 Extrude: tRuled tThruSections . ListOfDouble + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 563 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 564 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 268 + + 327 Constraints: tTransfinite tLine . ListOfDoubleOrAll tAFFECT FExpr TransfiniteType tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 565 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 269 + + 328 Constraints: tTransfinite tSurface . ListOfDoubleOrAll TransfiniteCorners TransfiniteArrangement tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 566 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 270 + + 329 Constraints: tTransfinite tVolume . ListOfDoubleOrAll TransfiniteCorners tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 567 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 271 + + 193 Shape: tPhysical tPoint . '(' PhysicalId0 ')' NumericAffectation ListOfDouble tEND + + '(' shift, and go to state 568 + + +state 272 + + 194 Shape: tPhysical tLine . '(' PhysicalId1 ')' NumericAffectation ListOfDouble tEND + + '(' shift, and go to state 569 + + +state 273 + + 195 Shape: tPhysical tSurface . '(' PhysicalId2 ')' NumericAffectation ListOfDouble tEND + + '(' shift, and go to state 570 + + +state 274 + + 196 Shape: tPhysical tVolume . '(' PhysicalId3 ')' NumericAffectation ListOfDouble tEND + + '(' shift, and go to state 571 + + +state 275 + + 167 Shape: tCompound tLine . '(' FExpr ')' tAFFECT ListOfDouble tEND + 353 Constraints: tCompound tLine . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 572 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 573 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 276 + + 186 Shape: tCompound tSurface . '(' FExpr ')' tAFFECT ListOfDouble tEND + 187 | tCompound tSurface . '(' FExpr ')' tAFFECT ListOfDouble tSTRING '{' RecursiveListOfListOfDouble '}' tEND + 354 Constraints: tCompound tSurface . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 574 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 575 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 277 + + 192 Shape: tCompound tVolume . '(' FExpr ')' tAFFECT ListOfDouble tEND + 355 Constraints: tCompound tVolume . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 576 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 577 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 278 + + 335 Constraints: tPeriodic tLine . '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform tEND + 337 | tPeriodic tLine . '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 339 | tPeriodic tLine . '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + + '{' shift, and go to state 578 + + +state 279 + + 336 Constraints: tPeriodic tSurface . '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform tEND + 338 | tPeriodic tSurface . '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 340 | tPeriodic tSurface . '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + 341 | tPeriodic tSurface . FExpr '{' RecursiveListOfDouble '}' tAFFECT FExpr '{' RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 579 + '#' shift, and go to state 251 + + FExpr go to state 580 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 280 + + 106 Affectation: tPlugin '(' . tSTRING ')' '.' tSTRING tAFFECT FExpr tEND + 107 | tPlugin '(' . tSTRING ')' '.' tSTRING tAFFECT StringExpr tEND + 246 Command: tPlugin '(' . tSTRING ')' '.' tSTRING tEND + + tSTRING shift, and go to state 581 + + +state 281 + + 352 Constraints: tDegenerated tLine . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 582 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 282 + + 226 Delete: tRecursive tDelete . '{' ListOfShapes '}' + + '{' shift, and go to state 583 + + +state 283 + + 233 Colorify: tRecursive tColor . ColorExpr '{' ListOfShapes '}' + + tSTRING shift, and go to state 333 + tStringToName shift, and go to state 107 + '{' shift, and go to state 334 + + ColorExpr go to state 584 + StringIndex go to state 131 + String__Index go to state 336 + + +state 284 + + 238 Visibility: tRecursive tShow . '{' ListOfShapes '}' + + '{' shift, and go to state 585 + + +state 285 + + 240 Visibility: tRecursive tHide . '{' ListOfShapes '}' + + '{' shift, and go to state 586 + + +state 286 + + 198 Transform: tRotate '{' . VExpr ',' VExpr ',' FExpr '}' '{' MultipleShape '}' + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 587 + VExpr_Single go to state 292 + + +state 287 + + 472 VExpr: '+' . VExpr + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 588 + VExpr_Single go to state 292 + + +state 288 + + 471 VExpr: '-' . VExpr + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 589 + VExpr_Single go to state 292 + + +state 289 + + 478 VExpr_Single: '(' . FExpr ',' FExpr ',' FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 590 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 290 + + 475 VExpr_Single: '{' . FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + 476 | '{' . FExpr ',' FExpr ',' FExpr ',' FExpr '}' + 477 | '{' . FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 591 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 291 + + 197 Transform: tTranslate VExpr . '{' MultipleShape '}' + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + '{' shift, and go to state 594 + + +state 292 + + 470 VExpr: VExpr_Single . + + $default reduce using rule 470 (VExpr) + + +state 293 + + 199 Transform: tSymmetry VExpr . '{' MultipleShape '}' + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + '{' shift, and go to state 595 + + +state 294 + + 200 Transform: tDilate '{' . VExpr ',' FExpr '}' '{' MultipleShape '}' + 201 | tDilate '{' . VExpr ',' VExpr '}' '{' MultipleShape '}' + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 596 + VExpr_Single go to state 292 + + +state 295 + + 276 Extrude: tExtrude '{' . VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes '}' + 277 | tExtrude '{' . VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes '}' + 281 | tExtrude '{' . VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes @10 ExtrudeParameters '}' + 283 | tExtrude '{' . VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes @11 ExtrudeParameters '}' + 285 | tExtrude '{' . ListOfShapes @12 ExtrudeParameters '}' + 286 | tExtrude '{' . ListOfShapes '}' tUsing tWire '{' FExpr '}' + 475 VExpr_Single: '{' . FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + 476 | '{' . FExpr ',' FExpr ',' FExpr ',' FExpr '}' + 477 | '{' . FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 597 + '-' shift, and go to state 598 + '!' shift, and go to state 248 + '(' shift, and go to state 599 + '{' shift, and go to state 290 + '#' shift, and go to state 251 + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 600 + FExpr go to state 591 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + VExpr go to state 601 + VExpr_Single go to state 292 + StringIndex go to state 131 + String__Index go to state 383 + + +state 296 + + 275 Extrude: tExtrude VExpr . '{' ListOfShapes '}' + 279 | tExtrude VExpr . '{' ListOfShapes @9 ExtrudeParameters '}' + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + '{' shift, and go to state 602 + + +state 297 + + 222 LevelSet: tLevelset tSTRING . '(' FExpr ')' tAFFECT ListOfDouble tEND + 223 | tLevelset tSTRING . '(' FExpr ')' tAFFECT tBIGSTR tEND + 224 | tLevelset tSTRING . '{' FExpr '}' tEND + + '(' shift, and go to state 603 + '{' shift, and go to state 604 + + +state 298 + + 214 LevelSet: tLevelset tPoint . '(' FExpr ')' tAFFECT '{' RecursiveListOfListOfDouble '}' tEND + + '(' shift, and go to state 605 + + +state 299 + + 217 LevelSet: tLevelset tSphere . '(' FExpr ')' tAFFECT '{' VExpr ',' RecursiveListOfDouble '}' tEND + + '(' shift, and go to state 606 + + +state 300 + + 218 LevelSet: tLevelset tCylinder . '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + '(' shift, and go to state 607 + + +state 301 + + 219 LevelSet: tLevelset tCone . '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + '(' shift, and go to state 608 + + +state 302 + + 220 LevelSet: tLevelset tEllipsoid . '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + '(' shift, and go to state 609 + + +state 303 + + 221 LevelSet: tLevelset tQuadric . '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + '(' shift, and go to state 610 + + +state 304 + + 213 LevelSet: tLevelset tPlane . '(' FExpr ')' tAFFECT ListOfDouble tEND + 215 | tLevelset tPlane . '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 216 | tLevelset tPlane . '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + '(' shift, and go to state 611 + + +state 305 + + 185 Shape: tThickSolid '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 612 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 306 + + 332 Constraints: tRecombine tSurface . ListOfDoubleOrAll RecombineAngle tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 613 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 307 + + 333 Constraints: tRecombine tVolume . ListOfDoubleOrAll tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 614 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 308 + + 334 Constraints: tSmoother tSurface . ListOfDoubleOrAll tAFFECT FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 615 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 309 + + 204 Transform: tSplit tLine . '(' FExpr ')' '{' RecursiveListOfDouble '}' tEND + + '(' shift, and go to state 616 + + +state 310 + + 228 Delete: tDelete tSTRING . '[' FExpr ']' tEND + 230 | tDelete tSTRING . tSTRING tEND + 582 StringIndex: tSTRING . '~' '{' FExpr '}' + 585 String__Index: tSTRING . + + tSTRING shift, and go to state 617 + '[' shift, and go to state 618 + '~' shift, and go to state 134 + + $default reduce using rule 585 (String__Index) + + +state 311 + + 231 Delete: tDelete tDefineStruct . tEND + + tEND shift, and go to state 619 + + +state 312 + + 227 Delete: tDelete tField . '[' FExpr ']' tEND + + '[' shift, and go to state 620 + + +state 313 + + 225 Delete: tDelete '{' . ListOfShapes '}' + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 621 + + +state 314 + + 229 Delete: tDelete String__Index . tEND + + tEND shift, and go to state 622 + + +state 315 + + 357 Coherence: tCoherence tSTRING . tEND + + tEND shift, and go to state 623 + + +state 316 + + 356 Coherence: tCoherence tEND . + + $default reduce using rule 356 (Coherence) + + +state 317 + + 358 Coherence: tCoherence tPoint . '{' RecursiveListOfDouble '}' tEND + + '{' shift, and go to state 624 + + +state 318 + + 203 Transform: tIntersect tLine . '{' RecursiveListOfDouble '}' tSurface '{' FExpr '}' + + '{' shift, and go to state 625 + + +state 319 + + 331 Constraints: tMeshAlgorithm tSurface . '{' RecursiveListOfDouble '}' tAFFECT FExpr tEND + + '{' shift, and go to state 626 + + +state 320 + + 348 Constraints: tReverse tLine . ListOfDoubleOrAll tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 627 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 321 + + 347 Constraints: tReverse tSurface . ListOfDoubleOrAll tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 628 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 322 + + 34 View: tAlias tSTRING . '[' FExpr ']' tEND + + '[' shift, and go to state 629 + + +state 323 + + 35 View: tAliasWithOptions tSTRING . '[' FExpr ']' tEND + + '[' shift, and go to state 630 + + +state 324 + + 36 View: tCopyOptions tSTRING . '[' FExpr ',' FExpr ']' tEND + + '[' shift, and go to state 631 + + +state 325 + + 488 ListOfDoubleOrAll: tBIGSTR . + + $default reduce using rule 488 (ListOfDoubleOrAll) + + +state 326 + + 367 FExpr: '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 632 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 327 + + 487 ListOfDoubleOrAll: ListOfDouble . + + $default reduce using rule 487 (ListOfDoubleOrAll) + + +state 328 + + 330 Constraints: tTransfQuadTri ListOfDoubleOrAll . tEND + + tEND shift, and go to state 633 + + +state 329 + + 247 Command: tCombine tSTRING . tEND + + tEND shift, and go to state 634 + + +state 330 + + 164 Shape: tBSpline '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 635 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 331 + + 165 Shape: tBezier '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 636 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 332 + + 166 Shape: tNurbs '(' . FExpr ')' tAFFECT ListOfDouble tNurbsKnots ListOfDouble tNurbsOrder FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 637 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 333 + + 528 ColorExpr: tSTRING . '.' tColor '.' tSTRING + 582 StringIndex: tSTRING . '~' '{' FExpr '}' + 585 String__Index: tSTRING . + + '.' shift, and go to state 638 + '~' shift, and go to state 134 + + $default reduce using rule 585 (String__Index) + + +state 334 + + 525 ColorExpr: '{' . FExpr ',' FExpr ',' FExpr ',' FExpr '}' + 526 | '{' . FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 639 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 335 + + 232 Colorify: tColor ColorExpr . '{' ListOfShapes '}' + + '{' shift, and go to state 640 + + +state 336 + + 527 ColorExpr: String__Index . + + $default reduce using rule 527 (ColorExpr) + + +state 337 + + 263 Loop: tFor tSTRING . tIn '{' FExpr tDOTS FExpr '}' + 264 | tFor tSTRING . tIn '{' FExpr tDOTS FExpr tDOTS FExpr '}' + + tIn shift, and go to state 641 + + +state 338 + + 261 Loop: tFor '(' . FExpr tDOTS FExpr ')' + 262 | tFor '(' . FExpr tDOTS FExpr tDOTS FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 642 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 339 + + 271 Loop: tIf '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 643 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 340 + + 272 Loop: tElseIf '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 644 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 341 + + 248 Command: tExit tEND . + + $default reduce using rule 248 (Command) + + +state 342 + + 249 Command: tAbort tEND . + + $default reduce using rule 249 (Command) + + +state 343 + + 101 Affectation: tField '[' . FExpr ']' tAFFECT tSTRING tEND + 102 | tField '[' . FExpr ']' '.' tSTRING tAFFECT FExpr tEND + 103 | tField '[' . FExpr ']' '.' tSTRING tAFFECT StringExpr tEND + 104 | tField '[' . FExpr ']' '.' tSTRING tAFFECT '{' RecursiveListOfDouble '}' tEND + 105 | tField '[' . FExpr ']' '.' tSTRING tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 645 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 344 + + 546 StringExpr: tBIGSTR . + + $default reduce using rule 546 (StringExpr) + + +state 345 + + 562 StringExpr: tStr . LP RecursiveListOfStringExprVar RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 646 + + +state 346 + + 569 StringExpr: tSprintf . LP StringExprVar RP + 570 | tSprintf . LP StringExprVar ',' RecursiveListOfDouble RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 647 + + +state 347 + + 558 StringExpr: tStrCat . LP RecursiveListOfStringExprVar RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 648 + + +state 348 + + 559 StringExpr: tStrPrefix . '(' StringExprVar ')' + + '(' shift, and go to state 649 + + +state 349 + + 560 StringExpr: tStrRelative . '(' StringExprVar ')' + + '(' shift, and go to state 650 + + +state 350 + + 561 StringExpr: tStrReplace . '(' StringExprVar ',' StringExprVar ',' StringExprVar ')' + + '(' shift, and go to state 651 + + +state 351 + + 574 StringExpr: tAbsolutePath . LP StringExprVar RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 652 + + +state 352 + + 573 StringExpr: tDirName . LP StringExprVar RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 653 + + +state 353 + + 567 StringExpr: tStrSub . LP StringExprVar ',' FExpr ',' FExpr RP + 568 | tStrSub . LP StringExprVar ',' FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 654 + + +state 354 + + 566 StringExpr: tStrChoice . LP FExpr ',' StringExprVar ',' StringExprVar RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 655 + + +state 355 + + 563 StringExpr: tUpperCase . LP StringExprVar RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 656 + + +state 356 + + 564 StringExpr: tLowerCase . LP StringExprVar RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 657 + + +state 357 + + 565 StringExpr: tLowerCaseIn . LP StringExprVar RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 658 + + +state 358 + + 548 StringExpr: tToday . + + $default reduce using rule 548 (StringExpr) + + +state 359 + + 571 StringExpr: tFixRelativePath . LP StringExprVar RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 659 + + +state 360 + + 572 StringExpr: tCurrentDirectory . + + $default reduce using rule 572 (StringExpr) + + +state 361 + + 550 StringExpr: tOnelabAction . + + $default reduce using rule 550 (StringExpr) + + +state 362 + + 551 StringExpr: tCodeName . + + $default reduce using rule 551 (StringExpr) + + +state 363 + + 577 StringExpr: tNameStruct . LP NameStruct_Arg RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 660 + + +state 364 + + 576 StringExpr: tDefineString . LP StringExpr @15 CharParameterOptionsOrNone RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 661 + + +state 365 + + 553 StringExpr: tGetStringValue . '(' StringExprVar ',' StringExprVar ')' + + '(' shift, and go to state 662 + + +state 366 + + 552 StringExpr: tGetEnv . '(' StringExprVar ')' + + '(' shift, and go to state 663 + + +state 367 + + 554 StringExpr: tGetString . LP StringExprVar RP + 555 | tGetString . LP StringExprVar ',' StringExprVar RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 664 + + +state 368 + + 556 StringExpr: tGetForcedStr . '(' Struct_FullName GetForcedStr_Default ')' + 557 | tGetForcedStr . '(' Struct_FullName '.' tSTRING_Member_Float GetForcedStr_Default ')' + + '(' shift, and go to state 665 + + +state 369 + + 549 StringExpr: tGmshExecutableName . + + $default reduce using rule 549 (StringExpr) + + +state 370 + + 547 StringExpr: tNameToString . '[' String__Index ']' + + '[' shift, and go to state 666 + + +state 371 + + 270 Loop: tCall StringExpr . tEND + + tEND shift, and go to state 667 + + +state 372 + + 269 Loop: tCall String__Index . tEND + + tEND shift, and go to state 668 + + +state 373 + + 260 Slide: tSlide '(' . '{' RecursiveListOfDouble '}' ',' StringExpr ',' StringExpr ')' tEND + + '{' shift, and go to state 669 + + +state 374 + + 266 Loop: tMacro tSTRING . + + $default reduce using rule 266 (Loop) + + +state 375 + + 267 Loop: tMacro StringExpr . + + $default reduce using rule 267 (Loop) + + +state 376 + + 235 Visibility: tShow tBIGSTR . tEND + + tEND shift, and go to state 670 + + +state 377 + + 237 Visibility: tShow '{' . ListOfShapes '}' + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 671 + + +state 378 + + 236 Visibility: tHide tBIGSTR . tEND + + tEND shift, and go to state 672 + + +state 379 + + 239 Visibility: tHide '{' . ListOfShapes '}' + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 673 + + +state 380 + + 405 FExpr: tAbs . LP FExpr RP + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 674 + + +state 381 + + 368 FExpr: '-' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 675 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 382 + + 234 SetPartition: tSetPartition FExpr . '{' ListOfShapes '}' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '{' shift, and go to state 677 + + +state 383 + + 441 FExpr_Single: String__Index . NumericIncrement + 442 | String__Index . '[' FExpr ']' NumericIncrement + 443 | String__Index . '(' FExpr ')' NumericIncrement + 444 | String__Index . '.' tSTRING_Member_Float + 445 | String__Index . tSCOPE String__Index '.' tSTRING_Member_Float + 446 | String__Index . '.' tSTRING_Member_Float '(' FExpr ')' + 447 | String__Index . tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' + 448 | String__Index . '[' FExpr ']' '.' tSTRING + 449 | String__Index . '.' tSTRING NumericIncrement + 450 | String__Index . '[' FExpr ']' '.' tSTRING NumericIncrement + 463 Struct_FullName: String__Index . + 464 | String__Index . tSCOPE String__Index + + tSCOPE shift, and go to state 553 + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + '(' shift, and go to state 678 + '[' shift, and go to state 679 + '.' shift, and go to state 556 + + '(' [reduce using rule 463 (Struct_FullName)] + '[' [reduce using rule 463 (Struct_FullName)] + $default reduce using rule 463 (Struct_FullName) + + NumericIncrement go to state 557 + + +state 384 + + 584 StringIndex: tStringToName '[' . StringExprVar ']' '~' '{' FExpr '}' + 587 String__Index: tStringToName '[' . StringExprVar ']' + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 680 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 385 + + 315 BooleanShape: BooleanOperator '(' . FExpr ')' tAFFECT '{' ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 681 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 386 + + 313 Boolean: BooleanOperator '{' . ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption '}' + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 682 + + +state 387 + + 362 Homology: HomologyCommand tEND . + + $default reduce using rule 362 (Homology) + + +state 388 + + 365 Homology: HomologyCommand '(' . ListOfDouble ')' '{' ListOfDouble ',' ListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 683 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 389 + + 363 Homology: HomologyCommand '{' . ListOfDouble '}' tEND + 364 | HomologyCommand '{' . ListOfDouble ',' ListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 684 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 390 + + 75 Affectation: DefineStruct tEND . + + $default reduce using rule 75 (Affectation) + + +state 391 + + 583 StringIndex: StringIndex '~' . '{' FExpr '}' + + '{' shift, and go to state 685 + + +state 392 + + 62 NumericAffectation: tAFFECT . + 86 Affectation: String__Index tAFFECT . StringExpr tEND + + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + + $default reduce using rule 62 (NumericAffectation) + + StringExpr go to state 686 + + +state 393 + + 542 StringExprVar: tPhysical . tPoint '{' FExpr '}' + 543 | tPhysical . tLine '{' FExpr '}' + 544 | tPhysical . tSurface '{' FExpr '}' + 545 | tPhysical . tVolume '{' FExpr '}' + + tPoint shift, and go to state 687 + tLine shift, and go to state 688 + tSurface shift, and go to state 689 + tVolume shift, and go to state 690 + + +state 394 + + 100 Affectation: String__Index tField . tAFFECT FExpr tEND + + tAFFECT shift, and go to state 691 + + +state 395 + + 66 NumericAffectation: tAFFECTDIVIDE . + + $default reduce using rule 66 (NumericAffectation) + + +state 396 + + 65 NumericAffectation: tAFFECTTIMES . + + $default reduce using rule 65 (NumericAffectation) + + +state 397 + + 64 NumericAffectation: tAFFECTMINUS . + + $default reduce using rule 64 (NumericAffectation) + + +state 398 + + 63 NumericAffectation: tAFFECTPLUS . + + $default reduce using rule 63 (NumericAffectation) + + +state 399 + + 68 NumericIncrement: tMINUSMINUS . + + $default reduce using rule 68 (NumericIncrement) + + +state 400 + + 67 NumericIncrement: tPLUSPLUS . + + $default reduce using rule 67 (NumericIncrement) + + +state 401 + + 69 LP: '(' . + 84 Affectation: String__Index '(' . FExpr ')' NumericAffectation FExpr tEND + 85 | String__Index '(' . FExpr ')' NumericIncrement tEND + 367 FExpr: '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + $default reduce using rule 69 (LP) + + FExpr go to state 692 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 402 + + 70 LP: '[' . + 82 Affectation: String__Index '[' . FExpr ']' NumericAffectation FExpr tEND + 83 | String__Index '[' . FExpr ']' NumericIncrement tEND + 91 | String__Index '[' . FExpr ']' '.' tSTRING tAFFECT StringExpr tEND + 93 | String__Index '[' . FExpr ']' '.' tSTRING NumericAffectation FExpr tEND + 95 | String__Index '[' . FExpr ']' '.' tSTRING NumericIncrement tEND + 97 | String__Index '[' . FExpr ']' '.' tColor '.' tSTRING tAFFECT ColorExpr tEND + 99 | String__Index '[' . FExpr ']' '.' tColorTable tAFFECT ListOfColor tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + $default reduce using rule 70 (LP) + + FExpr go to state 693 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 403 + + 90 Affectation: String__Index '.' . tSTRING tAFFECT StringExpr tEND + 92 | String__Index '.' . tSTRING NumericAffectation FExpr tEND + 94 | String__Index '.' . tSTRING NumericIncrement tEND + 96 | String__Index '.' . tColor '.' tSTRING tAFFECT ColorExpr tEND + 98 | String__Index '.' . tColorTable tAFFECT ListOfColor tEND + + tSTRING shift, and go to state 694 + tColor shift, and go to state 695 + tColorTable shift, and go to state 696 + + +state 404 + + 78 Affectation: String__Index NumericAffectation . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 697 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 405 + + 79 Affectation: String__Index NumericIncrement . tEND + + tEND shift, and go to state 698 + + +state 406 + + 80 Affectation: String__Index LP . RP NumericAffectation ListOfDouble tEND + 81 | String__Index LP . '{' RecursiveListOfDouble '}' RP NumericAffectation ListOfDouble tEND + 87 | String__Index LP . RP tAFFECT tStr LP RP tEND + 88 | String__Index LP . RP tAFFECT tStr LP RecursiveListOfStringExprVar RP tEND + 89 | String__Index LP . RP tAFFECTPLUS tStr LP RecursiveListOfStringExprVar RP tEND + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + '{' shift, and go to state 701 + + RP go to state 702 + + +state 407 + + 245 Command: String__Index FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 703 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 408 + + 33 View: String__Index StringExprVar . '{' Views '}' tEND + + '{' shift, and go to state 704 + + +state 409 + + 241 Command: String__Index StringExpr . tEND + 533 StringExprVar: StringExpr . + + tEND shift, and go to state 705 + + $default reduce using rule 533 (StringExprVar) + + +state 410 + + 243 Command: String__Index String__Index . '[' FExpr ']' StringExprVar tEND + 244 | String__Index String__Index . String__Index '[' FExpr ']' tEND + 441 FExpr_Single: String__Index . NumericIncrement + 442 | String__Index . '[' FExpr ']' NumericIncrement + 443 | String__Index . '(' FExpr ')' NumericIncrement + 444 | String__Index . '.' tSTRING_Member_Float + 445 | String__Index . tSCOPE String__Index '.' tSTRING_Member_Float + 446 | String__Index . '.' tSTRING_Member_Float '(' FExpr ')' + 447 | String__Index . tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' + 448 | String__Index . '[' FExpr ']' '.' tSTRING + 449 | String__Index . '.' tSTRING NumericIncrement + 450 | String__Index . '[' FExpr ']' '.' tSTRING NumericIncrement + 463 Struct_FullName: String__Index . + 464 | String__Index . tSCOPE String__Index + 534 StringExprVar: String__Index . + 535 | String__Index . '[' FExpr ']' + 536 | String__Index . '(' FExpr ')' + 537 | String__Index . '.' tSTRING_Member_Float + 538 | String__Index . tSCOPE String__Index '.' tSTRING_Member_Float + 539 | String__Index . '.' tSTRING_Member_Float '(' FExpr ')' + 540 | String__Index . tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' + 541 | String__Index . '[' FExpr ']' '.' tSTRING + + tSTRING shift, and go to state 150 + tSCOPE shift, and go to state 706 + tStringToName shift, and go to state 107 + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + '(' shift, and go to state 707 + '[' shift, and go to state 708 + '.' shift, and go to state 709 + + '(' [reduce using rule 463 (Struct_FullName)] + '[' [reduce using rule 463 (Struct_FullName)] + '{' reduce using rule 534 (StringExprVar) + $default reduce using rule 463 (Struct_FullName) + + NumericIncrement go to state 557 + StringIndex go to state 131 + String__Index go to state 710 + + +state 411 + + 202 Transform: tSTRING . '{' MultipleShape '}' + + '{' shift, and go to state 133 + + +state 412 + + 206 MultipleShape: Transform . + + $default reduce using rule 206 (MultipleShape) + + +state 413 + + 202 Transform: tSTRING '{' MultipleShape . '}' + + '}' shift, and go to state 711 + + +state 414 + + 205 MultipleShape: ListOfShapes . + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tThickSolid shift, and go to state 70 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + + $default reduce using rule 205 (MultipleShape) + + Shape go to state 719 + + +state 415 + + 582 StringIndex: tSTRING '~' '{' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 720 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 416 + + 173 Shape: tEuclidian tCoordinates tEND . + + $default reduce using rule 173 (Shape) + + +state 417 + + 174 Shape: tCoordinates tSurface FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 721 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 418 + + 27 Printf: tPrintf '(' StringExprVar . ')' tEND + 29 | tPrintf '(' StringExprVar . ')' SendToFile StringExprVar tEND + 30 | tPrintf '(' StringExprVar . ',' RecursiveListOfDouble ')' tEND + 32 | tPrintf '(' StringExprVar . ',' RecursiveListOfDouble ')' SendToFile StringExprVar tEND + + ')' shift, and go to state 722 + ',' shift, and go to state 723 + + +state 419 + + 533 StringExprVar: StringExpr . + + $default reduce using rule 533 (StringExprVar) + + +state 420 + + 534 StringExprVar: String__Index . + 535 | String__Index . '[' FExpr ']' + 536 | String__Index . '(' FExpr ')' + 537 | String__Index . '.' tSTRING_Member_Float + 538 | String__Index . tSCOPE String__Index '.' tSTRING_Member_Float + 539 | String__Index . '.' tSTRING_Member_Float '(' FExpr ')' + 540 | String__Index . tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' + 541 | String__Index . '[' FExpr ']' '.' tSTRING + + tSCOPE shift, and go to state 724 + '(' shift, and go to state 725 + '[' shift, and go to state 726 + '.' shift, and go to state 727 + + $default reduce using rule 534 (StringExprVar) + + +state 421 + + 28 Printf: tError '(' StringExprVar . ')' tEND + 31 | tError '(' StringExprVar . ',' RecursiveListOfDouble ')' tEND + + ')' shift, and go to state 728 + ',' shift, and go to state 729 + + +state 422 + + 253 Command: tBoundingBox '{' FExpr . ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 730 + + +state 423 + + 580 RecursiveListOfStringExprVar: StringExprVar . + + $default reduce using rule 580 (RecursiveListOfStringExprVar) + + +state 424 + + 242 Command: tOnelabRun '(' RecursiveListOfStringExprVar . ')' tEND + 581 RecursiveListOfStringExprVar: RecursiveListOfStringExprVar . ',' StringExprVar + + ')' shift, and go to state 731 + ',' shift, and go to state 732 + + +state 425 + + 73 Affectation: tDefineConstant '[' DefineConstants . ']' tEND + 111 DefineConstants: DefineConstants . Comma String__Index + 112 | DefineConstants . Comma String__Index tAFFECT FExpr + 114 | DefineConstants . Comma String__Index tAFFECT '{' ListOfDouble @6 FloatParameterOptionsOrNone '}' + 116 | DefineConstants . Comma String__Index LP RP tAFFECT '{' ListOfDouble @7 FloatParameterOptionsOrNone '}' + 117 | DefineConstants . Comma String__Index tAFFECT StringExpr + 119 | DefineConstants . Comma String__Index tAFFECT '{' StringExpr @8 CharParameterOptionsOrNone '}' + + ']' shift, and go to state 733 + ',' shift, and go to state 734 + + $default reduce using rule 108 (Comma) + + Comma go to state 735 + + +state 426 + + 74 Affectation: tUndefineConstant '[' UndefineConstants . ']' tEND + 121 UndefineConstants: UndefineConstants . Comma StringExprVar + + ']' shift, and go to state 736 + ',' shift, and go to state 734 + + $default reduce using rule 108 (Comma) + + Comma go to state 737 + + +state 427 + + 469 AppendOrNot: '(' . Append ')' + + tAppend shift, and go to state 738 + + Append go to state 739 + + +state 428 + + 462 DefineStruct: tDefineStruct Struct_FullName AppendOrNot . @14 '[' FloatParameterOptionsOrNone_NoComma ']' + + $default reduce using rule 461 (@14) + + @14 go to state 740 + + +state 429 + + 464 Struct_FullName: String__Index tSCOPE . String__Index + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + + StringIndex go to state 131 + String__Index go to state 741 + + +state 430 + + 76 Affectation: tSetNumber LP StringExpr . ',' FExpr RP tEND + + ',' shift, and go to state 742 + + +state 431 + + 77 Affectation: tSetString LP String__Index . ',' StringExpr RP tEND + + ',' shift, and go to state 743 + + +state 432 + + 159 Shape: tPoint '(' FExpr . ')' tAFFECT VExpr tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 744 + + +state 433 + + 368 FExpr: '-' . FExpr + 489 FExpr_Multi: '-' . FExpr_Multi + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 523 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 524 + StringIndex go to state 131 + String__Index go to state 262 + + +state 434 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 490 FExpr_Multi: FExpr . '*' FExpr_Multi + 491 | FExpr . tDOTS FExpr + 492 | FExpr . tDOTS FExpr tDOTS FExpr + 521 RecursiveListOfDouble: FExpr . + + tDOTS shift, and go to state 531 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 745 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 521 (RecursiveListOfDouble) + + +state 435 + + 522 RecursiveListOfDouble: FExpr_Multi . + + $default reduce using rule 522 (RecursiveListOfDouble) + + +state 436 + + 342 Constraints: tPoint '{' RecursiveListOfDouble . '}' tIn tSurface '{' FExpr '}' tEND + 344 | tPoint '{' RecursiveListOfDouble . '}' tIn tVolume '{' FExpr '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 746 + ',' shift, and go to state 747 + + +state 437 + + 162 Shape: tCircle '(' FExpr . ')' tAFFECT ListOfDouble CircleOptions tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 748 + + +state 438 + + 163 Shape: tEllipse '(' FExpr . ')' tAFFECT ListOfDouble CircleOptions tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 749 + + +state 439 + + 169 Shape: tLine tSTRING '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 750 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 440 + + 160 Shape: tLine '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 751 + + +state 441 + + 343 Constraints: tLine '{' RecursiveListOfDouble . '}' tIn tSurface '{' FExpr '}' tEND + 345 | tLine '{' RecursiveListOfDouble . '}' tIn tVolume '{' FExpr '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 752 + ',' shift, and go to state 747 + + +state 442 + + 176 Shape: tSphere '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 753 + + +state 443 + + 177 Shape: tPolarSphere '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 754 + + +state 444 + + 188 Shape: tSurface tSTRING '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 755 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 445 + + 171 Shape: tSurface '(' FExpr . ')' tAFFECT ListOfDouble InSphereCenter tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 756 + + +state 446 + + 346 Constraints: tSurface '{' RecursiveListOfDouble . '}' tIn tVolume '{' FExpr '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 757 + ',' shift, and go to state 747 + + +state 447 + + 161 Shape: tSpline '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 758 + + +state 448 + + 189 Shape: tVolume '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 759 + + +state 449 + + 178 Shape: tBlock '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 760 + + +state 450 + + 182 Shape: tCylinder '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 761 + + +state 451 + + 183 Shape: tCone '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 762 + + +state 452 + + 179 Shape: tTorus '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 763 + + +state 453 + + 314 Boolean: tShapeFromFile '(' StringExprVar . ')' + + ')' shift, and go to state 764 + + +state 454 + + 180 Shape: tRectangle '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 765 + + +state 455 + + 181 Shape: tDisk '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 766 + + +state 456 + + 168 Shape: tWire '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 767 + + +state 457 + + 326 Constraints: tCharacteristic tLength ListOfDouble . tAFFECT FExpr tEND + + tAFFECT shift, and go to state 768 + + +state 458 + + 175 Shape: tParametric tSurface '(' . FExpr ')' tAFFECT tBIGSTR tBIGSTR tBIGSTR tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 769 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 459 + + 259 Command: tAdaptMesh '{' RecursiveListOfDouble . '}' '{' RecursiveListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' FExpr ',' FExpr '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 770 + ',' shift, and go to state 747 + + +state 460 + + 349 Constraints: tRelocateMesh tPoint ListOfDoubleOrAll . tEND + + tEND shift, and go to state 771 + + +state 461 + + 350 Constraints: tRelocateMesh tLine ListOfDoubleOrAll . tEND + + tEND shift, and go to state 772 + + +state 462 + + 351 Constraints: tRelocateMesh tSurface ListOfDoubleOrAll . tEND + + tEND shift, and go to state 773 + + +state 463 + + 8 GeoFormatItem: tSetFactory '(' StringExprVar . ')' tEND + + ')' shift, and go to state 774 + + +state 464 + + 390 FExpr: tExp LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 775 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 465 + + 391 FExpr: tLog LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 776 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 466 + + 392 FExpr: tLog10 LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 777 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 467 + + 393 FExpr: tSqrt LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 778 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 468 + + 394 FExpr: tSin LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 779 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 469 + + 395 FExpr: tAsin LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 780 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 470 + + 396 FExpr: tCos LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 781 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 471 + + 397 FExpr: tAcos LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 782 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 472 + + 398 FExpr: tTan LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 783 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 473 + + 412 FExpr: tRand LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 784 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 474 + + 399 FExpr: tAtan LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 785 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 475 + + 400 FExpr: tAtan2 LP . FExpr ',' FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 786 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 476 + + 401 FExpr: tSinh LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 787 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 477 + + 402 FExpr: tCosh LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 788 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 478 + + 403 FExpr: tTanh LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 789 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 479 + + 404 FExpr: tFabs LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 790 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 480 + + 405 FExpr: tAbs LP . FExpr RP + 520 FExpr_Multi: tAbs LP . FExpr_Multi RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 791 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 792 + StringIndex go to state 131 + String__Index go to state 262 + + +state 481 + + 406 FExpr: tFloor LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 793 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 482 + + 407 FExpr: tCeil LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 794 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 483 + + 408 FExpr: tRound LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 795 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 484 + + 409 FExpr: tFmod LP . FExpr ',' FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 796 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 485 + + 410 FExpr: tModulo LP . FExpr ',' FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 797 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 486 + + 411 FExpr: tHypot LP . FExpr ',' FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 798 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 487 + + 69 LP: '(' . + 512 FExpr_Multi: tList '(' . FExpr_Multi ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + $default reduce using rule 69 (LP) + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 799 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 800 + StringIndex go to state 131 + String__Index go to state 262 + + +state 488 + + 70 LP: '[' . + 510 FExpr_Multi: tList '[' . String__Index ']' + 511 | tList '[' . FExpr_Multi ']' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + $default reduce using rule 70 (LP) + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 799 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 801 + StringIndex go to state 131 + String__Index go to state 802 + + +state 489 + + 513 FExpr_Multi: tList LP . '{' RecursiveListOfDouble '}' RP + + '{' shift, and go to state 803 + + +state 490 + + 515 FExpr_Multi: tLinSpace LP . FExpr ',' FExpr ',' FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 804 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 491 + + 516 FExpr_Multi: tLogSpace LP . FExpr ',' FExpr ',' FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 805 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 492 + + 517 FExpr_Multi: tListFromFile LP . StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 806 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 493 + + 518 FExpr_Multi: tCatenary LP . FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 807 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 494 + + 454 FExpr_Single: tStrLen LP . StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 808 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 495 + + 452 FExpr_Single: tFind '(' . ListOfDouble ',' ListOfDouble ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 809 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 496 + + 453 FExpr_Single: tStrFind LP . StringExprVar ',' StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 810 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 497 + + 455 FExpr_Single: tStrCmp LP . StringExprVar ',' StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 811 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 498 + + 456 FExpr_Single: tTextAttributes '(' . RecursiveListOfStringExprVar ')' + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 423 + StringExpr go to state 419 + RecursiveListOfStringExprVar go to state 812 + StringIndex go to state 131 + String__Index go to state 420 + + +state 499 + + 425 FExpr_Single: tDefineNumber LP . FExpr @13 FloatParameterOptionsOrNone RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 813 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 500 + + 439 FExpr_Single: tDimNameSpace LP . String__Index RP + 440 | tDimNameSpace LP . RP + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 814 + StringIndex go to state 131 + String__Index go to state 815 + + +state 501 + + 494 FExpr_Multi: tPoint tBIGSTR . + + $default reduce using rule 494 (FExpr_Multi) + + +state 502 + + 502 FExpr_Multi: tPoint tIn . tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tBoundingBox shift, and go to state 816 + + +state 503 + + 493 FExpr_Multi: tPoint '{' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 817 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 504 + + 495 FExpr_Multi: tLine tBIGSTR . + + $default reduce using rule 495 (FExpr_Multi) + + +state 505 + + 503 FExpr_Multi: tLine tIn . tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tBoundingBox shift, and go to state 818 + + +state 506 + + 496 FExpr_Multi: tSurface tBIGSTR . + + $default reduce using rule 496 (FExpr_Multi) + + +state 507 + + 504 FExpr_Multi: tSurface tIn . tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tBoundingBox shift, and go to state 819 + + +state 508 + + 497 FExpr_Multi: tVolume tBIGSTR . + + $default reduce using rule 497 (FExpr_Multi) + + +state 509 + + 505 FExpr_Multi: tVolume tIn . tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tBoundingBox shift, and go to state 820 + + +state 510 + + 288 Extrude: tRuled tThruSections . ListOfDouble + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 564 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 511 + + 498 FExpr_Multi: tPhysical tPoint . ListOfDoubleOrAll + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 821 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 512 + + 499 FExpr_Multi: tPhysical tLine . ListOfDoubleOrAll + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 822 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 513 + + 500 FExpr_Multi: tPhysical tSurface . ListOfDoubleOrAll + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 823 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 514 + + 501 FExpr_Multi: tPhysical tVolume . ListOfDoubleOrAll + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 325 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 327 + ListOfDoubleOrAll go to state 824 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 515 + + 451 FExpr_Single: tGetValue '(' . StringExprVar ',' FExpr ')' + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 825 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 516 + + 427 FExpr_Single: tGetNumber LP . StringExprVar RP + 428 | tGetNumber LP . StringExprVar ',' FExpr RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 826 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 517 + + 519 FExpr_Multi: tUnique LP . FExpr_Multi RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 799 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 827 + StringIndex go to state 131 + String__Index go to state 262 + + +state 518 + + 432 FExpr_Single: tExists '(' . Struct_FullName ')' + 433 | tExists '(' . Struct_FullName '.' tSTRING_Member_Float ')' + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + + Struct_FullName go to state 828 + StringIndex go to state 131 + String__Index go to state 152 + + +state 519 + + 436 FExpr_Single: tFileExists '(' . StringExpr ')' + + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + + StringExpr go to state 829 + + +state 520 + + 434 FExpr_Single: tGetForced '(' . Struct_FullName GetForced_Default ')' + 435 | tGetForced '(' . Struct_FullName '.' tSTRING_Member_Float GetForced_Default ')' + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + + Struct_FullName go to state 830 + StringIndex go to state 131 + String__Index go to state 152 + + +state 521 + + 369 FExpr: '+' FExpr . + 371 | FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '^' shift, and go to state 550 + + $default reduce using rule 369 (FExpr) + + +state 522 + + 485 ListOfDouble: '-' '{' . RecursiveListOfDouble '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 831 + StringIndex go to state 131 + String__Index go to state 262 + + +state 523 + + 368 FExpr: '-' FExpr . + 371 | FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 490 FExpr_Multi: FExpr . '*' FExpr_Multi + 491 | FExpr . tDOTS FExpr + 492 | FExpr . tDOTS FExpr tDOTS FExpr + + '^' shift, and go to state 550 + + $default reduce using rule 368 (FExpr) + + +state 524 + + 489 FExpr_Multi: '-' FExpr_Multi . + + $default reduce using rule 489 (FExpr_Multi) + + +state 525 + + 370 FExpr: '!' FExpr . + 371 | FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '^' shift, and go to state 550 + + $default reduce using rule 370 (FExpr) + + +state 526 + + 190 Shape: tThruSections '(' FExpr . ')' tAFFECT ListOfDouble tEND + 367 FExpr: '(' FExpr . ')' + 371 | FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 832 + + +state 527 + + 483 ListOfDouble: '{' '}' . + + $default reduce using rule 483 (ListOfDouble) + + +state 528 + + 484 ListOfDouble: '{' RecursiveListOfDouble . '}' + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 833 + ',' shift, and go to state 747 + + +state 529 + + 438 FExpr_Single: '#' Struct_FullName . '.' tSTRING_Member_Float '(' ')' + + '.' shift, and go to state 834 + + +state 530 + + 437 FExpr_Single: '#' String__Index . LP RP + 463 Struct_FullName: String__Index . + 464 | String__Index . tSCOPE String__Index + + tSCOPE shift, and go to state 429 + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + $default reduce using rule 463 (Struct_FullName) + + LP go to state 835 + + +state 531 + + 491 FExpr_Multi: FExpr tDOTS . FExpr + 492 | FExpr tDOTS . FExpr tDOTS FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 836 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 532 + + 389 FExpr: FExpr '?' . FExpr tDOTS FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 837 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 533 + + 386 FExpr: FExpr tOR . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 838 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 534 + + 385 FExpr: FExpr tAND . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 839 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 535 + + 384 FExpr: FExpr tNOTEQUAL . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 840 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 536 + + 383 FExpr: FExpr tEQUAL . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 841 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 537 + + 379 FExpr: FExpr '<' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 842 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 538 + + 380 FExpr: FExpr '>' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 843 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 539 + + 387 FExpr: FExpr tGREATERGREATER . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 844 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 540 + + 388 FExpr: FExpr tLESSLESS . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 845 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 541 + + 382 FExpr: FExpr tGREATEROREQUAL . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 846 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 542 + + 381 FExpr: FExpr tLESSOREQUAL . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 847 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 543 + + 372 FExpr: FExpr '+' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 848 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 544 + + 371 FExpr: FExpr '-' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 849 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 545 + + 373 FExpr: FExpr '*' . FExpr + 486 ListOfDouble: FExpr '*' . '{' RecursiveListOfDouble '}' + 490 FExpr_Multi: FExpr '*' . FExpr_Multi + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 850 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 851 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 852 + StringIndex go to state 131 + String__Index go to state 262 + + +state 546 + + 374 FExpr: FExpr '/' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 853 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 547 + + 377 FExpr: FExpr '%' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 854 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 548 + + 375 FExpr: FExpr '|' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 855 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 549 + + 376 FExpr: FExpr '&' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 856 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 550 + + 378 FExpr: FExpr '^' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 857 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 551 + + 431 FExpr_Single: Struct_FullName '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 858 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 552 + + 430 FExpr_Single: Struct_FullName '[' . FExpr ']' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 859 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 553 + + 445 FExpr_Single: String__Index tSCOPE . String__Index '.' tSTRING_Member_Float + 447 | String__Index tSCOPE . String__Index '.' tSTRING_Member_Float '(' FExpr ')' + 464 Struct_FullName: String__Index tSCOPE . String__Index + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + + StringIndex go to state 131 + String__Index go to state 860 + + +state 554 + + 69 LP: '(' . + 443 FExpr_Single: String__Index '(' . FExpr ')' NumericIncrement + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + $default reduce using rule 69 (LP) + + FExpr go to state 861 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 555 + + 70 LP: '[' . + 442 FExpr_Single: String__Index '[' . FExpr ']' NumericIncrement + 448 | String__Index '[' . FExpr ']' '.' tSTRING + 450 | String__Index '[' . FExpr ']' '.' tSTRING NumericIncrement + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + $default reduce using rule 70 (LP) + + FExpr go to state 862 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 556 + + 444 FExpr_Single: String__Index '.' . tSTRING_Member_Float + 446 | String__Index '.' . tSTRING_Member_Float '(' FExpr ')' + 449 | String__Index '.' . tSTRING NumericIncrement + + tSTRING shift, and go to state 863 + + tSTRING_Member_Float go to state 864 + + +state 557 + + 441 FExpr_Single: String__Index NumericIncrement . + + $default reduce using rule 441 (FExpr_Single) + + +state 558 + + 509 FExpr_Multi: String__Index LP . RP + 514 | String__Index LP . '{' RecursiveListOfDouble '}' RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + '{' shift, and go to state 865 + + RP go to state 866 + + +state 559 + + 184 Shape: tWedge '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 867 + + +state 560 + + 289 Extrude: tFillet '{' RecursiveListOfDouble . '}' '{' RecursiveListOfDouble '}' '{' FExpr '}' + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 868 + ',' shift, and go to state 747 + + +state 561 + + 170 Shape: tPlane tSurface '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 869 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 562 + + 172 Shape: tRuled tSurface '(' . FExpr ')' tAFFECT ListOfDouble InSphereCenter tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 870 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 563 + + 191 Shape: tRuled tThruSections '(' . FExpr ')' tAFFECT ListOfDouble tEND + 367 FExpr: '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 871 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 564 + + 288 Extrude: tRuled tThruSections ListOfDouble . + + $default reduce using rule 288 (Extrude) + + +state 565 + + 327 Constraints: tTransfinite tLine ListOfDoubleOrAll . tAFFECT FExpr TransfiniteType tEND + + tAFFECT shift, and go to state 872 + + +state 566 + + 328 Constraints: tTransfinite tSurface ListOfDoubleOrAll . TransfiniteCorners TransfiniteArrangement tEND + + tAFFECT shift, and go to state 873 + + $default reduce using rule 320 (TransfiniteCorners) + + TransfiniteCorners go to state 874 + + +state 567 + + 329 Constraints: tTransfinite tVolume ListOfDoubleOrAll . TransfiniteCorners tEND + + tAFFECT shift, and go to state 873 + + $default reduce using rule 320 (TransfiniteCorners) + + TransfiniteCorners go to state 875 + + +state 568 + + 193 Shape: tPhysical tPoint '(' . PhysicalId0 ')' NumericAffectation ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tTextAttributes shift, and go to state 224 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tNameStruct shift, and go to state 363 + tDimNameSpace shift, and go to state 229 + tDefineString shift, and go to state 364 + tGetValue shift, and go to state 237 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGetForcedStr shift, and go to state 368 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + PhysicalId0 go to state 876 + FExpr go to state 877 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringExpr go to state 878 + StringIndex go to state 131 + String__Index go to state 383 + + +state 569 + + 194 Shape: tPhysical tLine '(' . PhysicalId1 ')' NumericAffectation ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tTextAttributes shift, and go to state 224 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tNameStruct shift, and go to state 363 + tDimNameSpace shift, and go to state 229 + tDefineString shift, and go to state 364 + tGetValue shift, and go to state 237 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGetForcedStr shift, and go to state 368 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + PhysicalId1 go to state 879 + FExpr go to state 880 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringExpr go to state 881 + StringIndex go to state 131 + String__Index go to state 383 + + +state 570 + + 195 Shape: tPhysical tSurface '(' . PhysicalId2 ')' NumericAffectation ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tTextAttributes shift, and go to state 224 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tNameStruct shift, and go to state 363 + tDimNameSpace shift, and go to state 229 + tDefineString shift, and go to state 364 + tGetValue shift, and go to state 237 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGetForcedStr shift, and go to state 368 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + PhysicalId2 go to state 882 + FExpr go to state 883 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringExpr go to state 884 + StringIndex go to state 131 + String__Index go to state 383 + + +state 571 + + 196 Shape: tPhysical tVolume '(' . PhysicalId3 ')' NumericAffectation ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tTextAttributes shift, and go to state 224 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tNameStruct shift, and go to state 363 + tDimNameSpace shift, and go to state 229 + tDefineString shift, and go to state 364 + tGetValue shift, and go to state 237 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGetForcedStr shift, and go to state 368 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + PhysicalId3 go to state 885 + FExpr go to state 886 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringExpr go to state 887 + StringIndex go to state 131 + String__Index go to state 383 + + +state 572 + + 167 Shape: tCompound tLine '(' . FExpr ')' tAFFECT ListOfDouble tEND + 367 FExpr: '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 888 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 573 + + 353 Constraints: tCompound tLine ListOfDouble . tEND + + tEND shift, and go to state 889 + + +state 574 + + 186 Shape: tCompound tSurface '(' . FExpr ')' tAFFECT ListOfDouble tEND + 187 | tCompound tSurface '(' . FExpr ')' tAFFECT ListOfDouble tSTRING '{' RecursiveListOfListOfDouble '}' tEND + 367 FExpr: '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 890 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 575 + + 354 Constraints: tCompound tSurface ListOfDouble . tEND + + tEND shift, and go to state 891 + + +state 576 + + 192 Shape: tCompound tVolume '(' . FExpr ')' tAFFECT ListOfDouble tEND + 367 FExpr: '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 892 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 577 + + 355 Constraints: tCompound tVolume ListOfDouble . tEND + + tEND shift, and go to state 893 + + +state 578 + + 335 Constraints: tPeriodic tLine '{' . RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform tEND + 337 | tPeriodic tLine '{' . RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 339 | tPeriodic tLine '{' . RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 894 + StringIndex go to state 131 + String__Index go to state 262 + + +state 579 + + 336 Constraints: tPeriodic tSurface '{' . RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform tEND + 338 | tPeriodic tSurface '{' . RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 340 | tPeriodic tSurface '{' . RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 895 + StringIndex go to state 131 + String__Index go to state 262 + + +state 580 + + 341 Constraints: tPeriodic tSurface FExpr . '{' RecursiveListOfDouble '}' tAFFECT FExpr '{' RecursiveListOfDouble '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '{' shift, and go to state 896 + + +state 581 + + 106 Affectation: tPlugin '(' tSTRING . ')' '.' tSTRING tAFFECT FExpr tEND + 107 | tPlugin '(' tSTRING . ')' '.' tSTRING tAFFECT StringExpr tEND + 246 Command: tPlugin '(' tSTRING . ')' '.' tSTRING tEND + + ')' shift, and go to state 897 + + +state 582 + + 352 Constraints: tDegenerated tLine ListOfDouble . tEND + + tEND shift, and go to state 898 + + +state 583 + + 226 Delete: tRecursive tDelete '{' . ListOfShapes '}' + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 899 + + +state 584 + + 233 Colorify: tRecursive tColor ColorExpr . '{' ListOfShapes '}' + + '{' shift, and go to state 900 + + +state 585 + + 238 Visibility: tRecursive tShow '{' . ListOfShapes '}' + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 901 + + +state 586 + + 240 Visibility: tRecursive tHide '{' . ListOfShapes '}' + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 902 + + +state 587 + + 198 Transform: tRotate '{' VExpr . ',' VExpr ',' FExpr '}' '{' MultipleShape '}' + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 903 + + +state 588 + + 472 VExpr: '+' VExpr . + 473 | VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + $default reduce using rule 472 (VExpr) + + +state 589 + + 471 VExpr: '-' VExpr . + 473 | VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + $default reduce using rule 471 (VExpr) + + +state 590 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 478 VExpr_Single: '(' FExpr . ',' FExpr ',' FExpr ')' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 904 + + +state 591 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 475 VExpr_Single: '{' FExpr . ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + 476 | '{' FExpr . ',' FExpr ',' FExpr ',' FExpr '}' + 477 | '{' FExpr . ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 905 + + +state 592 + + 474 VExpr: VExpr '+' . VExpr + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 906 + VExpr_Single go to state 292 + + +state 593 + + 473 VExpr: VExpr '-' . VExpr + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 907 + VExpr_Single go to state 292 + + +state 594 + + 197 Transform: tTranslate VExpr '{' . MultipleShape '}' + + tSTRING shift, and go to state 411 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + + $default reduce using rule 207 (ListOfShapes) + + Transform go to state 412 + MultipleShape go to state 908 + ListOfShapes go to state 414 + + +state 595 + + 199 Transform: tSymmetry VExpr '{' . MultipleShape '}' + + tSTRING shift, and go to state 411 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + + $default reduce using rule 207 (ListOfShapes) + + Transform go to state 412 + MultipleShape go to state 909 + ListOfShapes go to state 414 + + +state 596 + + 200 Transform: tDilate '{' VExpr . ',' FExpr '}' '{' MultipleShape '}' + 201 | tDilate '{' VExpr . ',' VExpr '}' '{' MultipleShape '}' + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 910 + + +state 597 + + 369 FExpr: '+' . FExpr + 472 VExpr: '+' . VExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 597 + '-' shift, and go to state 598 + '!' shift, and go to state 248 + '(' shift, and go to state 599 + '{' shift, and go to state 290 + '#' shift, and go to state 251 + + FExpr go to state 521 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + VExpr go to state 588 + VExpr_Single go to state 292 + StringIndex go to state 131 + String__Index go to state 383 + + +state 598 + + 368 FExpr: '-' . FExpr + 471 VExpr: '-' . VExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 597 + '-' shift, and go to state 598 + '!' shift, and go to state 248 + '(' shift, and go to state 599 + '{' shift, and go to state 290 + '#' shift, and go to state 251 + + FExpr go to state 675 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + VExpr go to state 589 + VExpr_Single go to state 292 + StringIndex go to state 131 + String__Index go to state 383 + + +state 599 + + 367 FExpr: '(' . FExpr ')' + 478 VExpr_Single: '(' . FExpr ',' FExpr ',' FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 911 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 600 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 285 Extrude: tExtrude '{' ListOfShapes . @12 ExtrudeParameters '}' + 286 | tExtrude '{' ListOfShapes . '}' tUsing tWire '{' FExpr '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tThickSolid shift, and go to state 70 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + '}' shift, and go to state 912 + + $default reduce using rule 284 (@12) + + Shape go to state 719 + @12 go to state 913 + + +state 601 + + 276 Extrude: tExtrude '{' VExpr . ',' VExpr ',' FExpr '}' '{' ListOfShapes '}' + 277 | tExtrude '{' VExpr . ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes '}' + 281 | tExtrude '{' VExpr . ',' VExpr ',' FExpr '}' '{' ListOfShapes @10 ExtrudeParameters '}' + 283 | tExtrude '{' VExpr . ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes @11 ExtrudeParameters '}' + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 914 + + +state 602 + + 275 Extrude: tExtrude VExpr '{' . ListOfShapes '}' + 279 | tExtrude VExpr '{' . ListOfShapes @9 ExtrudeParameters '}' + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 915 + + +state 603 + + 222 LevelSet: tLevelset tSTRING '(' . FExpr ')' tAFFECT ListOfDouble tEND + 223 | tLevelset tSTRING '(' . FExpr ')' tAFFECT tBIGSTR tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 916 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 604 + + 224 LevelSet: tLevelset tSTRING '{' . FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 917 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 605 + + 214 LevelSet: tLevelset tPoint '(' . FExpr ')' tAFFECT '{' RecursiveListOfListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 918 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 606 + + 217 LevelSet: tLevelset tSphere '(' . FExpr ')' tAFFECT '{' VExpr ',' RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 919 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 607 + + 218 LevelSet: tLevelset tCylinder '(' . FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 920 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 608 + + 219 LevelSet: tLevelset tCone '(' . FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 921 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 609 + + 220 LevelSet: tLevelset tEllipsoid '(' . FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 922 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 610 + + 221 LevelSet: tLevelset tQuadric '(' . FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 923 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 611 + + 213 LevelSet: tLevelset tPlane '(' . FExpr ')' tAFFECT ListOfDouble tEND + 215 | tLevelset tPlane '(' . FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 216 | tLevelset tPlane '(' . FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 924 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 612 + + 185 Shape: tThickSolid '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 925 + + +state 613 + + 332 Constraints: tRecombine tSurface ListOfDoubleOrAll . RecombineAngle tEND + + tAFFECT shift, and go to state 926 + + $default reduce using rule 322 (RecombineAngle) + + RecombineAngle go to state 927 + + +state 614 + + 333 Constraints: tRecombine tVolume ListOfDoubleOrAll . tEND + + tEND shift, and go to state 928 + + +state 615 + + 334 Constraints: tSmoother tSurface ListOfDoubleOrAll . tAFFECT FExpr tEND + + tAFFECT shift, and go to state 929 + + +state 616 + + 204 Transform: tSplit tLine '(' . FExpr ')' '{' RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 930 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 617 + + 230 Delete: tDelete tSTRING tSTRING . tEND + + tEND shift, and go to state 931 + + +state 618 + + 228 Delete: tDelete tSTRING '[' . FExpr ']' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 932 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 619 + + 231 Delete: tDelete tDefineStruct tEND . + + $default reduce using rule 231 (Delete) + + +state 620 + + 227 Delete: tDelete tField '[' . FExpr ']' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 933 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 621 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 225 Delete: tDelete '{' ListOfShapes . '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tThickSolid shift, and go to state 70 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + '}' shift, and go to state 934 + + Shape go to state 719 + + +state 622 + + 229 Delete: tDelete String__Index tEND . + + $default reduce using rule 229 (Delete) + + +state 623 + + 357 Coherence: tCoherence tSTRING tEND . + + $default reduce using rule 357 (Coherence) + + +state 624 + + 358 Coherence: tCoherence tPoint '{' . RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 935 + StringIndex go to state 131 + String__Index go to state 262 + + +state 625 + + 203 Transform: tIntersect tLine '{' . RecursiveListOfDouble '}' tSurface '{' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 936 + StringIndex go to state 131 + String__Index go to state 262 + + +state 626 + + 331 Constraints: tMeshAlgorithm tSurface '{' . RecursiveListOfDouble '}' tAFFECT FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 937 + StringIndex go to state 131 + String__Index go to state 262 + + +state 627 + + 348 Constraints: tReverse tLine ListOfDoubleOrAll . tEND + + tEND shift, and go to state 938 + + +state 628 + + 347 Constraints: tReverse tSurface ListOfDoubleOrAll . tEND + + tEND shift, and go to state 939 + + +state 629 + + 34 View: tAlias tSTRING '[' . FExpr ']' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 940 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 630 + + 35 View: tAliasWithOptions tSTRING '[' . FExpr ']' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 941 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 631 + + 36 View: tCopyOptions tSTRING '[' . FExpr ',' FExpr ']' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 942 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 632 + + 367 FExpr: '(' FExpr . ')' + 371 | FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 943 + + +state 633 + + 330 Constraints: tTransfQuadTri ListOfDoubleOrAll tEND . + + $default reduce using rule 330 (Constraints) + + +state 634 + + 247 Command: tCombine tSTRING tEND . + + $default reduce using rule 247 (Command) + + +state 635 + + 164 Shape: tBSpline '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 944 + + +state 636 + + 165 Shape: tBezier '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 945 + + +state 637 + + 166 Shape: tNurbs '(' FExpr . ')' tAFFECT ListOfDouble tNurbsKnots ListOfDouble tNurbsOrder FExpr tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 946 + + +state 638 + + 528 ColorExpr: tSTRING '.' . tColor '.' tSTRING + + tColor shift, and go to state 947 + + +state 639 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 525 ColorExpr: '{' FExpr . ',' FExpr ',' FExpr ',' FExpr '}' + 526 | '{' FExpr . ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 948 + + +state 640 + + 232 Colorify: tColor ColorExpr '{' . ListOfShapes '}' + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 949 + + +state 641 + + 263 Loop: tFor tSTRING tIn . '{' FExpr tDOTS FExpr '}' + 264 | tFor tSTRING tIn . '{' FExpr tDOTS FExpr tDOTS FExpr '}' + + '{' shift, and go to state 950 + + +state 642 + + 261 Loop: tFor '(' FExpr . tDOTS FExpr ')' + 262 | tFor '(' FExpr . tDOTS FExpr tDOTS FExpr ')' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tDOTS shift, and go to state 951 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 643 + + 271 Loop: tIf '(' FExpr . ')' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 952 + + +state 644 + + 272 Loop: tElseIf '(' FExpr . ')' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 953 + + +state 645 + + 101 Affectation: tField '[' FExpr . ']' tAFFECT tSTRING tEND + 102 | tField '[' FExpr . ']' '.' tSTRING tAFFECT FExpr tEND + 103 | tField '[' FExpr . ']' '.' tSTRING tAFFECT StringExpr tEND + 104 | tField '[' FExpr . ']' '.' tSTRING tAFFECT '{' RecursiveListOfDouble '}' tEND + 105 | tField '[' FExpr . ']' '.' tSTRING tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ']' shift, and go to state 954 + + +state 646 + + 562 StringExpr: tStr LP . RecursiveListOfStringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 423 + StringExpr go to state 419 + RecursiveListOfStringExprVar go to state 955 + StringIndex go to state 131 + String__Index go to state 420 + + +state 647 + + 569 StringExpr: tSprintf LP . StringExprVar RP + 570 | tSprintf LP . StringExprVar ',' RecursiveListOfDouble RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 956 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 648 + + 558 StringExpr: tStrCat LP . RecursiveListOfStringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 423 + StringExpr go to state 419 + RecursiveListOfStringExprVar go to state 957 + StringIndex go to state 131 + String__Index go to state 420 + + +state 649 + + 559 StringExpr: tStrPrefix '(' . StringExprVar ')' + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 958 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 650 + + 560 StringExpr: tStrRelative '(' . StringExprVar ')' + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 959 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 651 + + 561 StringExpr: tStrReplace '(' . StringExprVar ',' StringExprVar ',' StringExprVar ')' + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 960 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 652 + + 574 StringExpr: tAbsolutePath LP . StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 961 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 653 + + 573 StringExpr: tDirName LP . StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 962 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 654 + + 567 StringExpr: tStrSub LP . StringExprVar ',' FExpr ',' FExpr RP + 568 | tStrSub LP . StringExprVar ',' FExpr RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 963 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 655 + + 566 StringExpr: tStrChoice LP . FExpr ',' StringExprVar ',' StringExprVar RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 964 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 656 + + 563 StringExpr: tUpperCase LP . StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 965 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 657 + + 564 StringExpr: tLowerCase LP . StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 966 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 658 + + 565 StringExpr: tLowerCaseIn LP . StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 967 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 659 + + 571 StringExpr: tFixRelativePath LP . StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 968 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 660 + + 577 StringExpr: tNameStruct LP . NameStruct_Arg RP + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + '#' shift, and go to state 969 + + NameStruct_Arg go to state 970 + StringIndex go to state 131 + String__Index go to state 971 + + +state 661 + + 576 StringExpr: tDefineString LP . StringExpr @15 CharParameterOptionsOrNone RP + + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + + StringExpr go to state 972 + + +state 662 + + 553 StringExpr: tGetStringValue '(' . StringExprVar ',' StringExprVar ')' + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 973 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 663 + + 552 StringExpr: tGetEnv '(' . StringExprVar ')' + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 974 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 664 + + 554 StringExpr: tGetString LP . StringExprVar RP + 555 | tGetString LP . StringExprVar ',' StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 975 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 665 + + 556 StringExpr: tGetForcedStr '(' . Struct_FullName GetForcedStr_Default ')' + 557 | tGetForcedStr '(' . Struct_FullName '.' tSTRING_Member_Float GetForcedStr_Default ')' + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + + Struct_FullName go to state 976 + StringIndex go to state 131 + String__Index go to state 152 + + +state 666 + + 547 StringExpr: tNameToString '[' . String__Index ']' + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + + StringIndex go to state 131 + String__Index go to state 977 + + +state 667 + + 270 Loop: tCall StringExpr tEND . + + $default reduce using rule 270 (Loop) + + +state 668 + + 269 Loop: tCall String__Index tEND . + + $default reduce using rule 269 (Loop) + + +state 669 + + 260 Slide: tSlide '(' '{' . RecursiveListOfDouble '}' ',' StringExpr ',' StringExpr ')' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 978 + StringIndex go to state 131 + String__Index go to state 262 + + +state 670 + + 235 Visibility: tShow tBIGSTR tEND . + + $default reduce using rule 235 (Visibility) + + +state 671 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 237 Visibility: tShow '{' ListOfShapes . '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tThickSolid shift, and go to state 70 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + '}' shift, and go to state 979 + + Shape go to state 719 + + +state 672 + + 236 Visibility: tHide tBIGSTR tEND . + + $default reduce using rule 236 (Visibility) + + +state 673 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 239 Visibility: tHide '{' ListOfShapes . '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tThickSolid shift, and go to state 70 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + '}' shift, and go to state 980 + + Shape go to state 719 + + +state 674 + + 405 FExpr: tAbs LP . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 981 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 675 + + 368 FExpr: '-' FExpr . + 371 | FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '^' shift, and go to state 550 + + $default reduce using rule 368 (FExpr) + + +state 676 + + 373 FExpr: FExpr '*' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 982 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 677 + + 234 SetPartition: tSetPartition FExpr '{' . ListOfShapes '}' + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 983 + + +state 678 + + 443 FExpr_Single: String__Index '(' . FExpr ')' NumericIncrement + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 861 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 679 + + 442 FExpr_Single: String__Index '[' . FExpr ']' NumericIncrement + 448 | String__Index '[' . FExpr ']' '.' tSTRING + 450 | String__Index '[' . FExpr ']' '.' tSTRING NumericIncrement + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 862 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 680 + + 584 StringIndex: tStringToName '[' StringExprVar . ']' '~' '{' FExpr '}' + 587 String__Index: tStringToName '[' StringExprVar . ']' + + ']' shift, and go to state 984 + + +state 681 + + 315 BooleanShape: BooleanOperator '(' FExpr . ')' tAFFECT '{' ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 985 + + +state 682 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 313 Boolean: BooleanOperator '{' ListOfShapes . BooleanOption '}' '{' ListOfShapes BooleanOption '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tRecursive shift, and go to state 986 + tThickSolid shift, and go to state 70 + tDelete shift, and go to state 987 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + + $default reduce using rule 308 (BooleanOption) + + Shape go to state 719 + BooleanOption go to state 988 + + +state 683 + + 365 Homology: HomologyCommand '(' ListOfDouble . ')' '{' ListOfDouble ',' ListOfDouble '}' tEND + + ')' shift, and go to state 989 + + +state 684 + + 363 Homology: HomologyCommand '{' ListOfDouble . '}' tEND + 364 | HomologyCommand '{' ListOfDouble . ',' ListOfDouble '}' tEND + + '}' shift, and go to state 990 + ',' shift, and go to state 991 + + +state 685 + + 583 StringIndex: StringIndex '~' '{' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 992 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 686 + + 86 Affectation: String__Index tAFFECT StringExpr . tEND + + tEND shift, and go to state 993 + + +state 687 + + 542 StringExprVar: tPhysical tPoint . '{' FExpr '}' + + '{' shift, and go to state 994 + + +state 688 + + 543 StringExprVar: tPhysical tLine . '{' FExpr '}' + + '{' shift, and go to state 995 + + +state 689 + + 544 StringExprVar: tPhysical tSurface . '{' FExpr '}' + + '{' shift, and go to state 996 + + +state 690 + + 545 StringExprVar: tPhysical tVolume . '{' FExpr '}' + + '{' shift, and go to state 997 + + +state 691 + + 100 Affectation: String__Index tField tAFFECT . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 998 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 692 + + 84 Affectation: String__Index '(' FExpr . ')' NumericAffectation FExpr tEND + 85 | String__Index '(' FExpr . ')' NumericIncrement tEND + 367 FExpr: '(' FExpr . ')' + 371 | FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 999 + + +state 693 + + 82 Affectation: String__Index '[' FExpr . ']' NumericAffectation FExpr tEND + 83 | String__Index '[' FExpr . ']' NumericIncrement tEND + 91 | String__Index '[' FExpr . ']' '.' tSTRING tAFFECT StringExpr tEND + 93 | String__Index '[' FExpr . ']' '.' tSTRING NumericAffectation FExpr tEND + 95 | String__Index '[' FExpr . ']' '.' tSTRING NumericIncrement tEND + 97 | String__Index '[' FExpr . ']' '.' tColor '.' tSTRING tAFFECT ColorExpr tEND + 99 | String__Index '[' FExpr . ']' '.' tColorTable tAFFECT ListOfColor tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ']' shift, and go to state 1000 + + +state 694 + + 90 Affectation: String__Index '.' tSTRING . tAFFECT StringExpr tEND + 92 | String__Index '.' tSTRING . NumericAffectation FExpr tEND + 94 | String__Index '.' tSTRING . NumericIncrement tEND + + tAFFECT shift, and go to state 1001 + tAFFECTDIVIDE shift, and go to state 395 + tAFFECTTIMES shift, and go to state 396 + tAFFECTMINUS shift, and go to state 397 + tAFFECTPLUS shift, and go to state 398 + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + + NumericAffectation go to state 1002 + NumericIncrement go to state 1003 + + +state 695 + + 96 Affectation: String__Index '.' tColor . '.' tSTRING tAFFECT ColorExpr tEND + + '.' shift, and go to state 1004 + + +state 696 + + 98 Affectation: String__Index '.' tColorTable . tAFFECT ListOfColor tEND + + tAFFECT shift, and go to state 1005 + + +state 697 + + 78 Affectation: String__Index NumericAffectation ListOfDouble . tEND + + tEND shift, and go to state 1006 + + +state 698 + + 79 Affectation: String__Index NumericIncrement tEND . + + $default reduce using rule 79 (Affectation) + + +state 699 + + 71 RP: ')' . + + $default reduce using rule 71 (RP) + + +state 700 + + 72 RP: ']' . + + $default reduce using rule 72 (RP) + + +state 701 + + 81 Affectation: String__Index LP '{' . RecursiveListOfDouble '}' RP NumericAffectation ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1007 + StringIndex go to state 131 + String__Index go to state 262 + + +state 702 + + 80 Affectation: String__Index LP RP . NumericAffectation ListOfDouble tEND + 87 | String__Index LP RP . tAFFECT tStr LP RP tEND + 88 | String__Index LP RP . tAFFECT tStr LP RecursiveListOfStringExprVar RP tEND + 89 | String__Index LP RP . tAFFECTPLUS tStr LP RecursiveListOfStringExprVar RP tEND + + tAFFECT shift, and go to state 1008 + tAFFECTDIVIDE shift, and go to state 395 + tAFFECTTIMES shift, and go to state 396 + tAFFECTMINUS shift, and go to state 397 + tAFFECTPLUS shift, and go to state 1009 + + NumericAffectation go to state 1010 + + +state 703 + + 245 Command: String__Index FExpr tEND . + + $default reduce using rule 245 (Command) + + +state 704 + + 33 View: String__Index StringExprVar '{' . Views '}' tEND + + $default reduce using rule 37 (Views) + + Views go to state 1011 + + +state 705 + + 241 Command: String__Index StringExpr tEND . + + $default reduce using rule 241 (Command) + + +state 706 + + 445 FExpr_Single: String__Index tSCOPE . String__Index '.' tSTRING_Member_Float + 447 | String__Index tSCOPE . String__Index '.' tSTRING_Member_Float '(' FExpr ')' + 464 Struct_FullName: String__Index tSCOPE . String__Index + 538 StringExprVar: String__Index tSCOPE . String__Index '.' tSTRING_Member_Float + 540 | String__Index tSCOPE . String__Index '.' tSTRING_Member_Float '(' FExpr ')' + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + + StringIndex go to state 131 + String__Index go to state 1012 + + +state 707 + + 443 FExpr_Single: String__Index '(' . FExpr ')' NumericIncrement + 536 StringExprVar: String__Index '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1013 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 708 + + 243 Command: String__Index String__Index '[' . FExpr ']' StringExprVar tEND + 442 FExpr_Single: String__Index '[' . FExpr ']' NumericIncrement + 448 | String__Index '[' . FExpr ']' '.' tSTRING + 450 | String__Index '[' . FExpr ']' '.' tSTRING NumericIncrement + 535 StringExprVar: String__Index '[' . FExpr ']' + 541 | String__Index '[' . FExpr ']' '.' tSTRING + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1014 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 709 + + 444 FExpr_Single: String__Index '.' . tSTRING_Member_Float + 446 | String__Index '.' . tSTRING_Member_Float '(' FExpr ')' + 449 | String__Index '.' . tSTRING NumericIncrement + 537 StringExprVar: String__Index '.' . tSTRING_Member_Float + 539 | String__Index '.' . tSTRING_Member_Float '(' FExpr ')' + + tSTRING shift, and go to state 863 + + tSTRING_Member_Float go to state 1015 + + +state 710 + + 244 Command: String__Index String__Index String__Index . '[' FExpr ']' tEND + + '[' shift, and go to state 1016 + + +state 711 + + 202 Transform: tSTRING '{' MultipleShape '}' . + + $default reduce using rule 202 (Transform) + + +state 712 + + 159 Shape: tPoint . '(' FExpr ')' tAFFECT VExpr tEND + 209 ListOfShapes: ListOfShapes tPoint . '{' RecursiveListOfDouble '}' tEND + + '(' shift, and go to state 157 + '{' shift, and go to state 1017 + + +state 713 + + 160 Shape: tLine . '(' FExpr ')' tAFFECT ListOfDouble tEND + 169 | tLine . tSTRING '(' FExpr ')' tAFFECT ListOfDouble tEND + 210 ListOfShapes: ListOfShapes tLine . '{' RecursiveListOfDouble '}' tEND + + tSTRING shift, and go to state 161 + '(' shift, and go to state 162 + '{' shift, and go to state 1018 + + +state 714 + + 171 Shape: tSurface . '(' FExpr ')' tAFFECT ListOfDouble InSphereCenter tEND + 188 | tSurface . tSTRING '(' FExpr ')' tAFFECT ListOfDouble tEND + 211 ListOfShapes: ListOfShapes tSurface . '{' RecursiveListOfDouble '}' tEND + + tSTRING shift, and go to state 166 + '(' shift, and go to state 167 + '{' shift, and go to state 1019 + + +state 715 + + 189 Shape: tVolume . '(' FExpr ')' tAFFECT ListOfDouble tEND + 212 ListOfShapes: ListOfShapes tVolume . '{' RecursiveListOfDouble '}' tEND + + '(' shift, and go to state 170 + '{' shift, and go to state 1020 + + +state 716 + + 190 Shape: tThruSections . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 1021 + + +state 717 + + 172 Shape: tRuled . tSurface '(' FExpr ')' tAFFECT ListOfDouble InSphereCenter tEND + 191 | tRuled . tThruSections '(' FExpr ')' tAFFECT ListOfDouble tEND + + tSurface shift, and go to state 266 + tThruSections shift, and go to state 1022 + + +state 718 + + 167 Shape: tCompound . tLine '(' FExpr ')' tAFFECT ListOfDouble tEND + 186 | tCompound . tSurface '(' FExpr ')' tAFFECT ListOfDouble tEND + 187 | tCompound . tSurface '(' FExpr ')' tAFFECT ListOfDouble tSTRING '{' RecursiveListOfListOfDouble '}' tEND + 192 | tCompound . tVolume '(' FExpr ')' tAFFECT ListOfDouble tEND + + tLine shift, and go to state 1023 + tSurface shift, and go to state 1024 + tVolume shift, and go to state 1025 + + +state 719 + + 208 ListOfShapes: ListOfShapes Shape . + + $default reduce using rule 208 (ListOfShapes) + + +state 720 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 582 StringIndex: tSTRING '~' '{' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1026 + + +state 721 + + 174 Shape: tCoordinates tSurface FExpr tEND . + + $default reduce using rule 174 (Shape) + + +state 722 + + 27 Printf: tPrintf '(' StringExprVar ')' . tEND + 29 | tPrintf '(' StringExprVar ')' . SendToFile StringExprVar tEND + + tEND shift, and go to state 1027 + '>' shift, and go to state 1028 + tGREATERGREATER shift, and go to state 1029 + + SendToFile go to state 1030 + + +state 723 + + 30 Printf: tPrintf '(' StringExprVar ',' . RecursiveListOfDouble ')' tEND + 32 | tPrintf '(' StringExprVar ',' . RecursiveListOfDouble ')' SendToFile StringExprVar tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1031 + StringIndex go to state 131 + String__Index go to state 262 + + +state 724 + + 538 StringExprVar: String__Index tSCOPE . String__Index '.' tSTRING_Member_Float + 540 | String__Index tSCOPE . String__Index '.' tSTRING_Member_Float '(' FExpr ')' + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + + StringIndex go to state 131 + String__Index go to state 1032 + + +state 725 + + 536 StringExprVar: String__Index '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1033 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 726 + + 535 StringExprVar: String__Index '[' . FExpr ']' + 541 | String__Index '[' . FExpr ']' '.' tSTRING + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1034 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 727 + + 537 StringExprVar: String__Index '.' . tSTRING_Member_Float + 539 | String__Index '.' . tSTRING_Member_Float '(' FExpr ')' + + tSTRING shift, and go to state 1035 + + tSTRING_Member_Float go to state 1036 + + +state 728 + + 28 Printf: tError '(' StringExprVar ')' . tEND + + tEND shift, and go to state 1037 + + +state 729 + + 31 Printf: tError '(' StringExprVar ',' . RecursiveListOfDouble ')' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1038 + StringIndex go to state 131 + String__Index go to state 262 + + +state 730 + + 253 Command: tBoundingBox '{' FExpr ',' . FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1039 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 731 + + 242 Command: tOnelabRun '(' RecursiveListOfStringExprVar ')' . tEND + + tEND shift, and go to state 1040 + + +state 732 + + 581 RecursiveListOfStringExprVar: RecursiveListOfStringExprVar ',' . StringExprVar + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 1041 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 733 + + 73 Affectation: tDefineConstant '[' DefineConstants ']' . tEND + + tEND shift, and go to state 1042 + + +state 734 + + 109 Comma: ',' . + + $default reduce using rule 109 (Comma) + + +state 735 + + 111 DefineConstants: DefineConstants Comma . String__Index + 112 | DefineConstants Comma . String__Index tAFFECT FExpr + 114 | DefineConstants Comma . String__Index tAFFECT '{' ListOfDouble @6 FloatParameterOptionsOrNone '}' + 116 | DefineConstants Comma . String__Index LP RP tAFFECT '{' ListOfDouble @7 FloatParameterOptionsOrNone '}' + 117 | DefineConstants Comma . String__Index tAFFECT StringExpr + 119 | DefineConstants Comma . String__Index tAFFECT '{' StringExpr @8 CharParameterOptionsOrNone '}' + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + + StringIndex go to state 131 + String__Index go to state 1043 + + +state 736 + + 74 Affectation: tUndefineConstant '[' UndefineConstants ']' . tEND + + tEND shift, and go to state 1044 + + +state 737 + + 121 UndefineConstants: UndefineConstants Comma . StringExprVar + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 1045 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 738 + + 466 Append: tAppend . + 467 | tAppend . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + $default reduce using rule 466 (Append) + + FExpr go to state 1046 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 739 + + 469 AppendOrNot: '(' Append . ')' + + ')' shift, and go to state 1047 + + +state 740 + + 462 DefineStruct: tDefineStruct Struct_FullName AppendOrNot @14 . '[' FloatParameterOptionsOrNone_NoComma ']' + + '[' shift, and go to state 1048 + + +state 741 + + 464 Struct_FullName: String__Index tSCOPE String__Index . + + $default reduce using rule 464 (Struct_FullName) + + +state 742 + + 76 Affectation: tSetNumber LP StringExpr ',' . FExpr RP tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1049 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 743 + + 77 Affectation: tSetString LP String__Index ',' . StringExpr RP tEND + + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + + StringExpr go to state 1050 + + +state 744 + + 159 Shape: tPoint '(' FExpr ')' . tAFFECT VExpr tEND + + tAFFECT shift, and go to state 1051 + + +state 745 + + 373 FExpr: FExpr '*' . FExpr + 490 FExpr_Multi: FExpr '*' . FExpr_Multi + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 851 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 852 + StringIndex go to state 131 + String__Index go to state 262 + + +state 746 + + 342 Constraints: tPoint '{' RecursiveListOfDouble '}' . tIn tSurface '{' FExpr '}' tEND + 344 | tPoint '{' RecursiveListOfDouble '}' . tIn tVolume '{' FExpr '}' tEND + + tIn shift, and go to state 1052 + + +state 747 + + 523 RecursiveListOfDouble: RecursiveListOfDouble ',' . FExpr + 524 | RecursiveListOfDouble ',' . FExpr_Multi + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 1053 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 1054 + StringIndex go to state 131 + String__Index go to state 262 + + +state 748 + + 162 Shape: tCircle '(' FExpr ')' . tAFFECT ListOfDouble CircleOptions tEND + + tAFFECT shift, and go to state 1055 + + +state 749 + + 163 Shape: tEllipse '(' FExpr ')' . tAFFECT ListOfDouble CircleOptions tEND + + tAFFECT shift, and go to state 1056 + + +state 750 + + 169 Shape: tLine tSTRING '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1057 + + +state 751 + + 160 Shape: tLine '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1058 + + +state 752 + + 343 Constraints: tLine '{' RecursiveListOfDouble '}' . tIn tSurface '{' FExpr '}' tEND + 345 | tLine '{' RecursiveListOfDouble '}' . tIn tVolume '{' FExpr '}' tEND + + tIn shift, and go to state 1059 + + +state 753 + + 176 Shape: tSphere '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1060 + + +state 754 + + 177 Shape: tPolarSphere '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1061 + + +state 755 + + 188 Shape: tSurface tSTRING '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1062 + + +state 756 + + 171 Shape: tSurface '(' FExpr ')' . tAFFECT ListOfDouble InSphereCenter tEND + + tAFFECT shift, and go to state 1063 + + +state 757 + + 346 Constraints: tSurface '{' RecursiveListOfDouble '}' . tIn tVolume '{' FExpr '}' tEND + + tIn shift, and go to state 1064 + + +state 758 + + 161 Shape: tSpline '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1065 + + +state 759 + + 189 Shape: tVolume '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1066 + + +state 760 + + 178 Shape: tBlock '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1067 + + +state 761 + + 182 Shape: tCylinder '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1068 + + +state 762 + + 183 Shape: tCone '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1069 + + +state 763 + + 179 Shape: tTorus '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1070 + + +state 764 + + 314 Boolean: tShapeFromFile '(' StringExprVar ')' . + + $default reduce using rule 314 (Boolean) + + +state 765 + + 180 Shape: tRectangle '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1071 + + +state 766 + + 181 Shape: tDisk '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1072 + + +state 767 + + 168 Shape: tWire '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1073 + + +state 768 + + 326 Constraints: tCharacteristic tLength ListOfDouble tAFFECT . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1074 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 769 + + 175 Shape: tParametric tSurface '(' FExpr . ')' tAFFECT tBIGSTR tBIGSTR tBIGSTR tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1075 + + +state 770 + + 259 Command: tAdaptMesh '{' RecursiveListOfDouble '}' . '{' RecursiveListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' FExpr ',' FExpr '}' tEND + + '{' shift, and go to state 1076 + + +state 771 + + 349 Constraints: tRelocateMesh tPoint ListOfDoubleOrAll tEND . + + $default reduce using rule 349 (Constraints) + + +state 772 + + 350 Constraints: tRelocateMesh tLine ListOfDoubleOrAll tEND . + + $default reduce using rule 350 (Constraints) + + +state 773 + + 351 Constraints: tRelocateMesh tSurface ListOfDoubleOrAll tEND . + + $default reduce using rule 351 (Constraints) + + +state 774 + + 8 GeoFormatItem: tSetFactory '(' StringExprVar ')' . tEND + + tEND shift, and go to state 1077 + + +state 775 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 390 | tExp LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1078 + + +state 776 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 391 | tLog LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1079 + + +state 777 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 392 | tLog10 LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1080 + + +state 778 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 393 | tSqrt LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1081 + + +state 779 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 394 | tSin LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1082 + + +state 780 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 395 | tAsin LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1083 + + +state 781 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 396 | tCos LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1084 + + +state 782 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 397 | tAcos LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1085 + + +state 783 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 398 | tTan LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1086 + + +state 784 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 412 | tRand LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1087 + + +state 785 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 399 | tAtan LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1088 + + +state 786 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 400 | tAtan2 LP FExpr . ',' FExpr RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1089 + + +state 787 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 401 | tSinh LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1090 + + +state 788 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 402 | tCosh LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1091 + + +state 789 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 403 | tTanh LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1092 + + +state 790 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 404 | tFabs LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1093 + + +state 791 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 405 | tAbs LP FExpr . RP + 490 FExpr_Multi: FExpr . '*' FExpr_Multi + 491 | FExpr . tDOTS FExpr + 492 | FExpr . tDOTS FExpr tDOTS FExpr + + tDOTS shift, and go to state 531 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 745 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1094 + + +state 792 + + 520 FExpr_Multi: tAbs LP FExpr_Multi . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1095 + + +state 793 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 406 | tFloor LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1096 + + +state 794 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 407 | tCeil LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1097 + + +state 795 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 408 | tRound LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1098 + + +state 796 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 409 | tFmod LP FExpr . ',' FExpr RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1099 + + +state 797 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 410 | tModulo LP FExpr . ',' FExpr RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1100 + + +state 798 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 411 | tHypot LP FExpr . ',' FExpr RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1101 + + +state 799 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 490 FExpr_Multi: FExpr . '*' FExpr_Multi + 491 | FExpr . tDOTS FExpr + 492 | FExpr . tDOTS FExpr tDOTS FExpr + + tDOTS shift, and go to state 531 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 745 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 800 + + 512 FExpr_Multi: tList '(' FExpr_Multi . ')' + + ')' shift, and go to state 1102 + + +state 801 + + 511 FExpr_Multi: tList '[' FExpr_Multi . ']' + + ']' shift, and go to state 1103 + + +state 802 + + 441 FExpr_Single: String__Index . NumericIncrement + 442 | String__Index . '[' FExpr ']' NumericIncrement + 443 | String__Index . '(' FExpr ')' NumericIncrement + 444 | String__Index . '.' tSTRING_Member_Float + 445 | String__Index . tSCOPE String__Index '.' tSTRING_Member_Float + 446 | String__Index . '.' tSTRING_Member_Float '(' FExpr ')' + 447 | String__Index . tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' + 448 | String__Index . '[' FExpr ']' '.' tSTRING + 449 | String__Index . '.' tSTRING NumericIncrement + 450 | String__Index . '[' FExpr ']' '.' tSTRING NumericIncrement + 463 Struct_FullName: String__Index . + 464 | String__Index . tSCOPE String__Index + 509 FExpr_Multi: String__Index . LP RP + 510 | tList '[' String__Index . ']' + 514 | String__Index . LP '{' RecursiveListOfDouble '}' RP + + tSCOPE shift, and go to state 553 + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + '(' shift, and go to state 554 + '[' shift, and go to state 555 + ']' shift, and go to state 1104 + '.' shift, and go to state 556 + + '(' [reduce using rule 463 (Struct_FullName)] + '[' [reduce using rule 463 (Struct_FullName)] + $default reduce using rule 463 (Struct_FullName) + + NumericIncrement go to state 557 + LP go to state 558 + + +state 803 + + 513 FExpr_Multi: tList LP '{' . RecursiveListOfDouble '}' RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1105 + StringIndex go to state 131 + String__Index go to state 262 + + +state 804 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 515 FExpr_Multi: tLinSpace LP FExpr . ',' FExpr ',' FExpr RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1106 + + +state 805 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 516 FExpr_Multi: tLogSpace LP FExpr . ',' FExpr ',' FExpr RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1107 + + +state 806 + + 517 FExpr_Multi: tListFromFile LP StringExprVar . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1108 + + +state 807 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 518 FExpr_Multi: tCatenary LP FExpr . ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1109 + + +state 808 + + 454 FExpr_Single: tStrLen LP StringExprVar . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1110 + + +state 809 + + 452 FExpr_Single: tFind '(' ListOfDouble . ',' ListOfDouble ')' + + ',' shift, and go to state 1111 + + +state 810 + + 453 FExpr_Single: tStrFind LP StringExprVar . ',' StringExprVar RP + + ',' shift, and go to state 1112 + + +state 811 + + 455 FExpr_Single: tStrCmp LP StringExprVar . ',' StringExprVar RP + + ',' shift, and go to state 1113 + + +state 812 + + 456 FExpr_Single: tTextAttributes '(' RecursiveListOfStringExprVar . ')' + 581 RecursiveListOfStringExprVar: RecursiveListOfStringExprVar . ',' StringExprVar + + ')' shift, and go to state 1114 + ',' shift, and go to state 732 + + +state 813 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 425 FExpr_Single: tDefineNumber LP FExpr . @13 FloatParameterOptionsOrNone RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 424 (@13) + + @13 go to state 1115 + + +state 814 + + 440 FExpr_Single: tDimNameSpace LP RP . + + $default reduce using rule 440 (FExpr_Single) + + +state 815 + + 439 FExpr_Single: tDimNameSpace LP String__Index . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1116 + + +state 816 + + 502 FExpr_Multi: tPoint tIn tBoundingBox . '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + '{' shift, and go to state 1117 + + +state 817 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 493 FExpr_Multi: tPoint '{' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1118 + + +state 818 + + 503 FExpr_Multi: tLine tIn tBoundingBox . '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + '{' shift, and go to state 1119 + + +state 819 + + 504 FExpr_Multi: tSurface tIn tBoundingBox . '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + '{' shift, and go to state 1120 + + +state 820 + + 505 FExpr_Multi: tVolume tIn tBoundingBox . '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + '{' shift, and go to state 1121 + + +state 821 + + 498 FExpr_Multi: tPhysical tPoint ListOfDoubleOrAll . + + $default reduce using rule 498 (FExpr_Multi) + + +state 822 + + 499 FExpr_Multi: tPhysical tLine ListOfDoubleOrAll . + + $default reduce using rule 499 (FExpr_Multi) + + +state 823 + + 500 FExpr_Multi: tPhysical tSurface ListOfDoubleOrAll . + + $default reduce using rule 500 (FExpr_Multi) + + +state 824 + + 501 FExpr_Multi: tPhysical tVolume ListOfDoubleOrAll . + + $default reduce using rule 501 (FExpr_Multi) + + +state 825 + + 451 FExpr_Single: tGetValue '(' StringExprVar . ',' FExpr ')' + + ',' shift, and go to state 1122 + + +state 826 + + 427 FExpr_Single: tGetNumber LP StringExprVar . RP + 428 | tGetNumber LP StringExprVar . ',' FExpr RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + ',' shift, and go to state 1123 + + RP go to state 1124 + + +state 827 + + 519 FExpr_Multi: tUnique LP FExpr_Multi . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1125 + + +state 828 + + 432 FExpr_Single: tExists '(' Struct_FullName . ')' + 433 | tExists '(' Struct_FullName . '.' tSTRING_Member_Float ')' + + ')' shift, and go to state 1126 + '.' shift, and go to state 1127 + + +state 829 + + 436 FExpr_Single: tFileExists '(' StringExpr . ')' + + ')' shift, and go to state 1128 + + +state 830 + + 434 FExpr_Single: tGetForced '(' Struct_FullName . GetForced_Default ')' + 435 | tGetForced '(' Struct_FullName . '.' tSTRING_Member_Float GetForced_Default ')' + + '.' shift, and go to state 1129 + ',' shift, and go to state 1130 + + $default reduce using rule 457 (GetForced_Default) + + GetForced_Default go to state 1131 + + +state 831 + + 485 ListOfDouble: '-' '{' RecursiveListOfDouble . '}' + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1132 + ',' shift, and go to state 747 + + +state 832 + + 190 Shape: tThruSections '(' FExpr ')' . tAFFECT ListOfDouble tEND + 367 FExpr: '(' FExpr ')' . + + tAFFECT shift, and go to state 1133 + + $default reduce using rule 367 (FExpr) + + +state 833 + + 484 ListOfDouble: '{' RecursiveListOfDouble '}' . + + $default reduce using rule 484 (ListOfDouble) + + +state 834 + + 438 FExpr_Single: '#' Struct_FullName '.' . tSTRING_Member_Float '(' ')' + + tSTRING shift, and go to state 1035 + + tSTRING_Member_Float go to state 1134 + + +state 835 + + 437 FExpr_Single: '#' String__Index LP . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1135 + + +state 836 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 491 FExpr_Multi: FExpr tDOTS FExpr . + 492 | FExpr tDOTS FExpr . tDOTS FExpr + + tDOTS shift, and go to state 1136 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 491 (FExpr_Multi) + + +state 837 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 389 | FExpr '?' FExpr . tDOTS FExpr + + tDOTS shift, and go to state 1137 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 838 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 386 | FExpr tOR FExpr . + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 386 (FExpr) + + +state 839 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 385 | FExpr tAND FExpr . + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 385 (FExpr) + + +state 840 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 384 | FExpr tNOTEQUAL FExpr . + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 384 (FExpr) + + +state 841 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 383 | FExpr tEQUAL FExpr . + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 383 (FExpr) + + +state 842 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 379 | FExpr '<' FExpr . + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 379 (FExpr) + + +state 843 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 380 | FExpr '>' FExpr . + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 380 (FExpr) + + +state 844 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 387 | FExpr tGREATERGREATER FExpr . + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 387 (FExpr) + + +state 845 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 388 | FExpr tLESSLESS FExpr . + 389 | FExpr . '?' FExpr tDOTS FExpr + + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 388 (FExpr) + + +state 846 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 382 | FExpr tGREATEROREQUAL FExpr . + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 382 (FExpr) + + +state 847 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 381 | FExpr tLESSOREQUAL FExpr . + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 381 (FExpr) + + +state 848 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 372 | FExpr '+' FExpr . + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 372 (FExpr) + + +state 849 + + 371 FExpr: FExpr . '-' FExpr + 371 | FExpr '-' FExpr . + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 371 (FExpr) + + +state 850 + + 486 ListOfDouble: FExpr '*' '{' . RecursiveListOfDouble '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1138 + StringIndex go to state 131 + String__Index go to state 262 + + +state 851 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 373 | FExpr '*' FExpr . + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 490 FExpr_Multi: FExpr . '*' FExpr_Multi + 491 | FExpr . tDOTS FExpr + 492 | FExpr . tDOTS FExpr tDOTS FExpr + + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 373 (FExpr) + + +state 852 + + 490 FExpr_Multi: FExpr '*' FExpr_Multi . + + $default reduce using rule 490 (FExpr_Multi) + + +state 853 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 374 | FExpr '/' FExpr . + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 374 (FExpr) + + +state 854 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 377 | FExpr '%' FExpr . + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 377 (FExpr) + + +state 855 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 375 | FExpr '|' FExpr . + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '^' shift, and go to state 550 + + $default reduce using rule 375 (FExpr) + + +state 856 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 376 | FExpr '&' FExpr . + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '^' shift, and go to state 550 + + $default reduce using rule 376 (FExpr) + + +state 857 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 378 | FExpr '^' FExpr . + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '^' shift, and go to state 550 + + $default reduce using rule 378 (FExpr) + + +state 858 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 431 FExpr_Single: Struct_FullName '(' FExpr . ')' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1139 + + +state 859 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 430 FExpr_Single: Struct_FullName '[' FExpr . ']' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ']' shift, and go to state 1140 + + +state 860 + + 445 FExpr_Single: String__Index tSCOPE String__Index . '.' tSTRING_Member_Float + 447 | String__Index tSCOPE String__Index . '.' tSTRING_Member_Float '(' FExpr ')' + 464 Struct_FullName: String__Index tSCOPE String__Index . + + '.' shift, and go to state 1141 + + $default reduce using rule 464 (Struct_FullName) + + +state 861 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 443 FExpr_Single: String__Index '(' FExpr . ')' NumericIncrement + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1142 + + +state 862 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 442 FExpr_Single: String__Index '[' FExpr . ']' NumericIncrement + 448 | String__Index '[' FExpr . ']' '.' tSTRING + 450 | String__Index '[' FExpr . ']' '.' tSTRING NumericIncrement + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ']' shift, and go to state 1143 + + +state 863 + + 449 FExpr_Single: String__Index '.' tSTRING . NumericIncrement + 465 tSTRING_Member_Float: tSTRING . + + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + + $default reduce using rule 465 (tSTRING_Member_Float) + + NumericIncrement go to state 1144 + + +state 864 + + 444 FExpr_Single: String__Index '.' tSTRING_Member_Float . + 446 | String__Index '.' tSTRING_Member_Float . '(' FExpr ')' + + '(' shift, and go to state 1145 + + $default reduce using rule 444 (FExpr_Single) + + +state 865 + + 514 FExpr_Multi: String__Index LP '{' . RecursiveListOfDouble '}' RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1146 + StringIndex go to state 131 + String__Index go to state 262 + + +state 866 + + 509 FExpr_Multi: String__Index LP RP . + + $default reduce using rule 509 (FExpr_Multi) + + +state 867 + + 184 Shape: tWedge '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1147 + + +state 868 + + 289 Extrude: tFillet '{' RecursiveListOfDouble '}' . '{' RecursiveListOfDouble '}' '{' FExpr '}' + + '{' shift, and go to state 1148 + + +state 869 + + 170 Shape: tPlane tSurface '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1149 + + +state 870 + + 172 Shape: tRuled tSurface '(' FExpr . ')' tAFFECT ListOfDouble InSphereCenter tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1150 + + +state 871 + + 191 Shape: tRuled tThruSections '(' FExpr . ')' tAFFECT ListOfDouble tEND + 367 FExpr: '(' FExpr . ')' + 371 | FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1151 + + +state 872 + + 327 Constraints: tTransfinite tLine ListOfDoubleOrAll tAFFECT . FExpr TransfiniteType tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1152 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 873 + + 321 TransfiniteCorners: tAFFECT . ListOfDouble + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1153 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 874 + + 328 Constraints: tTransfinite tSurface ListOfDoubleOrAll TransfiniteCorners . TransfiniteArrangement tEND + + tSTRING shift, and go to state 1154 + + $default reduce using rule 318 (TransfiniteArrangement) + + TransfiniteArrangement go to state 1155 + + +state 875 + + 329 Constraints: tTransfinite tVolume ListOfDoubleOrAll TransfiniteCorners . tEND + + tEND shift, and go to state 1156 + + +state 876 + + 193 Shape: tPhysical tPoint '(' PhysicalId0 . ')' NumericAffectation ListOfDouble tEND + + ')' shift, and go to state 1157 + + +state 877 + + 143 PhysicalId0: FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 143 (PhysicalId0) + + +state 878 + + 144 PhysicalId0: StringExpr . + 145 | StringExpr . ',' FExpr + + ',' shift, and go to state 1158 + + $default reduce using rule 144 (PhysicalId0) + + +state 879 + + 194 Shape: tPhysical tLine '(' PhysicalId1 . ')' NumericAffectation ListOfDouble tEND + + ')' shift, and go to state 1159 + + +state 880 + + 146 PhysicalId1: FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 146 (PhysicalId1) + + +state 881 + + 147 PhysicalId1: StringExpr . + 148 | StringExpr . ',' FExpr + + ',' shift, and go to state 1160 + + $default reduce using rule 147 (PhysicalId1) + + +state 882 + + 195 Shape: tPhysical tSurface '(' PhysicalId2 . ')' NumericAffectation ListOfDouble tEND + + ')' shift, and go to state 1161 + + +state 883 + + 149 PhysicalId2: FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 149 (PhysicalId2) + + +state 884 + + 150 PhysicalId2: StringExpr . + 151 | StringExpr . ',' FExpr + + ',' shift, and go to state 1162 + + $default reduce using rule 150 (PhysicalId2) + + +state 885 + + 196 Shape: tPhysical tVolume '(' PhysicalId3 . ')' NumericAffectation ListOfDouble tEND + + ')' shift, and go to state 1163 + + +state 886 + + 152 PhysicalId3: FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 152 (PhysicalId3) + + +state 887 + + 153 PhysicalId3: StringExpr . + 154 | StringExpr . ',' FExpr + + ',' shift, and go to state 1164 + + $default reduce using rule 153 (PhysicalId3) + + +state 888 + + 167 Shape: tCompound tLine '(' FExpr . ')' tAFFECT ListOfDouble tEND + 367 FExpr: '(' FExpr . ')' + 371 | FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1165 + + +state 889 + + 353 Constraints: tCompound tLine ListOfDouble tEND . + + $default reduce using rule 353 (Constraints) + + +state 890 + + 186 Shape: tCompound tSurface '(' FExpr . ')' tAFFECT ListOfDouble tEND + 187 | tCompound tSurface '(' FExpr . ')' tAFFECT ListOfDouble tSTRING '{' RecursiveListOfListOfDouble '}' tEND + 367 FExpr: '(' FExpr . ')' + 371 | FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1166 + + +state 891 + + 354 Constraints: tCompound tSurface ListOfDouble tEND . + + $default reduce using rule 354 (Constraints) + + +state 892 + + 192 Shape: tCompound tVolume '(' FExpr . ')' tAFFECT ListOfDouble tEND + 367 FExpr: '(' FExpr . ')' + 371 | FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1167 + + +state 893 + + 355 Constraints: tCompound tVolume ListOfDouble tEND . + + $default reduce using rule 355 (Constraints) + + +state 894 + + 335 Constraints: tPeriodic tLine '{' RecursiveListOfDouble . '}' tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform tEND + 337 | tPeriodic tLine '{' RecursiveListOfDouble . '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 339 | tPeriodic tLine '{' RecursiveListOfDouble . '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1168 + ',' shift, and go to state 747 + + +state 895 + + 336 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble . '}' tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform tEND + 338 | tPeriodic tSurface '{' RecursiveListOfDouble . '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 340 | tPeriodic tSurface '{' RecursiveListOfDouble . '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1169 + ',' shift, and go to state 747 + + +state 896 + + 341 Constraints: tPeriodic tSurface FExpr '{' . RecursiveListOfDouble '}' tAFFECT FExpr '{' RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1170 + StringIndex go to state 131 + String__Index go to state 262 + + +state 897 + + 106 Affectation: tPlugin '(' tSTRING ')' . '.' tSTRING tAFFECT FExpr tEND + 107 | tPlugin '(' tSTRING ')' . '.' tSTRING tAFFECT StringExpr tEND + 246 Command: tPlugin '(' tSTRING ')' . '.' tSTRING tEND + + '.' shift, and go to state 1171 + + +state 898 + + 352 Constraints: tDegenerated tLine ListOfDouble tEND . + + $default reduce using rule 352 (Constraints) + + +state 899 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 226 Delete: tRecursive tDelete '{' ListOfShapes . '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tThickSolid shift, and go to state 70 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + '}' shift, and go to state 1172 + + Shape go to state 719 + + +state 900 + + 233 Colorify: tRecursive tColor ColorExpr '{' . ListOfShapes '}' + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 1173 + + +state 901 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 238 Visibility: tRecursive tShow '{' ListOfShapes . '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tThickSolid shift, and go to state 70 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + '}' shift, and go to state 1174 + + Shape go to state 719 + + +state 902 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 240 Visibility: tRecursive tHide '{' ListOfShapes . '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tThickSolid shift, and go to state 70 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + '}' shift, and go to state 1175 + + Shape go to state 719 + + +state 903 + + 198 Transform: tRotate '{' VExpr ',' . VExpr ',' FExpr '}' '{' MultipleShape '}' + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 1176 + VExpr_Single go to state 292 + + +state 904 + + 478 VExpr_Single: '(' FExpr ',' . FExpr ',' FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1177 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 905 + + 475 VExpr_Single: '{' FExpr ',' . FExpr ',' FExpr ',' FExpr ',' FExpr '}' + 476 | '{' FExpr ',' . FExpr ',' FExpr ',' FExpr '}' + 477 | '{' FExpr ',' . FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1178 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 906 + + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + 474 | VExpr '+' VExpr . + + $default reduce using rule 474 (VExpr) + + +state 907 + + 473 VExpr: VExpr . '-' VExpr + 473 | VExpr '-' VExpr . + 474 | VExpr . '+' VExpr + + $default reduce using rule 473 (VExpr) + + +state 908 + + 197 Transform: tTranslate VExpr '{' MultipleShape . '}' + + '}' shift, and go to state 1179 + + +state 909 + + 199 Transform: tSymmetry VExpr '{' MultipleShape . '}' + + '}' shift, and go to state 1180 + + +state 910 + + 200 Transform: tDilate '{' VExpr ',' . FExpr '}' '{' MultipleShape '}' + 201 | tDilate '{' VExpr ',' . VExpr '}' '{' MultipleShape '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 597 + '-' shift, and go to state 598 + '!' shift, and go to state 248 + '(' shift, and go to state 599 + '{' shift, and go to state 290 + '#' shift, and go to state 251 + + FExpr go to state 1181 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + VExpr go to state 1182 + VExpr_Single go to state 292 + StringIndex go to state 131 + String__Index go to state 383 + + +state 911 + + 367 FExpr: '(' FExpr . ')' + 371 | FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 478 VExpr_Single: '(' FExpr . ',' FExpr ',' FExpr ')' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 943 + ',' shift, and go to state 904 + + +state 912 + + 286 Extrude: tExtrude '{' ListOfShapes '}' . tUsing tWire '{' FExpr '}' + + tUsing shift, and go to state 1183 + + +state 913 + + 285 Extrude: tExtrude '{' ListOfShapes @12 . ExtrudeParameters '}' + + tUsing shift, and go to state 1184 + tRecombine shift, and go to state 1185 + tLayers shift, and go to state 1186 + tScaleLast shift, and go to state 1187 + tHole shift, and go to state 1188 + tQuadTriAddVerts shift, and go to state 1189 + tQuadTriNoNewVerts shift, and go to state 1190 + + ExtrudeParameters go to state 1191 + ExtrudeParameter go to state 1192 + + +state 914 + + 276 Extrude: tExtrude '{' VExpr ',' . VExpr ',' FExpr '}' '{' ListOfShapes '}' + 277 | tExtrude '{' VExpr ',' . VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes '}' + 281 | tExtrude '{' VExpr ',' . VExpr ',' FExpr '}' '{' ListOfShapes @10 ExtrudeParameters '}' + 283 | tExtrude '{' VExpr ',' . VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes @11 ExtrudeParameters '}' + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 1193 + VExpr_Single go to state 292 + + +state 915 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 275 Extrude: tExtrude VExpr '{' ListOfShapes . '}' + 279 | tExtrude VExpr '{' ListOfShapes . @9 ExtrudeParameters '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tThickSolid shift, and go to state 70 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + '}' shift, and go to state 1194 + + $default reduce using rule 278 (@9) + + Shape go to state 719 + @9 go to state 1195 + + +state 916 + + 222 LevelSet: tLevelset tSTRING '(' FExpr . ')' tAFFECT ListOfDouble tEND + 223 | tLevelset tSTRING '(' FExpr . ')' tAFFECT tBIGSTR tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1196 + + +state 917 + + 224 LevelSet: tLevelset tSTRING '{' FExpr . '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1197 + + +state 918 + + 214 LevelSet: tLevelset tPoint '(' FExpr . ')' tAFFECT '{' RecursiveListOfListOfDouble '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1198 + + +state 919 + + 217 LevelSet: tLevelset tSphere '(' FExpr . ')' tAFFECT '{' VExpr ',' RecursiveListOfDouble '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1199 + + +state 920 + + 218 LevelSet: tLevelset tCylinder '(' FExpr . ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1200 + + +state 921 + + 219 LevelSet: tLevelset tCone '(' FExpr . ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1201 + + +state 922 + + 220 LevelSet: tLevelset tEllipsoid '(' FExpr . ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1202 + + +state 923 + + 221 LevelSet: tLevelset tQuadric '(' FExpr . ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1203 + + +state 924 + + 213 LevelSet: tLevelset tPlane '(' FExpr . ')' tAFFECT ListOfDouble tEND + 215 | tLevelset tPlane '(' FExpr . ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 216 | tLevelset tPlane '(' FExpr . ')' tAFFECT '{' VExpr ',' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1204 + + +state 925 + + 185 Shape: tThickSolid '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1205 + + +state 926 + + 323 RecombineAngle: tAFFECT . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1206 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 927 + + 332 Constraints: tRecombine tSurface ListOfDoubleOrAll RecombineAngle . tEND + + tEND shift, and go to state 1207 + + +state 928 + + 333 Constraints: tRecombine tVolume ListOfDoubleOrAll tEND . + + $default reduce using rule 333 (Constraints) + + +state 929 + + 334 Constraints: tSmoother tSurface ListOfDoubleOrAll tAFFECT . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1208 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 930 + + 204 Transform: tSplit tLine '(' FExpr . ')' '{' RecursiveListOfDouble '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1209 + + +state 931 + + 230 Delete: tDelete tSTRING tSTRING tEND . + + $default reduce using rule 230 (Delete) + + +state 932 + + 228 Delete: tDelete tSTRING '[' FExpr . ']' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ']' shift, and go to state 1210 + + +state 933 + + 227 Delete: tDelete tField '[' FExpr . ']' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ']' shift, and go to state 1211 + + +state 934 + + 225 Delete: tDelete '{' ListOfShapes '}' . + + $default reduce using rule 225 (Delete) + + +state 935 + + 358 Coherence: tCoherence tPoint '{' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1212 + ',' shift, and go to state 747 + + +state 936 + + 203 Transform: tIntersect tLine '{' RecursiveListOfDouble . '}' tSurface '{' FExpr '}' + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1213 + ',' shift, and go to state 747 + + +state 937 + + 331 Constraints: tMeshAlgorithm tSurface '{' RecursiveListOfDouble . '}' tAFFECT FExpr tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1214 + ',' shift, and go to state 747 + + +state 938 + + 348 Constraints: tReverse tLine ListOfDoubleOrAll tEND . + + $default reduce using rule 348 (Constraints) + + +state 939 + + 347 Constraints: tReverse tSurface ListOfDoubleOrAll tEND . + + $default reduce using rule 347 (Constraints) + + +state 940 + + 34 View: tAlias tSTRING '[' FExpr . ']' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ']' shift, and go to state 1215 + + +state 941 + + 35 View: tAliasWithOptions tSTRING '[' FExpr . ']' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ']' shift, and go to state 1216 + + +state 942 + + 36 View: tCopyOptions tSTRING '[' FExpr . ',' FExpr ']' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1217 + + +state 943 + + 367 FExpr: '(' FExpr ')' . + + $default reduce using rule 367 (FExpr) + + +state 944 + + 164 Shape: tBSpline '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1218 + + +state 945 + + 165 Shape: tBezier '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1219 + + +state 946 + + 166 Shape: tNurbs '(' FExpr ')' . tAFFECT ListOfDouble tNurbsKnots ListOfDouble tNurbsOrder FExpr tEND + + tAFFECT shift, and go to state 1220 + + +state 947 + + 528 ColorExpr: tSTRING '.' tColor . '.' tSTRING + + '.' shift, and go to state 1221 + + +state 948 + + 525 ColorExpr: '{' FExpr ',' . FExpr ',' FExpr ',' FExpr '}' + 526 | '{' FExpr ',' . FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1222 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 949 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 232 Colorify: tColor ColorExpr '{' ListOfShapes . '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tThickSolid shift, and go to state 70 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + '}' shift, and go to state 1223 + + Shape go to state 719 + + +state 950 + + 263 Loop: tFor tSTRING tIn '{' . FExpr tDOTS FExpr '}' + 264 | tFor tSTRING tIn '{' . FExpr tDOTS FExpr tDOTS FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1224 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 951 + + 261 Loop: tFor '(' FExpr tDOTS . FExpr ')' + 262 | tFor '(' FExpr tDOTS . FExpr tDOTS FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1225 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 952 + + 271 Loop: tIf '(' FExpr ')' . + + $default reduce using rule 271 (Loop) + + +state 953 + + 272 Loop: tElseIf '(' FExpr ')' . + + $default reduce using rule 272 (Loop) + + +state 954 + + 101 Affectation: tField '[' FExpr ']' . tAFFECT tSTRING tEND + 102 | tField '[' FExpr ']' . '.' tSTRING tAFFECT FExpr tEND + 103 | tField '[' FExpr ']' . '.' tSTRING tAFFECT StringExpr tEND + 104 | tField '[' FExpr ']' . '.' tSTRING tAFFECT '{' RecursiveListOfDouble '}' tEND + 105 | tField '[' FExpr ']' . '.' tSTRING tEND + + tAFFECT shift, and go to state 1226 + '.' shift, and go to state 1227 + + +state 955 + + 562 StringExpr: tStr LP RecursiveListOfStringExprVar . RP + 581 RecursiveListOfStringExprVar: RecursiveListOfStringExprVar . ',' StringExprVar + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + ',' shift, and go to state 732 + + RP go to state 1228 + + +state 956 + + 569 StringExpr: tSprintf LP StringExprVar . RP + 570 | tSprintf LP StringExprVar . ',' RecursiveListOfDouble RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + ',' shift, and go to state 1229 + + RP go to state 1230 + + +state 957 + + 558 StringExpr: tStrCat LP RecursiveListOfStringExprVar . RP + 581 RecursiveListOfStringExprVar: RecursiveListOfStringExprVar . ',' StringExprVar + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + ',' shift, and go to state 732 + + RP go to state 1231 + + +state 958 + + 559 StringExpr: tStrPrefix '(' StringExprVar . ')' + + ')' shift, and go to state 1232 + + +state 959 + + 560 StringExpr: tStrRelative '(' StringExprVar . ')' + + ')' shift, and go to state 1233 + + +state 960 + + 561 StringExpr: tStrReplace '(' StringExprVar . ',' StringExprVar ',' StringExprVar ')' + + ',' shift, and go to state 1234 + + +state 961 + + 574 StringExpr: tAbsolutePath LP StringExprVar . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1235 + + +state 962 + + 573 StringExpr: tDirName LP StringExprVar . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1236 + + +state 963 + + 567 StringExpr: tStrSub LP StringExprVar . ',' FExpr ',' FExpr RP + 568 | tStrSub LP StringExprVar . ',' FExpr RP + + ',' shift, and go to state 1237 + + +state 964 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 566 StringExpr: tStrChoice LP FExpr . ',' StringExprVar ',' StringExprVar RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1238 + + +state 965 + + 563 StringExpr: tUpperCase LP StringExprVar . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1239 + + +state 966 + + 564 StringExpr: tLowerCase LP StringExprVar . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1240 + + +state 967 + + 565 StringExpr: tLowerCaseIn LP StringExprVar . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1241 + + +state 968 + + 571 StringExpr: tFixRelativePath LP StringExprVar . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1242 + + +state 969 + + 578 NameStruct_Arg: '#' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1243 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 970 + + 577 StringExpr: tNameStruct LP NameStruct_Arg . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1244 + + +state 971 + + 579 NameStruct_Arg: String__Index . tSCOPE '#' FExpr + + tSCOPE shift, and go to state 1245 + + +state 972 + + 576 StringExpr: tDefineString LP StringExpr . @15 CharParameterOptionsOrNone RP + + $default reduce using rule 575 (@15) + + @15 go to state 1246 + + +state 973 + + 553 StringExpr: tGetStringValue '(' StringExprVar . ',' StringExprVar ')' + + ',' shift, and go to state 1247 + + +state 974 + + 552 StringExpr: tGetEnv '(' StringExprVar . ')' + + ')' shift, and go to state 1248 + + +state 975 + + 554 StringExpr: tGetString LP StringExprVar . RP + 555 | tGetString LP StringExprVar . ',' StringExprVar RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + ',' shift, and go to state 1249 + + RP go to state 1250 + + +state 976 + + 556 StringExpr: tGetForcedStr '(' Struct_FullName . GetForcedStr_Default ')' + 557 | tGetForcedStr '(' Struct_FullName . '.' tSTRING_Member_Float GetForcedStr_Default ')' + + '.' shift, and go to state 1251 + ',' shift, and go to state 1252 + + $default reduce using rule 459 (GetForcedStr_Default) + + GetForcedStr_Default go to state 1253 + + +state 977 + + 547 StringExpr: tNameToString '[' String__Index . ']' + + ']' shift, and go to state 1254 + + +state 978 + + 260 Slide: tSlide '(' '{' RecursiveListOfDouble . '}' ',' StringExpr ',' StringExpr ')' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1255 + ',' shift, and go to state 747 + + +state 979 + + 237 Visibility: tShow '{' ListOfShapes '}' . + + $default reduce using rule 237 (Visibility) + + +state 980 + + 239 Visibility: tHide '{' ListOfShapes '}' . + + $default reduce using rule 239 (Visibility) + + +state 981 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 405 | tAbs LP FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1094 + + +state 982 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 373 | FExpr '*' FExpr . + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 373 (FExpr) + + +state 983 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 234 SetPartition: tSetPartition FExpr '{' ListOfShapes . '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tThickSolid shift, and go to state 70 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + '}' shift, and go to state 1256 + + Shape go to state 719 + + +state 984 + + 584 StringIndex: tStringToName '[' StringExprVar ']' . '~' '{' FExpr '}' + 587 String__Index: tStringToName '[' StringExprVar ']' . + + '~' shift, and go to state 1257 + + $default reduce using rule 587 (String__Index) + + +state 985 + + 315 BooleanShape: BooleanOperator '(' FExpr ')' . tAFFECT '{' ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption '}' tEND + + tAFFECT shift, and go to state 1258 + + +state 986 + + 310 BooleanOption: tRecursive . tDelete tEND + 312 | tRecursive . tDelete FExpr tEND + + tDelete shift, and go to state 1259 + + +state 987 + + 309 BooleanOption: tDelete . tEND + 311 | tDelete . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tEND shift, and go to state 1260 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1261 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 988 + + 313 Boolean: BooleanOperator '{' ListOfShapes BooleanOption . '}' '{' ListOfShapes BooleanOption '}' + + '}' shift, and go to state 1262 + + +state 989 + + 365 Homology: HomologyCommand '(' ListOfDouble ')' . '{' ListOfDouble ',' ListOfDouble '}' tEND + + '{' shift, and go to state 1263 + + +state 990 + + 363 Homology: HomologyCommand '{' ListOfDouble '}' . tEND + + tEND shift, and go to state 1264 + + +state 991 + + 364 Homology: HomologyCommand '{' ListOfDouble ',' . ListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1265 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 992 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 583 StringIndex: StringIndex '~' '{' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1266 + + +state 993 + + 86 Affectation: String__Index tAFFECT StringExpr tEND . + + $default reduce using rule 86 (Affectation) + + +state 994 + + 542 StringExprVar: tPhysical tPoint '{' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1267 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 995 + + 543 StringExprVar: tPhysical tLine '{' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1268 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 996 + + 544 StringExprVar: tPhysical tSurface '{' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1269 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 997 + + 545 StringExprVar: tPhysical tVolume '{' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1270 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 998 + + 100 Affectation: String__Index tField tAFFECT FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 1271 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 999 + + 84 Affectation: String__Index '(' FExpr ')' . NumericAffectation FExpr tEND + 85 | String__Index '(' FExpr ')' . NumericIncrement tEND + 367 FExpr: '(' FExpr ')' . + + tAFFECT shift, and go to state 1272 + tAFFECTDIVIDE shift, and go to state 395 + tAFFECTTIMES shift, and go to state 396 + tAFFECTMINUS shift, and go to state 397 + tAFFECTPLUS shift, and go to state 398 + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + + $default reduce using rule 367 (FExpr) + + NumericAffectation go to state 1273 + NumericIncrement go to state 1274 + + +state 1000 + + 82 Affectation: String__Index '[' FExpr ']' . NumericAffectation FExpr tEND + 83 | String__Index '[' FExpr ']' . NumericIncrement tEND + 91 | String__Index '[' FExpr ']' . '.' tSTRING tAFFECT StringExpr tEND + 93 | String__Index '[' FExpr ']' . '.' tSTRING NumericAffectation FExpr tEND + 95 | String__Index '[' FExpr ']' . '.' tSTRING NumericIncrement tEND + 97 | String__Index '[' FExpr ']' . '.' tColor '.' tSTRING tAFFECT ColorExpr tEND + 99 | String__Index '[' FExpr ']' . '.' tColorTable tAFFECT ListOfColor tEND + + tAFFECT shift, and go to state 1272 + tAFFECTDIVIDE shift, and go to state 395 + tAFFECTTIMES shift, and go to state 396 + tAFFECTMINUS shift, and go to state 397 + tAFFECTPLUS shift, and go to state 398 + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + '.' shift, and go to state 1275 + + NumericAffectation go to state 1276 + NumericIncrement go to state 1277 + + +state 1001 + + 62 NumericAffectation: tAFFECT . + 90 Affectation: String__Index '.' tSTRING tAFFECT . StringExpr tEND + + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + + $default reduce using rule 62 (NumericAffectation) + + StringExpr go to state 1278 + + +state 1002 + + 92 Affectation: String__Index '.' tSTRING NumericAffectation . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1279 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1003 + + 94 Affectation: String__Index '.' tSTRING NumericIncrement . tEND + + tEND shift, and go to state 1280 + + +state 1004 + + 96 Affectation: String__Index '.' tColor '.' . tSTRING tAFFECT ColorExpr tEND + + tSTRING shift, and go to state 1281 + + +state 1005 + + 98 Affectation: String__Index '.' tColorTable tAFFECT . ListOfColor tEND + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + '{' shift, and go to state 1282 + + ListOfColor go to state 1283 + StringIndex go to state 131 + String__Index go to state 1284 + + +state 1006 + + 78 Affectation: String__Index NumericAffectation ListOfDouble tEND . + + $default reduce using rule 78 (Affectation) + + +state 1007 + + 81 Affectation: String__Index LP '{' RecursiveListOfDouble . '}' RP NumericAffectation ListOfDouble tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1285 + ',' shift, and go to state 747 + + +state 1008 + + 62 NumericAffectation: tAFFECT . + 87 Affectation: String__Index LP RP tAFFECT . tStr LP RP tEND + 88 | String__Index LP RP tAFFECT . tStr LP RecursiveListOfStringExprVar RP tEND + + tStr shift, and go to state 1286 + + $default reduce using rule 62 (NumericAffectation) + + +state 1009 + + 63 NumericAffectation: tAFFECTPLUS . + 89 Affectation: String__Index LP RP tAFFECTPLUS . tStr LP RecursiveListOfStringExprVar RP tEND + + tStr shift, and go to state 1287 + + $default reduce using rule 63 (NumericAffectation) + + +state 1010 + + 80 Affectation: String__Index LP RP NumericAffectation . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1288 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1011 + + 33 View: String__Index StringExprVar '{' Views . '}' tEND + 38 Views: Views . Element + 39 | Views . Text2D + 40 | Views . Text3D + 41 | Views . InterpolationMatrix + 42 | Views . Time + + tSTRING shift, and go to state 1289 + tText2D shift, and go to state 1290 + tText3D shift, and go to state 1291 + tInterpolationScheme shift, and go to state 1292 + tTime shift, and go to state 1293 + '}' shift, and go to state 1294 + + Element go to state 1295 + Text2D go to state 1296 + Text3D go to state 1297 + InterpolationMatrix go to state 1298 + Time go to state 1299 + + +state 1012 + + 445 FExpr_Single: String__Index tSCOPE String__Index . '.' tSTRING_Member_Float + 447 | String__Index tSCOPE String__Index . '.' tSTRING_Member_Float '(' FExpr ')' + 464 Struct_FullName: String__Index tSCOPE String__Index . + 538 StringExprVar: String__Index tSCOPE String__Index . '.' tSTRING_Member_Float + 540 | String__Index tSCOPE String__Index . '.' tSTRING_Member_Float '(' FExpr ')' + + '.' shift, and go to state 1300 + + $default reduce using rule 464 (Struct_FullName) + + +state 1013 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 443 FExpr_Single: String__Index '(' FExpr . ')' NumericIncrement + 536 StringExprVar: String__Index '(' FExpr . ')' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1301 + + +state 1014 + + 243 Command: String__Index String__Index '[' FExpr . ']' StringExprVar tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 442 FExpr_Single: String__Index '[' FExpr . ']' NumericIncrement + 448 | String__Index '[' FExpr . ']' '.' tSTRING + 450 | String__Index '[' FExpr . ']' '.' tSTRING NumericIncrement + 535 StringExprVar: String__Index '[' FExpr . ']' + 541 | String__Index '[' FExpr . ']' '.' tSTRING + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ']' shift, and go to state 1302 + + +state 1015 + + 444 FExpr_Single: String__Index '.' tSTRING_Member_Float . + 446 | String__Index '.' tSTRING_Member_Float . '(' FExpr ')' + 537 StringExprVar: String__Index '.' tSTRING_Member_Float . + 539 | String__Index '.' tSTRING_Member_Float . '(' FExpr ')' + + '(' shift, and go to state 1303 + + '{' reduce using rule 537 (StringExprVar) + $default reduce using rule 444 (FExpr_Single) + + +state 1016 + + 244 Command: String__Index String__Index String__Index '[' . FExpr ']' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1304 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1017 + + 209 ListOfShapes: ListOfShapes tPoint '{' . RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1305 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1018 + + 210 ListOfShapes: ListOfShapes tLine '{' . RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1306 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1019 + + 211 ListOfShapes: ListOfShapes tSurface '{' . RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1307 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1020 + + 212 ListOfShapes: ListOfShapes tVolume '{' . RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1308 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1021 + + 190 Shape: tThruSections '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1309 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1022 + + 191 Shape: tRuled tThruSections . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 1310 + + +state 1023 + + 167 Shape: tCompound tLine . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 1311 + + +state 1024 + + 186 Shape: tCompound tSurface . '(' FExpr ')' tAFFECT ListOfDouble tEND + 187 | tCompound tSurface . '(' FExpr ')' tAFFECT ListOfDouble tSTRING '{' RecursiveListOfListOfDouble '}' tEND + + '(' shift, and go to state 1312 + + +state 1025 + + 192 Shape: tCompound tVolume . '(' FExpr ')' tAFFECT ListOfDouble tEND + + '(' shift, and go to state 1313 + + +state 1026 + + 582 StringIndex: tSTRING '~' '{' FExpr '}' . + + $default reduce using rule 582 (StringIndex) + + +state 1027 + + 27 Printf: tPrintf '(' StringExprVar ')' tEND . + + $default reduce using rule 27 (Printf) + + +state 1028 + + 25 SendToFile: '>' . + + $default reduce using rule 25 (SendToFile) + + +state 1029 + + 26 SendToFile: tGREATERGREATER . + + $default reduce using rule 26 (SendToFile) + + +state 1030 + + 29 Printf: tPrintf '(' StringExprVar ')' SendToFile . StringExprVar tEND + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 1314 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1031 + + 30 Printf: tPrintf '(' StringExprVar ',' RecursiveListOfDouble . ')' tEND + 32 | tPrintf '(' StringExprVar ',' RecursiveListOfDouble . ')' SendToFile StringExprVar tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + ')' shift, and go to state 1315 + ',' shift, and go to state 747 + + +state 1032 + + 538 StringExprVar: String__Index tSCOPE String__Index . '.' tSTRING_Member_Float + 540 | String__Index tSCOPE String__Index . '.' tSTRING_Member_Float '(' FExpr ')' + + '.' shift, and go to state 1316 + + +state 1033 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 536 StringExprVar: String__Index '(' FExpr . ')' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1317 + + +state 1034 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 535 StringExprVar: String__Index '[' FExpr . ']' + 541 | String__Index '[' FExpr . ']' '.' tSTRING + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ']' shift, and go to state 1318 + + +state 1035 + + 465 tSTRING_Member_Float: tSTRING . + + $default reduce using rule 465 (tSTRING_Member_Float) + + +state 1036 + + 537 StringExprVar: String__Index '.' tSTRING_Member_Float . + 539 | String__Index '.' tSTRING_Member_Float . '(' FExpr ')' + + '(' shift, and go to state 1319 + + $default reduce using rule 537 (StringExprVar) + + +state 1037 + + 28 Printf: tError '(' StringExprVar ')' tEND . + + $default reduce using rule 28 (Printf) + + +state 1038 + + 31 Printf: tError '(' StringExprVar ',' RecursiveListOfDouble . ')' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + ')' shift, and go to state 1320 + ',' shift, and go to state 747 + + +state 1039 + + 253 Command: tBoundingBox '{' FExpr ',' FExpr . ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1321 + + +state 1040 + + 242 Command: tOnelabRun '(' RecursiveListOfStringExprVar ')' tEND . + + $default reduce using rule 242 (Command) + + +state 1041 + + 581 RecursiveListOfStringExprVar: RecursiveListOfStringExprVar ',' StringExprVar . + + $default reduce using rule 581 (RecursiveListOfStringExprVar) + + +state 1042 + + 73 Affectation: tDefineConstant '[' DefineConstants ']' tEND . + + $default reduce using rule 73 (Affectation) + + +state 1043 + + 111 DefineConstants: DefineConstants Comma String__Index . + 112 | DefineConstants Comma String__Index . tAFFECT FExpr + 114 | DefineConstants Comma String__Index . tAFFECT '{' ListOfDouble @6 FloatParameterOptionsOrNone '}' + 116 | DefineConstants Comma String__Index . LP RP tAFFECT '{' ListOfDouble @7 FloatParameterOptionsOrNone '}' + 117 | DefineConstants Comma String__Index . tAFFECT StringExpr + 119 | DefineConstants Comma String__Index . tAFFECT '{' StringExpr @8 CharParameterOptionsOrNone '}' + + tAFFECT shift, and go to state 1322 + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + $default reduce using rule 111 (DefineConstants) + + LP go to state 1323 + + +state 1044 + + 74 Affectation: tUndefineConstant '[' UndefineConstants ']' tEND . + + $default reduce using rule 74 (Affectation) + + +state 1045 + + 121 UndefineConstants: UndefineConstants Comma StringExprVar . + + $default reduce using rule 121 (UndefineConstants) + + +state 1046 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 467 Append: tAppend FExpr . + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 467 (Append) + + +state 1047 + + 469 AppendOrNot: '(' Append ')' . + + $default reduce using rule 469 (AppendOrNot) + + +state 1048 + + 462 DefineStruct: tDefineStruct Struct_FullName AppendOrNot @14 '[' . FloatParameterOptionsOrNone_NoComma ']' + + tSTRING shift, and go to state 1324 + + $default reduce using rule 127 (FloatParameterOptionsOrNone_NoComma) + + FloatParameterOptionsOrNone_NoComma go to state 1325 + FloatParameterOptions go to state 1326 + FloatParameterOption go to state 1327 + + +state 1049 + + 76 Affectation: tSetNumber LP StringExpr ',' FExpr . RP tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1328 + + +state 1050 + + 77 Affectation: tSetString LP String__Index ',' StringExpr . RP tEND + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1329 + + +state 1051 + + 159 Shape: tPoint '(' FExpr ')' tAFFECT . VExpr tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 1330 + VExpr_Single go to state 292 + + +state 1052 + + 342 Constraints: tPoint '{' RecursiveListOfDouble '}' tIn . tSurface '{' FExpr '}' tEND + 344 | tPoint '{' RecursiveListOfDouble '}' tIn . tVolume '{' FExpr '}' tEND + + tSurface shift, and go to state 1331 + tVolume shift, and go to state 1332 + + +state 1053 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 490 FExpr_Multi: FExpr . '*' FExpr_Multi + 491 | FExpr . tDOTS FExpr + 492 | FExpr . tDOTS FExpr tDOTS FExpr + 523 RecursiveListOfDouble: RecursiveListOfDouble ',' FExpr . + + tDOTS shift, and go to state 531 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 745 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 523 (RecursiveListOfDouble) + + +state 1054 + + 524 RecursiveListOfDouble: RecursiveListOfDouble ',' FExpr_Multi . + + $default reduce using rule 524 (RecursiveListOfDouble) + + +state 1055 + + 162 Shape: tCircle '(' FExpr ')' tAFFECT . ListOfDouble CircleOptions tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1333 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1056 + + 163 Shape: tEllipse '(' FExpr ')' tAFFECT . ListOfDouble CircleOptions tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1334 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1057 + + 169 Shape: tLine tSTRING '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1335 + + +state 1058 + + 160 Shape: tLine '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1336 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1059 + + 343 Constraints: tLine '{' RecursiveListOfDouble '}' tIn . tSurface '{' FExpr '}' tEND + 345 | tLine '{' RecursiveListOfDouble '}' tIn . tVolume '{' FExpr '}' tEND + + tSurface shift, and go to state 1337 + tVolume shift, and go to state 1338 + + +state 1060 + + 176 Shape: tSphere '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1339 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1061 + + 177 Shape: tPolarSphere '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1340 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1062 + + 188 Shape: tSurface tSTRING '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1341 + + +state 1063 + + 171 Shape: tSurface '(' FExpr ')' tAFFECT . ListOfDouble InSphereCenter tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1342 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1064 + + 346 Constraints: tSurface '{' RecursiveListOfDouble '}' tIn . tVolume '{' FExpr '}' tEND + + tVolume shift, and go to state 1343 + + +state 1065 + + 161 Shape: tSpline '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1344 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1066 + + 189 Shape: tVolume '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1345 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1067 + + 178 Shape: tBlock '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1346 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1068 + + 182 Shape: tCylinder '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1347 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1069 + + 183 Shape: tCone '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1348 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1070 + + 179 Shape: tTorus '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1349 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1071 + + 180 Shape: tRectangle '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1350 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1072 + + 181 Shape: tDisk '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1351 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1073 + + 168 Shape: tWire '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1352 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1074 + + 326 Constraints: tCharacteristic tLength ListOfDouble tAFFECT FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 1353 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1075 + + 175 Shape: tParametric tSurface '(' FExpr ')' . tAFFECT tBIGSTR tBIGSTR tBIGSTR tEND + + tAFFECT shift, and go to state 1354 + + +state 1076 + + 259 Command: tAdaptMesh '{' RecursiveListOfDouble '}' '{' . RecursiveListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' FExpr ',' FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1355 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1077 + + 8 GeoFormatItem: tSetFactory '(' StringExprVar ')' tEND . + + $default reduce using rule 8 (GeoFormatItem) + + +state 1078 + + 390 FExpr: tExp LP FExpr RP . + + $default reduce using rule 390 (FExpr) + + +state 1079 + + 391 FExpr: tLog LP FExpr RP . + + $default reduce using rule 391 (FExpr) + + +state 1080 + + 392 FExpr: tLog10 LP FExpr RP . + + $default reduce using rule 392 (FExpr) + + +state 1081 + + 393 FExpr: tSqrt LP FExpr RP . + + $default reduce using rule 393 (FExpr) + + +state 1082 + + 394 FExpr: tSin LP FExpr RP . + + $default reduce using rule 394 (FExpr) + + +state 1083 + + 395 FExpr: tAsin LP FExpr RP . + + $default reduce using rule 395 (FExpr) + + +state 1084 + + 396 FExpr: tCos LP FExpr RP . + + $default reduce using rule 396 (FExpr) + + +state 1085 + + 397 FExpr: tAcos LP FExpr RP . + + $default reduce using rule 397 (FExpr) + + +state 1086 + + 398 FExpr: tTan LP FExpr RP . + + $default reduce using rule 398 (FExpr) + + +state 1087 + + 412 FExpr: tRand LP FExpr RP . + + $default reduce using rule 412 (FExpr) + + +state 1088 + + 399 FExpr: tAtan LP FExpr RP . + + $default reduce using rule 399 (FExpr) + + +state 1089 + + 400 FExpr: tAtan2 LP FExpr ',' . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1356 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1090 + + 401 FExpr: tSinh LP FExpr RP . + + $default reduce using rule 401 (FExpr) + + +state 1091 + + 402 FExpr: tCosh LP FExpr RP . + + $default reduce using rule 402 (FExpr) + + +state 1092 + + 403 FExpr: tTanh LP FExpr RP . + + $default reduce using rule 403 (FExpr) + + +state 1093 + + 404 FExpr: tFabs LP FExpr RP . + + $default reduce using rule 404 (FExpr) + + +state 1094 + + 405 FExpr: tAbs LP FExpr RP . + + $default reduce using rule 405 (FExpr) + + +state 1095 + + 520 FExpr_Multi: tAbs LP FExpr_Multi RP . + + $default reduce using rule 520 (FExpr_Multi) + + +state 1096 + + 406 FExpr: tFloor LP FExpr RP . + + $default reduce using rule 406 (FExpr) + + +state 1097 + + 407 FExpr: tCeil LP FExpr RP . + + $default reduce using rule 407 (FExpr) + + +state 1098 + + 408 FExpr: tRound LP FExpr RP . + + $default reduce using rule 408 (FExpr) + + +state 1099 + + 409 FExpr: tFmod LP FExpr ',' . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1357 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1100 + + 410 FExpr: tModulo LP FExpr ',' . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1358 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1101 + + 411 FExpr: tHypot LP FExpr ',' . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1359 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1102 + + 512 FExpr_Multi: tList '(' FExpr_Multi ')' . + + $default reduce using rule 512 (FExpr_Multi) + + +state 1103 + + 511 FExpr_Multi: tList '[' FExpr_Multi ']' . + + $default reduce using rule 511 (FExpr_Multi) + + +state 1104 + + 510 FExpr_Multi: tList '[' String__Index ']' . + + $default reduce using rule 510 (FExpr_Multi) + + +state 1105 + + 513 FExpr_Multi: tList LP '{' RecursiveListOfDouble . '}' RP + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1360 + ',' shift, and go to state 747 + + +state 1106 + + 515 FExpr_Multi: tLinSpace LP FExpr ',' . FExpr ',' FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1361 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1107 + + 516 FExpr_Multi: tLogSpace LP FExpr ',' . FExpr ',' FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1362 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1108 + + 517 FExpr_Multi: tListFromFile LP StringExprVar RP . + + $default reduce using rule 517 (FExpr_Multi) + + +state 1109 + + 518 FExpr_Multi: tCatenary LP FExpr ',' . FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1363 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1110 + + 454 FExpr_Single: tStrLen LP StringExprVar RP . + + $default reduce using rule 454 (FExpr_Single) + + +state 1111 + + 452 FExpr_Single: tFind '(' ListOfDouble ',' . ListOfDouble ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1364 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1112 + + 453 FExpr_Single: tStrFind LP StringExprVar ',' . StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 1365 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1113 + + 455 FExpr_Single: tStrCmp LP StringExprVar ',' . StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 1366 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1114 + + 456 FExpr_Single: tTextAttributes '(' RecursiveListOfStringExprVar ')' . + + $default reduce using rule 456 (FExpr_Single) + + +state 1115 + + 425 FExpr_Single: tDefineNumber LP FExpr @13 . FloatParameterOptionsOrNone RP + + ',' shift, and go to state 1367 + + $default reduce using rule 125 (FloatParameterOptionsOrNone) + + FloatParameterOptionsOrNone go to state 1368 + + +state 1116 + + 439 FExpr_Single: tDimNameSpace LP String__Index RP . + + $default reduce using rule 439 (FExpr_Single) + + +state 1117 + + 502 FExpr_Multi: tPoint tIn tBoundingBox '{' . FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1369 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1118 + + 493 FExpr_Multi: tPoint '{' FExpr '}' . + + $default reduce using rule 493 (FExpr_Multi) + + +state 1119 + + 503 FExpr_Multi: tLine tIn tBoundingBox '{' . FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1370 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1120 + + 504 FExpr_Multi: tSurface tIn tBoundingBox '{' . FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1371 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1121 + + 505 FExpr_Multi: tVolume tIn tBoundingBox '{' . FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1372 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1122 + + 451 FExpr_Single: tGetValue '(' StringExprVar ',' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1373 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1123 + + 428 FExpr_Single: tGetNumber LP StringExprVar ',' . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1374 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1124 + + 427 FExpr_Single: tGetNumber LP StringExprVar RP . + + $default reduce using rule 427 (FExpr_Single) + + +state 1125 + + 519 FExpr_Multi: tUnique LP FExpr_Multi RP . + + $default reduce using rule 519 (FExpr_Multi) + + +state 1126 + + 432 FExpr_Single: tExists '(' Struct_FullName ')' . + + $default reduce using rule 432 (FExpr_Single) + + +state 1127 + + 433 FExpr_Single: tExists '(' Struct_FullName '.' . tSTRING_Member_Float ')' + + tSTRING shift, and go to state 1035 + + tSTRING_Member_Float go to state 1375 + + +state 1128 + + 436 FExpr_Single: tFileExists '(' StringExpr ')' . + + $default reduce using rule 436 (FExpr_Single) + + +state 1129 + + 435 FExpr_Single: tGetForced '(' Struct_FullName '.' . tSTRING_Member_Float GetForced_Default ')' + + tSTRING shift, and go to state 1035 + + tSTRING_Member_Float go to state 1376 + + +state 1130 + + 458 GetForced_Default: ',' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1377 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1131 + + 434 FExpr_Single: tGetForced '(' Struct_FullName GetForced_Default . ')' + + ')' shift, and go to state 1378 + + +state 1132 + + 485 ListOfDouble: '-' '{' RecursiveListOfDouble '}' . + + $default reduce using rule 485 (ListOfDouble) + + +state 1133 + + 190 Shape: tThruSections '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1379 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1134 + + 438 FExpr_Single: '#' Struct_FullName '.' tSTRING_Member_Float . '(' ')' + + '(' shift, and go to state 1380 + + +state 1135 + + 437 FExpr_Single: '#' String__Index LP RP . + + $default reduce using rule 437 (FExpr_Single) + + +state 1136 + + 492 FExpr_Multi: FExpr tDOTS FExpr tDOTS . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1381 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1137 + + 389 FExpr: FExpr '?' FExpr tDOTS . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1382 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1138 + + 486 ListOfDouble: FExpr '*' '{' RecursiveListOfDouble . '}' + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1383 + ',' shift, and go to state 747 + + +state 1139 + + 431 FExpr_Single: Struct_FullName '(' FExpr ')' . + + $default reduce using rule 431 (FExpr_Single) + + +state 1140 + + 430 FExpr_Single: Struct_FullName '[' FExpr ']' . + + $default reduce using rule 430 (FExpr_Single) + + +state 1141 + + 445 FExpr_Single: String__Index tSCOPE String__Index '.' . tSTRING_Member_Float + 447 | String__Index tSCOPE String__Index '.' . tSTRING_Member_Float '(' FExpr ')' + + tSTRING shift, and go to state 1035 + + tSTRING_Member_Float go to state 1384 + + +state 1142 + + 443 FExpr_Single: String__Index '(' FExpr ')' . NumericIncrement + + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + + NumericIncrement go to state 1385 + + +state 1143 + + 442 FExpr_Single: String__Index '[' FExpr ']' . NumericIncrement + 448 | String__Index '[' FExpr ']' . '.' tSTRING + 450 | String__Index '[' FExpr ']' . '.' tSTRING NumericIncrement + + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + '.' shift, and go to state 1386 + + NumericIncrement go to state 1387 + + +state 1144 + + 449 FExpr_Single: String__Index '.' tSTRING NumericIncrement . + + $default reduce using rule 449 (FExpr_Single) + + +state 1145 + + 446 FExpr_Single: String__Index '.' tSTRING_Member_Float '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1388 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1146 + + 514 FExpr_Multi: String__Index LP '{' RecursiveListOfDouble . '}' RP + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1389 + ',' shift, and go to state 747 + + +state 1147 + + 184 Shape: tWedge '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1390 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1148 + + 289 Extrude: tFillet '{' RecursiveListOfDouble '}' '{' . RecursiveListOfDouble '}' '{' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1391 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1149 + + 170 Shape: tPlane tSurface '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1392 + + +state 1150 + + 172 Shape: tRuled tSurface '(' FExpr ')' . tAFFECT ListOfDouble InSphereCenter tEND + + tAFFECT shift, and go to state 1393 + + +state 1151 + + 191 Shape: tRuled tThruSections '(' FExpr ')' . tAFFECT ListOfDouble tEND + 367 FExpr: '(' FExpr ')' . + + tAFFECT shift, and go to state 1394 + + $default reduce using rule 367 (FExpr) + + +state 1152 + + 327 Constraints: tTransfinite tLine ListOfDoubleOrAll tAFFECT FExpr . TransfiniteType tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tUsing shift, and go to state 1395 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 316 (TransfiniteType) + + TransfiniteType go to state 1396 + + +state 1153 + + 321 TransfiniteCorners: tAFFECT ListOfDouble . + + $default reduce using rule 321 (TransfiniteCorners) + + +state 1154 + + 319 TransfiniteArrangement: tSTRING . + + $default reduce using rule 319 (TransfiniteArrangement) + + +state 1155 + + 328 Constraints: tTransfinite tSurface ListOfDoubleOrAll TransfiniteCorners TransfiniteArrangement . tEND + + tEND shift, and go to state 1397 + + +state 1156 + + 329 Constraints: tTransfinite tVolume ListOfDoubleOrAll TransfiniteCorners tEND . + + $default reduce using rule 329 (Constraints) + + +state 1157 + + 193 Shape: tPhysical tPoint '(' PhysicalId0 ')' . NumericAffectation ListOfDouble tEND + + tAFFECT shift, and go to state 1272 + tAFFECTDIVIDE shift, and go to state 395 + tAFFECTTIMES shift, and go to state 396 + tAFFECTMINUS shift, and go to state 397 + tAFFECTPLUS shift, and go to state 398 + + NumericAffectation go to state 1398 + + +state 1158 + + 145 PhysicalId0: StringExpr ',' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1399 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1159 + + 194 Shape: tPhysical tLine '(' PhysicalId1 ')' . NumericAffectation ListOfDouble tEND + + tAFFECT shift, and go to state 1272 + tAFFECTDIVIDE shift, and go to state 395 + tAFFECTTIMES shift, and go to state 396 + tAFFECTMINUS shift, and go to state 397 + tAFFECTPLUS shift, and go to state 398 + + NumericAffectation go to state 1400 + + +state 1160 + + 148 PhysicalId1: StringExpr ',' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1401 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1161 + + 195 Shape: tPhysical tSurface '(' PhysicalId2 ')' . NumericAffectation ListOfDouble tEND + + tAFFECT shift, and go to state 1272 + tAFFECTDIVIDE shift, and go to state 395 + tAFFECTTIMES shift, and go to state 396 + tAFFECTMINUS shift, and go to state 397 + tAFFECTPLUS shift, and go to state 398 + + NumericAffectation go to state 1402 + + +state 1162 + + 151 PhysicalId2: StringExpr ',' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1403 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1163 + + 196 Shape: tPhysical tVolume '(' PhysicalId3 ')' . NumericAffectation ListOfDouble tEND + + tAFFECT shift, and go to state 1272 + tAFFECTDIVIDE shift, and go to state 395 + tAFFECTTIMES shift, and go to state 396 + tAFFECTMINUS shift, and go to state 397 + tAFFECTPLUS shift, and go to state 398 + + NumericAffectation go to state 1404 + + +state 1164 + + 154 PhysicalId3: StringExpr ',' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1405 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1165 + + 167 Shape: tCompound tLine '(' FExpr ')' . tAFFECT ListOfDouble tEND + 367 FExpr: '(' FExpr ')' . + + tAFFECT shift, and go to state 1406 + + $default reduce using rule 367 (FExpr) + + +state 1166 + + 186 Shape: tCompound tSurface '(' FExpr ')' . tAFFECT ListOfDouble tEND + 187 | tCompound tSurface '(' FExpr ')' . tAFFECT ListOfDouble tSTRING '{' RecursiveListOfListOfDouble '}' tEND + 367 FExpr: '(' FExpr ')' . + + tAFFECT shift, and go to state 1407 + + $default reduce using rule 367 (FExpr) + + +state 1167 + + 192 Shape: tCompound tVolume '(' FExpr ')' . tAFFECT ListOfDouble tEND + 367 FExpr: '(' FExpr ')' . + + tAFFECT shift, and go to state 1408 + + $default reduce using rule 367 (FExpr) + + +state 1168 + + 335 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' . tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform tEND + 337 | tPeriodic tLine '{' RecursiveListOfDouble '}' . tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 339 | tPeriodic tLine '{' RecursiveListOfDouble '}' . tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + + tAFFECT shift, and go to state 1409 + + +state 1169 + + 336 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' . tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform tEND + 338 | tPeriodic tSurface '{' RecursiveListOfDouble '}' . tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 340 | tPeriodic tSurface '{' RecursiveListOfDouble '}' . tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + + tAFFECT shift, and go to state 1410 + + +state 1170 + + 341 Constraints: tPeriodic tSurface FExpr '{' RecursiveListOfDouble . '}' tAFFECT FExpr '{' RecursiveListOfDouble '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1411 + ',' shift, and go to state 747 + + +state 1171 + + 106 Affectation: tPlugin '(' tSTRING ')' '.' . tSTRING tAFFECT FExpr tEND + 107 | tPlugin '(' tSTRING ')' '.' . tSTRING tAFFECT StringExpr tEND + 246 Command: tPlugin '(' tSTRING ')' '.' . tSTRING tEND + + tSTRING shift, and go to state 1412 + + +state 1172 + + 226 Delete: tRecursive tDelete '{' ListOfShapes '}' . + + $default reduce using rule 226 (Delete) + + +state 1173 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 233 Colorify: tRecursive tColor ColorExpr '{' ListOfShapes . '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tThickSolid shift, and go to state 70 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + '}' shift, and go to state 1413 + + Shape go to state 719 + + +state 1174 + + 238 Visibility: tRecursive tShow '{' ListOfShapes '}' . + + $default reduce using rule 238 (Visibility) + + +state 1175 + + 240 Visibility: tRecursive tHide '{' ListOfShapes '}' . + + $default reduce using rule 240 (Visibility) + + +state 1176 + + 198 Transform: tRotate '{' VExpr ',' VExpr . ',' FExpr '}' '{' MultipleShape '}' + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 1414 + + +state 1177 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 478 VExpr_Single: '(' FExpr ',' FExpr . ',' FExpr ')' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1415 + + +state 1178 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 475 VExpr_Single: '{' FExpr ',' FExpr . ',' FExpr ',' FExpr ',' FExpr '}' + 476 | '{' FExpr ',' FExpr . ',' FExpr ',' FExpr '}' + 477 | '{' FExpr ',' FExpr . ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1416 + + +state 1179 + + 197 Transform: tTranslate VExpr '{' MultipleShape '}' . + + $default reduce using rule 197 (Transform) + + +state 1180 + + 199 Transform: tSymmetry VExpr '{' MultipleShape '}' . + + $default reduce using rule 199 (Transform) + + +state 1181 + + 200 Transform: tDilate '{' VExpr ',' FExpr . '}' '{' MultipleShape '}' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1417 + + +state 1182 + + 201 Transform: tDilate '{' VExpr ',' VExpr . '}' '{' MultipleShape '}' + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + '}' shift, and go to state 1418 + + +state 1183 + + 286 Extrude: tExtrude '{' ListOfShapes '}' tUsing . tWire '{' FExpr '}' + + tWire shift, and go to state 1419 + + +state 1184 + + 302 ExtrudeParameter: tUsing . tSTRING '[' FExpr ']' tEND + + tSTRING shift, and go to state 1420 + + +state 1185 + + 295 ExtrudeParameter: tRecombine . tEND + 296 | tRecombine . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tEND shift, and go to state 1421 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1422 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1186 + + 292 ExtrudeParameter: tLayers . '{' FExpr '}' tEND + 293 | tLayers . '{' ListOfDouble ',' ListOfDouble '}' tEND + + '{' shift, and go to state 1423 + + +state 1187 + + 294 ExtrudeParameter: tScaleLast . tEND + + tEND shift, and go to state 1424 + + +state 1188 + + 301 ExtrudeParameter: tHole . '(' FExpr ')' tAFFECT ListOfDouble tUsing FExpr tEND + + '(' shift, and go to state 1425 + + +state 1189 + + 297 ExtrudeParameter: tQuadTriAddVerts . tEND + 298 | tQuadTriAddVerts . tRecombLaterals tEND + + tEND shift, and go to state 1426 + tRecombLaterals shift, and go to state 1427 + + +state 1190 + + 299 ExtrudeParameter: tQuadTriNoNewVerts . tEND + 300 | tQuadTriNoNewVerts . tRecombLaterals tEND + + tEND shift, and go to state 1428 + tRecombLaterals shift, and go to state 1429 + + +state 1191 + + 285 Extrude: tExtrude '{' ListOfShapes @12 ExtrudeParameters . '}' + 291 ExtrudeParameters: ExtrudeParameters . ExtrudeParameter + + tUsing shift, and go to state 1184 + tRecombine shift, and go to state 1185 + tLayers shift, and go to state 1186 + tScaleLast shift, and go to state 1187 + tHole shift, and go to state 1188 + tQuadTriAddVerts shift, and go to state 1189 + tQuadTriNoNewVerts shift, and go to state 1190 + '}' shift, and go to state 1430 + + ExtrudeParameter go to state 1431 + + +state 1192 + + 290 ExtrudeParameters: ExtrudeParameter . + + $default reduce using rule 290 (ExtrudeParameters) + + +state 1193 + + 276 Extrude: tExtrude '{' VExpr ',' VExpr . ',' FExpr '}' '{' ListOfShapes '}' + 277 | tExtrude '{' VExpr ',' VExpr . ',' VExpr ',' FExpr '}' '{' ListOfShapes '}' + 281 | tExtrude '{' VExpr ',' VExpr . ',' FExpr '}' '{' ListOfShapes @10 ExtrudeParameters '}' + 283 | tExtrude '{' VExpr ',' VExpr . ',' VExpr ',' FExpr '}' '{' ListOfShapes @11 ExtrudeParameters '}' + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 1432 + + +state 1194 + + 275 Extrude: tExtrude VExpr '{' ListOfShapes '}' . + + $default reduce using rule 275 (Extrude) + + +state 1195 + + 279 Extrude: tExtrude VExpr '{' ListOfShapes @9 . ExtrudeParameters '}' + + tUsing shift, and go to state 1184 + tRecombine shift, and go to state 1185 + tLayers shift, and go to state 1186 + tScaleLast shift, and go to state 1187 + tHole shift, and go to state 1188 + tQuadTriAddVerts shift, and go to state 1189 + tQuadTriNoNewVerts shift, and go to state 1190 + + ExtrudeParameters go to state 1433 + ExtrudeParameter go to state 1192 + + +state 1196 + + 222 LevelSet: tLevelset tSTRING '(' FExpr ')' . tAFFECT ListOfDouble tEND + 223 | tLevelset tSTRING '(' FExpr ')' . tAFFECT tBIGSTR tEND + + tAFFECT shift, and go to state 1434 + + +state 1197 + + 224 LevelSet: tLevelset tSTRING '{' FExpr '}' . tEND + + tEND shift, and go to state 1435 + + +state 1198 + + 214 LevelSet: tLevelset tPoint '(' FExpr ')' . tAFFECT '{' RecursiveListOfListOfDouble '}' tEND + + tAFFECT shift, and go to state 1436 + + +state 1199 + + 217 LevelSet: tLevelset tSphere '(' FExpr ')' . tAFFECT '{' VExpr ',' RecursiveListOfDouble '}' tEND + + tAFFECT shift, and go to state 1437 + + +state 1200 + + 218 LevelSet: tLevelset tCylinder '(' FExpr ')' . tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + tAFFECT shift, and go to state 1438 + + +state 1201 + + 219 LevelSet: tLevelset tCone '(' FExpr ')' . tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + tAFFECT shift, and go to state 1439 + + +state 1202 + + 220 LevelSet: tLevelset tEllipsoid '(' FExpr ')' . tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + tAFFECT shift, and go to state 1440 + + +state 1203 + + 221 LevelSet: tLevelset tQuadric '(' FExpr ')' . tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + tAFFECT shift, and go to state 1441 + + +state 1204 + + 213 LevelSet: tLevelset tPlane '(' FExpr ')' . tAFFECT ListOfDouble tEND + 215 | tLevelset tPlane '(' FExpr ')' . tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 216 | tLevelset tPlane '(' FExpr ')' . tAFFECT '{' VExpr ',' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + tAFFECT shift, and go to state 1442 + + +state 1205 + + 185 Shape: tThickSolid '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1443 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1206 + + 323 RecombineAngle: tAFFECT FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 323 (RecombineAngle) + + +state 1207 + + 332 Constraints: tRecombine tSurface ListOfDoubleOrAll RecombineAngle tEND . + + $default reduce using rule 332 (Constraints) + + +state 1208 + + 334 Constraints: tSmoother tSurface ListOfDoubleOrAll tAFFECT FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 1444 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1209 + + 204 Transform: tSplit tLine '(' FExpr ')' . '{' RecursiveListOfDouble '}' tEND + + '{' shift, and go to state 1445 + + +state 1210 + + 228 Delete: tDelete tSTRING '[' FExpr ']' . tEND + + tEND shift, and go to state 1446 + + +state 1211 + + 227 Delete: tDelete tField '[' FExpr ']' . tEND + + tEND shift, and go to state 1447 + + +state 1212 + + 358 Coherence: tCoherence tPoint '{' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 1448 + + +state 1213 + + 203 Transform: tIntersect tLine '{' RecursiveListOfDouble '}' . tSurface '{' FExpr '}' + + tSurface shift, and go to state 1449 + + +state 1214 + + 331 Constraints: tMeshAlgorithm tSurface '{' RecursiveListOfDouble '}' . tAFFECT FExpr tEND + + tAFFECT shift, and go to state 1450 + + +state 1215 + + 34 View: tAlias tSTRING '[' FExpr ']' . tEND + + tEND shift, and go to state 1451 + + +state 1216 + + 35 View: tAliasWithOptions tSTRING '[' FExpr ']' . tEND + + tEND shift, and go to state 1452 + + +state 1217 + + 36 View: tCopyOptions tSTRING '[' FExpr ',' . FExpr ']' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1453 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1218 + + 164 Shape: tBSpline '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1454 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1219 + + 165 Shape: tBezier '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1455 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1220 + + 166 Shape: tNurbs '(' FExpr ')' tAFFECT . ListOfDouble tNurbsKnots ListOfDouble tNurbsOrder FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1456 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1221 + + 528 ColorExpr: tSTRING '.' tColor '.' . tSTRING + + tSTRING shift, and go to state 1457 + + +state 1222 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 525 ColorExpr: '{' FExpr ',' FExpr . ',' FExpr ',' FExpr '}' + 526 | '{' FExpr ',' FExpr . ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1458 + + +state 1223 + + 232 Colorify: tColor ColorExpr '{' ListOfShapes '}' . + + $default reduce using rule 232 (Colorify) + + +state 1224 + + 263 Loop: tFor tSTRING tIn '{' FExpr . tDOTS FExpr '}' + 264 | tFor tSTRING tIn '{' FExpr . tDOTS FExpr tDOTS FExpr '}' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tDOTS shift, and go to state 1459 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1225 + + 261 Loop: tFor '(' FExpr tDOTS FExpr . ')' + 262 | tFor '(' FExpr tDOTS FExpr . tDOTS FExpr ')' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tDOTS shift, and go to state 1460 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1461 + + +state 1226 + + 101 Affectation: tField '[' FExpr ']' tAFFECT . tSTRING tEND + + tSTRING shift, and go to state 1462 + + +state 1227 + + 102 Affectation: tField '[' FExpr ']' '.' . tSTRING tAFFECT FExpr tEND + 103 | tField '[' FExpr ']' '.' . tSTRING tAFFECT StringExpr tEND + 104 | tField '[' FExpr ']' '.' . tSTRING tAFFECT '{' RecursiveListOfDouble '}' tEND + 105 | tField '[' FExpr ']' '.' . tSTRING tEND + + tSTRING shift, and go to state 1463 + + +state 1228 + + 562 StringExpr: tStr LP RecursiveListOfStringExprVar RP . + + $default reduce using rule 562 (StringExpr) + + +state 1229 + + 570 StringExpr: tSprintf LP StringExprVar ',' . RecursiveListOfDouble RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1464 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1230 + + 569 StringExpr: tSprintf LP StringExprVar RP . + + $default reduce using rule 569 (StringExpr) + + +state 1231 + + 558 StringExpr: tStrCat LP RecursiveListOfStringExprVar RP . + + $default reduce using rule 558 (StringExpr) + + +state 1232 + + 559 StringExpr: tStrPrefix '(' StringExprVar ')' . + + $default reduce using rule 559 (StringExpr) + + +state 1233 + + 560 StringExpr: tStrRelative '(' StringExprVar ')' . + + $default reduce using rule 560 (StringExpr) + + +state 1234 + + 561 StringExpr: tStrReplace '(' StringExprVar ',' . StringExprVar ',' StringExprVar ')' + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 1465 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1235 + + 574 StringExpr: tAbsolutePath LP StringExprVar RP . + + $default reduce using rule 574 (StringExpr) + + +state 1236 + + 573 StringExpr: tDirName LP StringExprVar RP . + + $default reduce using rule 573 (StringExpr) + + +state 1237 + + 567 StringExpr: tStrSub LP StringExprVar ',' . FExpr ',' FExpr RP + 568 | tStrSub LP StringExprVar ',' . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1466 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1238 + + 566 StringExpr: tStrChoice LP FExpr ',' . StringExprVar ',' StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 1467 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1239 + + 563 StringExpr: tUpperCase LP StringExprVar RP . + + $default reduce using rule 563 (StringExpr) + + +state 1240 + + 564 StringExpr: tLowerCase LP StringExprVar RP . + + $default reduce using rule 564 (StringExpr) + + +state 1241 + + 565 StringExpr: tLowerCaseIn LP StringExprVar RP . + + $default reduce using rule 565 (StringExpr) + + +state 1242 + + 571 StringExpr: tFixRelativePath LP StringExprVar RP . + + $default reduce using rule 571 (StringExpr) + + +state 1243 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 578 NameStruct_Arg: '#' FExpr . + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 578 (NameStruct_Arg) + + +state 1244 + + 577 StringExpr: tNameStruct LP NameStruct_Arg RP . + + $default reduce using rule 577 (StringExpr) + + +state 1245 + + 579 NameStruct_Arg: String__Index tSCOPE . '#' FExpr + + '#' shift, and go to state 1468 + + +state 1246 + + 576 StringExpr: tDefineString LP StringExpr @15 . CharParameterOptionsOrNone RP + + ',' shift, and go to state 1469 + + $default reduce using rule 135 (CharParameterOptionsOrNone) + + CharParameterOptionsOrNone go to state 1470 + + +state 1247 + + 553 StringExpr: tGetStringValue '(' StringExprVar ',' . StringExprVar ')' + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 1471 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1248 + + 552 StringExpr: tGetEnv '(' StringExprVar ')' . + + $default reduce using rule 552 (StringExpr) + + +state 1249 + + 555 StringExpr: tGetString LP StringExprVar ',' . StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 1472 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1250 + + 554 StringExpr: tGetString LP StringExprVar RP . + + $default reduce using rule 554 (StringExpr) + + +state 1251 + + 557 StringExpr: tGetForcedStr '(' Struct_FullName '.' . tSTRING_Member_Float GetForcedStr_Default ')' + + tSTRING shift, and go to state 1035 + + tSTRING_Member_Float go to state 1473 + + +state 1252 + + 460 GetForcedStr_Default: ',' . StringExprVar + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 1474 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1253 + + 556 StringExpr: tGetForcedStr '(' Struct_FullName GetForcedStr_Default . ')' + + ')' shift, and go to state 1475 + + +state 1254 + + 547 StringExpr: tNameToString '[' String__Index ']' . + + $default reduce using rule 547 (StringExpr) + + +state 1255 + + 260 Slide: tSlide '(' '{' RecursiveListOfDouble '}' . ',' StringExpr ',' StringExpr ')' tEND + + ',' shift, and go to state 1476 + + +state 1256 + + 234 SetPartition: tSetPartition FExpr '{' ListOfShapes '}' . + + $default reduce using rule 234 (SetPartition) + + +state 1257 + + 584 StringIndex: tStringToName '[' StringExprVar ']' '~' . '{' FExpr '}' + + '{' shift, and go to state 1477 + + +state 1258 + + 315 BooleanShape: BooleanOperator '(' FExpr ')' tAFFECT . '{' ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption '}' tEND + + '{' shift, and go to state 1478 + + +state 1259 + + 310 BooleanOption: tRecursive tDelete . tEND + 312 | tRecursive tDelete . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tEND shift, and go to state 1479 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1480 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1260 + + 309 BooleanOption: tDelete tEND . + + $default reduce using rule 309 (BooleanOption) + + +state 1261 + + 311 BooleanOption: tDelete FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 1481 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1262 + + 313 Boolean: BooleanOperator '{' ListOfShapes BooleanOption '}' . '{' ListOfShapes BooleanOption '}' + + '{' shift, and go to state 1482 + + +state 1263 + + 365 Homology: HomologyCommand '(' ListOfDouble ')' '{' . ListOfDouble ',' ListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1483 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1264 + + 363 Homology: HomologyCommand '{' ListOfDouble '}' tEND . + + $default reduce using rule 363 (Homology) + + +state 1265 + + 364 Homology: HomologyCommand '{' ListOfDouble ',' ListOfDouble . '}' tEND + + '}' shift, and go to state 1484 + + +state 1266 + + 583 StringIndex: StringIndex '~' '{' FExpr '}' . + + $default reduce using rule 583 (StringIndex) + + +state 1267 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 542 StringExprVar: tPhysical tPoint '{' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1485 + + +state 1268 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 543 StringExprVar: tPhysical tLine '{' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1486 + + +state 1269 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 544 StringExprVar: tPhysical tSurface '{' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1487 + + +state 1270 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 545 StringExprVar: tPhysical tVolume '{' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1488 + + +state 1271 + + 100 Affectation: String__Index tField tAFFECT FExpr tEND . + + $default reduce using rule 100 (Affectation) + + +state 1272 + + 62 NumericAffectation: tAFFECT . + + $default reduce using rule 62 (NumericAffectation) + + +state 1273 + + 84 Affectation: String__Index '(' FExpr ')' NumericAffectation . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1489 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1274 + + 85 Affectation: String__Index '(' FExpr ')' NumericIncrement . tEND + + tEND shift, and go to state 1490 + + +state 1275 + + 91 Affectation: String__Index '[' FExpr ']' '.' . tSTRING tAFFECT StringExpr tEND + 93 | String__Index '[' FExpr ']' '.' . tSTRING NumericAffectation FExpr tEND + 95 | String__Index '[' FExpr ']' '.' . tSTRING NumericIncrement tEND + 97 | String__Index '[' FExpr ']' '.' . tColor '.' tSTRING tAFFECT ColorExpr tEND + 99 | String__Index '[' FExpr ']' '.' . tColorTable tAFFECT ListOfColor tEND + + tSTRING shift, and go to state 1491 + tColor shift, and go to state 1492 + tColorTable shift, and go to state 1493 + + +state 1276 + + 82 Affectation: String__Index '[' FExpr ']' NumericAffectation . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1494 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1277 + + 83 Affectation: String__Index '[' FExpr ']' NumericIncrement . tEND + + tEND shift, and go to state 1495 + + +state 1278 + + 90 Affectation: String__Index '.' tSTRING tAFFECT StringExpr . tEND + + tEND shift, and go to state 1496 + + +state 1279 + + 92 Affectation: String__Index '.' tSTRING NumericAffectation FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 1497 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1280 + + 94 Affectation: String__Index '.' tSTRING NumericIncrement tEND . + + $default reduce using rule 94 (Affectation) + + +state 1281 + + 96 Affectation: String__Index '.' tColor '.' tSTRING . tAFFECT ColorExpr tEND + + tAFFECT shift, and go to state 1498 + + +state 1282 + + 529 ListOfColor: '{' . RecursiveListOfColor '}' + + tSTRING shift, and go to state 333 + tStringToName shift, and go to state 107 + '{' shift, and go to state 334 + + ColorExpr go to state 1499 + RecursiveListOfColor go to state 1500 + StringIndex go to state 131 + String__Index go to state 336 + + +state 1283 + + 98 Affectation: String__Index '.' tColorTable tAFFECT ListOfColor . tEND + + tEND shift, and go to state 1501 + + +state 1284 + + 530 ListOfColor: String__Index . '[' FExpr ']' '.' tColorTable + + '[' shift, and go to state 1502 + + +state 1285 + + 81 Affectation: String__Index LP '{' RecursiveListOfDouble '}' . RP NumericAffectation ListOfDouble tEND + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1503 + + +state 1286 + + 87 Affectation: String__Index LP RP tAFFECT tStr . LP RP tEND + 88 | String__Index LP RP tAFFECT tStr . LP RecursiveListOfStringExprVar RP tEND + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 1504 + + +state 1287 + + 89 Affectation: String__Index LP RP tAFFECTPLUS tStr . LP RecursiveListOfStringExprVar RP tEND + + '(' shift, and go to state 153 + '[' shift, and go to state 154 + + LP go to state 1505 + + +state 1288 + + 80 Affectation: String__Index LP RP NumericAffectation ListOfDouble . tEND + + tEND shift, and go to state 1506 + + +state 1289 + + 49 Element: tSTRING . @1 '(' ElementCoords ')' @2 '{' ElementValues '}' tEND + + $default reduce using rule 47 (@1) + + @1 go to state 1507 + + +state 1290 + + 53 Text2D: tText2D . '(' FExpr ',' FExpr ',' FExpr ')' @3 '{' Text2DValues '}' tEND + + '(' shift, and go to state 1508 + + +state 1291 + + 57 Text3D: tText3D . '(' FExpr ',' FExpr ',' FExpr ',' FExpr ')' @4 '{' Text3DValues '}' tEND + + '(' shift, and go to state 1509 + + +state 1292 + + 58 InterpolationMatrix: tInterpolationScheme . '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' tEND + 59 | tInterpolationScheme . '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' tEND + + '{' shift, and go to state 1510 + + +state 1293 + + 61 Time: tTime . @5 '{' ElementValues '}' tEND + + $default reduce using rule 60 (@5) + + @5 go to state 1511 + + +state 1294 + + 33 View: String__Index StringExprVar '{' Views '}' . tEND + + tEND shift, and go to state 1512 + + +state 1295 + + 38 Views: Views Element . + + $default reduce using rule 38 (Views) + + +state 1296 + + 39 Views: Views Text2D . + + $default reduce using rule 39 (Views) + + +state 1297 + + 40 Views: Views Text3D . + + $default reduce using rule 40 (Views) + + +state 1298 + + 41 Views: Views InterpolationMatrix . + + $default reduce using rule 41 (Views) + + +state 1299 + + 42 Views: Views Time . + + $default reduce using rule 42 (Views) + + +state 1300 + + 445 FExpr_Single: String__Index tSCOPE String__Index '.' . tSTRING_Member_Float + 447 | String__Index tSCOPE String__Index '.' . tSTRING_Member_Float '(' FExpr ')' + 538 StringExprVar: String__Index tSCOPE String__Index '.' . tSTRING_Member_Float + 540 | String__Index tSCOPE String__Index '.' . tSTRING_Member_Float '(' FExpr ')' + + tSTRING shift, and go to state 1035 + + tSTRING_Member_Float go to state 1513 + + +state 1301 + + 443 FExpr_Single: String__Index '(' FExpr ')' . NumericIncrement + 536 StringExprVar: String__Index '(' FExpr ')' . + + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + + $default reduce using rule 536 (StringExprVar) + + NumericIncrement go to state 1385 + + +state 1302 + + 243 Command: String__Index String__Index '[' FExpr ']' . StringExprVar tEND + 442 FExpr_Single: String__Index '[' FExpr ']' . NumericIncrement + 448 | String__Index '[' FExpr ']' . '.' tSTRING + 450 | String__Index '[' FExpr ']' . '.' tSTRING NumericIncrement + 535 StringExprVar: String__Index '[' FExpr ']' . + 541 | String__Index '[' FExpr ']' . '.' tSTRING + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + '.' shift, and go to state 1514 + + $default reduce using rule 535 (StringExprVar) + + NumericIncrement go to state 1387 + StringExprVar go to state 1515 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1303 + + 446 FExpr_Single: String__Index '.' tSTRING_Member_Float '(' . FExpr ')' + 539 StringExprVar: String__Index '.' tSTRING_Member_Float '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1516 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1304 + + 244 Command: String__Index String__Index String__Index '[' FExpr . ']' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ']' shift, and go to state 1517 + + +state 1305 + + 209 ListOfShapes: ListOfShapes tPoint '{' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1518 + ',' shift, and go to state 747 + + +state 1306 + + 210 ListOfShapes: ListOfShapes tLine '{' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1519 + ',' shift, and go to state 747 + + +state 1307 + + 211 ListOfShapes: ListOfShapes tSurface '{' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1520 + ',' shift, and go to state 747 + + +state 1308 + + 212 ListOfShapes: ListOfShapes tVolume '{' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1521 + ',' shift, and go to state 747 + + +state 1309 + + 190 Shape: tThruSections '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1522 + + +state 1310 + + 191 Shape: tRuled tThruSections '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1523 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1311 + + 167 Shape: tCompound tLine '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1524 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1312 + + 186 Shape: tCompound tSurface '(' . FExpr ')' tAFFECT ListOfDouble tEND + 187 | tCompound tSurface '(' . FExpr ')' tAFFECT ListOfDouble tSTRING '{' RecursiveListOfListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1525 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1313 + + 192 Shape: tCompound tVolume '(' . FExpr ')' tAFFECT ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1526 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1314 + + 29 Printf: tPrintf '(' StringExprVar ')' SendToFile StringExprVar . tEND + + tEND shift, and go to state 1527 + + +state 1315 + + 30 Printf: tPrintf '(' StringExprVar ',' RecursiveListOfDouble ')' . tEND + 32 | tPrintf '(' StringExprVar ',' RecursiveListOfDouble ')' . SendToFile StringExprVar tEND + + tEND shift, and go to state 1528 + '>' shift, and go to state 1028 + tGREATERGREATER shift, and go to state 1029 + + SendToFile go to state 1529 + + +state 1316 + + 538 StringExprVar: String__Index tSCOPE String__Index '.' . tSTRING_Member_Float + 540 | String__Index tSCOPE String__Index '.' . tSTRING_Member_Float '(' FExpr ')' + + tSTRING shift, and go to state 1035 + + tSTRING_Member_Float go to state 1530 + + +state 1317 + + 536 StringExprVar: String__Index '(' FExpr ')' . + + $default reduce using rule 536 (StringExprVar) + + +state 1318 + + 535 StringExprVar: String__Index '[' FExpr ']' . + 541 | String__Index '[' FExpr ']' . '.' tSTRING + + '.' shift, and go to state 1531 + + $default reduce using rule 535 (StringExprVar) + + +state 1319 + + 539 StringExprVar: String__Index '.' tSTRING_Member_Float '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1532 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1320 + + 31 Printf: tError '(' StringExprVar ',' RecursiveListOfDouble ')' . tEND + + tEND shift, and go to state 1533 + + +state 1321 + + 253 Command: tBoundingBox '{' FExpr ',' FExpr ',' . FExpr ',' FExpr ',' FExpr ',' FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1534 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1322 + + 112 DefineConstants: DefineConstants Comma String__Index tAFFECT . FExpr + 114 | DefineConstants Comma String__Index tAFFECT . '{' ListOfDouble @6 FloatParameterOptionsOrNone '}' + 117 | DefineConstants Comma String__Index tAFFECT . StringExpr + 119 | DefineConstants Comma String__Index tAFFECT . '{' StringExpr @8 CharParameterOptionsOrNone '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tTextAttributes shift, and go to state 224 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tNameStruct shift, and go to state 363 + tDimNameSpace shift, and go to state 229 + tDefineString shift, and go to state 364 + tGetValue shift, and go to state 237 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGetForcedStr shift, and go to state 368 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 1535 + '#' shift, and go to state 251 + + FExpr go to state 1536 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringExpr go to state 1537 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1323 + + 116 DefineConstants: DefineConstants Comma String__Index LP . RP tAFFECT '{' ListOfDouble @7 FloatParameterOptionsOrNone '}' + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1538 + + +state 1324 + + 131 FloatParameterOption: tSTRING . ListOfDouble + 132 | tSTRING . + 133 | tSTRING . '{' Enumeration '}' + 134 | tSTRING . StringExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 344 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tTextAttributes shift, and go to state 224 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tNameStruct shift, and go to state 363 + tDimNameSpace shift, and go to state 229 + tDefineString shift, and go to state 364 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGetForcedStr shift, and go to state 368 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 1539 + '#' shift, and go to state 251 + + $default reduce using rule 132 (FloatParameterOption) + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1540 + FExpr_Multi go to state 261 + StringExpr go to state 1541 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1325 + + 462 DefineStruct: tDefineStruct Struct_FullName AppendOrNot @14 '[' FloatParameterOptionsOrNone_NoComma . ']' + + ']' shift, and go to state 1542 + + +state 1326 + + 128 FloatParameterOptionsOrNone_NoComma: FloatParameterOptions . + 130 FloatParameterOptions: FloatParameterOptions . ',' FloatParameterOption + + ',' shift, and go to state 1543 + + $default reduce using rule 128 (FloatParameterOptionsOrNone_NoComma) + + +state 1327 + + 129 FloatParameterOptions: FloatParameterOption . + + $default reduce using rule 129 (FloatParameterOptions) + + +state 1328 + + 76 Affectation: tSetNumber LP StringExpr ',' FExpr RP . tEND + + tEND shift, and go to state 1544 + + +state 1329 + + 77 Affectation: tSetString LP String__Index ',' StringExpr RP . tEND + + tEND shift, and go to state 1545 + + +state 1330 + + 159 Shape: tPoint '(' FExpr ')' tAFFECT VExpr . tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + tEND shift, and go to state 1546 + '+' shift, and go to state 592 + '-' shift, and go to state 593 + + +state 1331 + + 342 Constraints: tPoint '{' RecursiveListOfDouble '}' tIn tSurface . '{' FExpr '}' tEND + + '{' shift, and go to state 1547 + + +state 1332 + + 344 Constraints: tPoint '{' RecursiveListOfDouble '}' tIn tVolume . '{' FExpr '}' tEND + + '{' shift, and go to state 1548 + + +state 1333 + + 162 Shape: tCircle '(' FExpr ')' tAFFECT ListOfDouble . CircleOptions tEND + + tPlane shift, and go to state 1549 + + $default reduce using rule 157 (CircleOptions) + + CircleOptions go to state 1550 + + +state 1334 + + 163 Shape: tEllipse '(' FExpr ')' tAFFECT ListOfDouble . CircleOptions tEND + + tPlane shift, and go to state 1549 + + $default reduce using rule 157 (CircleOptions) + + CircleOptions go to state 1551 + + +state 1335 + + 169 Shape: tLine tSTRING '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1552 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1336 + + 160 Shape: tLine '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1553 + + +state 1337 + + 343 Constraints: tLine '{' RecursiveListOfDouble '}' tIn tSurface . '{' FExpr '}' tEND + + '{' shift, and go to state 1554 + + +state 1338 + + 345 Constraints: tLine '{' RecursiveListOfDouble '}' tIn tVolume . '{' FExpr '}' tEND + + '{' shift, and go to state 1555 + + +state 1339 + + 176 Shape: tSphere '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1556 + + +state 1340 + + 177 Shape: tPolarSphere '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1557 + + +state 1341 + + 188 Shape: tSurface tSTRING '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1558 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1342 + + 171 Shape: tSurface '(' FExpr ')' tAFFECT ListOfDouble . InSphereCenter tEND + + tIn shift, and go to state 1559 + + $default reduce using rule 155 (InSphereCenter) + + InSphereCenter go to state 1560 + + +state 1343 + + 346 Constraints: tSurface '{' RecursiveListOfDouble '}' tIn tVolume . '{' FExpr '}' tEND + + '{' shift, and go to state 1561 + + +state 1344 + + 161 Shape: tSpline '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1562 + + +state 1345 + + 189 Shape: tVolume '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1563 + + +state 1346 + + 178 Shape: tBlock '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1564 + + +state 1347 + + 182 Shape: tCylinder '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1565 + + +state 1348 + + 183 Shape: tCone '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1566 + + +state 1349 + + 179 Shape: tTorus '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1567 + + +state 1350 + + 180 Shape: tRectangle '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1568 + + +state 1351 + + 181 Shape: tDisk '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1569 + + +state 1352 + + 168 Shape: tWire '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1570 + + +state 1353 + + 326 Constraints: tCharacteristic tLength ListOfDouble tAFFECT FExpr tEND . + + $default reduce using rule 326 (Constraints) + + +state 1354 + + 175 Shape: tParametric tSurface '(' FExpr ')' tAFFECT . tBIGSTR tBIGSTR tBIGSTR tEND + + tBIGSTR shift, and go to state 1571 + + +state 1355 + + 259 Command: tAdaptMesh '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble . '}' '{' RecursiveListOfListOfDouble '}' '{' FExpr ',' FExpr '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1572 + ',' shift, and go to state 747 + + +state 1356 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 400 | tAtan2 LP FExpr ',' FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1573 + + +state 1357 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 409 | tFmod LP FExpr ',' FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1574 + + +state 1358 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 410 | tModulo LP FExpr ',' FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1575 + + +state 1359 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 411 | tHypot LP FExpr ',' FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1576 + + +state 1360 + + 513 FExpr_Multi: tList LP '{' RecursiveListOfDouble '}' . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1577 + + +state 1361 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 515 FExpr_Multi: tLinSpace LP FExpr ',' FExpr . ',' FExpr RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1578 + + +state 1362 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 516 FExpr_Multi: tLogSpace LP FExpr ',' FExpr . ',' FExpr RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1579 + + +state 1363 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 518 FExpr_Multi: tCatenary LP FExpr ',' FExpr . ',' FExpr ',' FExpr ',' FExpr ',' FExpr RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1580 + + +state 1364 + + 452 FExpr_Single: tFind '(' ListOfDouble ',' ListOfDouble . ')' + + ')' shift, and go to state 1581 + + +state 1365 + + 453 FExpr_Single: tStrFind LP StringExprVar ',' StringExprVar . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1582 + + +state 1366 + + 455 FExpr_Single: tStrCmp LP StringExprVar ',' StringExprVar . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1583 + + +state 1367 + + 126 FloatParameterOptionsOrNone: ',' . FloatParameterOptions + + tSTRING shift, and go to state 1324 + + FloatParameterOptions go to state 1584 + FloatParameterOption go to state 1327 + + +state 1368 + + 425 FExpr_Single: tDefineNumber LP FExpr @13 FloatParameterOptionsOrNone . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1585 + + +state 1369 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 502 FExpr_Multi: tPoint tIn tBoundingBox '{' FExpr . ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1586 + + +state 1370 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 503 FExpr_Multi: tLine tIn tBoundingBox '{' FExpr . ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1587 + + +state 1371 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 504 FExpr_Multi: tSurface tIn tBoundingBox '{' FExpr . ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1588 + + +state 1372 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 505 FExpr_Multi: tVolume tIn tBoundingBox '{' FExpr . ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1589 + + +state 1373 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 451 FExpr_Single: tGetValue '(' StringExprVar ',' FExpr . ')' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1590 + + +state 1374 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 428 FExpr_Single: tGetNumber LP StringExprVar ',' FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1591 + + +state 1375 + + 433 FExpr_Single: tExists '(' Struct_FullName '.' tSTRING_Member_Float . ')' + + ')' shift, and go to state 1592 + + +state 1376 + + 435 FExpr_Single: tGetForced '(' Struct_FullName '.' tSTRING_Member_Float . GetForced_Default ')' + + ',' shift, and go to state 1130 + + $default reduce using rule 457 (GetForced_Default) + + GetForced_Default go to state 1593 + + +state 1377 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 458 GetForced_Default: ',' FExpr . + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 458 (GetForced_Default) + + +state 1378 + + 434 FExpr_Single: tGetForced '(' Struct_FullName GetForced_Default ')' . + + $default reduce using rule 434 (FExpr_Single) + + +state 1379 + + 190 Shape: tThruSections '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1594 + + +state 1380 + + 438 FExpr_Single: '#' Struct_FullName '.' tSTRING_Member_Float '(' . ')' + + ')' shift, and go to state 1595 + + +state 1381 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 492 FExpr_Multi: FExpr tDOTS FExpr tDOTS FExpr . + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 492 (FExpr_Multi) + + +state 1382 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 389 | FExpr '?' FExpr tDOTS FExpr . + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 389 (FExpr) + + +state 1383 + + 486 ListOfDouble: FExpr '*' '{' RecursiveListOfDouble '}' . + + $default reduce using rule 486 (ListOfDouble) + + +state 1384 + + 445 FExpr_Single: String__Index tSCOPE String__Index '.' tSTRING_Member_Float . + 447 | String__Index tSCOPE String__Index '.' tSTRING_Member_Float . '(' FExpr ')' + + '(' shift, and go to state 1596 + + $default reduce using rule 445 (FExpr_Single) + + +state 1385 + + 443 FExpr_Single: String__Index '(' FExpr ')' NumericIncrement . + + $default reduce using rule 443 (FExpr_Single) + + +state 1386 + + 448 FExpr_Single: String__Index '[' FExpr ']' '.' . tSTRING + 450 | String__Index '[' FExpr ']' '.' . tSTRING NumericIncrement + + tSTRING shift, and go to state 1597 + + +state 1387 + + 442 FExpr_Single: String__Index '[' FExpr ']' NumericIncrement . + + $default reduce using rule 442 (FExpr_Single) + + +state 1388 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 446 FExpr_Single: String__Index '.' tSTRING_Member_Float '(' FExpr . ')' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1598 + + +state 1389 + + 514 FExpr_Multi: String__Index LP '{' RecursiveListOfDouble '}' . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1599 + + +state 1390 + + 184 Shape: tWedge '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1600 + + +state 1391 + + 289 Extrude: tFillet '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble . '}' '{' FExpr '}' + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1601 + ',' shift, and go to state 747 + + +state 1392 + + 170 Shape: tPlane tSurface '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1602 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1393 + + 172 Shape: tRuled tSurface '(' FExpr ')' tAFFECT . ListOfDouble InSphereCenter tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1603 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1394 + + 191 Shape: tRuled tThruSections '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1604 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1395 + + 317 TransfiniteType: tUsing . tSTRING FExpr + + tSTRING shift, and go to state 1605 + + +state 1396 + + 327 Constraints: tTransfinite tLine ListOfDoubleOrAll tAFFECT FExpr TransfiniteType . tEND + + tEND shift, and go to state 1606 + + +state 1397 + + 328 Constraints: tTransfinite tSurface ListOfDoubleOrAll TransfiniteCorners TransfiniteArrangement tEND . + + $default reduce using rule 328 (Constraints) + + +state 1398 + + 193 Shape: tPhysical tPoint '(' PhysicalId0 ')' NumericAffectation . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1607 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1399 + + 145 PhysicalId0: StringExpr ',' FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 145 (PhysicalId0) + + +state 1400 + + 194 Shape: tPhysical tLine '(' PhysicalId1 ')' NumericAffectation . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1608 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1401 + + 148 PhysicalId1: StringExpr ',' FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 148 (PhysicalId1) + + +state 1402 + + 195 Shape: tPhysical tSurface '(' PhysicalId2 ')' NumericAffectation . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1609 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1403 + + 151 PhysicalId2: StringExpr ',' FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 151 (PhysicalId2) + + +state 1404 + + 196 Shape: tPhysical tVolume '(' PhysicalId3 ')' NumericAffectation . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1610 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1405 + + 154 PhysicalId3: StringExpr ',' FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 154 (PhysicalId3) + + +state 1406 + + 167 Shape: tCompound tLine '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1611 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1407 + + 186 Shape: tCompound tSurface '(' FExpr ')' tAFFECT . ListOfDouble tEND + 187 | tCompound tSurface '(' FExpr ')' tAFFECT . ListOfDouble tSTRING '{' RecursiveListOfListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1612 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1408 + + 192 Shape: tCompound tVolume '(' FExpr ')' tAFFECT . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1613 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1409 + + 335 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT . '{' RecursiveListOfDouble '}' PeriodicTransform tEND + 337 | tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT . '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 339 | tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT . '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + + '{' shift, and go to state 1614 + + +state 1410 + + 336 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT . '{' RecursiveListOfDouble '}' PeriodicTransform tEND + 338 | tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT . '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 340 | tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT . '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + + '{' shift, and go to state 1615 + + +state 1411 + + 341 Constraints: tPeriodic tSurface FExpr '{' RecursiveListOfDouble '}' . tAFFECT FExpr '{' RecursiveListOfDouble '}' tEND + + tAFFECT shift, and go to state 1616 + + +state 1412 + + 106 Affectation: tPlugin '(' tSTRING ')' '.' tSTRING . tAFFECT FExpr tEND + 107 | tPlugin '(' tSTRING ')' '.' tSTRING . tAFFECT StringExpr tEND + 246 Command: tPlugin '(' tSTRING ')' '.' tSTRING . tEND + + tEND shift, and go to state 1617 + tAFFECT shift, and go to state 1618 + + +state 1413 + + 233 Colorify: tRecursive tColor ColorExpr '{' ListOfShapes '}' . + + $default reduce using rule 233 (Colorify) + + +state 1414 + + 198 Transform: tRotate '{' VExpr ',' VExpr ',' . FExpr '}' '{' MultipleShape '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1619 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1415 + + 478 VExpr_Single: '(' FExpr ',' FExpr ',' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1620 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1416 + + 475 VExpr_Single: '{' FExpr ',' FExpr ',' . FExpr ',' FExpr ',' FExpr '}' + 476 | '{' FExpr ',' FExpr ',' . FExpr ',' FExpr '}' + 477 | '{' FExpr ',' FExpr ',' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1621 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1417 + + 200 Transform: tDilate '{' VExpr ',' FExpr '}' . '{' MultipleShape '}' + + '{' shift, and go to state 1622 + + +state 1418 + + 201 Transform: tDilate '{' VExpr ',' VExpr '}' . '{' MultipleShape '}' + + '{' shift, and go to state 1623 + + +state 1419 + + 286 Extrude: tExtrude '{' ListOfShapes '}' tUsing tWire . '{' FExpr '}' + + '{' shift, and go to state 1624 + + +state 1420 + + 302 ExtrudeParameter: tUsing tSTRING . '[' FExpr ']' tEND + + '[' shift, and go to state 1625 + + +state 1421 + + 295 ExtrudeParameter: tRecombine tEND . + + $default reduce using rule 295 (ExtrudeParameter) + + +state 1422 + + 296 ExtrudeParameter: tRecombine FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 1626 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1423 + + 292 ExtrudeParameter: tLayers '{' . FExpr '}' tEND + 293 | tLayers '{' . ListOfDouble ',' ListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 1627 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1628 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1424 + + 294 ExtrudeParameter: tScaleLast tEND . + + $default reduce using rule 294 (ExtrudeParameter) + + +state 1425 + + 301 ExtrudeParameter: tHole '(' . FExpr ')' tAFFECT ListOfDouble tUsing FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1629 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1426 + + 297 ExtrudeParameter: tQuadTriAddVerts tEND . + + $default reduce using rule 297 (ExtrudeParameter) + + +state 1427 + + 298 ExtrudeParameter: tQuadTriAddVerts tRecombLaterals . tEND + + tEND shift, and go to state 1630 + + +state 1428 + + 299 ExtrudeParameter: tQuadTriNoNewVerts tEND . + + $default reduce using rule 299 (ExtrudeParameter) + + +state 1429 + + 300 ExtrudeParameter: tQuadTriNoNewVerts tRecombLaterals . tEND + + tEND shift, and go to state 1631 + + +state 1430 + + 285 Extrude: tExtrude '{' ListOfShapes @12 ExtrudeParameters '}' . + + $default reduce using rule 285 (Extrude) + + +state 1431 + + 291 ExtrudeParameters: ExtrudeParameters ExtrudeParameter . + + $default reduce using rule 291 (ExtrudeParameters) + + +state 1432 + + 276 Extrude: tExtrude '{' VExpr ',' VExpr ',' . FExpr '}' '{' ListOfShapes '}' + 277 | tExtrude '{' VExpr ',' VExpr ',' . VExpr ',' FExpr '}' '{' ListOfShapes '}' + 281 | tExtrude '{' VExpr ',' VExpr ',' . FExpr '}' '{' ListOfShapes @10 ExtrudeParameters '}' + 283 | tExtrude '{' VExpr ',' VExpr ',' . VExpr ',' FExpr '}' '{' ListOfShapes @11 ExtrudeParameters '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 597 + '-' shift, and go to state 598 + '!' shift, and go to state 248 + '(' shift, and go to state 599 + '{' shift, and go to state 290 + '#' shift, and go to state 251 + + FExpr go to state 1632 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + VExpr go to state 1633 + VExpr_Single go to state 292 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1433 + + 279 Extrude: tExtrude VExpr '{' ListOfShapes @9 ExtrudeParameters . '}' + 291 ExtrudeParameters: ExtrudeParameters . ExtrudeParameter + + tUsing shift, and go to state 1184 + tRecombine shift, and go to state 1185 + tLayers shift, and go to state 1186 + tScaleLast shift, and go to state 1187 + tHole shift, and go to state 1188 + tQuadTriAddVerts shift, and go to state 1189 + tQuadTriNoNewVerts shift, and go to state 1190 + '}' shift, and go to state 1634 + + ExtrudeParameter go to state 1431 + + +state 1434 + + 222 LevelSet: tLevelset tSTRING '(' FExpr ')' tAFFECT . ListOfDouble tEND + 223 | tLevelset tSTRING '(' FExpr ')' tAFFECT . tBIGSTR tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 1635 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1636 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1435 + + 224 LevelSet: tLevelset tSTRING '{' FExpr '}' tEND . + + $default reduce using rule 224 (LevelSet) + + +state 1436 + + 214 LevelSet: tLevelset tPoint '(' FExpr ')' tAFFECT . '{' RecursiveListOfListOfDouble '}' tEND + + '{' shift, and go to state 1637 + + +state 1437 + + 217 LevelSet: tLevelset tSphere '(' FExpr ')' tAFFECT . '{' VExpr ',' RecursiveListOfDouble '}' tEND + + '{' shift, and go to state 1638 + + +state 1438 + + 218 LevelSet: tLevelset tCylinder '(' FExpr ')' tAFFECT . '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + '{' shift, and go to state 1639 + + +state 1439 + + 219 LevelSet: tLevelset tCone '(' FExpr ')' tAFFECT . '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + '{' shift, and go to state 1640 + + +state 1440 + + 220 LevelSet: tLevelset tEllipsoid '(' FExpr ')' tAFFECT . '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + '{' shift, and go to state 1641 + + +state 1441 + + 221 LevelSet: tLevelset tQuadric '(' FExpr ')' tAFFECT . '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + '{' shift, and go to state 1642 + + +state 1442 + + 213 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT . ListOfDouble tEND + 215 | tLevelset tPlane '(' FExpr ')' tAFFECT . '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 216 | tLevelset tPlane '(' FExpr ')' tAFFECT . '{' VExpr ',' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 1643 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1644 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1443 + + 185 Shape: tThickSolid '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1645 + + +state 1444 + + 334 Constraints: tSmoother tSurface ListOfDoubleOrAll tAFFECT FExpr tEND . + + $default reduce using rule 334 (Constraints) + + +state 1445 + + 204 Transform: tSplit tLine '(' FExpr ')' '{' . RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1646 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1446 + + 228 Delete: tDelete tSTRING '[' FExpr ']' tEND . + + $default reduce using rule 228 (Delete) + + +state 1447 + + 227 Delete: tDelete tField '[' FExpr ']' tEND . + + $default reduce using rule 227 (Delete) + + +state 1448 + + 358 Coherence: tCoherence tPoint '{' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 358 (Coherence) + + +state 1449 + + 203 Transform: tIntersect tLine '{' RecursiveListOfDouble '}' tSurface . '{' FExpr '}' + + '{' shift, and go to state 1647 + + +state 1450 + + 331 Constraints: tMeshAlgorithm tSurface '{' RecursiveListOfDouble '}' tAFFECT . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1648 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1451 + + 34 View: tAlias tSTRING '[' FExpr ']' tEND . + + $default reduce using rule 34 (View) + + +state 1452 + + 35 View: tAliasWithOptions tSTRING '[' FExpr ']' tEND . + + $default reduce using rule 35 (View) + + +state 1453 + + 36 View: tCopyOptions tSTRING '[' FExpr ',' FExpr . ']' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ']' shift, and go to state 1649 + + +state 1454 + + 164 Shape: tBSpline '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1650 + + +state 1455 + + 165 Shape: tBezier '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1651 + + +state 1456 + + 166 Shape: tNurbs '(' FExpr ')' tAFFECT ListOfDouble . tNurbsKnots ListOfDouble tNurbsOrder FExpr tEND + + tNurbsKnots shift, and go to state 1652 + + +state 1457 + + 528 ColorExpr: tSTRING '.' tColor '.' tSTRING . + + $default reduce using rule 528 (ColorExpr) + + +state 1458 + + 525 ColorExpr: '{' FExpr ',' FExpr ',' . FExpr ',' FExpr '}' + 526 | '{' FExpr ',' FExpr ',' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1653 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1459 + + 263 Loop: tFor tSTRING tIn '{' FExpr tDOTS . FExpr '}' + 264 | tFor tSTRING tIn '{' FExpr tDOTS . FExpr tDOTS FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1654 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1460 + + 262 Loop: tFor '(' FExpr tDOTS FExpr tDOTS . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1655 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1461 + + 261 Loop: tFor '(' FExpr tDOTS FExpr ')' . + + $default reduce using rule 261 (Loop) + + +state 1462 + + 101 Affectation: tField '[' FExpr ']' tAFFECT tSTRING . tEND + + tEND shift, and go to state 1656 + + +state 1463 + + 102 Affectation: tField '[' FExpr ']' '.' tSTRING . tAFFECT FExpr tEND + 103 | tField '[' FExpr ']' '.' tSTRING . tAFFECT StringExpr tEND + 104 | tField '[' FExpr ']' '.' tSTRING . tAFFECT '{' RecursiveListOfDouble '}' tEND + 105 | tField '[' FExpr ']' '.' tSTRING . tEND + + tEND shift, and go to state 1657 + tAFFECT shift, and go to state 1658 + + +state 1464 + + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + 570 StringExpr: tSprintf LP StringExprVar ',' RecursiveListOfDouble . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + ',' shift, and go to state 747 + + RP go to state 1659 + + +state 1465 + + 561 StringExpr: tStrReplace '(' StringExprVar ',' StringExprVar . ',' StringExprVar ')' + + ',' shift, and go to state 1660 + + +state 1466 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 567 StringExpr: tStrSub LP StringExprVar ',' FExpr . ',' FExpr RP + 568 | tStrSub LP StringExprVar ',' FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + ',' shift, and go to state 1661 + + RP go to state 1662 + + +state 1467 + + 566 StringExpr: tStrChoice LP FExpr ',' StringExprVar . ',' StringExprVar RP + + ',' shift, and go to state 1663 + + +state 1468 + + 579 NameStruct_Arg: String__Index tSCOPE '#' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1664 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1469 + + 136 CharParameterOptionsOrNone: ',' . CharParameterOptions + + tSTRING shift, and go to state 1665 + tMacro shift, and go to state 1666 + + CharParameterOptions go to state 1667 + CharParameterOption go to state 1668 + + +state 1470 + + 576 StringExpr: tDefineString LP StringExpr @15 CharParameterOptionsOrNone . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1669 + + +state 1471 + + 553 StringExpr: tGetStringValue '(' StringExprVar ',' StringExprVar . ')' + + ')' shift, and go to state 1670 + + +state 1472 + + 555 StringExpr: tGetString LP StringExprVar ',' StringExprVar . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1671 + + +state 1473 + + 557 StringExpr: tGetForcedStr '(' Struct_FullName '.' tSTRING_Member_Float . GetForcedStr_Default ')' + + ',' shift, and go to state 1252 + + $default reduce using rule 459 (GetForcedStr_Default) + + GetForcedStr_Default go to state 1672 + + +state 1474 + + 460 GetForcedStr_Default: ',' StringExprVar . + + $default reduce using rule 460 (GetForcedStr_Default) + + +state 1475 + + 556 StringExpr: tGetForcedStr '(' Struct_FullName GetForcedStr_Default ')' . + + $default reduce using rule 556 (StringExpr) + + +state 1476 + + 260 Slide: tSlide '(' '{' RecursiveListOfDouble '}' ',' . StringExpr ',' StringExpr ')' tEND + + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + + StringExpr go to state 1673 + + +state 1477 + + 584 StringIndex: tStringToName '[' StringExprVar ']' '~' '{' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1674 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1478 + + 315 BooleanShape: BooleanOperator '(' FExpr ')' tAFFECT '{' . ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption '}' tEND + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 1675 + + +state 1479 + + 310 BooleanOption: tRecursive tDelete tEND . + + $default reduce using rule 310 (BooleanOption) + + +state 1480 + + 312 BooleanOption: tRecursive tDelete FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 1676 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1481 + + 311 BooleanOption: tDelete FExpr tEND . + + $default reduce using rule 311 (BooleanOption) + + +state 1482 + + 313 Boolean: BooleanOperator '{' ListOfShapes BooleanOption '}' '{' . ListOfShapes BooleanOption '}' + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 1677 + + +state 1483 + + 365 Homology: HomologyCommand '(' ListOfDouble ')' '{' ListOfDouble . ',' ListOfDouble '}' tEND + + ',' shift, and go to state 1678 + + +state 1484 + + 364 Homology: HomologyCommand '{' ListOfDouble ',' ListOfDouble '}' . tEND + + tEND shift, and go to state 1679 + + +state 1485 + + 542 StringExprVar: tPhysical tPoint '{' FExpr '}' . + + $default reduce using rule 542 (StringExprVar) + + +state 1486 + + 543 StringExprVar: tPhysical tLine '{' FExpr '}' . + + $default reduce using rule 543 (StringExprVar) + + +state 1487 + + 544 StringExprVar: tPhysical tSurface '{' FExpr '}' . + + $default reduce using rule 544 (StringExprVar) + + +state 1488 + + 545 StringExprVar: tPhysical tVolume '{' FExpr '}' . + + $default reduce using rule 545 (StringExprVar) + + +state 1489 + + 84 Affectation: String__Index '(' FExpr ')' NumericAffectation FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 1680 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1490 + + 85 Affectation: String__Index '(' FExpr ')' NumericIncrement tEND . + + $default reduce using rule 85 (Affectation) + + +state 1491 + + 91 Affectation: String__Index '[' FExpr ']' '.' tSTRING . tAFFECT StringExpr tEND + 93 | String__Index '[' FExpr ']' '.' tSTRING . NumericAffectation FExpr tEND + 95 | String__Index '[' FExpr ']' '.' tSTRING . NumericIncrement tEND + + tAFFECT shift, and go to state 1681 + tAFFECTDIVIDE shift, and go to state 395 + tAFFECTTIMES shift, and go to state 396 + tAFFECTMINUS shift, and go to state 397 + tAFFECTPLUS shift, and go to state 398 + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + + NumericAffectation go to state 1682 + NumericIncrement go to state 1683 + + +state 1492 + + 97 Affectation: String__Index '[' FExpr ']' '.' tColor . '.' tSTRING tAFFECT ColorExpr tEND + + '.' shift, and go to state 1684 + + +state 1493 + + 99 Affectation: String__Index '[' FExpr ']' '.' tColorTable . tAFFECT ListOfColor tEND + + tAFFECT shift, and go to state 1685 + + +state 1494 + + 82 Affectation: String__Index '[' FExpr ']' NumericAffectation FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 1686 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1495 + + 83 Affectation: String__Index '[' FExpr ']' NumericIncrement tEND . + + $default reduce using rule 83 (Affectation) + + +state 1496 + + 90 Affectation: String__Index '.' tSTRING tAFFECT StringExpr tEND . + + $default reduce using rule 90 (Affectation) + + +state 1497 + + 92 Affectation: String__Index '.' tSTRING NumericAffectation FExpr tEND . + + $default reduce using rule 92 (Affectation) + + +state 1498 + + 96 Affectation: String__Index '.' tColor '.' tSTRING tAFFECT . ColorExpr tEND + + tSTRING shift, and go to state 333 + tStringToName shift, and go to state 107 + '{' shift, and go to state 334 + + ColorExpr go to state 1687 + StringIndex go to state 131 + String__Index go to state 336 + + +state 1499 + + 531 RecursiveListOfColor: ColorExpr . + + $default reduce using rule 531 (RecursiveListOfColor) + + +state 1500 + + 529 ListOfColor: '{' RecursiveListOfColor . '}' + 532 RecursiveListOfColor: RecursiveListOfColor . ',' ColorExpr + + '}' shift, and go to state 1688 + ',' shift, and go to state 1689 + + +state 1501 + + 98 Affectation: String__Index '.' tColorTable tAFFECT ListOfColor tEND . + + $default reduce using rule 98 (Affectation) + + +state 1502 + + 530 ListOfColor: String__Index '[' . FExpr ']' '.' tColorTable + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1690 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1503 + + 81 Affectation: String__Index LP '{' RecursiveListOfDouble '}' RP . NumericAffectation ListOfDouble tEND + + tAFFECT shift, and go to state 1272 + tAFFECTDIVIDE shift, and go to state 395 + tAFFECTTIMES shift, and go to state 396 + tAFFECTMINUS shift, and go to state 397 + tAFFECTPLUS shift, and go to state 398 + + NumericAffectation go to state 1691 + + +state 1504 + + 87 Affectation: String__Index LP RP tAFFECT tStr LP . RP tEND + 88 | String__Index LP RP tAFFECT tStr LP . RecursiveListOfStringExprVar RP tEND + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1692 + StringExprVar go to state 423 + StringExpr go to state 419 + RecursiveListOfStringExprVar go to state 1693 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1505 + + 89 Affectation: String__Index LP RP tAFFECTPLUS tStr LP . RecursiveListOfStringExprVar RP tEND + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 423 + StringExpr go to state 419 + RecursiveListOfStringExprVar go to state 1694 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1506 + + 80 Affectation: String__Index LP RP NumericAffectation ListOfDouble tEND . + + $default reduce using rule 80 (Affectation) + + +state 1507 + + 49 Element: tSTRING @1 . '(' ElementCoords ')' @2 '{' ElementValues '}' tEND + + '(' shift, and go to state 1695 + + +state 1508 + + 53 Text2D: tText2D '(' . FExpr ',' FExpr ',' FExpr ')' @3 '{' Text2DValues '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1696 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1509 + + 57 Text3D: tText3D '(' . FExpr ',' FExpr ',' FExpr ',' FExpr ')' @4 '{' Text3DValues '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1697 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1510 + + 58 InterpolationMatrix: tInterpolationScheme '{' . RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' tEND + 59 | tInterpolationScheme '{' . RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + RecursiveListOfListOfDouble go to state 1698 + ListOfDouble go to state 1699 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1511 + + 61 Time: tTime @5 . '{' ElementValues '}' tEND + + '{' shift, and go to state 1700 + + +state 1512 + + 33 View: String__Index StringExprVar '{' Views '}' tEND . + + $default reduce using rule 33 (View) + + +state 1513 + + 445 FExpr_Single: String__Index tSCOPE String__Index '.' tSTRING_Member_Float . + 447 | String__Index tSCOPE String__Index '.' tSTRING_Member_Float . '(' FExpr ')' + 538 StringExprVar: String__Index tSCOPE String__Index '.' tSTRING_Member_Float . + 540 | String__Index tSCOPE String__Index '.' tSTRING_Member_Float . '(' FExpr ')' + + '(' shift, and go to state 1701 + + '{' reduce using rule 538 (StringExprVar) + $default reduce using rule 445 (FExpr_Single) + + +state 1514 + + 448 FExpr_Single: String__Index '[' FExpr ']' '.' . tSTRING + 450 | String__Index '[' FExpr ']' '.' . tSTRING NumericIncrement + 541 StringExprVar: String__Index '[' FExpr ']' '.' . tSTRING + + tSTRING shift, and go to state 1702 + + +state 1515 + + 243 Command: String__Index String__Index '[' FExpr ']' StringExprVar . tEND + + tEND shift, and go to state 1703 + + +state 1516 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 446 FExpr_Single: String__Index '.' tSTRING_Member_Float '(' FExpr . ')' + 539 StringExprVar: String__Index '.' tSTRING_Member_Float '(' FExpr . ')' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1704 + + +state 1517 + + 244 Command: String__Index String__Index String__Index '[' FExpr ']' . tEND + + tEND shift, and go to state 1705 + + +state 1518 + + 209 ListOfShapes: ListOfShapes tPoint '{' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 1706 + + +state 1519 + + 210 ListOfShapes: ListOfShapes tLine '{' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 1707 + + +state 1520 + + 211 ListOfShapes: ListOfShapes tSurface '{' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 1708 + + +state 1521 + + 212 ListOfShapes: ListOfShapes tVolume '{' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 1709 + + +state 1522 + + 190 Shape: tThruSections '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1133 + + +state 1523 + + 191 Shape: tRuled tThruSections '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1710 + + +state 1524 + + 167 Shape: tCompound tLine '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1711 + + +state 1525 + + 186 Shape: tCompound tSurface '(' FExpr . ')' tAFFECT ListOfDouble tEND + 187 | tCompound tSurface '(' FExpr . ')' tAFFECT ListOfDouble tSTRING '{' RecursiveListOfListOfDouble '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1712 + + +state 1526 + + 192 Shape: tCompound tVolume '(' FExpr . ')' tAFFECT ListOfDouble tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1713 + + +state 1527 + + 29 Printf: tPrintf '(' StringExprVar ')' SendToFile StringExprVar tEND . + + $default reduce using rule 29 (Printf) + + +state 1528 + + 30 Printf: tPrintf '(' StringExprVar ',' RecursiveListOfDouble ')' tEND . + + $default reduce using rule 30 (Printf) + + +state 1529 + + 32 Printf: tPrintf '(' StringExprVar ',' RecursiveListOfDouble ')' SendToFile . StringExprVar tEND + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 1714 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1530 + + 538 StringExprVar: String__Index tSCOPE String__Index '.' tSTRING_Member_Float . + 540 | String__Index tSCOPE String__Index '.' tSTRING_Member_Float . '(' FExpr ')' + + '(' shift, and go to state 1715 + + $default reduce using rule 538 (StringExprVar) + + +state 1531 + + 541 StringExprVar: String__Index '[' FExpr ']' '.' . tSTRING + + tSTRING shift, and go to state 1716 + + +state 1532 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 539 StringExprVar: String__Index '.' tSTRING_Member_Float '(' FExpr . ')' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1717 + + +state 1533 + + 31 Printf: tError '(' StringExprVar ',' RecursiveListOfDouble ')' tEND . + + $default reduce using rule 31 (Printf) + + +state 1534 + + 253 Command: tBoundingBox '{' FExpr ',' FExpr ',' FExpr . ',' FExpr ',' FExpr ',' FExpr '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1718 + + +state 1535 + + 114 DefineConstants: DefineConstants Comma String__Index tAFFECT '{' . ListOfDouble @6 FloatParameterOptionsOrNone '}' + 119 | DefineConstants Comma String__Index tAFFECT '{' . StringExpr @8 CharParameterOptionsOrNone '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tBIGSTR shift, and go to state 344 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tTextAttributes shift, and go to state 224 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tNameStruct shift, and go to state 363 + tDimNameSpace shift, and go to state 229 + tDefineString shift, and go to state 364 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGetForcedStr shift, and go to state 368 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1719 + FExpr_Multi go to state 261 + StringExpr go to state 1720 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1536 + + 112 DefineConstants: DefineConstants Comma String__Index tAFFECT FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 112 (DefineConstants) + + +state 1537 + + 117 DefineConstants: DefineConstants Comma String__Index tAFFECT StringExpr . + + $default reduce using rule 117 (DefineConstants) + + +state 1538 + + 116 DefineConstants: DefineConstants Comma String__Index LP RP . tAFFECT '{' ListOfDouble @7 FloatParameterOptionsOrNone '}' + + tAFFECT shift, and go to state 1721 + + +state 1539 + + 133 FloatParameterOption: tSTRING '{' . Enumeration '}' + 483 ListOfDouble: '{' . '}' + 484 | '{' . RecursiveListOfDouble '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '}' shift, and go to state 527 + '#' shift, and go to state 251 + + Enumeration go to state 1722 + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 1723 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 1724 + RecursiveListOfDouble go to state 528 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1540 + + 131 FloatParameterOption: tSTRING ListOfDouble . + + $default reduce using rule 131 (FloatParameterOption) + + +state 1541 + + 134 FloatParameterOption: tSTRING StringExpr . + + $default reduce using rule 134 (FloatParameterOption) + + +state 1542 + + 462 DefineStruct: tDefineStruct Struct_FullName AppendOrNot @14 '[' FloatParameterOptionsOrNone_NoComma ']' . + + $default reduce using rule 462 (DefineStruct) + + +state 1543 + + 130 FloatParameterOptions: FloatParameterOptions ',' . FloatParameterOption + + tSTRING shift, and go to state 1324 + + FloatParameterOption go to state 1725 + + +state 1544 + + 76 Affectation: tSetNumber LP StringExpr ',' FExpr RP tEND . + + $default reduce using rule 76 (Affectation) + + +state 1545 + + 77 Affectation: tSetString LP String__Index ',' StringExpr RP tEND . + + $default reduce using rule 77 (Affectation) + + +state 1546 + + 159 Shape: tPoint '(' FExpr ')' tAFFECT VExpr tEND . + + $default reduce using rule 159 (Shape) + + +state 1547 + + 342 Constraints: tPoint '{' RecursiveListOfDouble '}' tIn tSurface '{' . FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1726 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1548 + + 344 Constraints: tPoint '{' RecursiveListOfDouble '}' tIn tVolume '{' . FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1727 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1549 + + 158 CircleOptions: tPlane . VExpr + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 1728 + VExpr_Single go to state 292 + + +state 1550 + + 162 Shape: tCircle '(' FExpr ')' tAFFECT ListOfDouble CircleOptions . tEND + + tEND shift, and go to state 1729 + + +state 1551 + + 163 Shape: tEllipse '(' FExpr ')' tAFFECT ListOfDouble CircleOptions . tEND + + tEND shift, and go to state 1730 + + +state 1552 + + 169 Shape: tLine tSTRING '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1731 + + +state 1553 + + 160 Shape: tLine '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 160 (Shape) + + +state 1554 + + 343 Constraints: tLine '{' RecursiveListOfDouble '}' tIn tSurface '{' . FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1732 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1555 + + 345 Constraints: tLine '{' RecursiveListOfDouble '}' tIn tVolume '{' . FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1733 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1556 + + 176 Shape: tSphere '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 176 (Shape) + + +state 1557 + + 177 Shape: tPolarSphere '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 177 (Shape) + + +state 1558 + + 188 Shape: tSurface tSTRING '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1734 + + +state 1559 + + 156 InSphereCenter: tIn . tSphere '{' FExpr '}' + + tSphere shift, and go to state 1735 + + +state 1560 + + 171 Shape: tSurface '(' FExpr ')' tAFFECT ListOfDouble InSphereCenter . tEND + + tEND shift, and go to state 1736 + + +state 1561 + + 346 Constraints: tSurface '{' RecursiveListOfDouble '}' tIn tVolume '{' . FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1737 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1562 + + 161 Shape: tSpline '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 161 (Shape) + + +state 1563 + + 189 Shape: tVolume '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 189 (Shape) + + +state 1564 + + 178 Shape: tBlock '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 178 (Shape) + + +state 1565 + + 182 Shape: tCylinder '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 182 (Shape) + + +state 1566 + + 183 Shape: tCone '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 183 (Shape) + + +state 1567 + + 179 Shape: tTorus '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 179 (Shape) + + +state 1568 + + 180 Shape: tRectangle '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 180 (Shape) + + +state 1569 + + 181 Shape: tDisk '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 181 (Shape) + + +state 1570 + + 168 Shape: tWire '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 168 (Shape) + + +state 1571 + + 175 Shape: tParametric tSurface '(' FExpr ')' tAFFECT tBIGSTR . tBIGSTR tBIGSTR tEND + + tBIGSTR shift, and go to state 1738 + + +state 1572 + + 259 Command: tAdaptMesh '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' . '{' RecursiveListOfListOfDouble '}' '{' FExpr ',' FExpr '}' tEND + + '{' shift, and go to state 1739 + + +state 1573 + + 400 FExpr: tAtan2 LP FExpr ',' FExpr RP . + + $default reduce using rule 400 (FExpr) + + +state 1574 + + 409 FExpr: tFmod LP FExpr ',' FExpr RP . + + $default reduce using rule 409 (FExpr) + + +state 1575 + + 410 FExpr: tModulo LP FExpr ',' FExpr RP . + + $default reduce using rule 410 (FExpr) + + +state 1576 + + 411 FExpr: tHypot LP FExpr ',' FExpr RP . + + $default reduce using rule 411 (FExpr) + + +state 1577 + + 513 FExpr_Multi: tList LP '{' RecursiveListOfDouble '}' RP . + + $default reduce using rule 513 (FExpr_Multi) + + +state 1578 + + 515 FExpr_Multi: tLinSpace LP FExpr ',' FExpr ',' . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1740 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1579 + + 516 FExpr_Multi: tLogSpace LP FExpr ',' FExpr ',' . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1741 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1580 + + 518 FExpr_Multi: tCatenary LP FExpr ',' FExpr ',' . FExpr ',' FExpr ',' FExpr ',' FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1742 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1581 + + 452 FExpr_Single: tFind '(' ListOfDouble ',' ListOfDouble ')' . + + $default reduce using rule 452 (FExpr_Single) + + +state 1582 + + 453 FExpr_Single: tStrFind LP StringExprVar ',' StringExprVar RP . + + $default reduce using rule 453 (FExpr_Single) + + +state 1583 + + 455 FExpr_Single: tStrCmp LP StringExprVar ',' StringExprVar RP . + + $default reduce using rule 455 (FExpr_Single) + + +state 1584 + + 126 FloatParameterOptionsOrNone: ',' FloatParameterOptions . + 130 FloatParameterOptions: FloatParameterOptions . ',' FloatParameterOption + + ',' shift, and go to state 1543 + + $default reduce using rule 126 (FloatParameterOptionsOrNone) + + +state 1585 + + 425 FExpr_Single: tDefineNumber LP FExpr @13 FloatParameterOptionsOrNone RP . + + $default reduce using rule 425 (FExpr_Single) + + +state 1586 + + 502 FExpr_Multi: tPoint tIn tBoundingBox '{' FExpr ',' . FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1743 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1587 + + 503 FExpr_Multi: tLine tIn tBoundingBox '{' FExpr ',' . FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1744 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1588 + + 504 FExpr_Multi: tSurface tIn tBoundingBox '{' FExpr ',' . FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1745 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1589 + + 505 FExpr_Multi: tVolume tIn tBoundingBox '{' FExpr ',' . FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1746 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1590 + + 451 FExpr_Single: tGetValue '(' StringExprVar ',' FExpr ')' . + + $default reduce using rule 451 (FExpr_Single) + + +state 1591 + + 428 FExpr_Single: tGetNumber LP StringExprVar ',' FExpr RP . + + $default reduce using rule 428 (FExpr_Single) + + +state 1592 + + 433 FExpr_Single: tExists '(' Struct_FullName '.' tSTRING_Member_Float ')' . + + $default reduce using rule 433 (FExpr_Single) + + +state 1593 + + 435 FExpr_Single: tGetForced '(' Struct_FullName '.' tSTRING_Member_Float GetForced_Default . ')' + + ')' shift, and go to state 1747 + + +state 1594 + + 190 Shape: tThruSections '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 190 (Shape) + + +state 1595 + + 438 FExpr_Single: '#' Struct_FullName '.' tSTRING_Member_Float '(' ')' . + + $default reduce using rule 438 (FExpr_Single) + + +state 1596 + + 447 FExpr_Single: String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1748 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1597 + + 448 FExpr_Single: String__Index '[' FExpr ']' '.' tSTRING . + 450 | String__Index '[' FExpr ']' '.' tSTRING . NumericIncrement + + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + + $default reduce using rule 448 (FExpr_Single) + + NumericIncrement go to state 1749 + + +state 1598 + + 446 FExpr_Single: String__Index '.' tSTRING_Member_Float '(' FExpr ')' . + + $default reduce using rule 446 (FExpr_Single) + + +state 1599 + + 514 FExpr_Multi: String__Index LP '{' RecursiveListOfDouble '}' RP . + + $default reduce using rule 514 (FExpr_Multi) + + +state 1600 + + 184 Shape: tWedge '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 184 (Shape) + + +state 1601 + + 289 Extrude: tFillet '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' . '{' FExpr '}' + + '{' shift, and go to state 1750 + + +state 1602 + + 170 Shape: tPlane tSurface '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1751 + + +state 1603 + + 172 Shape: tRuled tSurface '(' FExpr ')' tAFFECT ListOfDouble . InSphereCenter tEND + + tIn shift, and go to state 1559 + + $default reduce using rule 155 (InSphereCenter) + + InSphereCenter go to state 1752 + + +state 1604 + + 191 Shape: tRuled tThruSections '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1753 + + +state 1605 + + 317 TransfiniteType: tUsing tSTRING . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1754 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1606 + + 327 Constraints: tTransfinite tLine ListOfDoubleOrAll tAFFECT FExpr TransfiniteType tEND . + + $default reduce using rule 327 (Constraints) + + +state 1607 + + 193 Shape: tPhysical tPoint '(' PhysicalId0 ')' NumericAffectation ListOfDouble . tEND + + tEND shift, and go to state 1755 + + +state 1608 + + 194 Shape: tPhysical tLine '(' PhysicalId1 ')' NumericAffectation ListOfDouble . tEND + + tEND shift, and go to state 1756 + + +state 1609 + + 195 Shape: tPhysical tSurface '(' PhysicalId2 ')' NumericAffectation ListOfDouble . tEND + + tEND shift, and go to state 1757 + + +state 1610 + + 196 Shape: tPhysical tVolume '(' PhysicalId3 ')' NumericAffectation ListOfDouble . tEND + + tEND shift, and go to state 1758 + + +state 1611 + + 167 Shape: tCompound tLine '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1759 + + +state 1612 + + 186 Shape: tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble . tEND + 187 | tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble . tSTRING '{' RecursiveListOfListOfDouble '}' tEND + + tSTRING shift, and go to state 1760 + tEND shift, and go to state 1761 + + +state 1613 + + 192 Shape: tCompound tVolume '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1762 + + +state 1614 + + 335 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' . RecursiveListOfDouble '}' PeriodicTransform tEND + 337 | tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' . RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 339 | tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' . RecursiveListOfDouble '}' tTranslate VExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1763 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1615 + + 336 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' . RecursiveListOfDouble '}' PeriodicTransform tEND + 338 | tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' . RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 340 | tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' . RecursiveListOfDouble '}' tTranslate VExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1764 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1616 + + 341 Constraints: tPeriodic tSurface FExpr '{' RecursiveListOfDouble '}' tAFFECT . FExpr '{' RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1765 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1617 + + 246 Command: tPlugin '(' tSTRING ')' '.' tSTRING tEND . + + $default reduce using rule 246 (Command) + + +state 1618 + + 106 Affectation: tPlugin '(' tSTRING ')' '.' tSTRING tAFFECT . FExpr tEND + 107 | tPlugin '(' tSTRING ')' '.' tSTRING tAFFECT . StringExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tTextAttributes shift, and go to state 224 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tNameStruct shift, and go to state 363 + tDimNameSpace shift, and go to state 229 + tDefineString shift, and go to state 364 + tGetValue shift, and go to state 237 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGetForcedStr shift, and go to state 368 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1766 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringExpr go to state 1767 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1619 + + 198 Transform: tRotate '{' VExpr ',' VExpr ',' FExpr . '}' '{' MultipleShape '}' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1768 + + +state 1620 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 478 VExpr_Single: '(' FExpr ',' FExpr ',' FExpr . ')' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1769 + + +state 1621 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 475 VExpr_Single: '{' FExpr ',' FExpr ',' FExpr . ',' FExpr ',' FExpr '}' + 476 | '{' FExpr ',' FExpr ',' FExpr . ',' FExpr '}' + 477 | '{' FExpr ',' FExpr ',' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1770 + ',' shift, and go to state 1771 + + +state 1622 + + 200 Transform: tDilate '{' VExpr ',' FExpr '}' '{' . MultipleShape '}' + + tSTRING shift, and go to state 411 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + + $default reduce using rule 207 (ListOfShapes) + + Transform go to state 412 + MultipleShape go to state 1772 + ListOfShapes go to state 414 + + +state 1623 + + 201 Transform: tDilate '{' VExpr ',' VExpr '}' '{' . MultipleShape '}' + + tSTRING shift, and go to state 411 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + + $default reduce using rule 207 (ListOfShapes) + + Transform go to state 412 + MultipleShape go to state 1773 + ListOfShapes go to state 414 + + +state 1624 + + 286 Extrude: tExtrude '{' ListOfShapes '}' tUsing tWire '{' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1774 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1625 + + 302 ExtrudeParameter: tUsing tSTRING '[' . FExpr ']' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1775 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1626 + + 296 ExtrudeParameter: tRecombine FExpr tEND . + + $default reduce using rule 296 (ExtrudeParameter) + + +state 1627 + + 292 ExtrudeParameter: tLayers '{' FExpr . '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 481 ListOfDouble: FExpr . + 486 | FExpr . '*' '{' RecursiveListOfDouble '}' + 490 FExpr_Multi: FExpr . '*' FExpr_Multi + 491 | FExpr . tDOTS FExpr + 492 | FExpr . tDOTS FExpr tDOTS FExpr + + tDOTS shift, and go to state 531 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 545 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1776 + + $default reduce using rule 481 (ListOfDouble) + + +state 1628 + + 293 ExtrudeParameter: tLayers '{' ListOfDouble . ',' ListOfDouble '}' tEND + + ',' shift, and go to state 1777 + + +state 1629 + + 301 ExtrudeParameter: tHole '(' FExpr . ')' tAFFECT ListOfDouble tUsing FExpr tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1778 + + +state 1630 + + 298 ExtrudeParameter: tQuadTriAddVerts tRecombLaterals tEND . + + $default reduce using rule 298 (ExtrudeParameter) + + +state 1631 + + 300 ExtrudeParameter: tQuadTriNoNewVerts tRecombLaterals tEND . + + $default reduce using rule 300 (ExtrudeParameter) + + +state 1632 + + 276 Extrude: tExtrude '{' VExpr ',' VExpr ',' FExpr . '}' '{' ListOfShapes '}' + 281 | tExtrude '{' VExpr ',' VExpr ',' FExpr . '}' '{' ListOfShapes @10 ExtrudeParameters '}' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1779 + + +state 1633 + + 277 Extrude: tExtrude '{' VExpr ',' VExpr ',' VExpr . ',' FExpr '}' '{' ListOfShapes '}' + 283 | tExtrude '{' VExpr ',' VExpr ',' VExpr . ',' FExpr '}' '{' ListOfShapes @11 ExtrudeParameters '}' + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 1780 + + +state 1634 + + 279 Extrude: tExtrude VExpr '{' ListOfShapes @9 ExtrudeParameters '}' . + + $default reduce using rule 279 (Extrude) + + +state 1635 + + 223 LevelSet: tLevelset tSTRING '(' FExpr ')' tAFFECT tBIGSTR . tEND + + tEND shift, and go to state 1781 + + +state 1636 + + 222 LevelSet: tLevelset tSTRING '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1782 + + +state 1637 + + 214 LevelSet: tLevelset tPoint '(' FExpr ')' tAFFECT '{' . RecursiveListOfListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + RecursiveListOfListOfDouble go to state 1783 + ListOfDouble go to state 1699 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1638 + + 217 LevelSet: tLevelset tSphere '(' FExpr ')' tAFFECT '{' . VExpr ',' RecursiveListOfDouble '}' tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 1784 + VExpr_Single go to state 292 + + +state 1639 + + 218 LevelSet: tLevelset tCylinder '(' FExpr ')' tAFFECT '{' . VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 1785 + VExpr_Single go to state 292 + + +state 1640 + + 219 LevelSet: tLevelset tCone '(' FExpr ')' tAFFECT '{' . VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 1786 + VExpr_Single go to state 292 + + +state 1641 + + 220 LevelSet: tLevelset tEllipsoid '(' FExpr ')' tAFFECT '{' . VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 1787 + VExpr_Single go to state 292 + + +state 1642 + + 221 LevelSet: tLevelset tQuadric '(' FExpr ')' tAFFECT '{' . VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 1788 + VExpr_Single go to state 292 + + +state 1643 + + 215 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT '{' . VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 216 | tLevelset tPlane '(' FExpr ')' tAFFECT '{' . VExpr ',' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 483 ListOfDouble: '{' . '}' + 484 | '{' . RecursiveListOfDouble '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 597 + '-' shift, and go to state 1789 + '!' shift, and go to state 248 + '(' shift, and go to state 599 + '{' shift, and go to state 290 + '}' shift, and go to state 527 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + VExpr go to state 1790 + VExpr_Single go to state 292 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 528 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1644 + + 213 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT ListOfDouble . tEND + + tEND shift, and go to state 1791 + + +state 1645 + + 185 Shape: tThickSolid '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 185 (Shape) + + +state 1646 + + 204 Transform: tSplit tLine '(' FExpr ')' '{' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1792 + ',' shift, and go to state 747 + + +state 1647 + + 203 Transform: tIntersect tLine '{' RecursiveListOfDouble '}' tSurface '{' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1793 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1648 + + 331 Constraints: tMeshAlgorithm tSurface '{' RecursiveListOfDouble '}' tAFFECT FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 1794 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1649 + + 36 View: tCopyOptions tSTRING '[' FExpr ',' FExpr ']' . tEND + + tEND shift, and go to state 1795 + + +state 1650 + + 164 Shape: tBSpline '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 164 (Shape) + + +state 1651 + + 165 Shape: tBezier '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 165 (Shape) + + +state 1652 + + 166 Shape: tNurbs '(' FExpr ')' tAFFECT ListOfDouble tNurbsKnots . ListOfDouble tNurbsOrder FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1796 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1653 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 525 ColorExpr: '{' FExpr ',' FExpr ',' FExpr . ',' FExpr '}' + 526 | '{' FExpr ',' FExpr ',' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1797 + ',' shift, and go to state 1798 + + +state 1654 + + 263 Loop: tFor tSTRING tIn '{' FExpr tDOTS FExpr . '}' + 264 | tFor tSTRING tIn '{' FExpr tDOTS FExpr . tDOTS FExpr '}' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tDOTS shift, and go to state 1799 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1800 + + +state 1655 + + 262 Loop: tFor '(' FExpr tDOTS FExpr tDOTS FExpr . ')' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1801 + + +state 1656 + + 101 Affectation: tField '[' FExpr ']' tAFFECT tSTRING tEND . + + $default reduce using rule 101 (Affectation) + + +state 1657 + + 105 Affectation: tField '[' FExpr ']' '.' tSTRING tEND . + + $default reduce using rule 105 (Affectation) + + +state 1658 + + 102 Affectation: tField '[' FExpr ']' '.' tSTRING tAFFECT . FExpr tEND + 103 | tField '[' FExpr ']' '.' tSTRING tAFFECT . StringExpr tEND + 104 | tField '[' FExpr ']' '.' tSTRING tAFFECT . '{' RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tTextAttributes shift, and go to state 224 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tNameStruct shift, and go to state 363 + tDimNameSpace shift, and go to state 229 + tDefineString shift, and go to state 364 + tGetValue shift, and go to state 237 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGetForcedStr shift, and go to state 368 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 1802 + '#' shift, and go to state 251 + + FExpr go to state 1803 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringExpr go to state 1804 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1659 + + 570 StringExpr: tSprintf LP StringExprVar ',' RecursiveListOfDouble RP . + + $default reduce using rule 570 (StringExpr) + + +state 1660 + + 561 StringExpr: tStrReplace '(' StringExprVar ',' StringExprVar ',' . StringExprVar ')' + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 1805 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1661 + + 567 StringExpr: tStrSub LP StringExprVar ',' FExpr ',' . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1806 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1662 + + 568 StringExpr: tStrSub LP StringExprVar ',' FExpr RP . + + $default reduce using rule 568 (StringExpr) + + +state 1663 + + 566 StringExpr: tStrChoice LP FExpr ',' StringExprVar ',' . StringExprVar RP + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 1807 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1664 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 579 NameStruct_Arg: String__Index tSCOPE '#' FExpr . + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 579 (NameStruct_Arg) + + +state 1665 + + 139 CharParameterOption: tSTRING . FExpr + 140 | tSTRING . StringExpr + 142 | tSTRING . '{' RecursiveListOfStringExprVar '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tTextAttributes shift, and go to state 224 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tNameStruct shift, and go to state 363 + tDimNameSpace shift, and go to state 229 + tDefineString shift, and go to state 364 + tGetValue shift, and go to state 237 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGetForcedStr shift, and go to state 368 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 1808 + '#' shift, and go to state 251 + + FExpr go to state 1809 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringExpr go to state 1810 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1666 + + 141 CharParameterOption: tMacro . StringExpr + + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + + StringExpr go to state 1811 + + +state 1667 + + 136 CharParameterOptionsOrNone: ',' CharParameterOptions . + 138 CharParameterOptions: CharParameterOptions . ',' CharParameterOption + + ',' shift, and go to state 1812 + + $default reduce using rule 136 (CharParameterOptionsOrNone) + + +state 1668 + + 137 CharParameterOptions: CharParameterOption . + + $default reduce using rule 137 (CharParameterOptions) + + +state 1669 + + 576 StringExpr: tDefineString LP StringExpr @15 CharParameterOptionsOrNone RP . + + $default reduce using rule 576 (StringExpr) + + +state 1670 + + 553 StringExpr: tGetStringValue '(' StringExprVar ',' StringExprVar ')' . + + $default reduce using rule 553 (StringExpr) + + +state 1671 + + 555 StringExpr: tGetString LP StringExprVar ',' StringExprVar RP . + + $default reduce using rule 555 (StringExpr) + + +state 1672 + + 557 StringExpr: tGetForcedStr '(' Struct_FullName '.' tSTRING_Member_Float GetForcedStr_Default . ')' + + ')' shift, and go to state 1813 + + +state 1673 + + 260 Slide: tSlide '(' '{' RecursiveListOfDouble '}' ',' StringExpr . ',' StringExpr ')' tEND + + ',' shift, and go to state 1814 + + +state 1674 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 584 StringIndex: tStringToName '[' StringExprVar ']' '~' '{' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1815 + + +state 1675 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 315 BooleanShape: BooleanOperator '(' FExpr ')' tAFFECT '{' ListOfShapes . BooleanOption '}' '{' ListOfShapes BooleanOption '}' tEND + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tRecursive shift, and go to state 986 + tThickSolid shift, and go to state 70 + tDelete shift, and go to state 987 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + + $default reduce using rule 308 (BooleanOption) + + Shape go to state 719 + BooleanOption go to state 1816 + + +state 1676 + + 312 BooleanOption: tRecursive tDelete FExpr tEND . + + $default reduce using rule 312 (BooleanOption) + + +state 1677 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 313 Boolean: BooleanOperator '{' ListOfShapes BooleanOption '}' '{' ListOfShapes . BooleanOption '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tRecursive shift, and go to state 986 + tThickSolid shift, and go to state 70 + tDelete shift, and go to state 987 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + + $default reduce using rule 308 (BooleanOption) + + Shape go to state 719 + BooleanOption go to state 1817 + + +state 1678 + + 365 Homology: HomologyCommand '(' ListOfDouble ')' '{' ListOfDouble ',' . ListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1818 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1679 + + 364 Homology: HomologyCommand '{' ListOfDouble ',' ListOfDouble '}' tEND . + + $default reduce using rule 364 (Homology) + + +state 1680 + + 84 Affectation: String__Index '(' FExpr ')' NumericAffectation FExpr tEND . + + $default reduce using rule 84 (Affectation) + + +state 1681 + + 62 NumericAffectation: tAFFECT . + 91 Affectation: String__Index '[' FExpr ']' '.' tSTRING tAFFECT . StringExpr tEND + + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + + $default reduce using rule 62 (NumericAffectation) + + StringExpr go to state 1819 + + +state 1682 + + 93 Affectation: String__Index '[' FExpr ']' '.' tSTRING NumericAffectation . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1820 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1683 + + 95 Affectation: String__Index '[' FExpr ']' '.' tSTRING NumericIncrement . tEND + + tEND shift, and go to state 1821 + + +state 1684 + + 97 Affectation: String__Index '[' FExpr ']' '.' tColor '.' . tSTRING tAFFECT ColorExpr tEND + + tSTRING shift, and go to state 1822 + + +state 1685 + + 99 Affectation: String__Index '[' FExpr ']' '.' tColorTable tAFFECT . ListOfColor tEND + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + '{' shift, and go to state 1282 + + ListOfColor go to state 1823 + StringIndex go to state 131 + String__Index go to state 1284 + + +state 1686 + + 82 Affectation: String__Index '[' FExpr ']' NumericAffectation FExpr tEND . + + $default reduce using rule 82 (Affectation) + + +state 1687 + + 96 Affectation: String__Index '.' tColor '.' tSTRING tAFFECT ColorExpr . tEND + + tEND shift, and go to state 1824 + + +state 1688 + + 529 ListOfColor: '{' RecursiveListOfColor '}' . + + $default reduce using rule 529 (ListOfColor) + + +state 1689 + + 532 RecursiveListOfColor: RecursiveListOfColor ',' . ColorExpr + + tSTRING shift, and go to state 333 + tStringToName shift, and go to state 107 + '{' shift, and go to state 334 + + ColorExpr go to state 1825 + StringIndex go to state 131 + String__Index go to state 336 + + +state 1690 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 530 ListOfColor: String__Index '[' FExpr . ']' '.' tColorTable + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ']' shift, and go to state 1826 + + +state 1691 + + 81 Affectation: String__Index LP '{' RecursiveListOfDouble '}' RP NumericAffectation . ListOfDouble tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1827 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1692 + + 87 Affectation: String__Index LP RP tAFFECT tStr LP RP . tEND + + tEND shift, and go to state 1828 + + +state 1693 + + 88 Affectation: String__Index LP RP tAFFECT tStr LP RecursiveListOfStringExprVar . RP tEND + 581 RecursiveListOfStringExprVar: RecursiveListOfStringExprVar . ',' StringExprVar + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + ',' shift, and go to state 732 + + RP go to state 1829 + + +state 1694 + + 89 Affectation: String__Index LP RP tAFFECTPLUS tStr LP RecursiveListOfStringExprVar . RP tEND + 581 RecursiveListOfStringExprVar: RecursiveListOfStringExprVar . ',' StringExprVar + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + ',' shift, and go to state 732 + + RP go to state 1830 + + +state 1695 + + 49 Element: tSTRING @1 '(' . ElementCoords ')' @2 '{' ElementValues '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + ElementCoords go to state 1831 + FExpr go to state 1832 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1696 + + 53 Text2D: tText2D '(' FExpr . ',' FExpr ',' FExpr ')' @3 '{' Text2DValues '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1833 + + +state 1697 + + 57 Text3D: tText3D '(' FExpr . ',' FExpr ',' FExpr ',' FExpr ')' @4 '{' Text3DValues '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1834 + + +state 1698 + + 58 InterpolationMatrix: tInterpolationScheme '{' RecursiveListOfListOfDouble . '}' '{' RecursiveListOfListOfDouble '}' tEND + 59 | tInterpolationScheme '{' RecursiveListOfListOfDouble . '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' tEND + 480 RecursiveListOfListOfDouble: RecursiveListOfListOfDouble . ',' ListOfDouble + + '}' shift, and go to state 1835 + ',' shift, and go to state 1836 + + +state 1699 + + 479 RecursiveListOfListOfDouble: ListOfDouble . + + $default reduce using rule 479 (RecursiveListOfListOfDouble) + + +state 1700 + + 61 Time: tTime @5 '{' . ElementValues '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + ElementValues go to state 1837 + FExpr go to state 1838 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1701 + + 447 FExpr_Single: String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' . FExpr ')' + 540 StringExprVar: String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1839 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1702 + + 448 FExpr_Single: String__Index '[' FExpr ']' '.' tSTRING . + 450 | String__Index '[' FExpr ']' '.' tSTRING . NumericIncrement + 541 StringExprVar: String__Index '[' FExpr ']' '.' tSTRING . + + tMINUSMINUS shift, and go to state 399 + tPLUSPLUS shift, and go to state 400 + + '{' reduce using rule 541 (StringExprVar) + $default reduce using rule 448 (FExpr_Single) + + NumericIncrement go to state 1749 + + +state 1703 + + 243 Command: String__Index String__Index '[' FExpr ']' StringExprVar tEND . + + $default reduce using rule 243 (Command) + + +state 1704 + + 446 FExpr_Single: String__Index '.' tSTRING_Member_Float '(' FExpr ')' . + 539 StringExprVar: String__Index '.' tSTRING_Member_Float '(' FExpr ')' . + + '{' reduce using rule 539 (StringExprVar) + $default reduce using rule 446 (FExpr_Single) + + +state 1705 + + 244 Command: String__Index String__Index String__Index '[' FExpr ']' tEND . + + $default reduce using rule 244 (Command) + + +state 1706 + + 209 ListOfShapes: ListOfShapes tPoint '{' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 209 (ListOfShapes) + + +state 1707 + + 210 ListOfShapes: ListOfShapes tLine '{' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 210 (ListOfShapes) + + +state 1708 + + 211 ListOfShapes: ListOfShapes tSurface '{' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 211 (ListOfShapes) + + +state 1709 + + 212 ListOfShapes: ListOfShapes tVolume '{' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 212 (ListOfShapes) + + +state 1710 + + 191 Shape: tRuled tThruSections '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1394 + + +state 1711 + + 167 Shape: tCompound tLine '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1406 + + +state 1712 + + 186 Shape: tCompound tSurface '(' FExpr ')' . tAFFECT ListOfDouble tEND + 187 | tCompound tSurface '(' FExpr ')' . tAFFECT ListOfDouble tSTRING '{' RecursiveListOfListOfDouble '}' tEND + + tAFFECT shift, and go to state 1407 + + +state 1713 + + 192 Shape: tCompound tVolume '(' FExpr ')' . tAFFECT ListOfDouble tEND + + tAFFECT shift, and go to state 1408 + + +state 1714 + + 32 Printf: tPrintf '(' StringExprVar ',' RecursiveListOfDouble ')' SendToFile StringExprVar . tEND + + tEND shift, and go to state 1840 + + +state 1715 + + 540 StringExprVar: String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' . FExpr ')' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1841 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1716 + + 541 StringExprVar: String__Index '[' FExpr ']' '.' tSTRING . + + $default reduce using rule 541 (StringExprVar) + + +state 1717 + + 539 StringExprVar: String__Index '.' tSTRING_Member_Float '(' FExpr ')' . + + $default reduce using rule 539 (StringExprVar) + + +state 1718 + + 253 Command: tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' . FExpr ',' FExpr ',' FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1842 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1719 + + 114 DefineConstants: DefineConstants Comma String__Index tAFFECT '{' ListOfDouble . @6 FloatParameterOptionsOrNone '}' + + $default reduce using rule 113 (@6) + + @6 go to state 1843 + + +state 1720 + + 119 DefineConstants: DefineConstants Comma String__Index tAFFECT '{' StringExpr . @8 CharParameterOptionsOrNone '}' + + $default reduce using rule 118 (@8) + + @8 go to state 1844 + + +state 1721 + + 116 DefineConstants: DefineConstants Comma String__Index LP RP tAFFECT . '{' ListOfDouble @7 FloatParameterOptionsOrNone '}' + + '{' shift, and go to state 1845 + + +state 1722 + + 123 Enumeration: Enumeration . ',' FExpr tAFFECT StringExpr + 133 FloatParameterOption: tSTRING '{' Enumeration . '}' + + '}' shift, and go to state 1846 + ',' shift, and go to state 1847 + + +state 1723 + + 122 Enumeration: FExpr . tAFFECT StringExpr + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 490 FExpr_Multi: FExpr . '*' FExpr_Multi + 491 | FExpr . tDOTS FExpr + 492 | FExpr . tDOTS FExpr tDOTS FExpr + 521 RecursiveListOfDouble: FExpr . + + tAFFECT shift, and go to state 1848 + tDOTS shift, and go to state 531 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 745 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 521 (RecursiveListOfDouble) + + +state 1724 + + 124 Enumeration: FExpr_Multi . tAFFECT String__Index '(' ')' + 522 RecursiveListOfDouble: FExpr_Multi . + + tAFFECT shift, and go to state 1849 + + $default reduce using rule 522 (RecursiveListOfDouble) + + +state 1725 + + 130 FloatParameterOptions: FloatParameterOptions ',' FloatParameterOption . + + $default reduce using rule 130 (FloatParameterOptions) + + +state 1726 + + 342 Constraints: tPoint '{' RecursiveListOfDouble '}' tIn tSurface '{' FExpr . '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1850 + + +state 1727 + + 344 Constraints: tPoint '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr . '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1851 + + +state 1728 + + 158 CircleOptions: tPlane VExpr . + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + + $default reduce using rule 158 (CircleOptions) + + +state 1729 + + 162 Shape: tCircle '(' FExpr ')' tAFFECT ListOfDouble CircleOptions tEND . + + $default reduce using rule 162 (Shape) + + +state 1730 + + 163 Shape: tEllipse '(' FExpr ')' tAFFECT ListOfDouble CircleOptions tEND . + + $default reduce using rule 163 (Shape) + + +state 1731 + + 169 Shape: tLine tSTRING '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 169 (Shape) + + +state 1732 + + 343 Constraints: tLine '{' RecursiveListOfDouble '}' tIn tSurface '{' FExpr . '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1852 + + +state 1733 + + 345 Constraints: tLine '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr . '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1853 + + +state 1734 + + 188 Shape: tSurface tSTRING '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 188 (Shape) + + +state 1735 + + 156 InSphereCenter: tIn tSphere . '{' FExpr '}' + + '{' shift, and go to state 1854 + + +state 1736 + + 171 Shape: tSurface '(' FExpr ')' tAFFECT ListOfDouble InSphereCenter tEND . + + $default reduce using rule 171 (Shape) + + +state 1737 + + 346 Constraints: tSurface '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr . '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1855 + + +state 1738 + + 175 Shape: tParametric tSurface '(' FExpr ')' tAFFECT tBIGSTR tBIGSTR . tBIGSTR tEND + + tBIGSTR shift, and go to state 1856 + + +state 1739 + + 259 Command: tAdaptMesh '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' . RecursiveListOfListOfDouble '}' '{' FExpr ',' FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + RecursiveListOfListOfDouble go to state 1857 + ListOfDouble go to state 1699 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1740 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 515 FExpr_Multi: tLinSpace LP FExpr ',' FExpr ',' FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1858 + + +state 1741 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 516 FExpr_Multi: tLogSpace LP FExpr ',' FExpr ',' FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1859 + + +state 1742 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 518 FExpr_Multi: tCatenary LP FExpr ',' FExpr ',' FExpr . ',' FExpr ',' FExpr ',' FExpr RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1860 + + +state 1743 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 502 FExpr_Multi: tPoint tIn tBoundingBox '{' FExpr ',' FExpr . ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1861 + + +state 1744 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 503 FExpr_Multi: tLine tIn tBoundingBox '{' FExpr ',' FExpr . ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1862 + + +state 1745 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 504 FExpr_Multi: tSurface tIn tBoundingBox '{' FExpr ',' FExpr . ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1863 + + +state 1746 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 505 FExpr_Multi: tVolume tIn tBoundingBox '{' FExpr ',' FExpr . ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1864 + + +state 1747 + + 435 FExpr_Single: tGetForced '(' Struct_FullName '.' tSTRING_Member_Float GetForced_Default ')' . + + $default reduce using rule 435 (FExpr_Single) + + +state 1748 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 447 FExpr_Single: String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr . ')' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1865 + + +state 1749 + + 450 FExpr_Single: String__Index '[' FExpr ']' '.' tSTRING NumericIncrement . + + $default reduce using rule 450 (FExpr_Single) + + +state 1750 + + 289 Extrude: tFillet '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1866 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1751 + + 170 Shape: tPlane tSurface '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 170 (Shape) + + +state 1752 + + 172 Shape: tRuled tSurface '(' FExpr ')' tAFFECT ListOfDouble InSphereCenter . tEND + + tEND shift, and go to state 1867 + + +state 1753 + + 191 Shape: tRuled tThruSections '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 191 (Shape) + + +state 1754 + + 317 TransfiniteType: tUsing tSTRING FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 317 (TransfiniteType) + + +state 1755 + + 193 Shape: tPhysical tPoint '(' PhysicalId0 ')' NumericAffectation ListOfDouble tEND . + + $default reduce using rule 193 (Shape) + + +state 1756 + + 194 Shape: tPhysical tLine '(' PhysicalId1 ')' NumericAffectation ListOfDouble tEND . + + $default reduce using rule 194 (Shape) + + +state 1757 + + 195 Shape: tPhysical tSurface '(' PhysicalId2 ')' NumericAffectation ListOfDouble tEND . + + $default reduce using rule 195 (Shape) + + +state 1758 + + 196 Shape: tPhysical tVolume '(' PhysicalId3 ')' NumericAffectation ListOfDouble tEND . + + $default reduce using rule 196 (Shape) + + +state 1759 + + 167 Shape: tCompound tLine '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 167 (Shape) + + +state 1760 + + 187 Shape: tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble tSTRING . '{' RecursiveListOfListOfDouble '}' tEND + + '{' shift, and go to state 1868 + + +state 1761 + + 186 Shape: tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 186 (Shape) + + +state 1762 + + 192 Shape: tCompound tVolume '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 192 (Shape) + + +state 1763 + + 335 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble . '}' PeriodicTransform tEND + 337 | tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble . '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 339 | tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble . '}' tTranslate VExpr tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1869 + ',' shift, and go to state 747 + + +state 1764 + + 336 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble . '}' PeriodicTransform tEND + 338 | tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble . '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 340 | tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble . '}' tTranslate VExpr tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1870 + ',' shift, and go to state 747 + + +state 1765 + + 341 Constraints: tPeriodic tSurface FExpr '{' RecursiveListOfDouble '}' tAFFECT FExpr . '{' RecursiveListOfDouble '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '{' shift, and go to state 1871 + + +state 1766 + + 106 Affectation: tPlugin '(' tSTRING ')' '.' tSTRING tAFFECT FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 1872 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1767 + + 107 Affectation: tPlugin '(' tSTRING ')' '.' tSTRING tAFFECT StringExpr . tEND + + tEND shift, and go to state 1873 + + +state 1768 + + 198 Transform: tRotate '{' VExpr ',' VExpr ',' FExpr '}' . '{' MultipleShape '}' + + '{' shift, and go to state 1874 + + +state 1769 + + 478 VExpr_Single: '(' FExpr ',' FExpr ',' FExpr ')' . + + $default reduce using rule 478 (VExpr_Single) + + +state 1770 + + 477 VExpr_Single: '{' FExpr ',' FExpr ',' FExpr '}' . + + $default reduce using rule 477 (VExpr_Single) + + +state 1771 + + 475 VExpr_Single: '{' FExpr ',' FExpr ',' FExpr ',' . FExpr ',' FExpr '}' + 476 | '{' FExpr ',' FExpr ',' FExpr ',' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1875 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1772 + + 200 Transform: tDilate '{' VExpr ',' FExpr '}' '{' MultipleShape . '}' + + '}' shift, and go to state 1876 + + +state 1773 + + 201 Transform: tDilate '{' VExpr ',' VExpr '}' '{' MultipleShape . '}' + + '}' shift, and go to state 1877 + + +state 1774 + + 286 Extrude: tExtrude '{' ListOfShapes '}' tUsing tWire '{' FExpr . '}' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1878 + + +state 1775 + + 302 ExtrudeParameter: tUsing tSTRING '[' FExpr . ']' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ']' shift, and go to state 1879 + + +state 1776 + + 292 ExtrudeParameter: tLayers '{' FExpr '}' . tEND + + tEND shift, and go to state 1880 + + +state 1777 + + 293 ExtrudeParameter: tLayers '{' ListOfDouble ',' . ListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1881 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1778 + + 301 ExtrudeParameter: tHole '(' FExpr ')' . tAFFECT ListOfDouble tUsing FExpr tEND + + tAFFECT shift, and go to state 1882 + + +state 1779 + + 276 Extrude: tExtrude '{' VExpr ',' VExpr ',' FExpr '}' . '{' ListOfShapes '}' + 281 | tExtrude '{' VExpr ',' VExpr ',' FExpr '}' . '{' ListOfShapes @10 ExtrudeParameters '}' + + '{' shift, and go to state 1883 + + +state 1780 + + 277 Extrude: tExtrude '{' VExpr ',' VExpr ',' VExpr ',' . FExpr '}' '{' ListOfShapes '}' + 283 | tExtrude '{' VExpr ',' VExpr ',' VExpr ',' . FExpr '}' '{' ListOfShapes @11 ExtrudeParameters '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1884 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1781 + + 223 LevelSet: tLevelset tSTRING '(' FExpr ')' tAFFECT tBIGSTR tEND . + + $default reduce using rule 223 (LevelSet) + + +state 1782 + + 222 LevelSet: tLevelset tSTRING '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 222 (LevelSet) + + +state 1783 + + 214 LevelSet: tLevelset tPoint '(' FExpr ')' tAFFECT '{' RecursiveListOfListOfDouble . '}' tEND + 480 RecursiveListOfListOfDouble: RecursiveListOfListOfDouble . ',' ListOfDouble + + '}' shift, and go to state 1885 + ',' shift, and go to state 1836 + + +state 1784 + + 217 LevelSet: tLevelset tSphere '(' FExpr ')' tAFFECT '{' VExpr . ',' RecursiveListOfDouble '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 1886 + + +state 1785 + + 218 LevelSet: tLevelset tCylinder '(' FExpr ')' tAFFECT '{' VExpr . ',' VExpr ',' RecursiveListOfDouble '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 1887 + + +state 1786 + + 219 LevelSet: tLevelset tCone '(' FExpr ')' tAFFECT '{' VExpr . ',' VExpr ',' RecursiveListOfDouble '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 1888 + + +state 1787 + + 220 LevelSet: tLevelset tEllipsoid '(' FExpr ')' tAFFECT '{' VExpr . ',' VExpr ',' RecursiveListOfDouble '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 1889 + + +state 1788 + + 221 LevelSet: tLevelset tQuadric '(' FExpr ')' tAFFECT '{' VExpr . ',' VExpr ',' RecursiveListOfDouble '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 1890 + + +state 1789 + + 368 FExpr: '-' . FExpr + 471 VExpr: '-' . VExpr + 489 FExpr_Multi: '-' . FExpr_Multi + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 597 + '-' shift, and go to state 1789 + '!' shift, and go to state 248 + '(' shift, and go to state 599 + '{' shift, and go to state 290 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 523 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + VExpr go to state 589 + VExpr_Single go to state 292 + FExpr_Multi go to state 524 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1790 + + 215 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr . ',' VExpr ',' RecursiveListOfDouble '}' tEND + 216 | tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr . ',' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 1891 + + +state 1791 + + 213 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT ListOfDouble tEND . + + $default reduce using rule 213 (LevelSet) + + +state 1792 + + 204 Transform: tSplit tLine '(' FExpr ')' '{' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 1892 + + +state 1793 + + 203 Transform: tIntersect tLine '{' RecursiveListOfDouble '}' tSurface '{' FExpr . '}' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1893 + + +state 1794 + + 331 Constraints: tMeshAlgorithm tSurface '{' RecursiveListOfDouble '}' tAFFECT FExpr tEND . + + $default reduce using rule 331 (Constraints) + + +state 1795 + + 36 View: tCopyOptions tSTRING '[' FExpr ',' FExpr ']' tEND . + + $default reduce using rule 36 (View) + + +state 1796 + + 166 Shape: tNurbs '(' FExpr ')' tAFFECT ListOfDouble tNurbsKnots ListOfDouble . tNurbsOrder FExpr tEND + + tNurbsOrder shift, and go to state 1894 + + +state 1797 + + 526 ColorExpr: '{' FExpr ',' FExpr ',' FExpr '}' . + + $default reduce using rule 526 (ColorExpr) + + +state 1798 + + 525 ColorExpr: '{' FExpr ',' FExpr ',' FExpr ',' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1895 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1799 + + 264 Loop: tFor tSTRING tIn '{' FExpr tDOTS FExpr tDOTS . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1896 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1800 + + 263 Loop: tFor tSTRING tIn '{' FExpr tDOTS FExpr '}' . + + $default reduce using rule 263 (Loop) + + +state 1801 + + 262 Loop: tFor '(' FExpr tDOTS FExpr tDOTS FExpr ')' . + + $default reduce using rule 262 (Loop) + + +state 1802 + + 104 Affectation: tField '[' FExpr ']' '.' tSTRING tAFFECT '{' . RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1897 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1803 + + 102 Affectation: tField '[' FExpr ']' '.' tSTRING tAFFECT FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 1898 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1804 + + 103 Affectation: tField '[' FExpr ']' '.' tSTRING tAFFECT StringExpr . tEND + + tEND shift, and go to state 1899 + + +state 1805 + + 561 StringExpr: tStrReplace '(' StringExprVar ',' StringExprVar ',' StringExprVar . ')' + + ')' shift, and go to state 1900 + + +state 1806 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 567 StringExpr: tStrSub LP StringExprVar ',' FExpr ',' FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1901 + + +state 1807 + + 566 StringExpr: tStrChoice LP FExpr ',' StringExprVar ',' StringExprVar . RP + + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 1902 + + +state 1808 + + 142 CharParameterOption: tSTRING '{' . RecursiveListOfStringExprVar '}' + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 423 + StringExpr go to state 419 + RecursiveListOfStringExprVar go to state 1903 + StringIndex go to state 131 + String__Index go to state 420 + + +state 1809 + + 139 CharParameterOption: tSTRING FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 139 (CharParameterOption) + + +state 1810 + + 140 CharParameterOption: tSTRING StringExpr . + + $default reduce using rule 140 (CharParameterOption) + + +state 1811 + + 141 CharParameterOption: tMacro StringExpr . + + $default reduce using rule 141 (CharParameterOption) + + +state 1812 + + 138 CharParameterOptions: CharParameterOptions ',' . CharParameterOption + + tSTRING shift, and go to state 1665 + tMacro shift, and go to state 1666 + + CharParameterOption go to state 1904 + + +state 1813 + + 557 StringExpr: tGetForcedStr '(' Struct_FullName '.' tSTRING_Member_Float GetForcedStr_Default ')' . + + $default reduce using rule 557 (StringExpr) + + +state 1814 + + 260 Slide: tSlide '(' '{' RecursiveListOfDouble '}' ',' StringExpr ',' . StringExpr ')' tEND + + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + + StringExpr go to state 1905 + + +state 1815 + + 584 StringIndex: tStringToName '[' StringExprVar ']' '~' '{' FExpr '}' . + + $default reduce using rule 584 (StringIndex) + + +state 1816 + + 315 BooleanShape: BooleanOperator '(' FExpr ')' tAFFECT '{' ListOfShapes BooleanOption . '}' '{' ListOfShapes BooleanOption '}' tEND + + '}' shift, and go to state 1906 + + +state 1817 + + 313 Boolean: BooleanOperator '{' ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption . '}' + + '}' shift, and go to state 1907 + + +state 1818 + + 365 Homology: HomologyCommand '(' ListOfDouble ')' '{' ListOfDouble ',' ListOfDouble . '}' tEND + + '}' shift, and go to state 1908 + + +state 1819 + + 91 Affectation: String__Index '[' FExpr ']' '.' tSTRING tAFFECT StringExpr . tEND + + tEND shift, and go to state 1909 + + +state 1820 + + 93 Affectation: String__Index '[' FExpr ']' '.' tSTRING NumericAffectation FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 1910 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1821 + + 95 Affectation: String__Index '[' FExpr ']' '.' tSTRING NumericIncrement tEND . + + $default reduce using rule 95 (Affectation) + + +state 1822 + + 97 Affectation: String__Index '[' FExpr ']' '.' tColor '.' tSTRING . tAFFECT ColorExpr tEND + + tAFFECT shift, and go to state 1911 + + +state 1823 + + 99 Affectation: String__Index '[' FExpr ']' '.' tColorTable tAFFECT ListOfColor . tEND + + tEND shift, and go to state 1912 + + +state 1824 + + 96 Affectation: String__Index '.' tColor '.' tSTRING tAFFECT ColorExpr tEND . + + $default reduce using rule 96 (Affectation) + + +state 1825 + + 532 RecursiveListOfColor: RecursiveListOfColor ',' ColorExpr . + + $default reduce using rule 532 (RecursiveListOfColor) + + +state 1826 + + 530 ListOfColor: String__Index '[' FExpr ']' . '.' tColorTable + + '.' shift, and go to state 1913 + + +state 1827 + + 81 Affectation: String__Index LP '{' RecursiveListOfDouble '}' RP NumericAffectation ListOfDouble . tEND + + tEND shift, and go to state 1914 + + +state 1828 + + 87 Affectation: String__Index LP RP tAFFECT tStr LP RP tEND . + + $default reduce using rule 87 (Affectation) + + +state 1829 + + 88 Affectation: String__Index LP RP tAFFECT tStr LP RecursiveListOfStringExprVar RP . tEND + + tEND shift, and go to state 1915 + + +state 1830 + + 89 Affectation: String__Index LP RP tAFFECTPLUS tStr LP RecursiveListOfStringExprVar RP . tEND + + tEND shift, and go to state 1916 + + +state 1831 + + 44 ElementCoords: ElementCoords . ',' FExpr + 49 Element: tSTRING @1 '(' ElementCoords . ')' @2 '{' ElementValues '}' tEND + + ')' shift, and go to state 1917 + ',' shift, and go to state 1918 + + +state 1832 + + 43 ElementCoords: FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 43 (ElementCoords) + + +state 1833 + + 53 Text2D: tText2D '(' FExpr ',' . FExpr ',' FExpr ')' @3 '{' Text2DValues '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1919 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1834 + + 57 Text3D: tText3D '(' FExpr ',' . FExpr ',' FExpr ',' FExpr ')' @4 '{' Text3DValues '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1920 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1835 + + 58 InterpolationMatrix: tInterpolationScheme '{' RecursiveListOfListOfDouble '}' . '{' RecursiveListOfListOfDouble '}' tEND + 59 | tInterpolationScheme '{' RecursiveListOfListOfDouble '}' . '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' tEND + + '{' shift, and go to state 1921 + + +state 1836 + + 480 RecursiveListOfListOfDouble: RecursiveListOfListOfDouble ',' . ListOfDouble + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1922 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1837 + + 46 ElementValues: ElementValues . ',' FExpr + 61 Time: tTime @5 '{' ElementValues . '}' tEND + + '}' shift, and go to state 1923 + ',' shift, and go to state 1924 + + +state 1838 + + 45 ElementValues: FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 45 (ElementValues) + + +state 1839 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 447 FExpr_Single: String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr . ')' + 540 StringExprVar: String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr . ')' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1925 + + +state 1840 + + 32 Printf: tPrintf '(' StringExprVar ',' RecursiveListOfDouble ')' SendToFile StringExprVar tEND . + + $default reduce using rule 32 (Printf) + + +state 1841 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 540 StringExprVar: String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr . ')' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 1926 + + +state 1842 + + 253 Command: tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr . ',' FExpr ',' FExpr '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1927 + + +state 1843 + + 114 DefineConstants: DefineConstants Comma String__Index tAFFECT '{' ListOfDouble @6 . FloatParameterOptionsOrNone '}' + + ',' shift, and go to state 1367 + + $default reduce using rule 125 (FloatParameterOptionsOrNone) + + FloatParameterOptionsOrNone go to state 1928 + + +state 1844 + + 119 DefineConstants: DefineConstants Comma String__Index tAFFECT '{' StringExpr @8 . CharParameterOptionsOrNone '}' + + ',' shift, and go to state 1469 + + $default reduce using rule 135 (CharParameterOptionsOrNone) + + CharParameterOptionsOrNone go to state 1929 + + +state 1845 + + 116 DefineConstants: DefineConstants Comma String__Index LP RP tAFFECT '{' . ListOfDouble @7 FloatParameterOptionsOrNone '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1930 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1846 + + 133 FloatParameterOption: tSTRING '{' Enumeration '}' . + + $default reduce using rule 133 (FloatParameterOption) + + +state 1847 + + 123 Enumeration: Enumeration ',' . FExpr tAFFECT StringExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1931 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1848 + + 122 Enumeration: FExpr tAFFECT . StringExpr + + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + + StringExpr go to state 1932 + + +state 1849 + + 124 Enumeration: FExpr_Multi tAFFECT . String__Index '(' ')' + + tSTRING shift, and go to state 150 + tStringToName shift, and go to state 107 + + StringIndex go to state 131 + String__Index go to state 1933 + + +state 1850 + + 342 Constraints: tPoint '{' RecursiveListOfDouble '}' tIn tSurface '{' FExpr '}' . tEND + + tEND shift, and go to state 1934 + + +state 1851 + + 344 Constraints: tPoint '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' . tEND + + tEND shift, and go to state 1935 + + +state 1852 + + 343 Constraints: tLine '{' RecursiveListOfDouble '}' tIn tSurface '{' FExpr '}' . tEND + + tEND shift, and go to state 1936 + + +state 1853 + + 345 Constraints: tLine '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' . tEND + + tEND shift, and go to state 1937 + + +state 1854 + + 156 InSphereCenter: tIn tSphere '{' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1938 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1855 + + 346 Constraints: tSurface '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' . tEND + + tEND shift, and go to state 1939 + + +state 1856 + + 175 Shape: tParametric tSurface '(' FExpr ')' tAFFECT tBIGSTR tBIGSTR tBIGSTR . tEND + + tEND shift, and go to state 1940 + + +state 1857 + + 259 Command: tAdaptMesh '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' RecursiveListOfListOfDouble . '}' '{' FExpr ',' FExpr '}' tEND + 480 RecursiveListOfListOfDouble: RecursiveListOfListOfDouble . ',' ListOfDouble + + '}' shift, and go to state 1941 + ',' shift, and go to state 1836 + + +state 1858 + + 515 FExpr_Multi: tLinSpace LP FExpr ',' FExpr ',' FExpr RP . + + $default reduce using rule 515 (FExpr_Multi) + + +state 1859 + + 516 FExpr_Multi: tLogSpace LP FExpr ',' FExpr ',' FExpr RP . + + $default reduce using rule 516 (FExpr_Multi) + + +state 1860 + + 518 FExpr_Multi: tCatenary LP FExpr ',' FExpr ',' FExpr ',' . FExpr ',' FExpr ',' FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1942 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1861 + + 502 FExpr_Multi: tPoint tIn tBoundingBox '{' FExpr ',' FExpr ',' . FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1943 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1862 + + 503 FExpr_Multi: tLine tIn tBoundingBox '{' FExpr ',' FExpr ',' . FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1944 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1863 + + 504 FExpr_Multi: tSurface tIn tBoundingBox '{' FExpr ',' FExpr ',' . FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1945 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1864 + + 505 FExpr_Multi: tVolume tIn tBoundingBox '{' FExpr ',' FExpr ',' . FExpr ',' FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1946 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1865 + + 447 FExpr_Single: String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' . + + $default reduce using rule 447 (FExpr_Single) + + +state 1866 + + 289 Extrude: tFillet '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' FExpr . '}' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1947 + + +state 1867 + + 172 Shape: tRuled tSurface '(' FExpr ')' tAFFECT ListOfDouble InSphereCenter tEND . + + $default reduce using rule 172 (Shape) + + +state 1868 + + 187 Shape: tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble tSTRING '{' . RecursiveListOfListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + RecursiveListOfListOfDouble go to state 1948 + ListOfDouble go to state 1699 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1869 + + 335 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' . PeriodicTransform tEND + 337 | tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' . tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 339 | tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' . tTranslate VExpr tEND + + tRotate shift, and go to state 1949 + tTranslate shift, and go to state 1950 + tAffine shift, and go to state 1951 + + $default reduce using rule 324 (PeriodicTransform) + + PeriodicTransform go to state 1952 + + +state 1870 + + 336 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' . PeriodicTransform tEND + 338 | tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' . tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + 340 | tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' . tTranslate VExpr tEND + + tRotate shift, and go to state 1953 + tTranslate shift, and go to state 1954 + tAffine shift, and go to state 1951 + + $default reduce using rule 324 (PeriodicTransform) + + PeriodicTransform go to state 1955 + + +state 1871 + + 341 Constraints: tPeriodic tSurface FExpr '{' RecursiveListOfDouble '}' tAFFECT FExpr '{' . RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1956 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1872 + + 106 Affectation: tPlugin '(' tSTRING ')' '.' tSTRING tAFFECT FExpr tEND . + + $default reduce using rule 106 (Affectation) + + +state 1873 + + 107 Affectation: tPlugin '(' tSTRING ')' '.' tSTRING tAFFECT StringExpr tEND . + + $default reduce using rule 107 (Affectation) + + +state 1874 + + 198 Transform: tRotate '{' VExpr ',' VExpr ',' FExpr '}' '{' . MultipleShape '}' + + tSTRING shift, and go to state 411 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + + $default reduce using rule 207 (ListOfShapes) + + Transform go to state 412 + MultipleShape go to state 1957 + ListOfShapes go to state 414 + + +state 1875 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 475 VExpr_Single: '{' FExpr ',' FExpr ',' FExpr ',' FExpr . ',' FExpr '}' + 476 | '{' FExpr ',' FExpr ',' FExpr ',' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1958 + ',' shift, and go to state 1959 + + +state 1876 + + 200 Transform: tDilate '{' VExpr ',' FExpr '}' '{' MultipleShape '}' . + + $default reduce using rule 200 (Transform) + + +state 1877 + + 201 Transform: tDilate '{' VExpr ',' VExpr '}' '{' MultipleShape '}' . + + $default reduce using rule 201 (Transform) + + +state 1878 + + 286 Extrude: tExtrude '{' ListOfShapes '}' tUsing tWire '{' FExpr '}' . + + $default reduce using rule 286 (Extrude) + + +state 1879 + + 302 ExtrudeParameter: tUsing tSTRING '[' FExpr ']' . tEND + + tEND shift, and go to state 1960 + + +state 1880 + + 292 ExtrudeParameter: tLayers '{' FExpr '}' tEND . + + $default reduce using rule 292 (ExtrudeParameter) + + +state 1881 + + 293 ExtrudeParameter: tLayers '{' ListOfDouble ',' ListOfDouble . '}' tEND + + '}' shift, and go to state 1961 + + +state 1882 + + 301 ExtrudeParameter: tHole '(' FExpr ')' tAFFECT . ListOfDouble tUsing FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 1962 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1883 + + 276 Extrude: tExtrude '{' VExpr ',' VExpr ',' FExpr '}' '{' . ListOfShapes '}' + 281 | tExtrude '{' VExpr ',' VExpr ',' FExpr '}' '{' . ListOfShapes @10 ExtrudeParameters '}' + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 1963 + + +state 1884 + + 277 Extrude: tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr . '}' '{' ListOfShapes '}' + 283 | tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr . '}' '{' ListOfShapes @11 ExtrudeParameters '}' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1964 + + +state 1885 + + 214 LevelSet: tLevelset tPoint '(' FExpr ')' tAFFECT '{' RecursiveListOfListOfDouble '}' . tEND + + tEND shift, and go to state 1965 + + +state 1886 + + 217 LevelSet: tLevelset tSphere '(' FExpr ')' tAFFECT '{' VExpr ',' . RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 1966 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1887 + + 218 LevelSet: tLevelset tCylinder '(' FExpr ')' tAFFECT '{' VExpr ',' . VExpr ',' RecursiveListOfDouble '}' tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 1967 + VExpr_Single go to state 292 + + +state 1888 + + 219 LevelSet: tLevelset tCone '(' FExpr ')' tAFFECT '{' VExpr ',' . VExpr ',' RecursiveListOfDouble '}' tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 1968 + VExpr_Single go to state 292 + + +state 1889 + + 220 LevelSet: tLevelset tEllipsoid '(' FExpr ')' tAFFECT '{' VExpr ',' . VExpr ',' RecursiveListOfDouble '}' tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 1969 + VExpr_Single go to state 292 + + +state 1890 + + 221 LevelSet: tLevelset tQuadric '(' FExpr ')' tAFFECT '{' VExpr ',' . VExpr ',' RecursiveListOfDouble '}' tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 1970 + VExpr_Single go to state 292 + + +state 1891 + + 215 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' . VExpr ',' RecursiveListOfDouble '}' tEND + 216 | tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' . VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 1971 + VExpr_Single go to state 292 + + +state 1892 + + 204 Transform: tSplit tLine '(' FExpr ')' '{' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 204 (Transform) + + +state 1893 + + 203 Transform: tIntersect tLine '{' RecursiveListOfDouble '}' tSurface '{' FExpr '}' . + + $default reduce using rule 203 (Transform) + + +state 1894 + + 166 Shape: tNurbs '(' FExpr ')' tAFFECT ListOfDouble tNurbsKnots ListOfDouble tNurbsOrder . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1972 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1895 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 525 ColorExpr: '{' FExpr ',' FExpr ',' FExpr ',' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1973 + + +state 1896 + + 264 Loop: tFor tSTRING tIn '{' FExpr tDOTS FExpr tDOTS FExpr . '}' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1974 + + +state 1897 + + 104 Affectation: tField '[' FExpr ']' '.' tSTRING tAFFECT '{' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 1975 + ',' shift, and go to state 747 + + +state 1898 + + 102 Affectation: tField '[' FExpr ']' '.' tSTRING tAFFECT FExpr tEND . + + $default reduce using rule 102 (Affectation) + + +state 1899 + + 103 Affectation: tField '[' FExpr ']' '.' tSTRING tAFFECT StringExpr tEND . + + $default reduce using rule 103 (Affectation) + + +state 1900 + + 561 StringExpr: tStrReplace '(' StringExprVar ',' StringExprVar ',' StringExprVar ')' . + + $default reduce using rule 561 (StringExpr) + + +state 1901 + + 567 StringExpr: tStrSub LP StringExprVar ',' FExpr ',' FExpr RP . + + $default reduce using rule 567 (StringExpr) + + +state 1902 + + 566 StringExpr: tStrChoice LP FExpr ',' StringExprVar ',' StringExprVar RP . + + $default reduce using rule 566 (StringExpr) + + +state 1903 + + 142 CharParameterOption: tSTRING '{' RecursiveListOfStringExprVar . '}' + 581 RecursiveListOfStringExprVar: RecursiveListOfStringExprVar . ',' StringExprVar + + '}' shift, and go to state 1976 + ',' shift, and go to state 732 + + +state 1904 + + 138 CharParameterOptions: CharParameterOptions ',' CharParameterOption . + + $default reduce using rule 138 (CharParameterOptions) + + +state 1905 + + 260 Slide: tSlide '(' '{' RecursiveListOfDouble '}' ',' StringExpr ',' StringExpr . ')' tEND + + ')' shift, and go to state 1977 + + +state 1906 + + 315 BooleanShape: BooleanOperator '(' FExpr ')' tAFFECT '{' ListOfShapes BooleanOption '}' . '{' ListOfShapes BooleanOption '}' tEND + + '{' shift, and go to state 1978 + + +state 1907 + + 313 Boolean: BooleanOperator '{' ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption '}' . + + $default reduce using rule 313 (Boolean) + + +state 1908 + + 365 Homology: HomologyCommand '(' ListOfDouble ')' '{' ListOfDouble ',' ListOfDouble '}' . tEND + + tEND shift, and go to state 1979 + + +state 1909 + + 91 Affectation: String__Index '[' FExpr ']' '.' tSTRING tAFFECT StringExpr tEND . + + $default reduce using rule 91 (Affectation) + + +state 1910 + + 93 Affectation: String__Index '[' FExpr ']' '.' tSTRING NumericAffectation FExpr tEND . + + $default reduce using rule 93 (Affectation) + + +state 1911 + + 97 Affectation: String__Index '[' FExpr ']' '.' tColor '.' tSTRING tAFFECT . ColorExpr tEND + + tSTRING shift, and go to state 333 + tStringToName shift, and go to state 107 + '{' shift, and go to state 334 + + ColorExpr go to state 1980 + StringIndex go to state 131 + String__Index go to state 336 + + +state 1912 + + 99 Affectation: String__Index '[' FExpr ']' '.' tColorTable tAFFECT ListOfColor tEND . + + $default reduce using rule 99 (Affectation) + + +state 1913 + + 530 ListOfColor: String__Index '[' FExpr ']' '.' . tColorTable + + tColorTable shift, and go to state 1981 + + +state 1914 + + 81 Affectation: String__Index LP '{' RecursiveListOfDouble '}' RP NumericAffectation ListOfDouble tEND . + + $default reduce using rule 81 (Affectation) + + +state 1915 + + 88 Affectation: String__Index LP RP tAFFECT tStr LP RecursiveListOfStringExprVar RP tEND . + + $default reduce using rule 88 (Affectation) + + +state 1916 + + 89 Affectation: String__Index LP RP tAFFECTPLUS tStr LP RecursiveListOfStringExprVar RP tEND . + + $default reduce using rule 89 (Affectation) + + +state 1917 + + 49 Element: tSTRING @1 '(' ElementCoords ')' . @2 '{' ElementValues '}' tEND + + $default reduce using rule 48 (@2) + + @2 go to state 1982 + + +state 1918 + + 44 ElementCoords: ElementCoords ',' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1983 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1919 + + 53 Text2D: tText2D '(' FExpr ',' FExpr . ',' FExpr ')' @3 '{' Text2DValues '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1984 + + +state 1920 + + 57 Text3D: tText3D '(' FExpr ',' FExpr . ',' FExpr ',' FExpr ')' @4 '{' Text3DValues '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1985 + + +state 1921 + + 58 InterpolationMatrix: tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' . RecursiveListOfListOfDouble '}' tEND + 59 | tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' . RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + RecursiveListOfListOfDouble go to state 1986 + ListOfDouble go to state 1699 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1922 + + 480 RecursiveListOfListOfDouble: RecursiveListOfListOfDouble ',' ListOfDouble . + + $default reduce using rule 480 (RecursiveListOfListOfDouble) + + +state 1923 + + 61 Time: tTime @5 '{' ElementValues '}' . tEND + + tEND shift, and go to state 1987 + + +state 1924 + + 46 ElementValues: ElementValues ',' . FExpr + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1988 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1925 + + 447 FExpr_Single: String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' . + 540 StringExprVar: String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' . + + '{' reduce using rule 540 (StringExprVar) + $default reduce using rule 447 (FExpr_Single) + + +state 1926 + + 540 StringExprVar: String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' . + + $default reduce using rule 540 (StringExprVar) + + +state 1927 + + 253 Command: tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' . FExpr ',' FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 1989 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1928 + + 114 DefineConstants: DefineConstants Comma String__Index tAFFECT '{' ListOfDouble @6 FloatParameterOptionsOrNone . '}' + + '}' shift, and go to state 1990 + + +state 1929 + + 119 DefineConstants: DefineConstants Comma String__Index tAFFECT '{' StringExpr @8 CharParameterOptionsOrNone . '}' + + '}' shift, and go to state 1991 + + +state 1930 + + 116 DefineConstants: DefineConstants Comma String__Index LP RP tAFFECT '{' ListOfDouble . @7 FloatParameterOptionsOrNone '}' + + $default reduce using rule 115 (@7) + + @7 go to state 1992 + + +state 1931 + + 123 Enumeration: Enumeration ',' FExpr . tAFFECT StringExpr + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tAFFECT shift, and go to state 1993 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1932 + + 122 Enumeration: FExpr tAFFECT StringExpr . + + $default reduce using rule 122 (Enumeration) + + +state 1933 + + 124 Enumeration: FExpr_Multi tAFFECT String__Index . '(' ')' + + '(' shift, and go to state 1994 + + +state 1934 + + 342 Constraints: tPoint '{' RecursiveListOfDouble '}' tIn tSurface '{' FExpr '}' tEND . + + $default reduce using rule 342 (Constraints) + + +state 1935 + + 344 Constraints: tPoint '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND . + + $default reduce using rule 344 (Constraints) + + +state 1936 + + 343 Constraints: tLine '{' RecursiveListOfDouble '}' tIn tSurface '{' FExpr '}' tEND . + + $default reduce using rule 343 (Constraints) + + +state 1937 + + 345 Constraints: tLine '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND . + + $default reduce using rule 345 (Constraints) + + +state 1938 + + 156 InSphereCenter: tIn tSphere '{' FExpr . '}' + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 1995 + + +state 1939 + + 346 Constraints: tSurface '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND . + + $default reduce using rule 346 (Constraints) + + +state 1940 + + 175 Shape: tParametric tSurface '(' FExpr ')' tAFFECT tBIGSTR tBIGSTR tBIGSTR tEND . + + $default reduce using rule 175 (Shape) + + +state 1941 + + 259 Command: tAdaptMesh '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' RecursiveListOfListOfDouble '}' . '{' FExpr ',' FExpr '}' tEND + + '{' shift, and go to state 1996 + + +state 1942 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 518 FExpr_Multi: tCatenary LP FExpr ',' FExpr ',' FExpr ',' FExpr . ',' FExpr ',' FExpr RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1997 + + +state 1943 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 502 FExpr_Multi: tPoint tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr . ',' FExpr ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1998 + + +state 1944 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 503 FExpr_Multi: tLine tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr . ',' FExpr ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 1999 + + +state 1945 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 504 FExpr_Multi: tSurface tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr . ',' FExpr ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 2000 + + +state 1946 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 505 FExpr_Multi: tVolume tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr . ',' FExpr ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 2001 + + +state 1947 + + 289 Extrude: tFillet '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' FExpr '}' . + + $default reduce using rule 289 (Extrude) + + +state 1948 + + 187 Shape: tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble tSTRING '{' RecursiveListOfListOfDouble . '}' tEND + 480 RecursiveListOfListOfDouble: RecursiveListOfListOfDouble . ',' ListOfDouble + + '}' shift, and go to state 2002 + ',' shift, and go to state 1836 + + +state 1949 + + 337 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate . '{' VExpr ',' VExpr ',' FExpr '}' tEND + + '{' shift, and go to state 2003 + + +state 1950 + + 339 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate . VExpr tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 2004 + VExpr_Single go to state 292 + + +state 1951 + + 325 PeriodicTransform: tAffine . ListOfDouble + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + ListOfDouble go to state 2005 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 1952 + + 335 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform . tEND + + tEND shift, and go to state 2006 + + +state 1953 + + 338 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate . '{' VExpr ',' VExpr ',' FExpr '}' tEND + + '{' shift, and go to state 2007 + + +state 1954 + + 340 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate . VExpr tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 2008 + VExpr_Single go to state 292 + + +state 1955 + + 336 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform . tEND + + tEND shift, and go to state 2009 + + +state 1956 + + 341 Constraints: tPeriodic tSurface FExpr '{' RecursiveListOfDouble '}' tAFFECT FExpr '{' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 2010 + ',' shift, and go to state 747 + + +state 1957 + + 198 Transform: tRotate '{' VExpr ',' VExpr ',' FExpr '}' '{' MultipleShape . '}' + + '}' shift, and go to state 2011 + + +state 1958 + + 476 VExpr_Single: '{' FExpr ',' FExpr ',' FExpr ',' FExpr '}' . + + $default reduce using rule 476 (VExpr_Single) + + +state 1959 + + 475 VExpr_Single: '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2012 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1960 + + 302 ExtrudeParameter: tUsing tSTRING '[' FExpr ']' tEND . + + $default reduce using rule 302 (ExtrudeParameter) + + +state 1961 + + 293 ExtrudeParameter: tLayers '{' ListOfDouble ',' ListOfDouble '}' . tEND + + tEND shift, and go to state 2013 + + +state 1962 + + 301 ExtrudeParameter: tHole '(' FExpr ')' tAFFECT ListOfDouble . tUsing FExpr tEND + + tUsing shift, and go to state 2014 + + +state 1963 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 276 Extrude: tExtrude '{' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes . '}' + 281 | tExtrude '{' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes . @10 ExtrudeParameters '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tThickSolid shift, and go to state 70 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + '}' shift, and go to state 2015 + + $default reduce using rule 280 (@10) + + Shape go to state 719 + @10 go to state 2016 + + +state 1964 + + 277 Extrude: tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' . '{' ListOfShapes '}' + 283 | tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' . '{' ListOfShapes @11 ExtrudeParameters '}' + + '{' shift, and go to state 2017 + + +state 1965 + + 214 LevelSet: tLevelset tPoint '(' FExpr ')' tAFFECT '{' RecursiveListOfListOfDouble '}' tEND . + + $default reduce using rule 214 (LevelSet) + + +state 1966 + + 217 LevelSet: tLevelset tSphere '(' FExpr ')' tAFFECT '{' VExpr ',' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 2018 + ',' shift, and go to state 747 + + +state 1967 + + 218 LevelSet: tLevelset tCylinder '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr . ',' RecursiveListOfDouble '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 2019 + + +state 1968 + + 219 LevelSet: tLevelset tCone '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr . ',' RecursiveListOfDouble '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 2020 + + +state 1969 + + 220 LevelSet: tLevelset tEllipsoid '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr . ',' RecursiveListOfDouble '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 2021 + + +state 1970 + + 221 LevelSet: tLevelset tQuadric '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr . ',' RecursiveListOfDouble '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 2022 + + +state 1971 + + 215 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr . ',' RecursiveListOfDouble '}' tEND + 216 | tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr . ',' VExpr ',' RecursiveListOfDouble '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 2023 + + +state 1972 + + 166 Shape: tNurbs '(' FExpr ')' tAFFECT ListOfDouble tNurbsKnots ListOfDouble tNurbsOrder FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 2024 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 1973 + + 525 ColorExpr: '{' FExpr ',' FExpr ',' FExpr ',' FExpr '}' . + + $default reduce using rule 525 (ColorExpr) + + +state 1974 + + 264 Loop: tFor tSTRING tIn '{' FExpr tDOTS FExpr tDOTS FExpr '}' . + + $default reduce using rule 264 (Loop) + + +state 1975 + + 104 Affectation: tField '[' FExpr ']' '.' tSTRING tAFFECT '{' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 2025 + + +state 1976 + + 142 CharParameterOption: tSTRING '{' RecursiveListOfStringExprVar '}' . + + $default reduce using rule 142 (CharParameterOption) + + +state 1977 + + 260 Slide: tSlide '(' '{' RecursiveListOfDouble '}' ',' StringExpr ',' StringExpr ')' . tEND + + tEND shift, and go to state 2026 + + +state 1978 + + 315 BooleanShape: BooleanOperator '(' FExpr ')' tAFFECT '{' ListOfShapes BooleanOption '}' '{' . ListOfShapes BooleanOption '}' tEND + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 2027 + + +state 1979 + + 365 Homology: HomologyCommand '(' ListOfDouble ')' '{' ListOfDouble ',' ListOfDouble '}' tEND . + + $default reduce using rule 365 (Homology) + + +state 1980 + + 97 Affectation: String__Index '[' FExpr ']' '.' tColor '.' tSTRING tAFFECT ColorExpr . tEND + + tEND shift, and go to state 2028 + + +state 1981 + + 530 ListOfColor: String__Index '[' FExpr ']' '.' tColorTable . + + $default reduce using rule 530 (ListOfColor) + + +state 1982 + + 49 Element: tSTRING @1 '(' ElementCoords ')' @2 . '{' ElementValues '}' tEND + + '{' shift, and go to state 2029 + + +state 1983 + + 44 ElementCoords: ElementCoords ',' FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 44 (ElementCoords) + + +state 1984 + + 53 Text2D: tText2D '(' FExpr ',' FExpr ',' . FExpr ')' @3 '{' Text2DValues '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2030 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1985 + + 57 Text3D: tText3D '(' FExpr ',' FExpr ',' . FExpr ',' FExpr ')' @4 '{' Text3DValues '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2031 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1986 + + 58 InterpolationMatrix: tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble . '}' tEND + 59 | tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble . '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' tEND + 480 RecursiveListOfListOfDouble: RecursiveListOfListOfDouble . ',' ListOfDouble + + '}' shift, and go to state 2032 + ',' shift, and go to state 1836 + + +state 1987 + + 61 Time: tTime @5 '{' ElementValues '}' tEND . + + $default reduce using rule 61 (Time) + + +state 1988 + + 46 ElementValues: ElementValues ',' FExpr . + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + $default reduce using rule 46 (ElementValues) + + +state 1989 + + 253 Command: tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr . ',' FExpr '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 2033 + + +state 1990 + + 114 DefineConstants: DefineConstants Comma String__Index tAFFECT '{' ListOfDouble @6 FloatParameterOptionsOrNone '}' . + + $default reduce using rule 114 (DefineConstants) + + +state 1991 + + 119 DefineConstants: DefineConstants Comma String__Index tAFFECT '{' StringExpr @8 CharParameterOptionsOrNone '}' . + + $default reduce using rule 119 (DefineConstants) + + +state 1992 + + 116 DefineConstants: DefineConstants Comma String__Index LP RP tAFFECT '{' ListOfDouble @7 . FloatParameterOptionsOrNone '}' + + ',' shift, and go to state 1367 + + $default reduce using rule 125 (FloatParameterOptionsOrNone) + + FloatParameterOptionsOrNone go to state 2034 + + +state 1993 + + 123 Enumeration: Enumeration ',' FExpr tAFFECT . StringExpr + + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + + StringExpr go to state 2035 + + +state 1994 + + 124 Enumeration: FExpr_Multi tAFFECT String__Index '(' . ')' + + ')' shift, and go to state 2036 + + +state 1995 + + 156 InSphereCenter: tIn tSphere '{' FExpr '}' . + + $default reduce using rule 156 (InSphereCenter) + + +state 1996 + + 259 Command: tAdaptMesh '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' . FExpr ',' FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2037 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1997 + + 518 FExpr_Multi: tCatenary LP FExpr ',' FExpr ',' FExpr ',' FExpr ',' . FExpr ',' FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2038 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1998 + + 502 FExpr_Multi: tPoint tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' . FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2039 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 1999 + + 503 FExpr_Multi: tLine tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' . FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2040 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2000 + + 504 FExpr_Multi: tSurface tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' . FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2041 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2001 + + 505 FExpr_Multi: tVolume tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' . FExpr ',' FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2042 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2002 + + 187 Shape: tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble tSTRING '{' RecursiveListOfListOfDouble '}' . tEND + + tEND shift, and go to state 2043 + + +state 2003 + + 337 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' . VExpr ',' VExpr ',' FExpr '}' tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 2044 + VExpr_Single go to state 292 + + +state 2004 + + 339 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr . tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + tEND shift, and go to state 2045 + '+' shift, and go to state 592 + '-' shift, and go to state 593 + + +state 2005 + + 325 PeriodicTransform: tAffine ListOfDouble . + + $default reduce using rule 325 (PeriodicTransform) + + +state 2006 + + 335 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform tEND . + + $default reduce using rule 335 (Constraints) + + +state 2007 + + 338 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' . VExpr ',' VExpr ',' FExpr '}' tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 2046 + VExpr_Single go to state 292 + + +state 2008 + + 340 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr . tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + tEND shift, and go to state 2047 + '+' shift, and go to state 592 + '-' shift, and go to state 593 + + +state 2009 + + 336 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' PeriodicTransform tEND . + + $default reduce using rule 336 (Constraints) + + +state 2010 + + 341 Constraints: tPeriodic tSurface FExpr '{' RecursiveListOfDouble '}' tAFFECT FExpr '{' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 2048 + + +state 2011 + + 198 Transform: tRotate '{' VExpr ',' VExpr ',' FExpr '}' '{' MultipleShape '}' . + + $default reduce using rule 198 (Transform) + + +state 2012 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 475 VExpr_Single: '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 2049 + + +state 2013 + + 293 ExtrudeParameter: tLayers '{' ListOfDouble ',' ListOfDouble '}' tEND . + + $default reduce using rule 293 (ExtrudeParameter) + + +state 2014 + + 301 ExtrudeParameter: tHole '(' FExpr ')' tAFFECT ListOfDouble tUsing . FExpr tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2050 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2015 + + 276 Extrude: tExtrude '{' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes '}' . + + $default reduce using rule 276 (Extrude) + + +state 2016 + + 281 Extrude: tExtrude '{' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes @10 . ExtrudeParameters '}' + + tUsing shift, and go to state 1184 + tRecombine shift, and go to state 1185 + tLayers shift, and go to state 1186 + tScaleLast shift, and go to state 1187 + tHole shift, and go to state 1188 + tQuadTriAddVerts shift, and go to state 1189 + tQuadTriNoNewVerts shift, and go to state 1190 + + ExtrudeParameters go to state 2051 + ExtrudeParameter go to state 1192 + + +state 2017 + + 277 Extrude: tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' . ListOfShapes '}' + 283 | tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' . ListOfShapes @11 ExtrudeParameters '}' + + $default reduce using rule 207 (ListOfShapes) + + ListOfShapes go to state 2052 + + +state 2018 + + 217 LevelSet: tLevelset tSphere '(' FExpr ')' tAFFECT '{' VExpr ',' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 2053 + + +state 2019 + + 218 LevelSet: tLevelset tCylinder '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' . RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 2054 + StringIndex go to state 131 + String__Index go to state 262 + + +state 2020 + + 219 LevelSet: tLevelset tCone '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' . RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 2055 + StringIndex go to state 131 + String__Index go to state 262 + + +state 2021 + + 220 LevelSet: tLevelset tEllipsoid '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' . RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 2056 + StringIndex go to state 131 + String__Index go to state 262 + + +state 2022 + + 221 LevelSet: tLevelset tQuadric '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' . RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 2057 + StringIndex go to state 131 + String__Index go to state 262 + + +state 2023 + + 215 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' . RecursiveListOfDouble '}' tEND + 216 | tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' . VExpr ',' RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 597 + '-' shift, and go to state 1789 + '!' shift, and go to state 248 + '(' shift, and go to state 599 + '{' shift, and go to state 290 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + VExpr go to state 2058 + VExpr_Single go to state 292 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 2059 + StringIndex go to state 131 + String__Index go to state 262 + + +state 2024 + + 166 Shape: tNurbs '(' FExpr ')' tAFFECT ListOfDouble tNurbsKnots ListOfDouble tNurbsOrder FExpr tEND . + + $default reduce using rule 166 (Shape) + + +state 2025 + + 104 Affectation: tField '[' FExpr ']' '.' tSTRING tAFFECT '{' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 104 (Affectation) + + +state 2026 + + 260 Slide: tSlide '(' '{' RecursiveListOfDouble '}' ',' StringExpr ',' StringExpr ')' tEND . + + $default reduce using rule 260 (Slide) + + +state 2027 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 315 BooleanShape: BooleanOperator '(' FExpr ')' tAFFECT '{' ListOfShapes BooleanOption '}' '{' ListOfShapes . BooleanOption '}' tEND + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tRecursive shift, and go to state 986 + tThickSolid shift, and go to state 70 + tDelete shift, and go to state 987 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + + $default reduce using rule 308 (BooleanOption) + + Shape go to state 719 + BooleanOption go to state 2060 + + +state 2028 + + 97 Affectation: String__Index '[' FExpr ']' '.' tColor '.' tSTRING tAFFECT ColorExpr tEND . + + $default reduce using rule 97 (Affectation) + + +state 2029 + + 49 Element: tSTRING @1 '(' ElementCoords ')' @2 '{' . ElementValues '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + ElementValues go to state 2061 + FExpr go to state 1838 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2030 + + 53 Text2D: tText2D '(' FExpr ',' FExpr ',' FExpr . ')' @3 '{' Text2DValues '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 2062 + + +state 2031 + + 57 Text3D: tText3D '(' FExpr ',' FExpr ',' FExpr . ',' FExpr ')' @4 '{' Text3DValues '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 2063 + + +state 2032 + + 58 InterpolationMatrix: tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' . tEND + 59 | tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' . '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' tEND + + tEND shift, and go to state 2064 + '{' shift, and go to state 2065 + + +state 2033 + + 253 Command: tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' . FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2066 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2034 + + 116 DefineConstants: DefineConstants Comma String__Index LP RP tAFFECT '{' ListOfDouble @7 FloatParameterOptionsOrNone . '}' + + '}' shift, and go to state 2067 + + +state 2035 + + 123 Enumeration: Enumeration ',' FExpr tAFFECT StringExpr . + + $default reduce using rule 123 (Enumeration) + + +state 2036 + + 124 Enumeration: FExpr_Multi tAFFECT String__Index '(' ')' . + + $default reduce using rule 124 (Enumeration) + + +state 2037 + + 259 Command: tAdaptMesh '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' FExpr . ',' FExpr '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 2068 + + +state 2038 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 518 FExpr_Multi: tCatenary LP FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr . ',' FExpr RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 2069 + + +state 2039 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 502 FExpr_Multi: tPoint tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr . ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 2070 + + +state 2040 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 503 FExpr_Multi: tLine tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr . ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 2071 + + +state 2041 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 504 FExpr_Multi: tSurface tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr . ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 2072 + + +state 2042 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 505 FExpr_Multi: tVolume tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr . ',' FExpr ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 2073 + + +state 2043 + + 187 Shape: tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble tSTRING '{' RecursiveListOfListOfDouble '}' tEND . + + $default reduce using rule 187 (Shape) + + +state 2044 + + 337 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr . ',' VExpr ',' FExpr '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 2074 + + +state 2045 + + 339 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr tEND . + + $default reduce using rule 339 (Constraints) + + +state 2046 + + 338 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr . ',' VExpr ',' FExpr '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 2075 + + +state 2047 + + 340 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tTranslate VExpr tEND . + + $default reduce using rule 340 (Constraints) + + +state 2048 + + 341 Constraints: tPeriodic tSurface FExpr '{' RecursiveListOfDouble '}' tAFFECT FExpr '{' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 341 (Constraints) + + +state 2049 + + 475 VExpr_Single: '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' . + + $default reduce using rule 475 (VExpr_Single) + + +state 2050 + + 301 ExtrudeParameter: tHole '(' FExpr ')' tAFFECT ListOfDouble tUsing FExpr . tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + tEND shift, and go to state 2076 + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + + +state 2051 + + 281 Extrude: tExtrude '{' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes @10 ExtrudeParameters . '}' + 291 ExtrudeParameters: ExtrudeParameters . ExtrudeParameter + + tUsing shift, and go to state 1184 + tRecombine shift, and go to state 1185 + tLayers shift, and go to state 1186 + tScaleLast shift, and go to state 1187 + tHole shift, and go to state 1188 + tQuadTriAddVerts shift, and go to state 1189 + tQuadTriNoNewVerts shift, and go to state 1190 + '}' shift, and go to state 2077 + + ExtrudeParameter go to state 1431 + + +state 2052 + + 208 ListOfShapes: ListOfShapes . Shape + 209 | ListOfShapes . tPoint '{' RecursiveListOfDouble '}' tEND + 210 | ListOfShapes . tLine '{' RecursiveListOfDouble '}' tEND + 211 | ListOfShapes . tSurface '{' RecursiveListOfDouble '}' tEND + 212 | ListOfShapes . tVolume '{' RecursiveListOfDouble '}' tEND + 277 Extrude: tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes . '}' + 283 | tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes . @11 ExtrudeParameters '}' + + tEuclidian shift, and go to state 7 + tCoordinates shift, and go to state 8 + tPoint shift, and go to state 712 + tCircle shift, and go to state 25 + tEllipse shift, and go to state 26 + tLine shift, and go to state 713 + tSphere shift, and go to state 28 + tPolarSphere shift, and go to state 29 + tSurface shift, and go to state 714 + tSpline shift, and go to state 31 + tVolume shift, and go to state 715 + tBlock shift, and go to state 33 + tCylinder shift, and go to state 34 + tCone shift, and go to state 35 + tTorus shift, and go to state 36 + tRectangle shift, and go to state 38 + tDisk shift, and go to state 39 + tWire shift, and go to state 40 + tParametric shift, and go to state 42 + tThruSections shift, and go to state 716 + tWedge shift, and go to state 48 + tPlane shift, and go to state 50 + tRuled shift, and go to state 717 + tPhysical shift, and go to state 53 + tCompound shift, and go to state 718 + tThickSolid shift, and go to state 70 + tBSpline shift, and go to state 84 + tBezier shift, and go to state 85 + tNurbs shift, and go to state 86 + '}' shift, and go to state 2078 + + $default reduce using rule 282 (@11) + + Shape go to state 719 + @11 go to state 2079 + + +state 2053 + + 217 LevelSet: tLevelset tSphere '(' FExpr ')' tAFFECT '{' VExpr ',' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 217 (LevelSet) + + +state 2054 + + 218 LevelSet: tLevelset tCylinder '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 2080 + ',' shift, and go to state 747 + + +state 2055 + + 219 LevelSet: tLevelset tCone '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 2081 + ',' shift, and go to state 747 + + +state 2056 + + 220 LevelSet: tLevelset tEllipsoid '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 2082 + ',' shift, and go to state 747 + + +state 2057 + + 221 LevelSet: tLevelset tQuadric '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 2083 + ',' shift, and go to state 747 + + +state 2058 + + 216 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' VExpr . ',' RecursiveListOfDouble '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 2084 + + +state 2059 + + 215 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 2085 + ',' shift, and go to state 747 + + +state 2060 + + 315 BooleanShape: BooleanOperator '(' FExpr ')' tAFFECT '{' ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption . '}' tEND + + '}' shift, and go to state 2086 + + +state 2061 + + 46 ElementValues: ElementValues . ',' FExpr + 49 Element: tSTRING @1 '(' ElementCoords ')' @2 '{' ElementValues . '}' tEND + + '}' shift, and go to state 2087 + ',' shift, and go to state 1924 + + +state 2062 + + 53 Text2D: tText2D '(' FExpr ',' FExpr ',' FExpr ')' . @3 '{' Text2DValues '}' tEND + + $default reduce using rule 52 (@3) + + @3 go to state 2088 + + +state 2063 + + 57 Text3D: tText3D '(' FExpr ',' FExpr ',' FExpr ',' . FExpr ')' @4 '{' Text3DValues '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2089 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2064 + + 58 InterpolationMatrix: tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' tEND . + + $default reduce using rule 58 (InterpolationMatrix) + + +state 2065 + + 59 InterpolationMatrix: tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' . RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + RecursiveListOfListOfDouble go to state 2090 + ListOfDouble go to state 1699 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 2066 + + 253 Command: tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr . '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 2091 + + +state 2067 + + 116 DefineConstants: DefineConstants Comma String__Index LP RP tAFFECT '{' ListOfDouble @7 FloatParameterOptionsOrNone '}' . + + $default reduce using rule 116 (DefineConstants) + + +state 2068 + + 259 Command: tAdaptMesh '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' FExpr ',' . FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2092 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2069 + + 518 FExpr_Multi: tCatenary LP FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' . FExpr RP + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2093 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2070 + + 502 FExpr_Multi: tPoint tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' . FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2094 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2071 + + 503 FExpr_Multi: tLine tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' . FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2095 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2072 + + 504 FExpr_Multi: tSurface tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' . FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2096 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2073 + + 505 FExpr_Multi: tVolume tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' . FExpr ',' FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2097 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2074 + + 337 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' . VExpr ',' FExpr '}' tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 2098 + VExpr_Single go to state 292 + + +state 2075 + + 338 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' . VExpr ',' FExpr '}' tEND + + '+' shift, and go to state 287 + '-' shift, and go to state 288 + '(' shift, and go to state 289 + '{' shift, and go to state 290 + + VExpr go to state 2099 + VExpr_Single go to state 292 + + +state 2076 + + 301 ExtrudeParameter: tHole '(' FExpr ')' tAFFECT ListOfDouble tUsing FExpr tEND . + + $default reduce using rule 301 (ExtrudeParameter) + + +state 2077 + + 281 Extrude: tExtrude '{' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes @10 ExtrudeParameters '}' . + + $default reduce using rule 281 (Extrude) + + +state 2078 + + 277 Extrude: tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes '}' . + + $default reduce using rule 277 (Extrude) + + +state 2079 + + 283 Extrude: tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes @11 . ExtrudeParameters '}' + + tUsing shift, and go to state 1184 + tRecombine shift, and go to state 1185 + tLayers shift, and go to state 1186 + tScaleLast shift, and go to state 1187 + tHole shift, and go to state 1188 + tQuadTriAddVerts shift, and go to state 1189 + tQuadTriNoNewVerts shift, and go to state 1190 + + ExtrudeParameters go to state 2100 + ExtrudeParameter go to state 1192 + + +state 2080 + + 218 LevelSet: tLevelset tCylinder '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 2101 + + +state 2081 + + 219 LevelSet: tLevelset tCone '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 2102 + + +state 2082 + + 220 LevelSet: tLevelset tEllipsoid '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 2103 + + +state 2083 + + 221 LevelSet: tLevelset tQuadric '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 2104 + + +state 2084 + + 216 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' VExpr ',' . RecursiveListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 433 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 434 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + FExpr_Multi go to state 435 + RecursiveListOfDouble go to state 2105 + StringIndex go to state 131 + String__Index go to state 262 + + +state 2085 + + 215 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 2106 + + +state 2086 + + 315 BooleanShape: BooleanOperator '(' FExpr ')' tAFFECT '{' ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption '}' . tEND + + tEND shift, and go to state 2107 + + +state 2087 + + 49 Element: tSTRING @1 '(' ElementCoords ')' @2 '{' ElementValues '}' . tEND + + tEND shift, and go to state 2108 + + +state 2088 + + 53 Text2D: tText2D '(' FExpr ',' FExpr ',' FExpr ')' @3 . '{' Text2DValues '}' tEND + + '{' shift, and go to state 2109 + + +state 2089 + + 57 Text3D: tText3D '(' FExpr ',' FExpr ',' FExpr ',' FExpr . ')' @4 '{' Text3DValues '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 2110 + + +state 2090 + + 59 InterpolationMatrix: tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble . '}' '{' RecursiveListOfListOfDouble '}' tEND + 480 RecursiveListOfListOfDouble: RecursiveListOfListOfDouble . ',' ListOfDouble + + '}' shift, and go to state 2111 + ',' shift, and go to state 1836 + + +state 2091 + + 253 Command: tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' . tEND + + tEND shift, and go to state 2112 + + +state 2092 + + 259 Command: tAdaptMesh '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' FExpr ',' FExpr . '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 2113 + + +state 2093 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 518 FExpr_Multi: tCatenary LP FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr . RP + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ')' shift, and go to state 699 + ']' shift, and go to state 700 + + RP go to state 2114 + + +state 2094 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 502 FExpr_Multi: tPoint tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr . ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 2115 + + +state 2095 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 503 FExpr_Multi: tLine tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr . ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 2116 + + +state 2096 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 504 FExpr_Multi: tSurface tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr . ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 2117 + + +state 2097 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 505 FExpr_Multi: tVolume tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr . ',' FExpr '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + ',' shift, and go to state 2118 + + +state 2098 + + 337 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr . ',' FExpr '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 2119 + + +state 2099 + + 338 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr . ',' FExpr '}' tEND + 473 VExpr: VExpr . '-' VExpr + 474 | VExpr . '+' VExpr + + '+' shift, and go to state 592 + '-' shift, and go to state 593 + ',' shift, and go to state 2120 + + +state 2100 + + 283 Extrude: tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes @11 ExtrudeParameters . '}' + 291 ExtrudeParameters: ExtrudeParameters . ExtrudeParameter + + tUsing shift, and go to state 1184 + tRecombine shift, and go to state 1185 + tLayers shift, and go to state 1186 + tScaleLast shift, and go to state 1187 + tHole shift, and go to state 1188 + tQuadTriAddVerts shift, and go to state 1189 + tQuadTriNoNewVerts shift, and go to state 1190 + '}' shift, and go to state 2121 + + ExtrudeParameter go to state 1431 + + +state 2101 + + 218 LevelSet: tLevelset tCylinder '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 218 (LevelSet) + + +state 2102 + + 219 LevelSet: tLevelset tCone '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 219 (LevelSet) + + +state 2103 + + 220 LevelSet: tLevelset tEllipsoid '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 220 (LevelSet) + + +state 2104 + + 221 LevelSet: tLevelset tQuadric '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 221 (LevelSet) + + +state 2105 + + 216 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' VExpr ',' RecursiveListOfDouble . '}' tEND + 523 RecursiveListOfDouble: RecursiveListOfDouble . ',' FExpr + 524 | RecursiveListOfDouble . ',' FExpr_Multi + + '}' shift, and go to state 2122 + ',' shift, and go to state 747 + + +state 2106 + + 215 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 215 (LevelSet) + + +state 2107 + + 315 BooleanShape: BooleanOperator '(' FExpr ')' tAFFECT '{' ListOfShapes BooleanOption '}' '{' ListOfShapes BooleanOption '}' tEND . + + $default reduce using rule 315 (BooleanShape) + + +state 2108 + + 49 Element: tSTRING @1 '(' ElementCoords ')' @2 '{' ElementValues '}' tEND . + + $default reduce using rule 49 (Element) + + +state 2109 + + 53 Text2D: tText2D '(' FExpr ',' FExpr ',' FExpr ')' @3 '{' . Text2DValues '}' tEND + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + Text2DValues go to state 2123 + StringExprVar go to state 2124 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 2110 + + 57 Text3D: tText3D '(' FExpr ',' FExpr ',' FExpr ',' FExpr ')' . @4 '{' Text3DValues '}' tEND + + $default reduce using rule 56 (@4) + + @4 go to state 2125 + + +state 2111 + + 59 InterpolationMatrix: tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' . '{' RecursiveListOfListOfDouble '}' tEND + + '{' shift, and go to state 2126 + + +state 2112 + + 253 Command: tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' tEND . + + $default reduce using rule 253 (Command) + + +state 2113 + + 259 Command: tAdaptMesh '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' FExpr ',' FExpr '}' . tEND + + tEND shift, and go to state 2127 + + +state 2114 + + 518 FExpr_Multi: tCatenary LP FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr RP . + + $default reduce using rule 518 (FExpr_Multi) + + +state 2115 + + 502 FExpr_Multi: tPoint tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2128 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2116 + + 503 FExpr_Multi: tLine tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2129 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2117 + + 504 FExpr_Multi: tSurface tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2130 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2118 + + 505 FExpr_Multi: tVolume tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' . FExpr '}' + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2131 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2119 + + 337 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' . FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2132 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2120 + + 338 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' . FExpr '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 150 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 380 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 381 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '#' shift, and go to state 251 + + FExpr go to state 2133 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + StringIndex go to state 131 + String__Index go to state 383 + + +state 2121 + + 283 Extrude: tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes @11 ExtrudeParameters '}' . + + $default reduce using rule 283 (Extrude) + + +state 2122 + + 216 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' VExpr ',' RecursiveListOfDouble '}' . tEND + + tEND shift, and go to state 2134 + + +state 2123 + + 51 Text2DValues: Text2DValues . ',' StringExprVar + 53 Text2D: tText2D '(' FExpr ',' FExpr ',' FExpr ')' @3 '{' Text2DValues . '}' tEND + + '}' shift, and go to state 2135 + ',' shift, and go to state 2136 + + +state 2124 + + 50 Text2DValues: StringExprVar . + + $default reduce using rule 50 (Text2DValues) + + +state 2125 + + 57 Text3D: tText3D '(' FExpr ',' FExpr ',' FExpr ',' FExpr ')' @4 . '{' Text3DValues '}' tEND + + '{' shift, and go to state 2137 + + +state 2126 + + 59 InterpolationMatrix: tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' . RecursiveListOfListOfDouble '}' tEND + + tDOUBLE shift, and go to state 187 + tSTRING shift, and go to state 6 + tPi shift, and go to state 188 + tMPI_Rank shift, and go to state 189 + tMPI_Size shift, and go to state 190 + tTestLevel shift, and go to state 191 + tExp shift, and go to state 192 + tLog shift, and go to state 193 + tLog10 shift, and go to state 194 + tSqrt shift, and go to state 195 + tSin shift, and go to state 196 + tAsin shift, and go to state 197 + tCos shift, and go to state 198 + tAcos shift, and go to state 199 + tTan shift, and go to state 200 + tRand shift, and go to state 201 + tAtan shift, and go to state 202 + tAtan2 shift, and go to state 203 + tSinh shift, and go to state 204 + tCosh shift, and go to state 205 + tTanh shift, and go to state 206 + tFabs shift, and go to state 207 + tAbs shift, and go to state 208 + tFloor shift, and go to state 209 + tCeil shift, and go to state 210 + tRound shift, and go to state 211 + tFmod shift, and go to state 212 + tModulo shift, and go to state 213 + tHypot shift, and go to state 214 + tList shift, and go to state 215 + tLinSpace shift, and go to state 216 + tLogSpace shift, and go to state 217 + tListFromFile shift, and go to state 218 + tCatenary shift, and go to state 219 + tStrLen shift, and go to state 220 + tFind shift, and go to state 221 + tStrFind shift, and go to state 222 + tStrCmp shift, and go to state 223 + tTextAttributes shift, and go to state 224 + tCpu shift, and go to state 225 + tMemory shift, and go to state 226 + tTotalMemory shift, and go to state 227 + tDefineNumber shift, and go to state 228 + tDefineStruct shift, and go to state 21 + tDimNameSpace shift, and go to state 229 + tPoint shift, and go to state 230 + tLine shift, and go to state 231 + tSurface shift, and go to state 232 + tVolume shift, and go to state 233 + tShapeFromFile shift, and go to state 37 + tThruSections shift, and go to state 234 + tFillet shift, and go to state 49 + tRuled shift, and go to state 235 + tPhysical shift, and go to state 236 + tRotate shift, and go to state 59 + tTranslate shift, and go to state 60 + tSymmetry shift, and go to state 61 + tDilate shift, and go to state 62 + tExtrude shift, and go to state 63 + tBooleanUnion shift, and go to state 65 + tBooleanIntersection shift, and go to state 66 + tBooleanDifference shift, and go to state 67 + tBooleanSection shift, and go to state 68 + tBooleanFragments shift, and go to state 69 + tSplit shift, and go to state 73 + tIntersect shift, and go to state 76 + tGetValue shift, and go to state 237 + tGetNumber shift, and go to state 238 + tUnique shift, and go to state 239 + tExists shift, and go to state 240 + tFileExists shift, and go to state 241 + tGetForced shift, and go to state 242 + tGMSH_MAJOR_VERSION shift, and go to state 243 + tGMSH_MINOR_VERSION shift, and go to state 244 + tGMSH_PATCH_VERSION shift, and go to state 245 + tStringToName shift, and go to state 107 + '+' shift, and go to state 246 + '-' shift, and go to state 247 + '!' shift, and go to state 248 + '(' shift, and go to state 326 + '{' shift, and go to state 250 + '#' shift, and go to state 251 + + Transform go to state 252 + Extrude go to state 253 + BooleanOperator go to state 254 + Boolean go to state 255 + FExpr go to state 256 + FExpr_Single go to state 257 + DefineStruct go to state 258 + Struct_FullName go to state 259 + RecursiveListOfListOfDouble go to state 2138 + ListOfDouble go to state 1699 + FExpr_Multi go to state 261 + StringIndex go to state 131 + String__Index go to state 262 + + +state 2127 + + 259 Command: tAdaptMesh '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' FExpr ',' FExpr '}' tEND . + + $default reduce using rule 259 (Command) + + +state 2128 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 502 FExpr_Multi: tPoint tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 2139 + + +state 2129 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 503 FExpr_Multi: tLine tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 2140 + + +state 2130 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 504 FExpr_Multi: tSurface tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 2141 + + +state 2131 + + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + 505 FExpr_Multi: tVolume tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr . '}' + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 2142 + + +state 2132 + + 337 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr . '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 2143 + + +state 2133 + + 338 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr . '}' tEND + 371 FExpr: FExpr . '-' FExpr + 372 | FExpr . '+' FExpr + 373 | FExpr . '*' FExpr + 374 | FExpr . '/' FExpr + 375 | FExpr . '|' FExpr + 376 | FExpr . '&' FExpr + 377 | FExpr . '%' FExpr + 378 | FExpr . '^' FExpr + 379 | FExpr . '<' FExpr + 380 | FExpr . '>' FExpr + 381 | FExpr . tLESSOREQUAL FExpr + 382 | FExpr . tGREATEROREQUAL FExpr + 383 | FExpr . tEQUAL FExpr + 384 | FExpr . tNOTEQUAL FExpr + 385 | FExpr . tAND FExpr + 386 | FExpr . tOR FExpr + 387 | FExpr . tGREATERGREATER FExpr + 388 | FExpr . tLESSLESS FExpr + 389 | FExpr . '?' FExpr tDOTS FExpr + + '?' shift, and go to state 532 + tOR shift, and go to state 533 + tAND shift, and go to state 534 + tNOTEQUAL shift, and go to state 535 + tEQUAL shift, and go to state 536 + '<' shift, and go to state 537 + '>' shift, and go to state 538 + tGREATERGREATER shift, and go to state 539 + tLESSLESS shift, and go to state 540 + tGREATEROREQUAL shift, and go to state 541 + tLESSOREQUAL shift, and go to state 542 + '+' shift, and go to state 543 + '-' shift, and go to state 544 + '*' shift, and go to state 676 + '/' shift, and go to state 546 + '%' shift, and go to state 547 + '|' shift, and go to state 548 + '&' shift, and go to state 549 + '^' shift, and go to state 550 + '}' shift, and go to state 2144 + + +state 2134 + + 216 LevelSet: tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' VExpr ',' RecursiveListOfDouble '}' tEND . + + $default reduce using rule 216 (LevelSet) + + +state 2135 + + 53 Text2D: tText2D '(' FExpr ',' FExpr ',' FExpr ')' @3 '{' Text2DValues '}' . tEND + + tEND shift, and go to state 2145 + + +state 2136 + + 51 Text2DValues: Text2DValues ',' . StringExprVar + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 2146 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 2137 + + 57 Text3D: tText3D '(' FExpr ',' FExpr ',' FExpr ',' FExpr ')' @4 '{' . Text3DValues '}' tEND + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + Text3DValues go to state 2147 + StringExprVar go to state 2148 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 2138 + + 59 InterpolationMatrix: tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble . '}' tEND + 480 RecursiveListOfListOfDouble: RecursiveListOfListOfDouble . ',' ListOfDouble + + '}' shift, and go to state 2149 + ',' shift, and go to state 1836 + + +state 2139 + + 502 FExpr_Multi: tPoint tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' . + + $default reduce using rule 502 (FExpr_Multi) + + +state 2140 + + 503 FExpr_Multi: tLine tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' . + + $default reduce using rule 503 (FExpr_Multi) + + +state 2141 + + 504 FExpr_Multi: tSurface tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' . + + $default reduce using rule 504 (FExpr_Multi) + + +state 2142 + + 505 FExpr_Multi: tVolume tIn tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' . + + $default reduce using rule 505 (FExpr_Multi) + + +state 2143 + + 337 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' . tEND + + tEND shift, and go to state 2150 + + +state 2144 + + 338 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' . tEND + + tEND shift, and go to state 2151 + + +state 2145 + + 53 Text2D: tText2D '(' FExpr ',' FExpr ',' FExpr ')' @3 '{' Text2DValues '}' tEND . + + $default reduce using rule 53 (Text2D) + + +state 2146 + + 51 Text2DValues: Text2DValues ',' StringExprVar . + + $default reduce using rule 51 (Text2DValues) + + +state 2147 + + 55 Text3DValues: Text3DValues . ',' StringExprVar + 57 Text3D: tText3D '(' FExpr ',' FExpr ',' FExpr ',' FExpr ')' @4 '{' Text3DValues . '}' tEND + + '}' shift, and go to state 2152 + ',' shift, and go to state 2153 + + +state 2148 + + 54 Text3DValues: StringExprVar . + + $default reduce using rule 54 (Text3DValues) + + +state 2149 + + 59 InterpolationMatrix: tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' . tEND + + tEND shift, and go to state 2154 + + +state 2150 + + 337 Constraints: tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND . + + $default reduce using rule 337 (Constraints) + + +state 2151 + + 338 Constraints: tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND . + + $default reduce using rule 338 (Constraints) + + +state 2152 + + 57 Text3D: tText3D '(' FExpr ',' FExpr ',' FExpr ',' FExpr ')' @4 '{' Text3DValues '}' . tEND + + tEND shift, and go to state 2155 + + +state 2153 + + 55 Text3DValues: Text3DValues ',' . StringExprVar + + tSTRING shift, and go to state 150 + tBIGSTR shift, and go to state 344 + tStr shift, and go to state 345 + tSprintf shift, and go to state 346 + tStrCat shift, and go to state 347 + tStrPrefix shift, and go to state 348 + tStrRelative shift, and go to state 349 + tStrReplace shift, and go to state 350 + tAbsolutePath shift, and go to state 351 + tDirName shift, and go to state 352 + tStrSub shift, and go to state 353 + tStrChoice shift, and go to state 354 + tUpperCase shift, and go to state 355 + tLowerCase shift, and go to state 356 + tLowerCaseIn shift, and go to state 357 + tToday shift, and go to state 358 + tFixRelativePath shift, and go to state 359 + tCurrentDirectory shift, and go to state 360 + tOnelabAction shift, and go to state 361 + tCodeName shift, and go to state 362 + tNameStruct shift, and go to state 363 + tDefineString shift, and go to state 364 + tPhysical shift, and go to state 393 + tGetStringValue shift, and go to state 365 + tGetEnv shift, and go to state 366 + tGetString shift, and go to state 367 + tGetForcedStr shift, and go to state 368 + tGmshExecutableName shift, and go to state 369 + tNameToString shift, and go to state 370 + tStringToName shift, and go to state 107 + + StringExprVar go to state 2156 + StringExpr go to state 419 + StringIndex go to state 131 + String__Index go to state 420 + + +state 2154 + + 59 InterpolationMatrix: tInterpolationScheme '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' '{' RecursiveListOfListOfDouble '}' tEND . + + $default reduce using rule 59 (InterpolationMatrix) + + +state 2155 + + 57 Text3D: tText3D '(' FExpr ',' FExpr ',' FExpr ',' FExpr ')' @4 '{' Text3DValues '}' tEND . + + $default reduce using rule 57 (Text3D) + + +state 2156 + + 55 Text3DValues: Text3DValues ',' StringExprVar . + + $default reduce using rule 55 (Text3DValues) diff --git a/Parser/Gmsh.tab.c b/Parser/Gmsh.tab.c new file mode 100644 index 0000000000000000000000000000000000000000..7dd7c50135158ba15c6869728abe505dc2cc5b9c --- /dev/null +++ b/Parser/Gmsh.tab.c @@ -0,0 +1,14619 @@ +/* A Bison parser, made by GNU Bison 2.3. */ + +/* Skeleton implementation for Bison's Yacc-like parsers in C + + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. */ + +/* As a special exception, you may create a larger work that contains + part or all of the Bison parser skeleton and distribute that work + under terms of your choice, so long as that work isn't itself a + parser generator using the skeleton or a modified version thereof + as a parser skeleton. Alternatively, if you modify or redistribute + the parser skeleton itself, you may (at your option) remove this + special exception, which will cause the skeleton and the resulting + Bison output files to be licensed under the GNU General Public + License without this special exception. + + This special exception was added by the Free Software Foundation in + version 2.2 of Bison. */ + +/* C LALR(1) parser skeleton written by Richard Stallman, by + simplifying the original so-called "semantic" parser. */ + +/* All symbols defined below should begin with yy or YY, to avoid + infringing on user name space. This should be done even for local + variables, as they might otherwise be expanded by user macros. + There are some unavoidable exceptions within include files to + define necessary library symbols; they are noted "INFRINGES ON + USER NAME SPACE" below. */ + +/* Identify Bison output. */ +#define YYBISON 1 + +/* Bison version. */ +#define YYBISON_VERSION "2.3" + +/* Skeleton name. */ +#define YYSKELETON_NAME "yacc.c" + +/* Pure parsers. */ +#define YYPURE 0 + +/* Using locations. */ +#define YYLSP_NEEDED 0 + + + +/* Tokens. */ +#ifndef YYTOKENTYPE +# define YYTOKENTYPE + /* Put the tokens into the symbol table, so that GDB and other debuggers + know about them. */ + enum yytokentype { + tDOUBLE = 258, + tSTRING = 259, + tBIGSTR = 260, + tEND = 261, + tAFFECT = 262, + tDOTS = 263, + tSCOPE = 264, + tPi = 265, + tMPI_Rank = 266, + tMPI_Size = 267, + tEuclidian = 268, + tCoordinates = 269, + tTestLevel = 270, + tExp = 271, + tLog = 272, + tLog10 = 273, + tSqrt = 274, + tSin = 275, + tAsin = 276, + tCos = 277, + tAcos = 278, + tTan = 279, + tRand = 280, + tAtan = 281, + tAtan2 = 282, + tSinh = 283, + tCosh = 284, + tTanh = 285, + tFabs = 286, + tAbs = 287, + tFloor = 288, + tCeil = 289, + tRound = 290, + tFmod = 291, + tModulo = 292, + tHypot = 293, + tList = 294, + tLinSpace = 295, + tLogSpace = 296, + tListFromFile = 297, + tCatenary = 298, + tPrintf = 299, + tError = 300, + tStr = 301, + tSprintf = 302, + tStrCat = 303, + tStrPrefix = 304, + tStrRelative = 305, + tStrReplace = 306, + tAbsolutePath = 307, + tDirName = 308, + tStrSub = 309, + tStrLen = 310, + tFind = 311, + tStrFind = 312, + tStrCmp = 313, + tStrChoice = 314, + tUpperCase = 315, + tLowerCase = 316, + tLowerCaseIn = 317, + tTextAttributes = 318, + tBoundingBox = 319, + tDraw = 320, + tSetChanged = 321, + tToday = 322, + tFixRelativePath = 323, + tCurrentDirectory = 324, + tSyncModel = 325, + tNewModel = 326, + tOnelabAction = 327, + tOnelabRun = 328, + tCodeName = 329, + tCpu = 330, + tMemory = 331, + tTotalMemory = 332, + tCreateTopology = 333, + tCreateTopologyNoHoles = 334, + tDistanceFunction = 335, + tDefineConstant = 336, + tUndefineConstant = 337, + tDefineNumber = 338, + tDefineStruct = 339, + tNameStruct = 340, + tDimNameSpace = 341, + tAppend = 342, + tDefineString = 343, + tSetNumber = 344, + tSetString = 345, + tPoint = 346, + tCircle = 347, + tEllipse = 348, + tLine = 349, + tSphere = 350, + tPolarSphere = 351, + tSurface = 352, + tSpline = 353, + tVolume = 354, + tBlock = 355, + tCylinder = 356, + tCone = 357, + tTorus = 358, + tEllipsoid = 359, + tQuadric = 360, + tShapeFromFile = 361, + tRectangle = 362, + tDisk = 363, + tWire = 364, + tCharacteristic = 365, + tLength = 366, + tParametric = 367, + tElliptic = 368, + tRefineMesh = 369, + tAdaptMesh = 370, + tRelocateMesh = 371, + tSetFactory = 372, + tThruSections = 373, + tWedge = 374, + tFillet = 375, + tChamfer = 376, + tPlane = 377, + tRuled = 378, + tTransfinite = 379, + tPhysical = 380, + tCompound = 381, + tPeriodic = 382, + tUsing = 383, + tPlugin = 384, + tDegenerated = 385, + tRecursive = 386, + tRotate = 387, + tTranslate = 388, + tSymmetry = 389, + tDilate = 390, + tExtrude = 391, + tLevelset = 392, + tAffine = 393, + tBooleanUnion = 394, + tBooleanIntersection = 395, + tBooleanDifference = 396, + tBooleanSection = 397, + tBooleanFragments = 398, + tThickSolid = 399, + tRecombine = 400, + tSmoother = 401, + tSplit = 402, + tDelete = 403, + tCoherence = 404, + tIntersect = 405, + tMeshAlgorithm = 406, + tReverse = 407, + tLayers = 408, + tScaleLast = 409, + tHole = 410, + tAlias = 411, + tAliasWithOptions = 412, + tCopyOptions = 413, + tQuadTriAddVerts = 414, + tQuadTriNoNewVerts = 415, + tRecombLaterals = 416, + tTransfQuadTri = 417, + tText2D = 418, + tText3D = 419, + tInterpolationScheme = 420, + tTime = 421, + tCombine = 422, + tBSpline = 423, + tBezier = 424, + tNurbs = 425, + tNurbsOrder = 426, + tNurbsKnots = 427, + tColor = 428, + tColorTable = 429, + tFor = 430, + tIn = 431, + tEndFor = 432, + tIf = 433, + tElseIf = 434, + tElse = 435, + tEndIf = 436, + tExit = 437, + tAbort = 438, + tField = 439, + tReturn = 440, + tCall = 441, + tSlide = 442, + tMacro = 443, + tShow = 444, + tHide = 445, + tGetValue = 446, + tGetStringValue = 447, + tGetEnv = 448, + tGetString = 449, + tGetNumber = 450, + tUnique = 451, + tHomology = 452, + tCohomology = 453, + tBetti = 454, + tExists = 455, + tFileExists = 456, + tGetForced = 457, + tGetForcedStr = 458, + tGMSH_MAJOR_VERSION = 459, + tGMSH_MINOR_VERSION = 460, + tGMSH_PATCH_VERSION = 461, + tGmshExecutableName = 462, + tSetPartition = 463, + tNameToString = 464, + tStringToName = 465, + tAFFECTDIVIDE = 466, + tAFFECTTIMES = 467, + tAFFECTMINUS = 468, + tAFFECTPLUS = 469, + tOR = 470, + tAND = 471, + tNOTEQUAL = 472, + tEQUAL = 473, + tGREATERGREATER = 474, + tLESSLESS = 475, + tGREATEROREQUAL = 476, + tLESSOREQUAL = 477, + UNARYPREC = 478, + tMINUSMINUS = 479, + tPLUSPLUS = 480 + }; +#endif +/* Tokens. */ +#define tDOUBLE 258 +#define tSTRING 259 +#define tBIGSTR 260 +#define tEND 261 +#define tAFFECT 262 +#define tDOTS 263 +#define tSCOPE 264 +#define tPi 265 +#define tMPI_Rank 266 +#define tMPI_Size 267 +#define tEuclidian 268 +#define tCoordinates 269 +#define tTestLevel 270 +#define tExp 271 +#define tLog 272 +#define tLog10 273 +#define tSqrt 274 +#define tSin 275 +#define tAsin 276 +#define tCos 277 +#define tAcos 278 +#define tTan 279 +#define tRand 280 +#define tAtan 281 +#define tAtan2 282 +#define tSinh 283 +#define tCosh 284 +#define tTanh 285 +#define tFabs 286 +#define tAbs 287 +#define tFloor 288 +#define tCeil 289 +#define tRound 290 +#define tFmod 291 +#define tModulo 292 +#define tHypot 293 +#define tList 294 +#define tLinSpace 295 +#define tLogSpace 296 +#define tListFromFile 297 +#define tCatenary 298 +#define tPrintf 299 +#define tError 300 +#define tStr 301 +#define tSprintf 302 +#define tStrCat 303 +#define tStrPrefix 304 +#define tStrRelative 305 +#define tStrReplace 306 +#define tAbsolutePath 307 +#define tDirName 308 +#define tStrSub 309 +#define tStrLen 310 +#define tFind 311 +#define tStrFind 312 +#define tStrCmp 313 +#define tStrChoice 314 +#define tUpperCase 315 +#define tLowerCase 316 +#define tLowerCaseIn 317 +#define tTextAttributes 318 +#define tBoundingBox 319 +#define tDraw 320 +#define tSetChanged 321 +#define tToday 322 +#define tFixRelativePath 323 +#define tCurrentDirectory 324 +#define tSyncModel 325 +#define tNewModel 326 +#define tOnelabAction 327 +#define tOnelabRun 328 +#define tCodeName 329 +#define tCpu 330 +#define tMemory 331 +#define tTotalMemory 332 +#define tCreateTopology 333 +#define tCreateTopologyNoHoles 334 +#define tDistanceFunction 335 +#define tDefineConstant 336 +#define tUndefineConstant 337 +#define tDefineNumber 338 +#define tDefineStruct 339 +#define tNameStruct 340 +#define tDimNameSpace 341 +#define tAppend 342 +#define tDefineString 343 +#define tSetNumber 344 +#define tSetString 345 +#define tPoint 346 +#define tCircle 347 +#define tEllipse 348 +#define tLine 349 +#define tSphere 350 +#define tPolarSphere 351 +#define tSurface 352 +#define tSpline 353 +#define tVolume 354 +#define tBlock 355 +#define tCylinder 356 +#define tCone 357 +#define tTorus 358 +#define tEllipsoid 359 +#define tQuadric 360 +#define tShapeFromFile 361 +#define tRectangle 362 +#define tDisk 363 +#define tWire 364 +#define tCharacteristic 365 +#define tLength 366 +#define tParametric 367 +#define tElliptic 368 +#define tRefineMesh 369 +#define tAdaptMesh 370 +#define tRelocateMesh 371 +#define tSetFactory 372 +#define tThruSections 373 +#define tWedge 374 +#define tFillet 375 +#define tChamfer 376 +#define tPlane 377 +#define tRuled 378 +#define tTransfinite 379 +#define tPhysical 380 +#define tCompound 381 +#define tPeriodic 382 +#define tUsing 383 +#define tPlugin 384 +#define tDegenerated 385 +#define tRecursive 386 +#define tRotate 387 +#define tTranslate 388 +#define tSymmetry 389 +#define tDilate 390 +#define tExtrude 391 +#define tLevelset 392 +#define tAffine 393 +#define tBooleanUnion 394 +#define tBooleanIntersection 395 +#define tBooleanDifference 396 +#define tBooleanSection 397 +#define tBooleanFragments 398 +#define tThickSolid 399 +#define tRecombine 400 +#define tSmoother 401 +#define tSplit 402 +#define tDelete 403 +#define tCoherence 404 +#define tIntersect 405 +#define tMeshAlgorithm 406 +#define tReverse 407 +#define tLayers 408 +#define tScaleLast 409 +#define tHole 410 +#define tAlias 411 +#define tAliasWithOptions 412 +#define tCopyOptions 413 +#define tQuadTriAddVerts 414 +#define tQuadTriNoNewVerts 415 +#define tRecombLaterals 416 +#define tTransfQuadTri 417 +#define tText2D 418 +#define tText3D 419 +#define tInterpolationScheme 420 +#define tTime 421 +#define tCombine 422 +#define tBSpline 423 +#define tBezier 424 +#define tNurbs 425 +#define tNurbsOrder 426 +#define tNurbsKnots 427 +#define tColor 428 +#define tColorTable 429 +#define tFor 430 +#define tIn 431 +#define tEndFor 432 +#define tIf 433 +#define tElseIf 434 +#define tElse 435 +#define tEndIf 436 +#define tExit 437 +#define tAbort 438 +#define tField 439 +#define tReturn 440 +#define tCall 441 +#define tSlide 442 +#define tMacro 443 +#define tShow 444 +#define tHide 445 +#define tGetValue 446 +#define tGetStringValue 447 +#define tGetEnv 448 +#define tGetString 449 +#define tGetNumber 450 +#define tUnique 451 +#define tHomology 452 +#define tCohomology 453 +#define tBetti 454 +#define tExists 455 +#define tFileExists 456 +#define tGetForced 457 +#define tGetForcedStr 458 +#define tGMSH_MAJOR_VERSION 459 +#define tGMSH_MINOR_VERSION 460 +#define tGMSH_PATCH_VERSION 461 +#define tGmshExecutableName 462 +#define tSetPartition 463 +#define tNameToString 464 +#define tStringToName 465 +#define tAFFECTDIVIDE 466 +#define tAFFECTTIMES 467 +#define tAFFECTMINUS 468 +#define tAFFECTPLUS 469 +#define tOR 470 +#define tAND 471 +#define tNOTEQUAL 472 +#define tEQUAL 473 +#define tGREATERGREATER 474 +#define tLESSLESS 475 +#define tGREATEROREQUAL 476 +#define tLESSOREQUAL 477 +#define UNARYPREC 478 +#define tMINUSMINUS 479 +#define tPLUSPLUS 480 + + + + +/* Copy the first part of user declarations. */ +#line 1 "Gmsh.y" + +// Gmsh - Copyright (C) 1997-2017 C. Geuzaine, J.-F. Remacle +// +// See the LICENSE.txt file for license information. Please report all +// bugs and problems to the public mailing list <gmsh@onelab.info>. + +#include <sstream> +#include <map> +#include <string.h> +#include <stdarg.h> +#include <time.h> +#include "GmshConfig.h" +#include "GmshMessage.h" +#include "fullMatrix.h" +#include "MallocUtils.h" +#include "ListUtils.h" +#include "TreeUtils.h" +#include "StringUtils.h" +#include "Numeric.h" +#include "Context.h" +#include "GModel.h" +#include "GModelIO_GEO.h" +#include "GModelIO_OCC.h" +#include "GeoDefines.h" +#include "ExtrudeParams.h" +#include "Options.h" +#include "Parser.h" +#include "OpenFile.h" +#include "CommandLine.h" +#include "FunctionManager.h" +#include "ColorTable.h" +#include "OS.h" +#include "CreateFile.h" +#include "gmshSurface.h" +#include "gmshLevelset.h" +#include "fullMatrix.h" + +#if defined(HAVE_MESH) +#include "Generator.h" +#include "Field.h" +#include "BackgroundMesh.h" +#include "HighOrder.h" +#endif + +#if defined(HAVE_POST) +#include "PView.h" +#include "PViewDataList.h" +#endif + +#if defined(HAVE_PLUGINS) +#include "PluginManager.h" +#endif + +#if defined(HAVE_OPENGL) +#include "drawContext.h" +#endif + +#if defined(HAVE_POPPLER) +#include "gmshPopplerWrapper.h" +#endif + +#define MAX_RECUR_TESTS 100 +#define MAX_RECUR_LOOPS 100 + +// global parser variables +std::string gmsh_yyname; +int gmsh_yyerrorstate = 0; +int gmsh_yyviewindex = 0; +std::map<std::string, gmsh_yysymbol> gmsh_yysymbols; +std::map<std::string, std::vector<std::string> > gmsh_yystringsymbols; +NameSpaces nameSpaces; + +// static parser variables (accessible only in this file) +#if defined(HAVE_POST) +static PViewDataList *ViewData = 0; +#endif +static std::vector<double> ViewCoord; +static std::vector<double> *ViewValueList = 0; +static int *ViewNumList = 0; +static ExtrudeParams extr; +static gmshSurface *myGmshSurface = 0; +static int statusImbricatedTests[MAX_RECUR_TESTS]; +static int ImbricatedLoop = 0, ImbricatedTest = 0; +static gmshfpos_t yyposImbricatedLoopsTab[MAX_RECUR_LOOPS]; +static int yylinenoImbricatedLoopsTab[MAX_RECUR_LOOPS]; +static double LoopControlVariablesTab[MAX_RECUR_LOOPS][3]; +static std::string LoopControlVariablesNameTab[MAX_RECUR_LOOPS]; +static std::string factory; +static std::string struct_name, struct_namespace; +static int flag_tSTRING_alloc = 0; + +static std::map<std::string, std::vector<double> > floatOptions; +static std::map<std::string, std::vector<std::string> > charOptions; +static int flag_Enum, member_ValMax; + +void init_options(int member_ValMax_ = 0) +{ + floatOptions.clear(); charOptions.clear(); + flag_Enum = 0; member_ValMax = member_ValMax_; +} + +// parser functions defined at the end of this file +void yyerror(const char *s); +void yymsg(int level, const char *fmt, ...); +char *strsave(char *ptr); +void skip(const char *skip, const char *until); +void skipTest(const char *skip, const char *until, + const char *until2, int l_until2_sub, int *type_until2); +void assignVariable(const std::string &name, int index, int assignType, + double value); +void assignVariables(const std::string &name, List_T *indices, int assignType, + List_T *values); +void incrementVariable(const std::string &name, int index, double value); +int printListOfDouble(char *format, List_T *list, char *buffer); +fullMatrix<double> ListOfListOfDouble2Matrix(List_T *list); +void ListOfDouble2Vector(List_T *list, std::vector<int> &v); +void ListOfDouble2Vector(List_T *list, std::vector<double> &v); +void ListOfShapes2VectorOfPairs(List_T *list, std::vector<std::pair<int, int> > &v); +void VectorOfPairs2ListOfShapes(const std::vector<std::pair<int, int> > &v, List_T *list); +void addPeriodicEdge(int, int, const std::vector<double>&); +void addPeriodicFace(int, int, const std::map<int, int>&); +void addPeriodicFace(int, int, const std::vector<double>&); +void computeAffineTransformation(SPoint3&, SPoint3&, double, SPoint3&, + std::vector<double>&); +void addEmbedded(int dim, std::vector<int> tags, int dim2, int tag2); +void getAllElementaryTags(int dim, List_T *in); +void getAllPhysicalTags(int dim, List_T *in); +void getElementaryTagsForPhysicalGroups(int dim, List_T *in, List_T *out); +void getElementaryTagsInBoundingBox(int dim, double x1, double y1, double z1, + double x2, double y2, double z2, List_T *out); +void setVisibility(int dim, int visible, bool recursive); +void setVisibility(const std::vector<std::pair<int, int> > &dimTags, int visible, + bool recursive); +void setColor(const std::vector<std::pair<int, int> > &dimTags, unsigned int val, + bool recursive); + +double treat_Struct_FullName_Float + (char* c1, char* c2, int type_var = 1, int index = 0, + double val_default = 0., int type_treat = 0); +double treat_Struct_FullName_dot_tSTRING_Float + (char* c1, char* c2, char* c3, int index = 0, + double val_default = 0., int type_treat = 0); +int treat_Struct_FullName_dot_tSTRING_Float_getDim + (char* c1, char* c2, char* c3); +char* treat_Struct_FullName_String + (char* c1, char* c2, int type_var = 1, int index = 0, + char* val_default = NULL, int type_treat = 0); +char* treat_Struct_FullName_dot_tSTRING_String + (char* c1, char* c2, char* c3, int index = 0, + char* val_default = NULL, int type_treat = 0); + +struct doubleXstring{ + double d; + char *s; +}; + + + +/* Enabling traces. */ +#ifndef YYDEBUG +# define YYDEBUG 0 +#endif + +/* Enabling verbose error messages. */ +#ifdef YYERROR_VERBOSE +# undef YYERROR_VERBOSE +# define YYERROR_VERBOSE 1 +#else +# define YYERROR_VERBOSE 0 +#endif + +/* Enabling the token table. */ +#ifndef YYTOKEN_TABLE +# define YYTOKEN_TABLE 0 +#endif + +#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED +typedef union YYSTYPE +#line 159 "Gmsh.y" +{ + char *c; + int i; + unsigned int u; + double d; + double v[5]; + Shape s; + List_T *l; + struct TwoChar c2; +} +/* Line 193 of yacc.c. */ +#line 715 "Gmsh.tab.c" + YYSTYPE; +# define yystype YYSTYPE /* obsolescent; will be withdrawn */ +# define YYSTYPE_IS_DECLARED 1 +# define YYSTYPE_IS_TRIVIAL 1 +#endif + + + +/* Copy the second part of user declarations. */ + + +/* Line 216 of yacc.c. */ +#line 728 "Gmsh.tab.c" + +#ifdef short +# undef short +#endif + +#ifdef YYTYPE_UINT8 +typedef YYTYPE_UINT8 yytype_uint8; +#else +typedef unsigned char yytype_uint8; +#endif + +#ifdef YYTYPE_INT8 +typedef YYTYPE_INT8 yytype_int8; +#elif (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +typedef signed char yytype_int8; +#else +typedef short int yytype_int8; +#endif + +#ifdef YYTYPE_UINT16 +typedef YYTYPE_UINT16 yytype_uint16; +#else +typedef unsigned short int yytype_uint16; +#endif + +#ifdef YYTYPE_INT16 +typedef YYTYPE_INT16 yytype_int16; +#else +typedef short int yytype_int16; +#endif + +#ifndef YYSIZE_T +# ifdef __SIZE_TYPE__ +# define YYSIZE_T __SIZE_TYPE__ +# elif defined size_t +# define YYSIZE_T size_t +# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +# include <stddef.h> /* INFRINGES ON USER NAME SPACE */ +# define YYSIZE_T size_t +# else +# define YYSIZE_T unsigned int +# endif +#endif + +#define YYSIZE_MAXIMUM ((YYSIZE_T) -1) + +#ifndef YY_ +# if defined YYENABLE_NLS && YYENABLE_NLS +# if ENABLE_NLS +# include <libintl.h> /* INFRINGES ON USER NAME SPACE */ +# define YY_(msgid) dgettext ("bison-runtime", msgid) +# endif +# endif +# ifndef YY_ +# define YY_(msgid) msgid +# endif +#endif + +/* Suppress unused-variable warnings by "using" E. */ +#if ! defined lint || defined __GNUC__ +# define YYUSE(e) ((void) (e)) +#else +# define YYUSE(e) /* empty */ +#endif + +/* Identity function, used to suppress warnings about constant conditions. */ +#ifndef lint +# define YYID(n) (n) +#else +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static int +YYID (int i) +#else +static int +YYID (i) + int i; +#endif +{ + return i; +} +#endif + +#if ! defined yyoverflow || YYERROR_VERBOSE + +/* The parser invokes alloca or malloc; define the necessary symbols. */ + +# ifdef YYSTACK_USE_ALLOCA +# if YYSTACK_USE_ALLOCA +# ifdef __GNUC__ +# define YYSTACK_ALLOC __builtin_alloca +# elif defined __BUILTIN_VA_ARG_INCR +# include <alloca.h> /* INFRINGES ON USER NAME SPACE */ +# elif defined _AIX +# define YYSTACK_ALLOC __alloca +# elif defined _MSC_VER +# include <malloc.h> /* INFRINGES ON USER NAME SPACE */ +# define alloca _alloca +# else +# define YYSTACK_ALLOC alloca +# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ +# ifndef _STDLIB_H +# define _STDLIB_H 1 +# endif +# endif +# endif +# endif +# endif + +# ifdef YYSTACK_ALLOC + /* Pacify GCC's `empty if-body' warning. */ +# define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0)) +# ifndef YYSTACK_ALLOC_MAXIMUM + /* The OS might guarantee only one guard page at the bottom of the stack, + and a page size can be as small as 4096 bytes. So we cannot safely + invoke alloca (N) if N exceeds 4096. Use a slightly smaller number + to allow for a few compiler-allocated temporary stack slots. */ +# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */ +# endif +# else +# define YYSTACK_ALLOC YYMALLOC +# define YYSTACK_FREE YYFREE +# ifndef YYSTACK_ALLOC_MAXIMUM +# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM +# endif +# if (defined __cplusplus && ! defined _STDLIB_H \ + && ! ((defined YYMALLOC || defined malloc) \ + && (defined YYFREE || defined free))) +# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ +# ifndef _STDLIB_H +# define _STDLIB_H 1 +# endif +# endif +# ifndef YYMALLOC +# define YYMALLOC malloc +# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# ifndef YYFREE +# define YYFREE free +# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +void free (void *); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# endif +#endif /* ! defined yyoverflow || YYERROR_VERBOSE */ + + +#if (! defined yyoverflow \ + && (! defined __cplusplus \ + || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) + +/* A type that is properly aligned for any stack member. */ +union yyalloc +{ + yytype_int16 yyss; + YYSTYPE yyvs; + }; + +/* The size of the maximum gap between one aligned stack and the next. */ +# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) + +/* The size of an array large to enough to hold all stacks, each with + N elements. */ +# define YYSTACK_BYTES(N) \ + ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ + + YYSTACK_GAP_MAXIMUM) + +/* Copy COUNT objects from FROM to TO. The source and destination do + not overlap. */ +# ifndef YYCOPY +# if defined __GNUC__ && 1 < __GNUC__ +# define YYCOPY(To, From, Count) \ + __builtin_memcpy (To, From, (Count) * sizeof (*(From))) +# else +# define YYCOPY(To, From, Count) \ + do \ + { \ + YYSIZE_T yyi; \ + for (yyi = 0; yyi < (Count); yyi++) \ + (To)[yyi] = (From)[yyi]; \ + } \ + while (YYID (0)) +# endif +# endif + +/* Relocate STACK from its old location to the new one. The + local variables YYSIZE and YYSTACKSIZE give the old and new number of + elements in the stack, and YYPTR gives the new location of the + stack. Advance YYPTR to a properly aligned location for the next + stack. */ +# define YYSTACK_RELOCATE(Stack) \ + do \ + { \ + YYSIZE_T yynewbytes; \ + YYCOPY (&yyptr->Stack, Stack, yysize); \ + Stack = &yyptr->Stack; \ + yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ + yyptr += yynewbytes / sizeof (*yyptr); \ + } \ + while (YYID (0)) + +#endif + +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL 5 +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST 15296 + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS 248 +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS 107 +/* YYNRULES -- Number of rules. */ +#define YYNRULES 588 +/* YYNRULES -- Number of states. */ +#define YYNSTATES 2157 + +/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ +#define YYUNDEFTOK 2 +#define YYMAXUTOK 480 + +#define YYTRANSLATE(YYX) \ + ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) + +/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */ +static const yytype_uint8 yytranslate[] = +{ + 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 233, 2, 245, 2, 230, 232, 2, + 238, 239, 228, 226, 247, 227, 244, 229, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 220, 2, 221, 215, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 240, 2, 241, 237, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 242, 231, 243, 246, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, + 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, + 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, + 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, + 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, + 216, 217, 218, 219, 222, 223, 224, 225, 234, 235, + 236 +}; + +#if YYDEBUG +/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in + YYRHS. */ +static const yytype_uint16 yyprhs[] = +{ + 0, 0, 3, 5, 8, 9, 12, 14, 16, 18, + 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, + 44, 46, 48, 50, 52, 54, 56, 58, 60, 66, + 72, 80, 88, 96, 106, 113, 120, 127, 136, 137, + 140, 143, 146, 149, 152, 154, 158, 160, 164, 165, + 166, 177, 179, 183, 184, 198, 200, 204, 205, 221, + 230, 245, 246, 253, 255, 257, 259, 261, 263, 265, + 267, 269, 271, 273, 275, 281, 287, 290, 298, 306, + 311, 315, 322, 332, 340, 347, 355, 362, 367, 376, + 386, 396, 403, 413, 420, 430, 436, 445, 454, 466, + 473, 483, 489, 497, 507, 517, 529, 537, 547, 557, + 558, 560, 561, 565, 571, 572, 582, 583, 595, 601, + 602, 612, 613, 617, 621, 627, 633, 634, 637, 638, + 640, 642, 646, 649, 651, 656, 659, 660, 663, 665, + 669, 672, 675, 678, 683, 685, 687, 691, 693, 695, + 699, 701, 703, 707, 709, 711, 715, 716, 722, 723, + 726, 734, 742, 750, 759, 768, 776, 784, 796, 805, + 813, 822, 831, 840, 850, 854, 859, 870, 878, 886, + 894, 902, 910, 918, 926, 934, 942, 950, 959, 972, + 981, 989, 997, 1006, 1015, 1024, 1033, 1042, 1051, 1057, + 1069, 1075, 1085, 1095, 1100, 1110, 1120, 1122, 1124, 1125, + 1128, 1135, 1142, 1149, 1156, 1165, 1176, 1191, 1208, 1221, + 1236, 1251, 1266, 1281, 1290, 1299, 1306, 1311, 1317, 1324, + 1331, 1335, 1340, 1344, 1350, 1357, 1363, 1367, 1371, 1376, + 1382, 1387, 1393, 1397, 1403, 1411, 1419, 1423, 1431, 1435, + 1438, 1441, 1444, 1447, 1450, 1466, 1469, 1472, 1475, 1478, + 1481, 1498, 1510, 1517, 1526, 1535, 1546, 1548, 1551, 1554, + 1556, 1560, 1564, 1569, 1574, 1576, 1578, 1584, 1596, 1610, + 1611, 1619, 1620, 1634, 1635, 1651, 1652, 1659, 1669, 1672, + 1676, 1687, 1689, 1692, 1698, 1706, 1709, 1712, 1716, 1719, + 1723, 1726, 1730, 1740, 1747, 1749, 1751, 1753, 1755, 1757, + 1758, 1761, 1765, 1769, 1774, 1784, 1789, 1804, 1805, 1809, + 1810, 1812, 1813, 1816, 1817, 1820, 1821, 1824, 1831, 1839, + 1846, 1852, 1856, 1865, 1871, 1876, 1883, 1895, 1907, 1926, + 1945, 1958, 1971, 1984, 1995, 2006, 2017, 2028, 2039, 2044, + 2049, 2054, 2059, 2064, 2069, 2074, 2079, 2084, 2087, 2091, + 2098, 2100, 2102, 2104, 2107, 2113, 2121, 2132, 2134, 2138, + 2141, 2144, 2147, 2151, 2155, 2159, 2163, 2167, 2171, 2175, + 2179, 2183, 2187, 2191, 2195, 2199, 2203, 2207, 2211, 2215, + 2219, 2225, 2230, 2235, 2240, 2245, 2250, 2255, 2260, 2265, + 2270, 2275, 2282, 2287, 2292, 2297, 2302, 2307, 2312, 2317, + 2322, 2329, 2336, 2343, 2348, 2350, 2352, 2354, 2356, 2358, + 2360, 2362, 2364, 2366, 2368, 2370, 2371, 2378, 2380, 2385, + 2392, 2394, 2399, 2404, 2409, 2416, 2422, 2430, 2435, 2440, + 2447, 2452, 2456, 2459, 2465, 2471, 2475, 2481, 2488, 2497, + 2504, 2509, 2517, 2524, 2531, 2538, 2543, 2550, 2555, 2556, + 2559, 2560, 2563, 2564, 2572, 2574, 2578, 2580, 2582, 2585, + 2586, 2590, 2592, 2595, 2598, 2602, 2606, 2618, 2628, 2636, + 2644, 2646, 2650, 2652, 2654, 2657, 2661, 2666, 2672, 2674, + 2676, 2679, 2683, 2687, 2693, 2698, 2701, 2704, 2707, 2710, + 2714, 2718, 2722, 2726, 2743, 2760, 2777, 2794, 2796, 2798, + 2800, 2804, 2809, 2814, 2819, 2826, 2833, 2842, 2851, 2856, + 2871, 2876, 2881, 2883, 2885, 2889, 2893, 2903, 2911, 2913, + 2919, 2923, 2930, 2932, 2936, 2938, 2940, 2945, 2950, 2954, + 2960, 2967, 2976, 2983, 2989, 2995, 3001, 3007, 3009, 3014, + 3016, 3018, 3020, 3022, 3027, 3034, 3039, 3046, 3052, 3060, + 3065, 3070, 3075, 3084, 3089, 3094, 3099, 3104, 3113, 3122, + 3129, 3134, 3141, 3146, 3148, 3153, 3158, 3159, 3166, 3171, + 3174, 3179, 3181, 3185, 3191, 3197, 3206, 3208, 3210 +}; + +/* YYRHS -- A `-1'-separated list of the rules' RHS. */ +static const yytype_int16 yyrhs[] = +{ + 249, 0, -1, 250, -1, 1, 6, -1, -1, 250, + 251, -1, 253, -1, 254, -1, 274, -1, 117, 238, + 348, 239, 6, -1, 295, -1, 296, -1, 300, -1, + 301, -1, 302, -1, 303, -1, 307, -1, 316, -1, + 317, -1, 323, -1, 324, -1, 306, -1, 305, -1, + 304, -1, 299, -1, 326, -1, 221, -1, 222, -1, + 44, 238, 348, 239, 6, -1, 45, 238, 348, 239, + 6, -1, 44, 238, 348, 239, 252, 348, 6, -1, + 44, 238, 348, 247, 344, 239, 6, -1, 45, 238, + 348, 247, 344, 239, 6, -1, 44, 238, 348, 247, + 344, 239, 252, 348, 6, -1, 354, 348, 242, 255, + 243, 6, -1, 156, 4, 240, 327, 241, 6, -1, + 157, 4, 240, 327, 241, 6, -1, 158, 4, 240, + 327, 247, 327, 241, 6, -1, -1, 255, 258, -1, + 255, 262, -1, 255, 265, -1, 255, 267, -1, 255, + 268, -1, 327, -1, 256, 247, 327, -1, 327, -1, + 257, 247, 327, -1, -1, -1, 4, 259, 238, 256, + 239, 260, 242, 257, 243, 6, -1, 348, -1, 261, + 247, 348, -1, -1, 163, 238, 327, 247, 327, 247, + 327, 239, 263, 242, 261, 243, 6, -1, 348, -1, + 264, 247, 348, -1, -1, 164, 238, 327, 247, 327, + 247, 327, 247, 327, 239, 266, 242, 264, 243, 6, + -1, 165, 242, 340, 243, 242, 340, 243, 6, -1, + 165, 242, 340, 243, 242, 340, 243, 242, 340, 243, + 242, 340, 243, 6, -1, -1, 166, 269, 242, 257, + 243, 6, -1, 7, -1, 214, -1, 213, -1, 212, + -1, 211, -1, 236, -1, 235, -1, 238, -1, 240, + -1, 239, -1, 241, -1, 81, 240, 276, 241, 6, + -1, 82, 240, 280, 241, 6, -1, 332, 6, -1, + 89, 272, 349, 247, 327, 273, 6, -1, 90, 272, + 354, 247, 349, 273, 6, -1, 354, 270, 341, 6, + -1, 354, 271, 6, -1, 354, 272, 273, 270, 341, + 6, -1, 354, 272, 242, 344, 243, 273, 270, 341, + 6, -1, 354, 240, 327, 241, 270, 327, 6, -1, + 354, 240, 327, 241, 271, 6, -1, 354, 238, 327, + 239, 270, 327, 6, -1, 354, 238, 327, 239, 271, + 6, -1, 354, 7, 349, 6, -1, 354, 272, 273, + 7, 46, 272, 273, 6, -1, 354, 272, 273, 7, + 46, 272, 352, 273, 6, -1, 354, 272, 273, 214, + 46, 272, 352, 273, 6, -1, 354, 244, 4, 7, + 349, 6, -1, 354, 240, 327, 241, 244, 4, 7, + 349, 6, -1, 354, 244, 4, 270, 327, 6, -1, + 354, 240, 327, 241, 244, 4, 270, 327, 6, -1, + 354, 244, 4, 271, 6, -1, 354, 240, 327, 241, + 244, 4, 271, 6, -1, 354, 244, 173, 244, 4, + 7, 345, 6, -1, 354, 240, 327, 241, 244, 173, + 244, 4, 7, 345, 6, -1, 354, 244, 174, 7, + 346, 6, -1, 354, 240, 327, 241, 244, 174, 7, + 346, 6, -1, 354, 184, 7, 327, 6, -1, 184, + 240, 327, 241, 7, 4, 6, -1, 184, 240, 327, + 241, 244, 4, 7, 327, 6, -1, 184, 240, 327, + 241, 244, 4, 7, 349, 6, -1, 184, 240, 327, + 241, 244, 4, 7, 242, 344, 243, 6, -1, 184, + 240, 327, 241, 244, 4, 6, -1, 129, 238, 4, + 239, 244, 4, 7, 327, 6, -1, 129, 238, 4, + 239, 244, 4, 7, 349, 6, -1, -1, 247, -1, + -1, 276, 275, 354, -1, 276, 275, 354, 7, 327, + -1, -1, 276, 275, 354, 7, 242, 341, 277, 282, + 243, -1, -1, 276, 275, 354, 272, 273, 7, 242, + 341, 278, 282, 243, -1, 276, 275, 354, 7, 349, + -1, -1, 276, 275, 354, 7, 242, 349, 279, 286, + 243, -1, -1, 280, 275, 348, -1, 327, 7, 349, + -1, 281, 247, 327, 7, 349, -1, 343, 7, 354, + 238, 239, -1, -1, 247, 284, -1, -1, 284, -1, + 285, -1, 284, 247, 285, -1, 4, 341, -1, 4, + -1, 4, 242, 281, 243, -1, 4, 349, -1, -1, + 247, 287, -1, 288, -1, 287, 247, 288, -1, 4, + 327, -1, 4, 349, -1, 188, 349, -1, 4, 242, + 352, 243, -1, 327, -1, 349, -1, 349, 247, 327, + -1, 327, -1, 349, -1, 349, 247, 327, -1, 327, + -1, 349, -1, 349, 247, 327, -1, 327, -1, 349, + -1, 349, 247, 327, -1, -1, 176, 95, 242, 327, + 243, -1, -1, 122, 338, -1, 91, 238, 327, 239, + 7, 338, 6, -1, 94, 238, 327, 239, 7, 341, + 6, -1, 98, 238, 327, 239, 7, 341, 6, -1, + 92, 238, 327, 239, 7, 341, 294, 6, -1, 93, + 238, 327, 239, 7, 341, 294, 6, -1, 168, 238, + 327, 239, 7, 341, 6, -1, 169, 238, 327, 239, + 7, 341, 6, -1, 170, 238, 327, 239, 7, 341, + 172, 341, 171, 327, 6, -1, 126, 94, 238, 327, + 239, 7, 341, 6, -1, 109, 238, 327, 239, 7, + 341, 6, -1, 94, 4, 238, 327, 239, 7, 341, + 6, -1, 122, 97, 238, 327, 239, 7, 341, 6, + -1, 97, 238, 327, 239, 7, 341, 293, 6, -1, + 123, 97, 238, 327, 239, 7, 341, 293, 6, -1, + 13, 14, 6, -1, 14, 97, 327, 6, -1, 112, + 97, 238, 327, 239, 7, 5, 5, 5, 6, -1, + 95, 238, 327, 239, 7, 341, 6, -1, 96, 238, + 327, 239, 7, 341, 6, -1, 100, 238, 327, 239, + 7, 341, 6, -1, 103, 238, 327, 239, 7, 341, + 6, -1, 107, 238, 327, 239, 7, 341, 6, -1, + 108, 238, 327, 239, 7, 341, 6, -1, 101, 238, + 327, 239, 7, 341, 6, -1, 102, 238, 327, 239, + 7, 341, 6, -1, 119, 238, 327, 239, 7, 341, + 6, -1, 144, 238, 327, 239, 7, 341, 6, -1, + 126, 97, 238, 327, 239, 7, 341, 6, -1, 126, + 97, 238, 327, 239, 7, 341, 4, 242, 340, 243, + 6, -1, 97, 4, 238, 327, 239, 7, 341, 6, + -1, 99, 238, 327, 239, 7, 341, 6, -1, 118, + 238, 327, 239, 7, 341, 6, -1, 123, 118, 238, + 327, 239, 7, 341, 6, -1, 126, 99, 238, 327, + 239, 7, 341, 6, -1, 125, 91, 238, 289, 239, + 270, 341, 6, -1, 125, 94, 238, 290, 239, 270, + 341, 6, -1, 125, 97, 238, 291, 239, 270, 341, + 6, -1, 125, 99, 238, 292, 239, 270, 341, 6, + -1, 133, 338, 242, 297, 243, -1, 132, 242, 338, + 247, 338, 247, 327, 243, 242, 297, 243, -1, 134, + 338, 242, 297, 243, -1, 135, 242, 338, 247, 327, + 243, 242, 297, 243, -1, 135, 242, 338, 247, 338, + 243, 242, 297, 243, -1, 4, 242, 297, 243, -1, + 150, 94, 242, 344, 243, 97, 242, 327, 243, -1, + 147, 94, 238, 327, 239, 242, 344, 243, 6, -1, + 298, -1, 296, -1, -1, 298, 295, -1, 298, 91, + 242, 344, 243, 6, -1, 298, 94, 242, 344, 243, + 6, -1, 298, 97, 242, 344, 243, 6, -1, 298, + 99, 242, 344, 243, 6, -1, 137, 122, 238, 327, + 239, 7, 341, 6, -1, 137, 91, 238, 327, 239, + 7, 242, 340, 243, 6, -1, 137, 122, 238, 327, + 239, 7, 242, 338, 247, 338, 247, 344, 243, 6, + -1, 137, 122, 238, 327, 239, 7, 242, 338, 247, + 338, 247, 338, 247, 344, 243, 6, -1, 137, 95, + 238, 327, 239, 7, 242, 338, 247, 344, 243, 6, + -1, 137, 101, 238, 327, 239, 7, 242, 338, 247, + 338, 247, 344, 243, 6, -1, 137, 102, 238, 327, + 239, 7, 242, 338, 247, 338, 247, 344, 243, 6, + -1, 137, 104, 238, 327, 239, 7, 242, 338, 247, + 338, 247, 344, 243, 6, -1, 137, 105, 238, 327, + 239, 7, 242, 338, 247, 338, 247, 344, 243, 6, + -1, 137, 4, 238, 327, 239, 7, 341, 6, -1, + 137, 4, 238, 327, 239, 7, 5, 6, -1, 137, + 4, 242, 327, 243, 6, -1, 148, 242, 298, 243, + -1, 131, 148, 242, 298, 243, -1, 148, 184, 240, + 327, 241, 6, -1, 148, 4, 240, 327, 241, 6, + -1, 148, 354, 6, -1, 148, 4, 4, 6, -1, + 148, 84, 6, -1, 173, 345, 242, 298, 243, -1, + 131, 173, 345, 242, 298, 243, -1, 208, 327, 242, + 298, 243, -1, 189, 5, 6, -1, 190, 5, 6, + -1, 189, 242, 298, 243, -1, 131, 189, 242, 298, + 243, -1, 190, 242, 298, 243, -1, 131, 190, 242, + 298, 243, -1, 354, 349, 6, -1, 73, 238, 352, + 239, 6, -1, 354, 354, 240, 327, 241, 348, 6, + -1, 354, 354, 354, 240, 327, 241, 6, -1, 354, + 327, 6, -1, 129, 238, 4, 239, 244, 4, 6, + -1, 167, 4, 6, -1, 182, 6, -1, 183, 6, + -1, 70, 6, -1, 71, 6, -1, 64, 6, -1, + 64, 242, 327, 247, 327, 247, 327, 247, 327, 247, + 327, 247, 327, 243, 6, -1, 65, 6, -1, 66, + 6, -1, 78, 6, -1, 79, 6, -1, 114, 6, + -1, 115, 242, 344, 243, 242, 344, 243, 242, 340, + 243, 242, 327, 247, 327, 243, 6, -1, 187, 238, + 242, 344, 243, 247, 349, 247, 349, 239, 6, -1, + 175, 238, 327, 8, 327, 239, -1, 175, 238, 327, + 8, 327, 8, 327, 239, -1, 175, 4, 176, 242, + 327, 8, 327, 243, -1, 175, 4, 176, 242, 327, + 8, 327, 8, 327, 243, -1, 177, -1, 188, 4, + -1, 188, 349, -1, 185, -1, 186, 354, 6, -1, + 186, 349, 6, -1, 178, 238, 327, 239, -1, 179, + 238, 327, 239, -1, 180, -1, 181, -1, 136, 338, + 242, 298, 243, -1, 136, 242, 338, 247, 338, 247, + 327, 243, 242, 298, 243, -1, 136, 242, 338, 247, + 338, 247, 338, 247, 327, 243, 242, 298, 243, -1, + -1, 136, 338, 242, 298, 308, 312, 243, -1, -1, + 136, 242, 338, 247, 338, 247, 327, 243, 242, 298, + 309, 312, 243, -1, -1, 136, 242, 338, 247, 338, + 247, 338, 247, 327, 243, 242, 298, 310, 312, 243, + -1, -1, 136, 242, 298, 311, 312, 243, -1, 136, + 242, 298, 243, 128, 109, 242, 327, 243, -1, 118, + 341, -1, 123, 118, 341, -1, 120, 242, 344, 243, + 242, 344, 243, 242, 327, 243, -1, 313, -1, 312, + 313, -1, 153, 242, 327, 243, 6, -1, 153, 242, + 341, 247, 341, 243, 6, -1, 154, 6, -1, 145, + 6, -1, 145, 327, 6, -1, 159, 6, -1, 159, + 161, 6, -1, 160, 6, -1, 160, 161, 6, -1, + 155, 238, 327, 239, 7, 341, 128, 327, 6, -1, + 128, 4, 240, 327, 241, 6, -1, 139, -1, 140, + -1, 141, -1, 142, -1, 143, -1, -1, 148, 6, + -1, 131, 148, 6, -1, 148, 327, 6, -1, 131, + 148, 327, 6, -1, 314, 242, 298, 315, 243, 242, + 298, 315, 243, -1, 106, 238, 348, 239, -1, 314, + 238, 327, 239, 7, 242, 298, 315, 243, 242, 298, + 315, 243, 6, -1, -1, 128, 4, 327, -1, -1, + 4, -1, -1, 7, 341, -1, -1, 7, 327, -1, + -1, 138, 341, -1, 110, 111, 341, 7, 327, 6, + -1, 124, 94, 342, 7, 327, 318, 6, -1, 124, + 97, 342, 320, 319, 6, -1, 124, 99, 342, 320, + 6, -1, 162, 342, 6, -1, 151, 97, 242, 344, + 243, 7, 327, 6, -1, 145, 97, 342, 321, 6, + -1, 145, 99, 342, 6, -1, 146, 97, 342, 7, + 327, 6, -1, 127, 94, 242, 344, 243, 7, 242, + 344, 243, 322, 6, -1, 127, 97, 242, 344, 243, + 7, 242, 344, 243, 322, 6, -1, 127, 94, 242, + 344, 243, 7, 242, 344, 243, 132, 242, 338, 247, + 338, 247, 327, 243, 6, -1, 127, 97, 242, 344, + 243, 7, 242, 344, 243, 132, 242, 338, 247, 338, + 247, 327, 243, 6, -1, 127, 94, 242, 344, 243, + 7, 242, 344, 243, 133, 338, 6, -1, 127, 97, + 242, 344, 243, 7, 242, 344, 243, 133, 338, 6, + -1, 127, 97, 327, 242, 344, 243, 7, 327, 242, + 344, 243, 6, -1, 91, 242, 344, 243, 176, 97, + 242, 327, 243, 6, -1, 94, 242, 344, 243, 176, + 97, 242, 327, 243, 6, -1, 91, 242, 344, 243, + 176, 99, 242, 327, 243, 6, -1, 94, 242, 344, + 243, 176, 99, 242, 327, 243, 6, -1, 97, 242, + 344, 243, 176, 99, 242, 327, 243, 6, -1, 152, + 97, 342, 6, -1, 152, 94, 342, 6, -1, 116, + 91, 342, 6, -1, 116, 94, 342, 6, -1, 116, + 97, 342, 6, -1, 130, 94, 341, 6, -1, 126, + 94, 341, 6, -1, 126, 97, 341, 6, -1, 126, + 99, 341, 6, -1, 149, 6, -1, 149, 4, 6, + -1, 149, 91, 242, 344, 243, 6, -1, 197, -1, + 198, -1, 199, -1, 325, 6, -1, 325, 242, 341, + 243, 6, -1, 325, 242, 341, 247, 341, 243, 6, + -1, 325, 238, 341, 239, 242, 341, 247, 341, 243, + 6, -1, 328, -1, 238, 327, 239, -1, 227, 327, + -1, 226, 327, -1, 233, 327, -1, 327, 227, 327, + -1, 327, 226, 327, -1, 327, 228, 327, -1, 327, + 229, 327, -1, 327, 231, 327, -1, 327, 232, 327, + -1, 327, 230, 327, -1, 327, 237, 327, -1, 327, + 220, 327, -1, 327, 221, 327, -1, 327, 225, 327, + -1, 327, 224, 327, -1, 327, 219, 327, -1, 327, + 218, 327, -1, 327, 217, 327, -1, 327, 216, 327, + -1, 327, 222, 327, -1, 327, 223, 327, -1, 327, + 215, 327, 8, 327, -1, 16, 272, 327, 273, -1, + 17, 272, 327, 273, -1, 18, 272, 327, 273, -1, + 19, 272, 327, 273, -1, 20, 272, 327, 273, -1, + 21, 272, 327, 273, -1, 22, 272, 327, 273, -1, + 23, 272, 327, 273, -1, 24, 272, 327, 273, -1, + 26, 272, 327, 273, -1, 27, 272, 327, 247, 327, + 273, -1, 28, 272, 327, 273, -1, 29, 272, 327, + 273, -1, 30, 272, 327, 273, -1, 31, 272, 327, + 273, -1, 32, 272, 327, 273, -1, 33, 272, 327, + 273, -1, 34, 272, 327, 273, -1, 35, 272, 327, + 273, -1, 36, 272, 327, 247, 327, 273, -1, 37, + 272, 327, 247, 327, 273, -1, 38, 272, 327, 247, + 327, 273, -1, 25, 272, 327, 273, -1, 3, -1, + 10, -1, 15, -1, 11, -1, 12, -1, 204, -1, + 205, -1, 206, -1, 75, -1, 76, -1, 77, -1, + -1, 83, 272, 327, 329, 282, 273, -1, 332, -1, + 195, 272, 348, 273, -1, 195, 272, 348, 247, 327, + 273, -1, 334, -1, 334, 240, 327, 241, -1, 334, + 238, 327, 239, -1, 200, 238, 334, 239, -1, 200, + 238, 334, 244, 335, 239, -1, 202, 238, 334, 330, + 239, -1, 202, 238, 334, 244, 335, 330, 239, -1, + 201, 238, 349, 239, -1, 245, 354, 272, 273, -1, + 245, 334, 244, 335, 238, 239, -1, 86, 272, 354, + 273, -1, 86, 272, 273, -1, 354, 271, -1, 354, + 240, 327, 241, 271, -1, 354, 238, 327, 239, 271, + -1, 354, 244, 335, -1, 354, 9, 354, 244, 335, + -1, 354, 244, 335, 238, 327, 239, -1, 354, 9, + 354, 244, 335, 238, 327, 239, -1, 354, 240, 327, + 241, 244, 4, -1, 354, 244, 4, 271, -1, 354, + 240, 327, 241, 244, 4, 271, -1, 191, 238, 348, + 247, 327, 239, -1, 56, 238, 341, 247, 341, 239, + -1, 57, 272, 348, 247, 348, 273, -1, 55, 272, + 348, 273, -1, 58, 272, 348, 247, 348, 273, -1, + 63, 238, 352, 239, -1, -1, 247, 327, -1, -1, + 247, 348, -1, -1, 84, 334, 337, 333, 240, 283, + 241, -1, 354, -1, 354, 9, 354, -1, 4, -1, + 87, -1, 87, 327, -1, -1, 238, 336, 239, -1, + 339, -1, 227, 338, -1, 226, 338, -1, 338, 227, + 338, -1, 338, 226, 338, -1, 242, 327, 247, 327, + 247, 327, 247, 327, 247, 327, 243, -1, 242, 327, + 247, 327, 247, 327, 247, 327, 243, -1, 242, 327, + 247, 327, 247, 327, 243, -1, 238, 327, 247, 327, + 247, 327, 239, -1, 341, -1, 340, 247, 341, -1, + 327, -1, 343, -1, 242, 243, -1, 242, 344, 243, + -1, 227, 242, 344, 243, -1, 327, 228, 242, 344, + 243, -1, 341, -1, 5, -1, 227, 343, -1, 327, + 228, 343, -1, 327, 8, 327, -1, 327, 8, 327, + 8, 327, -1, 91, 242, 327, 243, -1, 91, 5, + -1, 94, 5, -1, 97, 5, -1, 99, 5, -1, + 125, 91, 342, -1, 125, 94, 342, -1, 125, 97, + 342, -1, 125, 99, 342, -1, 91, 176, 64, 242, + 327, 247, 327, 247, 327, 247, 327, 247, 327, 247, + 327, 243, -1, 94, 176, 64, 242, 327, 247, 327, + 247, 327, 247, 327, 247, 327, 247, 327, 243, -1, + 97, 176, 64, 242, 327, 247, 327, 247, 327, 247, + 327, 247, 327, 247, 327, 243, -1, 99, 176, 64, + 242, 327, 247, 327, 247, 327, 247, 327, 247, 327, + 247, 327, 243, -1, 296, -1, 307, -1, 316, -1, + 354, 272, 273, -1, 39, 240, 354, 241, -1, 39, + 240, 343, 241, -1, 39, 238, 343, 239, -1, 39, + 272, 242, 344, 243, 273, -1, 354, 272, 242, 344, + 243, 273, -1, 40, 272, 327, 247, 327, 247, 327, + 273, -1, 41, 272, 327, 247, 327, 247, 327, 273, + -1, 42, 272, 348, 273, -1, 43, 272, 327, 247, + 327, 247, 327, 247, 327, 247, 327, 247, 327, 273, + -1, 196, 272, 343, 273, -1, 32, 272, 343, 273, + -1, 327, -1, 343, -1, 344, 247, 327, -1, 344, + 247, 343, -1, 242, 327, 247, 327, 247, 327, 247, + 327, 243, -1, 242, 327, 247, 327, 247, 327, 243, + -1, 354, -1, 4, 244, 173, 244, 4, -1, 242, + 347, 243, -1, 354, 240, 327, 241, 244, 174, -1, + 345, -1, 347, 247, 345, -1, 349, -1, 354, -1, + 354, 240, 327, 241, -1, 354, 238, 327, 239, -1, + 354, 244, 335, -1, 354, 9, 354, 244, 335, -1, + 354, 244, 335, 238, 327, 239, -1, 354, 9, 354, + 244, 335, 238, 327, 239, -1, 354, 240, 327, 241, + 244, 4, -1, 125, 91, 242, 327, 243, -1, 125, + 94, 242, 327, 243, -1, 125, 97, 242, 327, 243, + -1, 125, 99, 242, 327, 243, -1, 5, -1, 209, + 240, 354, 241, -1, 67, -1, 207, -1, 72, -1, + 74, -1, 193, 238, 348, 239, -1, 192, 238, 348, + 247, 348, 239, -1, 194, 272, 348, 273, -1, 194, + 272, 348, 247, 348, 273, -1, 203, 238, 334, 331, + 239, -1, 203, 238, 334, 244, 335, 331, 239, -1, + 48, 272, 352, 273, -1, 49, 238, 348, 239, -1, + 50, 238, 348, 239, -1, 51, 238, 348, 247, 348, + 247, 348, 239, -1, 46, 272, 352, 273, -1, 60, + 272, 348, 273, -1, 61, 272, 348, 273, -1, 62, + 272, 348, 273, -1, 59, 272, 327, 247, 348, 247, + 348, 273, -1, 54, 272, 348, 247, 327, 247, 327, + 273, -1, 54, 272, 348, 247, 327, 273, -1, 47, + 272, 348, 273, -1, 47, 272, 348, 247, 344, 273, + -1, 68, 272, 348, 273, -1, 69, -1, 53, 272, + 348, 273, -1, 52, 272, 348, 273, -1, -1, 88, + 272, 349, 350, 286, 273, -1, 85, 272, 351, 273, + -1, 245, 327, -1, 354, 9, 245, 327, -1, 348, + -1, 352, 247, 348, -1, 4, 246, 242, 327, 243, + -1, 353, 246, 242, 327, 243, -1, 210, 240, 348, + 241, 246, 242, 327, 243, -1, 4, -1, 353, -1, + 210, 240, 348, 241, -1 +}; + +/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ +static const yytype_uint16 yyrline[] = +{ + 0, 259, 259, 260, 265, 267, 271, 272, 273, 274, + 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, + 303, 304, 305, 306, 307, 308, 312, 316, 323, 328, + 333, 347, 360, 373, 401, 415, 428, 441, 460, 465, + 466, 467, 468, 469, 473, 475, 480, 482, 488, 592, + 487, 610, 617, 628, 627, 645, 652, 663, 662, 679, + 696, 719, 718, 732, 733, 734, 735, 736, 740, 741, + 747, 747, 748, 748, 754, 755, 756, 757, 762, 768, + 830, 845, 874, 884, 889, 897, 902, 910, 919, 924, + 936, 953, 959, 968, 986, 1004, 1013, 1025, 1030, 1038, + 1058, 1081, 1092, 1100, 1122, 1145, 1183, 1204, 1216, 1230, + 1230, 1232, 1234, 1243, 1253, 1252, 1273, 1272, 1290, 1300, + 1299, 1313, 1315, 1323, 1329, 1334, 1360, 1362, 1365, 1367, + 1371, 1372, 1376, 1388, 1401, 1416, 1426, 1428, 1432, 1433, + 1438, 1446, 1455, 1463, 1481, 1485, 1492, 1500, 1504, 1511, + 1519, 1523, 1530, 1538, 1542, 1549, 1558, 1561, 1568, 1571, + 1578, 1602, 1618, 1634, 1671, 1711, 1727, 1743, 1765, 1775, + 1791, 1808, 1824, 1845, 1856, 1862, 1868, 1875, 1906, 1921, + 1943, 1966, 1989, 2012, 2036, 2060, 2083, 2108, 2118, 2141, + 2158, 2174, 2192, 2210, 2220, 2232, 2244, 2256, 2273, 2289, + 2305, 2320, 2337, 2354, 2389, 2411, 2435, 2436, 2441, 2444, + 2448, 2459, 2470, 2481, 2497, 2516, 2537, 2552, 2568, 2586, + 2637, 2658, 2680, 2703, 2808, 2824, 2859, 2870, 2881, 2887, + 2902, 2930, 2942, 2951, 2958, 2970, 2989, 2995, 3001, 3008, + 3015, 3022, 3034, 3107, 3125, 3142, 3157, 3190, 3202, 3226, + 3230, 3235, 3242, 3247, 3257, 3262, 3268, 3276, 3280, 3284, + 3293, 3357, 3373, 3390, 3407, 3429, 3451, 3486, 3494, 3502, + 3508, 3515, 3522, 3542, 3568, 3580, 3592, 3610, 3628, 3647, + 3646, 3671, 3670, 3697, 3696, 3721, 3720, 3743, 3759, 3776, + 3793, 3816, 3819, 3825, 3837, 3857, 3861, 3865, 3869, 3873, + 3877, 3881, 3885, 3894, 3907, 3908, 3909, 3910, 3911, 3915, + 3916, 3917, 3918, 3919, 3922, 3945, 3964, 3986, 3989, 4005, + 4008, 4025, 4028, 4034, 4037, 4044, 4047, 4054, 4071, 4112, + 4156, 4195, 4220, 4229, 4259, 4285, 4311, 4343, 4370, 4396, + 4422, 4448, 4474, 4496, 4502, 4508, 4514, 4520, 4526, 4552, + 4578, 4595, 4612, 4629, 4641, 4647, 4653, 4665, 4669, 4679, + 4690, 4691, 4692, 4696, 4702, 4714, 4732, 4760, 4761, 4762, + 4763, 4764, 4765, 4766, 4767, 4768, 4775, 4776, 4777, 4778, + 4779, 4780, 4781, 4782, 4783, 4784, 4785, 4786, 4787, 4788, + 4789, 4790, 4791, 4792, 4793, 4794, 4795, 4796, 4797, 4798, + 4799, 4800, 4801, 4802, 4803, 4804, 4805, 4806, 4807, 4808, + 4809, 4810, 4811, 4812, 4821, 4822, 4823, 4824, 4825, 4826, + 4827, 4828, 4829, 4830, 4831, 4836, 4835, 4843, 4845, 4850, + 4855, 4860, 4882, 4903, 4907, 4911, 4915, 4919, 4925, 4941, + 4946, 4952, 4958, 4977, 4998, 5031, 5035, 5040, 5044, 5049, + 5054, 5064, 5074, 5079, 5090, 5099, 5104, 5109, 5137, 5138, + 5144, 5145, 5151, 5150, 5173, 5175, 5180, 5189, 5191, 5197, + 5198, 5204, 5208, 5212, 5216, 5220, 5227, 5231, 5235, 5239, + 5246, 5251, 5258, 5263, 5267, 5272, 5276, 5284, 5295, 5299, + 5311, 5319, 5327, 5334, 5344, 5367, 5373, 5379, 5385, 5391, + 5402, 5413, 5424, 5435, 5441, 5447, 5453, 5459, 5469, 5479, + 5489, 5502, 5514, 5518, 5522, 5526, 5544, 5552, 5560, 5589, + 5599, 5615, 5626, 5631, 5635, 5639, 5651, 5655, 5667, 5684, + 5694, 5698, 5713, 5718, 5725, 5729, 5734, 5748, 5765, 5769, + 5774, 5778, 5783, 5791, 5797, 5803, 5809, 5818, 5822, 5826, + 5834, 5840, 5846, 5850, 5858, 5866, 5873, 5883, 5888, 5893, + 5908, 5922, 5936, 5948, 5964, 5973, 5982, 5992, 6003, 6011, + 6019, 6023, 6042, 6049, 6055, 6062, 6070, 6069, 6079, 6103, + 6105, 6111, 6116, 6124, 6133, 6142, 6154, 6157, 6161 +}; +#endif + +#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE +/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at YYNTOKENS, nonterminals. */ +static const char *const yytname[] = +{ + "$end", "error", "$undefined", "tDOUBLE", "tSTRING", "tBIGSTR", "tEND", + "tAFFECT", "tDOTS", "tSCOPE", "tPi", "tMPI_Rank", "tMPI_Size", + "tEuclidian", "tCoordinates", "tTestLevel", "tExp", "tLog", "tLog10", + "tSqrt", "tSin", "tAsin", "tCos", "tAcos", "tTan", "tRand", "tAtan", + "tAtan2", "tSinh", "tCosh", "tTanh", "tFabs", "tAbs", "tFloor", "tCeil", + "tRound", "tFmod", "tModulo", "tHypot", "tList", "tLinSpace", + "tLogSpace", "tListFromFile", "tCatenary", "tPrintf", "tError", "tStr", + "tSprintf", "tStrCat", "tStrPrefix", "tStrRelative", "tStrReplace", + "tAbsolutePath", "tDirName", "tStrSub", "tStrLen", "tFind", "tStrFind", + "tStrCmp", "tStrChoice", "tUpperCase", "tLowerCase", "tLowerCaseIn", + "tTextAttributes", "tBoundingBox", "tDraw", "tSetChanged", "tToday", + "tFixRelativePath", "tCurrentDirectory", "tSyncModel", "tNewModel", + "tOnelabAction", "tOnelabRun", "tCodeName", "tCpu", "tMemory", + "tTotalMemory", "tCreateTopology", "tCreateTopologyNoHoles", + "tDistanceFunction", "tDefineConstant", "tUndefineConstant", + "tDefineNumber", "tDefineStruct", "tNameStruct", "tDimNameSpace", + "tAppend", "tDefineString", "tSetNumber", "tSetString", "tPoint", + "tCircle", "tEllipse", "tLine", "tSphere", "tPolarSphere", "tSurface", + "tSpline", "tVolume", "tBlock", "tCylinder", "tCone", "tTorus", + "tEllipsoid", "tQuadric", "tShapeFromFile", "tRectangle", "tDisk", + "tWire", "tCharacteristic", "tLength", "tParametric", "tElliptic", + "tRefineMesh", "tAdaptMesh", "tRelocateMesh", "tSetFactory", + "tThruSections", "tWedge", "tFillet", "tChamfer", "tPlane", "tRuled", + "tTransfinite", "tPhysical", "tCompound", "tPeriodic", "tUsing", + "tPlugin", "tDegenerated", "tRecursive", "tRotate", "tTranslate", + "tSymmetry", "tDilate", "tExtrude", "tLevelset", "tAffine", + "tBooleanUnion", "tBooleanIntersection", "tBooleanDifference", + "tBooleanSection", "tBooleanFragments", "tThickSolid", "tRecombine", + "tSmoother", "tSplit", "tDelete", "tCoherence", "tIntersect", + "tMeshAlgorithm", "tReverse", "tLayers", "tScaleLast", "tHole", "tAlias", + "tAliasWithOptions", "tCopyOptions", "tQuadTriAddVerts", + "tQuadTriNoNewVerts", "tRecombLaterals", "tTransfQuadTri", "tText2D", + "tText3D", "tInterpolationScheme", "tTime", "tCombine", "tBSpline", + "tBezier", "tNurbs", "tNurbsOrder", "tNurbsKnots", "tColor", + "tColorTable", "tFor", "tIn", "tEndFor", "tIf", "tElseIf", "tElse", + "tEndIf", "tExit", "tAbort", "tField", "tReturn", "tCall", "tSlide", + "tMacro", "tShow", "tHide", "tGetValue", "tGetStringValue", "tGetEnv", + "tGetString", "tGetNumber", "tUnique", "tHomology", "tCohomology", + "tBetti", "tExists", "tFileExists", "tGetForced", "tGetForcedStr", + "tGMSH_MAJOR_VERSION", "tGMSH_MINOR_VERSION", "tGMSH_PATCH_VERSION", + "tGmshExecutableName", "tSetPartition", "tNameToString", "tStringToName", + "tAFFECTDIVIDE", "tAFFECTTIMES", "tAFFECTMINUS", "tAFFECTPLUS", "'?'", + "tOR", "tAND", "tNOTEQUAL", "tEQUAL", "'<'", "'>'", "tGREATERGREATER", + "tLESSLESS", "tGREATEROREQUAL", "tLESSOREQUAL", "'+'", "'-'", "'*'", + "'/'", "'%'", "'|'", "'&'", "'!'", "UNARYPREC", "tMINUSMINUS", + "tPLUSPLUS", "'^'", "'('", "')'", "'['", "']'", "'{'", "'}'", "'.'", + "'#'", "'~'", "','", "$accept", "All", "GeoFormatItems", "GeoFormatItem", + "SendToFile", "Printf", "View", "Views", "ElementCoords", + "ElementValues", "Element", "@1", "@2", "Text2DValues", "Text2D", "@3", + "Text3DValues", "Text3D", "@4", "InterpolationMatrix", "Time", "@5", + "NumericAffectation", "NumericIncrement", "LP", "RP", "Affectation", + "Comma", "DefineConstants", "@6", "@7", "@8", "UndefineConstants", + "Enumeration", "FloatParameterOptionsOrNone", + "FloatParameterOptionsOrNone_NoComma", "FloatParameterOptions", + "FloatParameterOption", "CharParameterOptionsOrNone", + "CharParameterOptions", "CharParameterOption", "PhysicalId0", + "PhysicalId1", "PhysicalId2", "PhysicalId3", "InSphereCenter", + "CircleOptions", "Shape", "Transform", "MultipleShape", "ListOfShapes", + "LevelSet", "Delete", "Colorify", "SetPartition", "Visibility", + "Command", "Slide", "Loop", "Extrude", "@9", "@10", "@11", "@12", + "ExtrudeParameters", "ExtrudeParameter", "BooleanOperator", + "BooleanOption", "Boolean", "BooleanShape", "TransfiniteType", + "TransfiniteArrangement", "TransfiniteCorners", "RecombineAngle", + "PeriodicTransform", "Constraints", "Coherence", "HomologyCommand", + "Homology", "FExpr", "FExpr_Single", "@13", "GetForced_Default", + "GetForcedStr_Default", "DefineStruct", "@14", "Struct_FullName", + "tSTRING_Member_Float", "Append", "AppendOrNot", "VExpr", "VExpr_Single", + "RecursiveListOfListOfDouble", "ListOfDouble", "ListOfDoubleOrAll", + "FExpr_Multi", "RecursiveListOfDouble", "ColorExpr", "ListOfColor", + "RecursiveListOfColor", "StringExprVar", "StringExpr", "@15", + "NameStruct_Arg", "RecursiveListOfStringExprVar", "StringIndex", + "String__Index", 0 +}; +#endif + +# ifdef YYPRINT +/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to + token YYLEX-NUM. */ +static const yytype_uint16 yytoknum[] = +{ + 0, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, + 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, + 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, + 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, + 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, + 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, + 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, + 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, + 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, + 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, + 465, 466, 467, 468, 469, 63, 470, 471, 472, 473, + 60, 62, 474, 475, 476, 477, 43, 45, 42, 47, + 37, 124, 38, 33, 478, 479, 480, 94, 40, 41, + 91, 93, 123, 125, 46, 35, 126, 44 +}; +# endif + +/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ +static const yytype_uint16 yyr1[] = +{ + 0, 248, 249, 249, 250, 250, 251, 251, 251, 251, + 251, 251, 251, 251, 251, 251, 251, 251, 251, 251, + 251, 251, 251, 251, 251, 251, 252, 252, 253, 253, + 253, 253, 253, 253, 254, 254, 254, 254, 255, 255, + 255, 255, 255, 255, 256, 256, 257, 257, 259, 260, + 258, 261, 261, 263, 262, 264, 264, 266, 265, 267, + 267, 269, 268, 270, 270, 270, 270, 270, 271, 271, + 272, 272, 273, 273, 274, 274, 274, 274, 274, 274, + 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, + 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, + 274, 274, 274, 274, 274, 274, 274, 274, 274, 275, + 275, 276, 276, 276, 277, 276, 278, 276, 276, 279, + 276, 280, 280, 281, 281, 281, 282, 282, 283, 283, + 284, 284, 285, 285, 285, 285, 286, 286, 287, 287, + 288, 288, 288, 288, 289, 289, 289, 290, 290, 290, + 291, 291, 291, 292, 292, 292, 293, 293, 294, 294, + 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, + 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, + 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, + 295, 295, 295, 295, 295, 295, 295, 295, 296, 296, + 296, 296, 296, 296, 296, 296, 297, 297, 298, 298, + 298, 298, 298, 298, 299, 299, 299, 299, 299, 299, + 299, 299, 299, 299, 299, 299, 300, 300, 300, 300, + 300, 300, 300, 301, 301, 302, 303, 303, 303, 303, + 303, 303, 304, 304, 304, 304, 304, 304, 304, 304, + 304, 304, 304, 304, 304, 304, 304, 304, 304, 304, + 304, 305, 306, 306, 306, 306, 306, 306, 306, 306, + 306, 306, 306, 306, 306, 306, 307, 307, 307, 308, + 307, 309, 307, 310, 307, 311, 307, 307, 307, 307, + 307, 312, 312, 313, 313, 313, 313, 313, 313, 313, + 313, 313, 313, 313, 314, 314, 314, 314, 314, 315, + 315, 315, 315, 315, 316, 316, 317, 318, 318, 319, + 319, 320, 320, 321, 321, 322, 322, 323, 323, 323, + 323, 323, 323, 323, 323, 323, 323, 323, 323, 323, + 323, 323, 323, 323, 323, 323, 323, 323, 323, 323, + 323, 323, 323, 323, 323, 323, 323, 324, 324, 324, + 325, 325, 325, 326, 326, 326, 326, 327, 327, 327, + 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, + 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, + 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, + 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, + 327, 327, 327, 327, 328, 328, 328, 328, 328, 328, + 328, 328, 328, 328, 328, 329, 328, 328, 328, 328, + 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, + 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, + 328, 328, 328, 328, 328, 328, 328, 328, 330, 330, + 331, 331, 333, 332, 334, 334, 335, 336, 336, 337, + 337, 338, 338, 338, 338, 338, 339, 339, 339, 339, + 340, 340, 341, 341, 341, 341, 341, 341, 342, 342, + 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, + 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, + 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, + 343, 343, 344, 344, 344, 344, 345, 345, 345, 345, + 346, 346, 347, 347, 348, 348, 348, 348, 348, 348, + 348, 348, 348, 348, 348, 348, 348, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, + 349, 349, 349, 349, 349, 349, 350, 349, 349, 351, + 351, 352, 352, 353, 353, 353, 354, 354, 354 +}; + +/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ +static const yytype_uint8 yyr2[] = +{ + 0, 2, 1, 2, 0, 2, 1, 1, 1, 5, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 5, 5, + 7, 7, 7, 9, 6, 6, 6, 8, 0, 2, + 2, 2, 2, 2, 1, 3, 1, 3, 0, 0, + 10, 1, 3, 0, 13, 1, 3, 0, 15, 8, + 14, 0, 6, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 5, 5, 2, 7, 7, 4, + 3, 6, 9, 7, 6, 7, 6, 4, 8, 9, + 9, 6, 9, 6, 9, 5, 8, 8, 11, 6, + 9, 5, 7, 9, 9, 11, 7, 9, 9, 0, + 1, 0, 3, 5, 0, 9, 0, 11, 5, 0, + 9, 0, 3, 3, 5, 5, 0, 2, 0, 1, + 1, 3, 2, 1, 4, 2, 0, 2, 1, 3, + 2, 2, 2, 4, 1, 1, 3, 1, 1, 3, + 1, 1, 3, 1, 1, 3, 0, 5, 0, 2, + 7, 7, 7, 8, 8, 7, 7, 11, 8, 7, + 8, 8, 8, 9, 3, 4, 10, 7, 7, 7, + 7, 7, 7, 7, 7, 7, 7, 8, 12, 8, + 7, 7, 8, 8, 8, 8, 8, 8, 5, 11, + 5, 9, 9, 4, 9, 9, 1, 1, 0, 2, + 6, 6, 6, 6, 8, 10, 14, 16, 12, 14, + 14, 14, 14, 8, 8, 6, 4, 5, 6, 6, + 3, 4, 3, 5, 6, 5, 3, 3, 4, 5, + 4, 5, 3, 5, 7, 7, 3, 7, 3, 2, + 2, 2, 2, 2, 15, 2, 2, 2, 2, 2, + 16, 11, 6, 8, 8, 10, 1, 2, 2, 1, + 3, 3, 4, 4, 1, 1, 5, 11, 13, 0, + 7, 0, 13, 0, 15, 0, 6, 9, 2, 3, + 10, 1, 2, 5, 7, 2, 2, 3, 2, 3, + 2, 3, 9, 6, 1, 1, 1, 1, 1, 0, + 2, 3, 3, 4, 9, 4, 14, 0, 3, 0, + 1, 0, 2, 0, 2, 0, 2, 6, 7, 6, + 5, 3, 8, 5, 4, 6, 11, 11, 18, 18, + 12, 12, 12, 10, 10, 10, 10, 10, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 2, 3, 6, + 1, 1, 1, 2, 5, 7, 10, 1, 3, 2, + 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 6, 4, 4, 4, 4, 4, 4, 4, 4, + 6, 6, 6, 4, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 0, 6, 1, 4, 6, + 1, 4, 4, 4, 6, 5, 7, 4, 4, 6, + 4, 3, 2, 5, 5, 3, 5, 6, 8, 6, + 4, 7, 6, 6, 6, 4, 6, 4, 0, 2, + 0, 2, 0, 7, 1, 3, 1, 1, 2, 0, + 3, 1, 2, 2, 3, 3, 11, 9, 7, 7, + 1, 3, 1, 1, 2, 3, 4, 5, 1, 1, + 2, 3, 3, 5, 4, 2, 2, 2, 2, 3, + 3, 3, 3, 16, 16, 16, 16, 1, 1, 1, + 3, 4, 4, 4, 6, 6, 8, 8, 4, 14, + 4, 4, 1, 1, 3, 3, 9, 7, 1, 5, + 3, 6, 1, 3, 1, 1, 4, 4, 3, 5, + 6, 8, 6, 5, 5, 5, 5, 1, 4, 1, + 1, 1, 1, 4, 6, 4, 6, 5, 7, 4, + 4, 4, 8, 4, 4, 4, 4, 8, 8, 6, + 4, 6, 4, 1, 4, 4, 0, 6, 4, 2, + 4, 1, 3, 5, 5, 8, 1, 1, 4 +}; + +/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state + STATE-NUM when YYTABLE doesn't specify something else to do. Zero + means the default is an error. */ +static const yytype_uint16 yydefact[] = +{ + 0, 0, 0, 2, 3, 1, 586, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 304, 305, 306, 307, 308, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 266, + 0, 0, 274, 275, 0, 0, 0, 269, 0, 0, + 0, 0, 0, 360, 361, 362, 0, 0, 5, 6, + 7, 8, 10, 11, 24, 12, 13, 14, 15, 23, + 22, 21, 16, 0, 17, 18, 19, 20, 0, 25, + 0, 587, 0, 208, 0, 0, 0, 0, 0, 253, + 0, 255, 256, 251, 252, 0, 257, 258, 111, 121, + 586, 469, 464, 70, 71, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 259, 0, 0, 0, 0, 0, 414, 415, 417, + 418, 416, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 422, 423, 424, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 419, 420, 421, 0, 0, 0, 0, + 0, 0, 507, 508, 0, 509, 482, 367, 427, 430, + 288, 483, 464, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 471, 0, 0, 208, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 586, 0, 0, 208, 0, 0, 357, 0, 0, 0, + 0, 0, 0, 0, 0, 489, 0, 488, 0, 0, + 0, 0, 0, 586, 0, 0, 528, 0, 0, 0, + 0, 249, 250, 0, 547, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 549, 0, + 573, 551, 552, 0, 0, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 267, 268, 0, 208, 0, 208, + 0, 0, 0, 464, 0, 0, 208, 363, 0, 0, + 76, 0, 63, 0, 0, 67, 66, 65, 64, 69, + 68, 70, 71, 0, 0, 0, 0, 0, 0, 534, + 464, 0, 207, 0, 206, 0, 174, 0, 0, 534, + 535, 0, 0, 581, 0, 109, 109, 0, 462, 0, + 0, 0, 0, 0, 522, 523, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 70, 71, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 495, 0, 0, 496, 0, 497, 0, 498, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 370, 0, 369, 490, 371, 0, 484, 0, 0, + 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 70, 71, 0, 442, 0, 0, + 0, 0, 0, 0, 289, 0, 321, 321, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 208, 0, 208, 208, 0, 473, 472, + 0, 0, 0, 0, 208, 208, 0, 0, 0, 0, + 285, 0, 208, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 323, 0, 0, 0, 0, 0, 232, + 0, 0, 230, 358, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 331, 248, 0, 0, 0, 0, 0, + 208, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 271, 270, 0, + 236, 0, 237, 0, 0, 369, 0, 208, 0, 0, + 0, 0, 309, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 80, 72, + 73, 0, 0, 246, 38, 242, 0, 0, 0, 0, + 0, 203, 0, 0, 0, 0, 0, 0, 0, 209, + 0, 175, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 110, 0, 0, 0, 467, 0, + 0, 465, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 315, 0, 0, 0, 0, 0, + 0, 350, 351, 352, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 464, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 425, 441, 0, 0, 0, 0, 0, + 0, 499, 500, 501, 502, 0, 0, 0, 0, 0, + 458, 0, 368, 485, 0, 0, 492, 0, 387, 386, + 385, 384, 380, 381, 388, 389, 383, 382, 373, 372, + 0, 374, 491, 375, 378, 376, 377, 379, 0, 0, + 465, 0, 0, 466, 445, 0, 510, 0, 0, 0, + 0, 0, 0, 0, 319, 0, 0, 144, 145, 0, + 147, 148, 0, 150, 151, 0, 153, 154, 0, 354, + 0, 355, 0, 356, 0, 0, 0, 0, 353, 0, + 208, 0, 0, 0, 0, 0, 475, 474, 0, 0, + 0, 0, 0, 0, 0, 279, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 334, 0, + 0, 231, 0, 0, 226, 0, 0, 0, 349, 348, + 0, 0, 0, 368, 0, 0, 0, 0, 0, 0, + 0, 0, 272, 273, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 576, 0, 0, 0, 460, 0, 0, 238, + 240, 0, 374, 0, 588, 0, 0, 0, 0, 0, + 0, 0, 0, 87, 0, 0, 0, 0, 0, 368, + 0, 63, 0, 0, 0, 0, 79, 0, 63, 64, + 0, 0, 465, 0, 0, 445, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 583, 28, 26, 27, + 0, 0, 0, 0, 0, 466, 538, 29, 0, 0, + 243, 582, 74, 112, 75, 122, 468, 470, 128, 0, + 0, 0, 0, 524, 525, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 9, 391, 392, + 393, 394, 395, 396, 397, 398, 399, 413, 400, 0, + 402, 403, 404, 405, 406, 521, 407, 408, 409, 0, + 0, 0, 513, 512, 511, 0, 0, 0, 518, 0, + 455, 0, 0, 0, 457, 126, 440, 0, 494, 0, + 0, 0, 0, 0, 428, 520, 433, 0, 437, 0, + 0, 0, 486, 0, 0, 438, 0, 0, 0, 432, + 431, 0, 0, 0, 450, 0, 0, 0, 0, 0, + 0, 368, 317, 322, 320, 0, 330, 0, 0, 0, + 0, 0, 0, 0, 0, 368, 368, 368, 0, 0, + 0, 0, 227, 0, 239, 241, 0, 0, 0, 198, + 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 291, 0, 276, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 324, 333, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 233, 0, 0, 0, 0, 563, 0, + 570, 559, 560, 561, 0, 575, 574, 0, 0, 564, + 565, 566, 572, 579, 578, 0, 136, 0, 553, 0, + 555, 0, 0, 0, 548, 0, 235, 0, 0, 0, + 310, 0, 0, 0, 364, 0, 584, 0, 0, 0, + 0, 101, 63, 0, 0, 0, 0, 0, 0, 0, + 95, 0, 0, 0, 0, 0, 0, 0, 0, 48, + 0, 0, 0, 61, 0, 39, 40, 41, 42, 43, + 0, 537, 536, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 537, 536, 0, + 0, 0, 0, 0, 133, 0, 129, 130, 0, 0, + 0, 0, 0, 158, 158, 0, 0, 0, 0, 0, + 0, 0, 156, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 327, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 458, 459, 435, 0, + 0, 493, 390, 487, 446, 444, 0, 443, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 329, 0, 146, + 0, 149, 0, 152, 0, 155, 0, 0, 0, 0, + 0, 0, 0, 234, 0, 0, 0, 0, 0, 0, + 0, 296, 0, 0, 295, 0, 298, 0, 300, 0, + 286, 292, 0, 0, 0, 225, 0, 0, 0, 0, + 0, 0, 0, 0, 335, 0, 229, 228, 359, 0, + 0, 35, 36, 0, 0, 0, 0, 529, 0, 0, + 0, 262, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 460, 461, 557, 0, 0, 208, 311, + 0, 312, 208, 0, 0, 543, 544, 545, 546, 0, + 86, 0, 0, 0, 0, 84, 91, 93, 0, 532, + 0, 99, 0, 0, 0, 0, 81, 0, 0, 0, + 0, 0, 34, 446, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 30, 31, 0, + 539, 0, 0, 32, 0, 0, 113, 118, 0, 0, + 132, 135, 463, 0, 77, 78, 160, 0, 0, 0, + 0, 0, 0, 161, 0, 0, 177, 178, 0, 0, + 0, 0, 162, 190, 179, 183, 184, 180, 181, 182, + 169, 0, 0, 401, 410, 411, 412, 514, 0, 0, + 0, 453, 454, 456, 127, 426, 0, 0, 0, 0, + 452, 429, 434, 0, 191, 439, 0, 449, 447, 515, + 185, 0, 0, 156, 0, 0, 328, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 247, 0, 0, + 0, 0, 208, 208, 0, 0, 297, 482, 0, 0, + 299, 301, 0, 0, 280, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 186, 0, 0, 0, 0, + 165, 166, 0, 0, 0, 0, 102, 106, 0, 571, + 0, 0, 569, 0, 580, 0, 0, 137, 138, 577, + 554, 556, 0, 0, 0, 309, 313, 309, 0, 365, + 85, 63, 0, 0, 0, 0, 83, 0, 530, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 480, + 0, 0, 449, 244, 447, 245, 210, 211, 212, 213, + 0, 0, 0, 0, 0, 0, 542, 540, 0, 114, + 119, 0, 0, 522, 523, 131, 0, 0, 159, 163, + 164, 170, 0, 0, 189, 0, 172, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 436, 0, 451, + 0, 171, 0, 192, 318, 194, 195, 196, 197, 168, + 0, 187, 193, 0, 0, 0, 0, 0, 0, 479, + 478, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 224, 223, 0, 0, 0, 0, 0, 0, 0, + 0, 214, 0, 0, 332, 37, 0, 527, 0, 0, + 264, 263, 0, 0, 0, 0, 0, 0, 0, 140, + 141, 142, 0, 558, 0, 585, 0, 0, 0, 0, + 0, 96, 0, 0, 97, 533, 0, 0, 88, 0, + 0, 0, 44, 0, 0, 0, 0, 0, 46, 0, + 33, 0, 0, 126, 136, 0, 134, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 516, 517, + 0, 0, 0, 0, 0, 448, 0, 173, 0, 325, + 325, 0, 107, 108, 208, 0, 201, 202, 287, 0, + 293, 0, 0, 208, 0, 0, 0, 0, 0, 0, + 0, 0, 205, 204, 0, 0, 0, 0, 103, 104, + 562, 568, 567, 0, 139, 0, 0, 314, 0, 92, + 94, 0, 100, 0, 82, 89, 90, 49, 0, 0, + 0, 0, 481, 0, 0, 448, 541, 0, 0, 0, + 116, 0, 123, 0, 343, 345, 344, 346, 0, 347, + 176, 0, 0, 0, 0, 0, 0, 290, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 477, 0, + 303, 0, 0, 281, 0, 215, 0, 0, 0, 0, + 0, 0, 0, 526, 265, 0, 143, 0, 208, 366, + 0, 531, 0, 45, 0, 0, 0, 62, 47, 0, + 115, 120, 126, 0, 0, 157, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 326, 336, 0, 0, 337, + 0, 199, 0, 294, 0, 277, 0, 208, 0, 0, + 0, 0, 0, 0, 167, 105, 261, 309, 98, 0, + 0, 0, 0, 0, 0, 124, 125, 0, 0, 0, + 0, 0, 0, 188, 0, 340, 0, 341, 342, 476, + 0, 0, 283, 218, 0, 0, 0, 0, 0, 0, + 0, 0, 53, 0, 59, 0, 0, 117, 0, 0, + 0, 0, 0, 0, 0, 0, 302, 282, 278, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 219, 220, 221, 222, 0, 216, 316, 50, 0, + 57, 0, 254, 0, 519, 0, 0, 0, 0, 0, + 0, 284, 0, 0, 51, 0, 0, 260, 0, 0, + 0, 0, 0, 0, 217, 0, 0, 0, 0, 503, + 504, 505, 506, 0, 0, 54, 52, 0, 55, 0, + 338, 339, 0, 0, 60, 58, 56 +}; + +/* YYDEFGOTO[NTERM-NUM]. */ +static const yytype_int16 yydefgoto[] = +{ + -1, 2, 3, 108, 1030, 109, 110, 1011, 1831, 1837, + 1295, 1507, 1982, 2123, 1296, 2088, 2147, 1297, 2125, 1298, + 1299, 1511, 404, 557, 558, 1094, 111, 735, 425, 1843, + 1992, 1844, 426, 1722, 1368, 1325, 1326, 1327, 1470, 1667, + 1668, 876, 879, 882, 885, 1560, 1550, 719, 252, 413, + 414, 114, 115, 116, 117, 118, 119, 120, 121, 253, + 1195, 2016, 2079, 913, 1191, 1192, 254, 988, 255, 125, + 1396, 1155, 874, 927, 1952, 126, 127, 128, 129, 256, + 257, 1115, 1131, 1253, 258, 740, 259, 864, 739, 428, + 589, 292, 1698, 327, 328, 261, 528, 335, 1283, 1500, + 423, 419, 1246, 970, 424, 131, 383 +}; + +/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing + STATE-NUM. */ +#define YYPACT_NINF -1836 +static const yytype_int16 yypact[] = +{ + 10103, 36, 56, 10253, -1836, -1836, -76, 51, 1, -131, + -111, 17, 171, 182, 250, 285, -12, 315, 330, 6, + 103, 22, -122, -122, 74, 129, 140, 12, 153, 181, + 20, 190, 197, 203, 208, 221, 237, 248, 322, 335, + 352, 494, 514, 621, 370, 483, 380, 5833, 397, 410, + 567, -70, 283, 574, 683, 42, 420, 582, -113, 443, + -52, -52, 474, 317, 613, -1836, -1836, -1836, -1836, -1836, + 492, 419, 655, 642, 39, 24, 647, 658, 484, 742, + 774, 792, 5125, 804, 500, 556, 569, 29, 45, -1836, + 583, 588, -1836, -1836, 814, 826, 601, -1836, 8050, 608, + 10420, 26, 27, -1836, -1836, -1836, 9933, 626, -1836, -1836, + -1836, -1836, -1836, -1836, -1836, -1836, -1836, -1836, -1836, -1836, + -1836, -1836, -1836, 183, -1836, -1836, -1836, -1836, 64, -1836, + 883, 630, 4229, 549, 662, 910, 9933, 2847, 2847, -1836, + 9933, -1836, -1836, -1836, -1836, 2847, -1836, -1836, -1836, -1836, + 691, 706, 965, -1836, -1836, 10450, 22, 9933, 8987, 9933, + 9933, 746, 9933, 8987, 9933, 9933, 747, 9933, 8987, 9933, + 9933, 9933, 9933, 9933, 9933, 2847, 9933, 9933, 9933, 6069, + 748, -1836, 8987, 5125, 5125, 5125, 2847, -1836, -1836, -1836, + -1836, -1836, -122, -122, -122, -122, -122, -122, -122, -122, + -122, -122, -122, -122, -122, -122, -122, -122, -122, -122, + -122, -122, -122, -122, -122, -51, -122, -122, -122, -122, + -122, 765, -122, -122, 767, -1836, -1836, -1836, -122, -122, + 54, 2, 8, 48, 6069, 893, 634, 780, -122, -122, + 785, 787, 802, -1836, -1836, -1836, 9933, 6305, 9933, 9933, + 6541, 22, -1836, -1836, 807, -1836, 3972, -1836, -1836, 69, + -1836, -1836, 176, 9933, 8987, 813, 818, 6777, 5125, 5125, + 5125, 821, 823, 833, 836, 7013, 7249, 7485, 844, 1734, + 1083, 6069, 852, 29, 853, 862, -52, -52, -52, 9933, + 9933, -94, -1836, 337, -52, 9304, 377, 290, 858, 884, + 885, 888, 889, 890, 891, 9933, 5125, 5125, 5125, 894, + 11, 1109, 895, -1836, 1125, 1127, -1836, 892, 896, 897, + 5125, 5125, 900, 901, 902, -1836, 9933, -1836, 1130, 1131, + 9933, 9933, 9933, 255, 9933, 904, -1836, 967, 9933, 9933, + 9933, -1836, -1836, 9933, -1836, -122, -122, -122, 909, 911, + 912, -122, -122, -122, -122, -122, -122, -122, -1836, -122, + -1836, -1836, -1836, -122, -122, 913, 914, -122, 915, -1836, + 908, 1148, 1149, 916, -1836, -1836, 1151, -1836, 1153, -1836, + -122, 9933, 12920, 220, 2847, 9933, -1836, -1836, 6069, 6069, + -1836, 918, 10450, 646, 1154, -1836, -1836, -1836, -1836, -1836, + -1836, 9933, 9933, 289, 6069, 1156, 436, 1342, 923, 1160, + 90, 925, -1836, 927, 7788, 9933, -1836, 1632, -117, -1836, + 91, -88, 8464, -1836, -83, -201, -158, 1081, -1836, 22, + 924, 928, 13409, 8987, 4103, -1836, 394, 13434, 13459, 9933, + 13484, 395, 13509, 13534, 9933, 13559, 427, 13584, 13609, 13634, + 13659, 13684, 13709, 933, 13734, 13759, 13784, 1167, 9933, 466, + 1170, 1171, 1172, 940, 9933, 9933, 9933, 9933, 9933, 9933, + 9933, 9933, 9933, 9933, 9933, 9933, 9933, 9933, 9933, 9933, + 8987, 9933, 9933, 9933, 9933, 9933, 9933, 8987, 8987, 938, + 9933, 9933, 2847, 9933, 2847, 6069, 2847, 2847, 2847, 9933, + 53, -1836, 1117, 9933, -1836, 1119, -1836, 1121, -1836, 1122, + 6069, 5125, 5125, 5125, 5125, 2847, 2847, 8987, 22, 10450, + 22, 951, 8987, 951, -1836, 951, 13809, -1836, 476, 945, + 82, 9933, 9933, 9933, 9933, 9933, 9933, 9933, 9933, 9933, + 9933, 9933, 9933, 9933, 9933, 7721, 9933, 9933, 9933, 9933, + 9933, 9933, 9933, 22, 9933, 9933, 1186, -1836, 771, 13834, + 536, 9933, 9933, 9933, -1836, 1184, 1185, 1185, 9218, 9218, + 9218, 9218, 9933, 1187, 9933, 1189, 9933, 1194, 8987, 8987, + 12948, 962, 1198, -1836, 963, -1836, -1836, -172, -1836, -1836, + 9497, 9572, -52, -52, 549, 549, -165, 9304, 9304, 9933, + 3876, -146, -1836, 9933, 9933, 9933, 9933, 9933, 9933, 9933, + 9933, 9933, 13859, 1199, 1202, 1203, 9933, 1205, 9933, -1836, + 9933, 4432, -1836, -1836, 8987, 8987, 8987, 1206, 1207, 9933, + 9933, 9933, 13884, -1836, -1836, 13909, 13934, 13959, 1036, 9805, + -1836, 972, 4157, 13984, 14009, 13031, 2847, 2847, 2847, 2847, + 2847, 2847, 2847, 2847, 2847, 9933, 2847, 2847, 2847, 2847, + 15, 10450, 2847, 2847, 2847, 22, 22, -1836, -1836, 8987, + -1836, 5192, -1836, 5428, 9933, 951, 9933, -1836, 9933, 9933, + 977, 14034, 3544, 980, 541, 9933, 1215, 985, 986, 987, + 988, 9933, 14059, 13058, 269, 978, 1225, 1227, -1836, -1836, + -1836, 8987, 396, -1836, -1836, -1836, 22, 9933, 9933, 1186, + 996, -1836, 557, 37, 46, 577, 1001, -28, 737, -1836, + 11963, -1836, 31, 8987, 22, 9933, 9933, 1238, 1237, 8987, + 9933, 1239, 2847, 1244, -1836, 22, 1245, 2847, 9933, 1013, + 1014, -1836, 9933, 10450, 1246, 8987, 1080, 8987, 1252, 1254, + 14084, 1255, 1087, 1257, 1258, 14109, 1261, 1093, 1263, 1264, + 1265, 1266, 1267, 1269, -1836, 1270, 1271, 1273, 9933, 14134, + 1015, -1836, -1836, -1836, 1275, 13004, 13004, 13004, 13004, 13004, + 13004, 13004, 13004, 13004, 13004, 13004, 10324, 13004, 13004, 13004, + 13004, 1155, 461, 13004, 13004, 13004, 10357, 10445, 10478, 4103, + 1045, 1046, 152, 8987, 10511, 10544, 461, 10577, 461, 1041, + 1042, 1043, 166, 15059, -1836, 461, 1049, 11992, 1050, 1051, + 1052, -1836, -1836, -1836, -1836, 1048, -127, 461, -71, 1057, + 463, 606, 1290, -1836, 1238, 461, 4388, 4567, 731, 1362, + 769, 769, 460, 460, 460, 460, 460, 460, 561, 561, + 8987, 402, -1836, 402, 402, 951, 951, 951, 14159, 13085, + 1054, 14184, 13112, 164, 1062, 8987, -1836, 1295, 1061, 14209, + 14234, 14259, 9933, 6069, 1300, 1299, 1067, 15059, 1060, 1069, + 15059, 1063, 1070, 15059, 1064, 1074, 15059, 1068, 14284, -1836, + 14309, -1836, 14334, -1836, 611, 612, 8987, 1072, -1836, 5664, + -1836, 5900, 6136, -52, 9933, 9933, -1836, -1836, 1071, 1075, + 9304, 8129, 1191, 685, -52, 6372, 14359, 12021, 14384, 14409, + 14434, 14459, 14484, 14509, 14534, 1310, 9933, 1314, -1836, 9933, + 14559, -1836, 13139, 13166, -1836, 617, 620, 622, -1836, -1836, + 13193, 13220, 10610, -1836, 1315, 1316, 1317, 1082, 9933, 6608, + 9933, 9933, -1836, -1836, 38, -98, 201, -98, 1086, 1089, + 1084, 461, 461, 1088, 10643, 461, 461, 461, 461, 9933, + 461, 1320, -1836, 1090, 1091, 249, 480, 1092, 625, -1836, + -1836, 13004, 402, 6844, 1094, 1327, 1188, 9541, 1096, 1099, + 1336, 6069, 12050, -1836, 9933, 9933, 9933, 9933, 1772, 326, + 162, 10450, 9933, 1337, 1340, 35, -1836, 628, 1304, 1307, + 6069, 70, 1101, 14584, 13247, 635, 9933, 8987, 8987, 8987, + 8987, 9933, 1128, 1129, 1150, 1162, -1836, -1836, -1836, -1836, + 2847, 232, 1111, 14609, 13274, -1836, 1168, -1836, 259, 10676, + -1836, -1836, -1836, 61, -1836, -1836, 15059, -1836, 1361, 13004, + 461, -52, 736, 4103, -1836, 6069, 6069, 1386, 6069, 867, + 6069, 6069, 1391, 6069, 1308, 6069, 6069, 6069, 6069, 6069, + 6069, 6069, 6069, 6069, 1999, 1402, 8987, -1836, -1836, -1836, + -1836, -1836, -1836, -1836, -1836, -1836, -1836, -1836, -1836, 9933, + -1836, -1836, -1836, -1836, -1836, -1836, -1836, -1836, -1836, 9933, + 9933, 9933, -1836, -1836, -1836, 631, 9933, 9933, -1836, 9933, + -1836, 6069, 2847, 2847, -1836, 1163, -1836, 9933, -1836, 9933, + 9933, 9933, 9933, 9933, -1836, -1836, -1836, 1238, -1836, 1238, + 9933, 1173, -1836, 6069, 1175, -1836, 9933, 9933, 636, -1836, + -1836, 1238, 164, -73, -1836, 9933, 638, 6069, 8987, 1407, + 1408, 1409, 2541, -1836, -1836, 1363, -1836, 417, 9933, 417, + 9933, 417, 9933, 417, 9933, 1410, 1411, 1412, 1414, 1415, + 639, 1364, -1836, 7080, -1836, -1836, -139, 10709, 10742, -1836, + -1836, 12079, -134, 1318, 1419, 9625, 1183, 1420, 1190, 79, + 80, 594, -1836, -130, -1836, 685, 1422, 1424, 1425, 1426, + 1427, 1429, 1433, 1434, 1436, 6069, 15059, -1836, 2098, 1204, + 1438, 1439, 1441, 1351, 1442, 1444, 1445, 9933, 6069, 6069, + 6069, 1449, 10775, -1836, 4831, 1250, 1450, 1451, -1836, 8987, + -1836, -1836, -1836, -1836, 2847, -1836, -1836, 9933, 2847, -1836, + -1836, -1836, -1836, 15059, -1836, 1211, 1210, 2847, -1836, 2847, + -1836, 1238, 2847, 1219, -1836, 1212, -1836, 1218, 1220, 9856, + -1836, 2142, 1221, 6069, -1836, 1240, -1836, 12108, 12137, 12166, + 12195, -1836, -1836, 9933, 1455, 353, 9933, 1478, 1479, 2424, + -1836, 1481, 29, 1480, 1251, 461, -122, -122, 1484, -1836, + 1256, 1259, 1262, -1836, 1486, -1836, -1836, -1836, -1836, -1836, + 1238, 164, 1031, 9933, 13301, 641, 644, 649, 651, 14634, + 9933, 9933, 9933, 9933, 1487, 138, 1238, -1836, 1268, 9933, + 1492, 9933, 7957, 461, 4631, 1272, 1253, -1836, 1493, 1497, + 97, 1274, 1276, 1383, 1383, 6069, 1500, 1277, 1278, 1502, + 1508, 6069, 1339, 1279, 1511, 1516, 1517, 1518, 1519, 1521, + 1522, 1523, 1524, -1836, 1526, 652, 13004, 13004, 13004, 13004, + 461, 10808, 10841, 10874, 1294, 461, 461, 1361, 461, 10907, + 10940, 10973, 11006, 14659, 13004, 1296, 1287, 15059, -1836, 1531, + 1301, 15059, 15059, -1836, 1303, -1836, 1534, -1836, 14684, 461, + 1533, 654, 6069, 6069, 6069, 1538, 1539, -1836, 6069, 15059, + 6069, 15059, 6069, 15059, 6069, 15059, 6069, 6069, 6069, 1302, + 1305, 1541, 462, -1836, 9933, 9933, 9933, 1309, 1311, 1313, + 1306, -1836, 2618, 6069, -1836, 9933, -1836, 1543, -1836, 1544, + -1836, -1836, 9304, 657, 5361, -1836, 1333, 1334, 1335, 1354, + 1355, 1358, 8193, 1550, -1836, 8987, -1836, -1836, -1836, 1359, + 9933, -1836, -1836, 13328, 1572, 1596, 1431, -1836, 9933, 9933, + 9933, -1836, 1598, 524, 385, 1360, 7841, 1366, 9933, 32, + 461, 1367, 461, 1369, -1836, -1836, 10450, 9933, -1836, -1836, + 2958, -1836, -1836, 1370, 1599, -1836, -1836, -1836, -1836, 3030, + -1836, 334, 1365, 1603, 3069, -1836, -1836, -1836, 29, -1836, + 660, -1836, 9933, 417, 2734, 2847, -1836, 1376, 9933, 9933, + 6069, 1377, -1836, 667, 1614, 1615, 14709, 1616, 1617, 1619, + 1621, 1622, 1290, 14734, 14759, 14784, 14809, -1836, -1836, 2847, + 1382, 1627, 14834, -1836, 11039, 4889, 15059, -1836, 1628, 6541, + -1836, -1836, -1836, 1361, -1836, -1836, -1836, 9933, 9933, -52, + 1630, 1631, 1633, -1836, 9933, 9933, -1836, -1836, 1641, 1555, + 1645, 9933, -1836, -1836, -1836, -1836, -1836, -1836, -1836, -1836, + -1836, 1647, 1413, -1836, -1836, -1836, -1836, -1836, 9933, 9933, + 9933, -1836, -1836, -1836, 1253, -1836, 9933, 9933, 9933, 9933, + -1836, -1836, -1836, 1417, -1836, -1836, 9933, 164, -1836, -1836, + -1836, 1416, 1648, 1339, 1653, 9933, -1836, 1655, 1656, 1657, + 1658, 1659, 974, 1660, 8987, 8987, 9933, -1836, 9218, 12224, + 14859, 8687, 549, 549, 9933, 9933, -1836, 544, 1406, 14884, + -1836, -1836, 12253, -121, -1836, 1661, 1662, 6069, -52, -52, + -52, -52, -52, 5597, 1663, -1836, 668, 9933, 3115, 1664, + -1836, -1836, 6069, 8923, 704, 14909, -1836, -1836, 8429, -1836, + 2847, 9933, -1836, 2847, 15059, 8515, 10450, 1430, -1836, -1836, + -1836, -1836, 1432, 1440, 12282, 3544, -1836, 3544, 6069, -1836, + -1836, 10450, 9933, 1666, 1669, 35, -1836, 1668, -1836, 29, + 13355, 6069, 1670, -98, -98, 9933, 11072, 11105, 671, -1836, + 9933, 9933, -184, -1836, 1437, -1836, -1836, -1836, -1836, -1836, + 1409, 1410, 1411, 1412, 1672, 9933, -1836, -1836, 9933, -1836, + -1836, 1448, 695, 3835, 1673, -1836, 12311, 12340, 467, -1836, + -1836, -1836, 12369, 12398, -1836, 1452, -1836, 12427, 1676, 6069, + 13004, 13004, 11138, 11171, 11204, 11237, 11270, -1836, 14934, -1836, + 9933, -1836, 1686, -1836, 15059, -1836, -1836, -1836, -1836, -1836, + 1454, -1836, -1836, 696, 724, 12976, 3150, 1694, 1459, -1836, + -1836, 9933, 1461, 1462, 12456, 13382, 1696, 6069, 1699, 1465, + 9933, -1836, -1836, 726, -102, -89, -80, 142, 157, 8751, + 168, -1836, 1702, 12485, -1836, -1836, 1540, -1836, 9933, 9933, + -1836, -1836, 8987, 3187, 1703, 1471, 13004, 461, 2847, 15059, + -1836, -1836, 32, -1836, 10450, -1836, 1469, 1470, 1472, 1710, + 3511, -1836, 1711, 1713, -1836, -1836, 1473, 1714, -1836, 1715, + 1716, 318, 15059, 9933, 9933, 1482, 6069, 729, 15059, 14959, + -1836, 14984, 11303, 1163, 1210, 6069, -1836, 9933, 10450, 22, + 1717, 1720, 1721, 1722, 9933, 1723, 1724, 732, -1836, -1836, + 9933, 9933, 9933, 9933, 9933, -1836, 12514, -1836, 6069, 573, + 618, 8987, -1836, -1836, 549, 9249, -1836, -1836, -1836, 1725, + -1836, 1489, 6069, -1836, 12543, 1728, 8987, -52, -52, -52, + -52, -52, -1836, -1836, 9933, 12572, 12601, 734, -1836, -1836, + -1836, -1836, -1836, 740, -1836, 1496, 1498, -1836, 1733, -1836, + -1836, 29, -1836, 1567, -1836, -1836, -1836, -1836, 9933, 11336, + 11369, 6069, -1836, 1737, 9933, 1505, -1836, 9933, 1536, 1537, + -1836, 3932, -1836, 1510, -1836, -1836, -1836, -1836, 12630, -1836, + -1836, 1535, 11402, 11435, 11468, 11501, 11534, -1836, 781, 1542, + -52, 6069, 1770, 1545, -52, 1775, 783, 1552, -1836, 9933, + -1836, 1776, 1674, 7316, 1546, -1836, 790, 191, 207, 210, + 218, 226, 3543, -1836, -1836, 1777, -1836, 1779, -1836, -1836, + 1790, -1836, 1556, 15059, 9933, 9933, 791, -1836, 15059, 11567, + -1836, -1836, 1163, 10450, 1561, -1836, 9933, 9933, 9933, 9933, + 9933, 9933, 1797, -52, 113, -1836, -1836, -52, 122, -1836, + 1798, -1836, 12659, -1836, 9933, -1836, 685, -1836, 1800, 8987, + 8987, 8987, 8987, 8751, -1836, -1836, -1836, 3544, -1836, 9933, + 15009, 11600, 28, 9933, 1564, -1836, -1836, 11633, 11666, 11699, + 11732, 11765, 11798, -1836, 240, -1836, 276, -1836, -1836, -1836, + 3595, 669, 7552, -1836, 796, 798, 803, 829, 294, 854, + 1565, 859, -1836, 9933, -1836, 6069, 12688, -1836, 9933, 9933, + 9933, 9933, 9933, 9933, -52, -52, -1836, -1836, -1836, 685, + 1806, 1807, 1808, 1809, 8987, 1810, 1813, 1815, 1580, 15034, + 864, 1817, 12717, 13004, 11831, 11864, 11897, 11930, 307, 309, + 697, -1836, -1836, -1836, -1836, 870, -1836, -1836, -1836, 2847, + -1836, 1582, -1836, 1819, -1836, 9933, 9933, 9933, 9933, 9933, + 9933, -1836, 1821, 871, -1836, 1586, 6069, -1836, 12746, 12775, + 12804, 12833, 12862, 12891, -1836, 1823, 2847, 2847, 877, -1836, + -1836, -1836, -1836, 1824, 1825, -1836, -1836, 878, -1836, 1826, + -1836, -1836, 1828, 2847, -1836, -1836, -1836 +}; + +/* YYPGOTO[NTERM-NUM]. */ +static const yytype_int16 yypgoto[] = +{ + -1836, -1836, -1836, -1836, 520, -1836, -1836, -1836, -1836, -193, + -1836, -1836, -1836, -1836, -1836, -1836, -1836, -1836, -1836, -1836, + -1836, -1836, -685, -54, -1, 3127, -1836, 1418, -1836, -1836, + -1836, -1836, -1836, -1836, -1835, -1836, 470, 295, -5, -1836, + 33, -1836, -1836, -1836, -1836, 238, 506, 1840, 7, -591, + -275, -1836, -1836, -1836, -1836, -1836, -1836, -1836, -1836, 1863, + -1836, -1836, -1836, -1836, -1189, -1190, 1864, -1663, 1867, -1836, + -1836, -1836, 1319, -1836, 5, -1836, -1836, -1836, -1836, 2007, + -1836, -1836, 495, 399, 1870, -1836, 4, -680, -1836, -1836, + 3, -1836, -1626, 291, 102, 2344, 179, -278, 189, -1836, + -65, 451, -1836, -1836, -496, -1836, -3 +}; + +/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If + positive, shift that token. If negative, reduce the rule which + number is the opposite. If zero, do what YYDEFACT says. + If YYTABLE_NINF, syntax error. */ +#define YYTABLE_NINF -543 +static const yytype_int16 yytable[] = +{ + 132, 1431, 812, 908, 909, 584, 1433, 504, 1928, 1002, + 113, 1783, 1816, 506, 1817, 617, 161, 1010, 152, 150, + 600, 155, 156, 139, 166, 151, 150, 266, 315, 1015, + 316, 376, 378, 333, 2064, 282, 1665, 1027, 621, 150, + 733, 161, 4, 310, 262, 1226, 734, 1036, 267, 337, + 166, 399, 400, 508, 592, 593, 5, 150, -542, 501, + 283, 592, 593, 291, 293, 135, 296, 408, 1322, 266, + 387, 314, 418, 421, 1289, 903, 284, 285, 405, 262, + 592, 593, 910, 736, 336, 1426, 1428, 592, 593, 734, + 1022, 429, 592, 593, 150, 372, 592, 593, 136, 706, + 724, 914, 671, 1546, 673, 592, 593, 137, 1414, 1418, + 453, 682, 699, 1857, 700, 317, 153, 1432, 154, 2045, + 1123, 463, 722, 311, 592, 593, 1780, 138, 2047, 410, + 723, 406, 592, 593, 420, 420, 278, 592, 593, 279, + 412, 699, 420, 700, 1528, 1886, 592, 593, 594, 732, + 955, 728, 957, 431, 1134, 262, 731, 2034, 1887, 729, + 262, 553, 399, 400, 732, 262, 133, 1888, 1126, 1272, + 134, 1386, 420, 1127, 287, 288, 262, 141, 505, 262, + 262, 262, 262, 420, 507, 553, 289, 487, 142, 488, + 290, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 489, 490, 491, 492, 493, 494, + 1666, 496, 497, 312, 509, 107, 145, 499, 500, 553, + 502, 262, 107, 1290, 1291, 1292, 1293, 516, 517, 107, + 1427, 1429, 1948, 1431, 262, 107, 148, 262, 530, 107, + 162, 618, 1028, 1029, 163, 529, 143, 134, 167, 140, + 969, 262, 168, 107, 262, 262, 262, 262, 377, 379, + 2065, 334, 262, 262, 262, 162, 1001, 1282, 262, 1018, + 336, 313, 1227, 338, 167, 460, 461, 462, 1019, 587, + 588, 144, 699, 694, 700, 1986, 503, 596, 601, 153, + 107, 154, 388, 262, 262, 262, 389, 551, 899, 552, + 901, 902, 157, 1294, 1273, 1276, 158, 262, 262, 680, + 153, 146, 154, 592, 593, 399, 400, 915, 707, 725, + 708, 726, -535, 1272, 709, 727, 147, 436, 260, 592, + 593, 1681, 441, 149, 646, 647, 648, 446, 592, 593, + 652, 653, 654, 655, 656, 657, 658, 1491, 659, 1028, + 1029, 459, 660, 661, 2060, 949, 664, 159, 592, 593, + 565, 566, 567, 395, 396, 397, 398, 268, 160, 674, + 269, 420, 270, 592, 593, 262, 262, 399, 400, 1889, + 554, 164, 555, 1104, 592, 593, 556, 399, 400, 399, + 400, 262, 983, 1008, 1890, 1114, 1275, 710, 613, 614, + 615, 399, 400, 732, 554, 1891, 555, 592, 593, 165, + 556, 385, 627, 628, 1272, 386, 741, 806, 169, 808, + 262, 810, 811, 592, 593, 170, 592, 593, 2019, 2090, + 699, 171, 700, 560, 592, 593, 172, 1375, 1229, 1376, + 825, 826, 592, 593, 2020, 399, 400, 2021, 678, 173, + 679, 1384, 695, 696, 556, 2022, 592, 593, 1617, 1618, + 457, 1315, 1398, 2023, 1400, 174, 1402, 262, 1404, 747, + 395, 396, 397, 398, 262, 802, 175, 2074, 699, 420, + 700, 420, 262, 420, 420, 420, 1249, 815, 1320, 638, + 2138, 134, 592, 593, 399, 400, 747, 262, 262, 262, + 262, 262, 420, 420, 262, 152, 306, 152, 307, 262, + 592, 593, 828, 2075, 830, 260, 1492, 1493, 603, 835, + 1657, 1658, 604, 592, 593, 592, 593, 395, 396, 397, + 398, 2084, 262, 287, 288, 395, 396, 397, 398, 371, + 860, 375, 531, 411, 2119, 289, 2120, 1917, 564, 295, + 176, 399, 400, 592, 593, 1918, 573, 575, 577, 399, + 400, 1473, 582, 177, 183, 262, 262, 184, 320, 595, + 185, 321, 956, 409, 958, 959, 960, 961, 962, 963, + 178, 965, 966, 967, 968, 906, 907, 973, 974, 975, + 588, 412, 412, 592, 593, 179, 430, 395, 396, 397, + 1009, 180, 182, 821, 822, 823, 824, 297, 186, 602, + 1513, 262, 262, 262, 699, 1173, 700, 181, 395, 396, + 397, 398, 747, 548, 549, 263, 1530, 746, 752, 550, + 1003, 747, 747, 420, 420, 420, 420, 420, 420, 420, + 420, 420, 264, 420, 420, 420, 420, 971, 280, 420, + 420, 420, 152, 977, 265, 271, 262, 1041, 272, 976, + 757, 273, 1045, 274, 747, 699, 281, 700, 701, 683, + 684, 59, 60, 61, 62, 286, 543, 544, 676, 546, + 547, 548, 549, 592, 593, 697, 73, 550, 262, 76, + 699, 831, 700, 1012, 298, 1949, 1950, 1129, 299, 770, + 1130, 1951, 1799, 747, 300, 301, 294, 302, 303, 833, + 262, 1032, 1184, 747, 1251, 511, 262, 1252, 512, 420, + 305, 513, 1043, 514, 420, 304, 309, 687, 330, 1185, + 688, 318, 262, 689, 262, 690, 322, 1186, 1187, 1188, + 1953, 1954, 308, 1189, 1190, 319, 1951, 894, 895, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 545, 546, 547, 548, 549, 275, 323, 868, + 276, 550, 277, 747, 990, 1184, 809, 1776, 991, 676, + 546, 547, 548, 549, 331, 157, 324, 1184, 550, 1017, + 262, 564, 1185, 935, 936, 937, 1682, 332, 329, 1144, + 1186, 1187, 1188, 1184, 1185, 170, 1189, 1190, 1691, 1020, + 341, 339, 1186, 1187, 1188, 1184, 340, 2051, 1189, 1190, + 1185, 1023, 342, 1331, 1024, 1332, 1025, 1430, 1186, 1187, + 1188, 343, 1185, 686, 1189, 1190, 373, 262, 978, 1132, + 1186, 1187, 1188, 747, 1168, 1169, 1189, 1190, 747, 747, + 1212, 1431, 262, 1213, 747, 1214, 384, 747, 1255, 747, + 262, 1285, 747, 1303, 1360, 747, 391, -538, 747, 1383, + 1007, 1389, 1411, 747, 1518, 747, 747, 1519, 747, 390, + 2100, 747, 1520, 262, 1521, 1572, 747, 1601, 747, 747, + 1634, 747, 1031, 1688, 415, 1701, 1176, 1689, 1038, -539, + 1431, 1792, 2077, 1182, 1835, 747, 416, 1193, 1836, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 134, 1846, 1869, + 2121, 550, 1847, 747, 427, 1274, 1277, 1800, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 1337, 1314, 1338, 1870, 550, 1885, + 829, 747, 1923, 1836, 429, 1941, 1924, 1975, 1760, 1836, + 1761, 747, 1105, 1976, 439, 444, 458, 732, 262, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 1284, 495, 1499, 498, 550, 262, 1693, 1694, + 699, 510, 700, 865, 262, 262, 262, 262, 515, 878, + 881, 884, 887, 518, 2002, 519, 2010, 420, 1836, 1138, + 747, 1772, 1773, 2018, 2032, 150, 344, 747, 1836, 2080, + 520, 2081, 1323, 747, 1146, 747, 2082, 1365, 1366, 386, + 747, 561, 262, 262, 1330, 262, 562, 262, 262, 568, + 262, 569, 262, 262, 262, 262, 262, 262, 262, 262, + 262, 570, 2083, 262, 571, 1170, 747, 345, 346, 347, + 348, 349, 350, 351, 352, 353, 578, 581, 1385, 1387, + 354, 355, 356, 357, 583, 585, 605, 2085, 358, 359, + 360, 747, 2087, 361, 586, 362, 1924, 2111, 262, 420, + 420, 1836, 972, 2122, 2135, 619, 363, 747, 2136, 364, + 2149, 2152, 606, 607, 1836, 2153, 608, 609, 610, 611, + 262, 622, 616, 623, 624, 620, 633, 634, 625, 626, + 629, 630, 631, 641, 262, 262, 640, 649, 666, 650, + 651, 662, 663, 665, 667, 668, 393, 670, 669, 672, + 685, 691, 698, 531, 1153, 704, 705, 133, 738, 1465, + 711, 742, 764, 1467, 768, 743, 771, 772, 773, 774, + 803, 816, 1471, 818, 1472, 819, 820, 1474, 550, 834, + 863, 872, 873, 889, 1050, 891, 1305, 1306, 1307, 1308, + 893, 897, 262, 1675, 898, 900, 926, 1677, 928, 947, + 929, 931, 938, 939, 950, 262, 262, 262, 984, 989, + 1687, 993, 1004, 365, 366, 367, 262, 994, 995, 996, + 997, 420, 1005, 1006, 368, 420, 1016, 1515, 369, 1021, + 370, 107, 1035, 1037, 420, 1040, 420, 1385, 1387, 420, + 1042, 1044, 1047, 1051, 1048, 1355, 1052, 1076, 1460, 1055, + 262, 1056, 1058, 1059, 1060, 1061, 399, 400, 1063, 1064, + 1065, 1066, 1067, 1068, 1069, 1514, 1070, 1071, 1072, 336, + 1073, 1077, 1265, 1957, 1102, 1504, 1505, 1103, 1111, 1112, + 1113, 1117, 1119, 1120, 1121, 1122, 1128, 1133, 1141, 420, + 1145, 1288, 1147, 1148, 1154, 1156, 1157, 1158, 1159, 1161, + 1160, 1162, 1903, 1163, 1179, 1164, 1171, 1205, 1180, 1183, + 1207, 262, 1218, 1219, 1220, 1232, 1221, 1391, 1233, 1245, + 1248, 1234, 262, 1254, 1258, 1237, 1259, 1247, 262, 1262, + 1257, 1263, 1264, 1280, 1281, 1300, 1333, 1334, 703, 1336, + 1286, 1339, 1340, 1287, 1342, 1316, 1344, 1345, 1346, 1347, + 1348, 1349, 1350, 1351, 1352, 1324, 1310, 1311, 1412, 1397, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 745, 546, 547, 548, 549, 1312, 262, + 262, 262, 550, 1335, 699, 262, 700, 262, 1341, 262, + 1313, 262, 1364, 262, 262, 262, 1319, 1343, 1464, 1354, + 1367, 1825, 1378, 1380, 1392, 1393, 1394, 1406, 1407, 1408, + 262, 1409, 1410, 1420, 1379, 1423, 1424, 1419, 1425, 1434, + 1435, 262, 1436, 1437, 1438, 1633, 1439, 1683, 1390, 262, + 1440, 1441, 262, 1442, 1446, 1447, 1445, 1448, 1449, 1450, + 1451, 1452, 1278, 1457, 1462, 1463, 1468, 1469, 1475, 1476, + 1477, 1490, 1478, 1482, 1714, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 676, 546, + 547, 548, 549, 1484, 1495, 1496, 1501, 550, 1498, 1461, + 1506, 1502, 1512, 1527, 1508, 336, 1443, 1509, 1533, 1544, + 1543, 420, 420, 1545, 1510, 1549, 1553, 262, 1556, 1454, + 1455, 1456, 1531, 1542, 1557, 1559, 1547, 1562, 1548, 1554, + 1555, 1561, 1563, 1564, 1565, 1566, 420, 1567, 1568, 1569, + 1570, 1571, 262, 1581, 1130, 1592, 262, 1594, 1597, 1600, + 1595, 1596, 1605, 1749, 1614, 1606, 1625, 1615, 1616, 1630, + 1631, 1622, 1728, 1623, 1483, 1624, 1645, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 1637, 1638, 1639, 1650, 550, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 1805, 1640, 1641, 1807, 550, + 1642, 1647, 1651, 1652, 1656, 1679, 1670, 1660, 1963, 1684, + 1685, 262, 262, 1663, 1695, 1540, 1252, 1678, 1702, 1700, + 1715, 1703, 1705, 1706, 1646, 1707, 1552, 1708, 1709, 412, + 412, 1716, 1558, 1980, 262, 1721, 1729, 1730, 721, 1731, + 262, 1784, 1785, 1786, 1787, 1788, 1790, 1734, 1749, 262, + 1735, 1736, 1738, 1777, 1751, 1739, 1747, 420, 1750, 1753, + 420, 1755, 1756, 1757, 1758, 1759, 1762, 1781, 1782, 1791, + 1795, 1813, 1821, 1822, 1824, 262, 1828, 1812, 1840, -540, + 1849, 1856, 1284, 1602, 1603, 1604, 336, 1814, 262, 1607, + 1845, 1608, 1867, 1609, 1854, 1610, 1868, 1611, 1612, 1613, + 1873, 1874, 1880, 2027, 1876, 1877, 1882, 1883, 1892, 1899, + 1900, 1894, 1906, 1907, 1628, 1908, 1909, 1913, 1911, 1912, + 1914, 1915, 1916, 1934, 1921, 1636, 1935, 1936, 1937, 1939, + 1940, 1960, 1961, 1644, 1965, 1977, 262, 187, 150, 1979, + 1978, 1981, 2052, 1987, 188, 189, 190, -541, 1994, 191, + 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, + 202, 203, 204, 205, 206, 207, 380, 209, 210, 211, + 212, 213, 214, 1537, 262, 1541, 2006, 1996, 1271, 1990, + 1991, 2009, 2013, 2025, 2003, 2026, 262, 2007, 2017, 220, + 221, 222, 223, 1763, 1764, 2011, 2028, 224, 2029, 262, + 2036, 1699, 2014, 2043, 2048, 420, 2053, 2067, 2086, 225, + 226, 227, 2101, 2102, 2103, 2104, 2106, 228, 21, 2107, + 229, 2108, 2109, 2112, 2126, 2127, 1719, 2134, 2137, 2145, + 2150, 2151, 2154, 262, 2155, 1529, 2061, 1584, 1725, 1929, + 1551, 1752, 262, 112, 737, 1904, 1933, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 262, 122, 123, 262, 550, + 124, 1593, 1672, 130, 1823, 1955, 0, 0, 0, 262, + 0, 412, 0, 262, 0, 0, 875, 0, 0, 0, + 1967, 1968, 1969, 1970, 1971, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 336, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 262, 0, + 0, 0, 0, 0, 0, 237, 0, 1673, 1699, 238, + 0, 0, 0, 0, 240, 241, 242, 0, 243, 244, + 245, 0, 0, 1796, 107, 0, 0, 0, 262, 0, + 0, 0, 0, 2004, 0, 0, 0, 2008, 0, 0, + 246, 381, 0, 0, 0, 0, 0, 248, 0, 1818, + 0, 0, 326, 0, 0, 0, 579, 0, 0, 251, + 0, 1897, 1827, 0, 0, 0, 1720, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 1353, 2044, 0, 0, 550, + 2046, 0, 0, 0, 0, 0, 262, 262, 262, 262, + 262, 0, 0, 0, 0, 0, 2058, 0, 0, 0, + 1699, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2124, 0, 0, 0, 0, 0, + 1956, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 262, 0, 0, 1966, 0, 0, 1881, 1767, + 0, 2146, 2148, 0, 0, 0, 0, 2098, 2099, 0, + 0, 262, 0, 0, 0, 0, 0, 0, 2156, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1444, 0, 420, 0, 0, 1804, + 0, 0, 0, 382, 0, 0, 1810, 1811, 0, 0, + 0, 0, 0, 262, 0, 0, 0, 1922, 0, 0, + 0, 0, 1819, 420, 420, 0, 1930, 0, 0, 407, + 0, 0, 0, 417, 0, 0, 0, 422, 1481, 0, + 420, 0, 0, 0, 0, 0, 0, 0, 0, 1699, + 0, 0, 0, 0, 432, 434, 437, 438, 0, 440, + 434, 442, 443, 1962, 445, 434, 447, 448, 449, 450, + 451, 452, 0, 454, 455, 456, 0, 0, 0, 434, + 0, 0, 0, 0, 0, 0, 0, 0, 2054, 2055, + 2056, 2057, 2059, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1699, 0, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 2005, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 521, 523, 525, 526, 434, 0, 0, + 0, 0, 0, 2105, 0, 1905, 0, 0, 0, 0, + 559, 434, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 580, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 590, 591, 0, 1932, + 0, 0, 591, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 612, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 0, 0, 632, 0, 550, 0, 635, 636, 637, + 0, 639, 0, 0, 0, 642, 643, 644, 0, 0, + 645, 0, 0, 0, 0, 0, 1699, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 0, 0, 0, 675, 0, + 0, 0, 681, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 692, 693, + 0, 0, 0, 0, 0, 0, 0, 1699, 0, 0, + 0, 0, 720, 0, 0, 0, 0, 0, 0, 0, + 1497, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 523, 0, 0, 0, 2035, 0, 750, 0, 0, 0, + 0, 755, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 769, 0, 0, 0, 0, + 0, 775, 776, 777, 778, 779, 780, 781, 782, 783, + 784, 785, 786, 787, 788, 789, 790, 791, 793, 794, + 795, 796, 797, 798, 799, 799, 0, 804, 805, 0, + 807, 0, 435, 0, 0, 0, 813, 435, 0, 0, + 817, 0, 435, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 799, 0, 435, 0, 0, 434, + 0, 0, 0, 0, 0, 0, 0, 0, 836, 837, + 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, + 848, 849, 851, 853, 854, 855, 856, 857, 858, 859, + 0, 861, 862, 0, 0, 0, 0, 0, 869, 870, + 871, 0, 0, 0, 0, 877, 880, 883, 886, 888, + 0, 890, 0, 892, 0, 434, 434, 0, 0, 0, + 0, 524, 0, 0, 435, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 521, 675, 911, 0, 435, 0, + 916, 917, 918, 919, 920, 921, 922, 923, 924, 0, + 0, 0, 0, 930, 1626, 932, 0, 933, 0, 0, + 0, 434, 434, 434, 0, 0, 940, 941, 942, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 964, 0, 0, 0, 0, 0, 0, 1395, + 0, 0, 0, 0, 0, 0, 434, 0, 0, 0, + 0, 981, 0, 982, 0, 861, 862, 0, 0, 0, + 0, 0, 992, 0, 0, 0, 0, 0, 998, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 434, 0, + 0, 0, 0, 0, 1013, 1014, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 434, 0, 1033, 1034, 0, 0, 434, 1039, 150, 344, + 0, 0, 0, 0, 0, 1046, 0, 0, 0, 1049, + 0, 0, 851, 0, 1053, 0, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 1074, 0, 524, 550, 0, + 345, 346, 347, 348, 349, 350, 351, 352, 353, 0, + 0, 0, 0, 354, 355, 356, 357, 0, 0, 0, + 0, 358, 359, 360, 0, 0, 361, 0, 362, 0, + 434, 0, 0, 0, 0, 0, 0, 0, 0, 363, + 0, 0, 364, 0, 792, 0, 0, 0, 0, 0, + 0, 800, 801, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 150, 344, 0, 0, 550, 0, 434, 0, 393, + 0, 827, 0, 0, 0, 0, 435, 0, 0, 0, + 0, 0, 434, 0, 0, 0, 0, 0, 0, 1152, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 852, + 0, 0, 0, 345, 346, 347, 348, 349, 350, 351, + 352, 353, 0, 434, 0, 0, 354, 355, 356, 357, + 0, 1177, 1178, 0, 358, 359, 360, 1181, 0, 361, + 0, 362, 435, 435, 0, 0, 365, 366, 367, 0, + 0, 0, 363, 1206, 0, 364, 1208, 368, 0, 0, + 0, 369, 0, 370, 107, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1222, 0, 1224, 1225, 0, + 0, 0, 0, 0, 1676, 0, 0, 0, 435, 435, + 435, 0, 393, 699, 0, 700, 1243, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1261, 0, 0, 0, 0, 0, + 0, 1267, 1268, 1269, 1270, 0, 0, 0, 0, 1279, + 0, 0, 0, 435, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1304, 434, 434, 434, 434, 1309, 0, + 0, 0, 0, 0, 0, 0, 1680, 0, 0, 365, + 366, 367, 0, 0, 0, 435, 0, 0, 0, 0, + 368, 0, 0, 0, 369, 0, 370, 107, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 435, 0, 0, + 0, 0, 0, 435, 0, 1686, 0, 0, 0, 0, + 0, 0, 0, 434, 0, 0, 0, 0, 0, 852, + 0, 1054, 0, 0, 0, 0, 1356, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1357, 1358, 1359, 0, + 0, 0, 0, 1361, 1362, 0, 1363, 0, 0, 0, + 0, 1794, 0, 0, 1369, 0, 1370, 1371, 1372, 1373, + 1374, 0, 0, 0, 0, 0, 0, 1377, 0, 0, + 0, 0, 0, 1381, 1382, 0, 0, 435, 0, 0, + 0, 0, 1388, 0, 0, 434, 1872, 0, 0, 0, + 0, 0, 0, 0, 0, 1399, 0, 1401, 0, 1403, + 0, 1405, 0, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 0, 1422, 1898, 435, 550, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 435, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1453, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 434, 0, 0, 0, + 435, 0, 0, 0, 1466, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 676, 546, + 547, 548, 549, 0, 0, 0, 1480, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1489, 0, 0, 1494, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 1516, 0, 0, 0, 0, 0, 0, 1523, 1524, 1525, + 1526, 0, 0, 0, 0, 0, 1532, 0, 1534, 1536, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 676, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, + 0, 435, 435, 435, 435, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 676, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 435, 1619, 1620, 1621, 550, 0, 0, 0, 0, 0, + 1627, 0, 1629, 0, 0, 0, 0, 0, 0, 1632, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 434, 0, 0, 0, 0, 1648, 0, 0, + 0, 0, 0, 0, 0, 1653, 1654, 1655, 0, 0, + 0, 0, 0, 0, 0, 1664, 0, 0, 0, 0, + 0, 0, 0, 0, 1674, 0, 0, 0, 0, 0, + 0, 0, 435, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1690, + 0, 0, 0, 0, 0, 1696, 1697, 1910, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 702, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1723, 0, 0, 2024, + 0, 0, 0, 0, 1726, 1727, 0, 7, 8, 0, + 0, 1732, 1733, 0, 0, 0, 0, 0, 1737, 0, + 0, 0, 0, 435, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1740, 1741, 1742, 0, 0, + 0, 0, 0, 1743, 1744, 1745, 1746, 0, 0, 0, + 0, 2076, 0, 1748, 0, 0, 0, 0, 0, 0, + 0, 0, 1754, 0, 0, 0, 0, 0, 0, 0, + 0, 434, 434, 1765, 0, 1766, 0, 814, 0, 0, + 0, 1774, 1775, 0, 0, 712, 25, 26, 713, 28, + 29, 714, 31, 715, 33, 34, 35, 36, 0, 0, + 434, 38, 39, 40, 1793, 0, 42, 0, 0, 0, + 0, 0, 716, 48, 0, 1803, 50, 717, 1806, 53, + 718, 0, 1809, 0, 0, 986, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 866, 0, 0, 70, 1820, + 0, 0, 987, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1832, 0, 0, 0, 0, 1838, 1839, 0, + 0, 0, 84, 85, 86, 0, 0, 0, 0, 0, + 0, 0, 1841, 0, 0, 1842, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 0, 0, 0, 1866, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 676, 546, 547, 548, 549, 0, 0, 1875, 0, + 550, 0, 0, 0, 0, 0, 0, 1884, 0, 435, + 0, 0, 0, 0, 0, 0, 523, 0, 0, 0, + 0, 0, 0, 0, 0, 1895, 1896, 0, 0, 434, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 676, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, + 1919, 1920, 1848, 531, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1931, 0, 0, 0, 0, 0, + 0, 1938, 0, 0, 0, 0, 0, 1942, 1943, 1944, + 1945, 1946, 0, 0, 0, 0, 0, 0, 434, 0, + 0, 0, 0, 1724, 0, 0, 0, 0, 0, 7, + 8, 0, 0, 434, 0, 0, 0, 0, 0, 0, + 0, 1972, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, + 1086, 1087, 1088, 0, 1090, 1091, 1092, 1093, 0, 1095, + 1096, 1097, 1098, 0, 0, 1983, 0, 0, 0, 0, + 0, 1988, 0, 1108, 1989, 1110, 0, 0, 0, 1993, + 0, 0, 1116, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1124, 1125, 0, 0, 0, 435, 435, + 0, 0, 1135, 0, 0, 0, 2012, 712, 25, 26, + 713, 28, 29, 714, 31, 715, 33, 34, 35, 36, + 531, 0, 0, 38, 39, 40, 0, 435, 42, 0, + 0, 2030, 2031, 0, 716, 48, 0, 0, 50, 717, + 0, 53, 718, 2037, 2038, 2039, 2040, 2041, 2042, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 70, 2050, 0, 0, 0, 0, 434, 434, 434, 434, + 434, 0, 0, 0, 0, 0, 1838, 0, 0, 0, + 2066, 0, 0, 0, 84, 85, 86, 0, 0, 0, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 745, 546, 547, 548, 549, 0, 0, + 2089, 0, 550, 0, 0, 2092, 2093, 2094, 2095, 2096, + 2097, 0, 1228, 1230, 1231, 0, 0, 0, 1235, 1236, + 0, 434, 1239, 1240, 1241, 1242, 0, 1244, 0, 0, + 0, 0, 1250, 0, 0, 0, 0, 0, 0, 0, + 0, 531, 0, 0, 0, 0, 0, 0, 0, 912, + 0, 0, 2128, 2129, 2130, 2131, 2132, 2133, 0, 0, + 0, 0, 0, 524, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 435, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 951, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 0, 1328, 1329, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 545, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 435, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 435, 0, 187, 150, 344, 0, 392, 0, 0, 188, + 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 380, 209, 210, 211, 212, 213, 214, 0, 0, + 0, 0, 0, 0, 0, 345, 346, 347, 348, 349, + 350, 351, 352, 353, 220, 221, 222, 223, 354, 355, + 356, 357, 224, 0, 0, 0, 358, 359, 360, 0, + 0, 361, 0, 362, 225, 226, 227, 0, 0, 0, + 0, 0, 228, 21, 363, 229, 0, 364, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 745, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 393, 0, 0, 0, 0, 0, + 0, 0, 0, 435, 435, 435, 435, 435, 0, 0, + 0, 0, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 1136, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1503, 394, 0, 0, 0, 0, 0, 0, + 237, 365, 366, 367, 238, 0, 0, 0, 435, 240, + 241, 242, 368, 243, 244, 245, 369, 0, 370, 107, + 395, 396, 397, 398, 0, 7, 8, 0, 0, 0, + 1538, 0, 0, 0, 0, 246, 381, 0, 0, 0, + 0, 0, 248, 0, 399, 400, 0, 401, 0, 402, + 0, 0, 0, 403, 251, 0, 0, 0, 0, 0, + 0, 0, 0, 1573, 1574, 1575, 1576, 1577, 0, 0, + 0, 0, 1582, 1583, 0, 1585, 0, 0, 0, 0, + 0, 1591, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1599, 0, 0, 0, + 0, 0, 0, 712, 25, 26, 713, 28, 29, 714, + 31, 715, 33, 34, 35, 36, 0, 0, 0, 38, + 39, 40, 0, 0, 42, 0, 0, 0, 0, 0, + 716, 48, 0, 0, 50, 717, 0, 53, 718, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1137, 70, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1659, 0, 1662, 0, 0, 0, 1669, 0, 1671, + 84, 85, 86, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 1692, 0, 0, 187, 6, 344, 0, 0, 0, + 0, 188, 189, 190, 0, 0, 191, 192, 193, 194, + 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, + 215, 216, 217, 218, 219, 934, 0, 345, 346, 347, + 348, 349, 350, 351, 352, 353, 220, 221, 222, 223, + 354, 355, 356, 357, 224, 0, 0, 0, 358, 359, + 360, 0, 0, 361, 0, 362, 225, 226, 227, 0, + 0, 0, 0, 0, 228, 21, 363, 229, 0, 364, + 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, + 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 234, + 0, 49, 0, 0, 235, 0, 236, 0, 0, 0, + 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, + 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, + 0, 76, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1829, 1830, 237, 365, 366, 367, 238, 239, 0, 0, + 0, 240, 241, 242, 368, 243, 244, 245, 369, 1459, + 370, 107, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 246, 247, 0, + 0, 0, 0, 0, 248, 0, 0, 1858, 1859, 326, + 0, 0, 0, 1539, 0, 0, 251, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 187, 6, 344, 0, 0, 0, 0, 188, + 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, 218, 219, 1901, 1902, 345, 346, 347, 348, 349, + 350, 351, 352, 353, 220, 221, 222, 223, 354, 355, + 356, 357, 224, 0, 0, 0, 358, 359, 360, 0, + 0, 361, 0, 362, 225, 226, 227, 0, 0, 0, + 0, 0, 228, 21, 363, 229, 0, 364, 0, 0, + 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, + 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 234, 0, 49, + 0, 0, 235, 0, 236, 0, 0, 0, 0, 0, + 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, + 67, 68, 69, 0, 0, 0, 73, 0, 0, 76, + 0, 0, 0, 0, 0, 0, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 237, 365, 366, 367, 238, 239, 0, 0, 0, 240, + 241, 242, 368, 243, 244, 245, 369, 0, 370, 107, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 246, 247, 0, 0, 0, + 0, 0, 248, 0, 0, 0, 0, 326, 187, 6, + 325, 250, 0, 0, 251, 188, 189, 190, 0, 0, + 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, + 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, 214, 215, 216, 217, 218, 219, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, + 0, 229, 0, 0, 0, 0, 230, 0, 0, 231, + 2114, 0, 232, 0, 233, 0, 0, 0, 0, 0, + 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 234, 0, 49, 0, 0, 235, 0, + 236, 0, 0, 0, 0, 0, 0, 59, 60, 61, + 62, 63, 0, 0, 65, 66, 67, 68, 69, 0, + 0, 0, 73, 0, 0, 76, 0, 0, 0, 0, + 0, 0, 0, 712, 25, 26, 713, 28, 29, 714, + 31, 715, 33, 34, 35, 36, 0, 0, 0, 38, + 39, 40, 0, 0, 42, 0, 0, 0, 0, 0, + 716, 48, 0, 0, 50, 717, 237, 53, 718, 0, + 238, 239, 0, 0, 0, 240, 241, 242, 0, 243, + 244, 245, 0, 0, 0, 107, 70, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 246, 247, 0, 0, 0, 0, 0, 248, 0, + 84, 85, 86, 326, 187, 6, 1635, 250, 0, 0, + 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, + 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, + 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, + 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 979, 225, 226, 227, 0, + 0, 7, 8, 0, 228, 21, 0, 229, 0, 0, + 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, + 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 234, + 0, 49, 0, 0, 235, 0, 236, 0, 0, 0, + 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, + 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, + 0, 76, 0, 0, 0, 0, 0, 0, 0, 712, + 25, 26, 713, 28, 29, 714, 31, 715, 33, 34, + 35, 36, 0, 0, 0, 38, 39, 40, 0, 0, + 42, 0, 0, 0, 0, 0, 716, 48, 0, 0, + 50, 717, 237, 53, 718, 0, 238, 239, 0, 0, + 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, + 0, 107, 70, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 246, 247, 0, + 0, 0, 0, 0, 248, 0, 84, 85, 86, 326, + 187, 6, 0, 250, 0, 0, 251, 188, 189, 190, + 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, + 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, + 224, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 980, 225, 226, 227, 0, 0, 7, 8, 0, + 228, 21, 0, 229, 0, 0, 0, 0, 230, 0, + 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, + 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 234, 0, 49, 0, 0, + 235, 0, 236, 0, 0, 0, 0, 0, 0, 59, + 60, 61, 62, 63, 0, 0, 65, 66, 67, 68, + 69, 0, 0, 0, 73, 0, 0, 76, 0, 0, + 0, 0, 0, 0, 0, 712, 25, 26, 713, 28, + 29, 714, 31, 715, 33, 34, 35, 36, 0, 0, + 0, 38, 39, 40, 0, 0, 42, 0, 0, 0, + 0, 0, 716, 48, 0, 0, 50, 717, 237, 53, + 718, 0, 238, 239, 0, 0, 0, 240, 241, 242, + 0, 243, 244, 245, 0, 0, 0, 107, 70, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 597, 1789, 0, 0, 0, 0, 0, + 248, 0, 84, 85, 86, 599, 187, 6, 0, 290, + 527, 0, 251, 188, 189, 190, 0, 0, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, + 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, + 213, 214, 215, 216, 217, 218, 219, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, + 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1172, 225, 226, + 227, 0, 0, 7, 8, 0, 228, 21, 0, 229, + 0, 0, 0, 0, 230, 0, 0, 231, 0, 0, + 232, 0, 233, 0, 0, 0, 0, 0, 0, 37, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 234, 0, 49, 0, 0, 235, 0, 236, 0, + 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, + 0, 0, 65, 66, 67, 68, 69, 0, 0, 0, + 73, 0, 0, 76, 0, 0, 0, 0, 0, 0, + 0, 712, 25, 26, 713, 28, 29, 714, 31, 715, + 33, 34, 35, 36, 0, 0, 0, 38, 39, 40, + 0, 0, 42, 0, 0, 0, 0, 0, 716, 48, + 0, 0, 50, 717, 237, 53, 718, 0, 238, 239, + 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, + 0, 0, 0, 107, 70, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, + 247, 0, 0, 0, 0, 0, 248, 0, 84, 85, + 86, 249, 187, 6, 0, 250, 0, 0, 251, 188, + 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, 218, 219, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, + 0, 0, 224, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1174, 225, 226, 227, 0, 0, 7, + 8, 0, 228, 21, 0, 229, 0, 0, 0, 0, + 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, + 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 234, 0, 49, + 0, 0, 235, 0, 236, 0, 0, 0, 0, 0, + 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, + 67, 68, 69, 0, 0, 0, 73, 0, 0, 76, + 0, 0, 0, 0, 0, 0, 0, 712, 25, 26, + 713, 28, 29, 714, 31, 715, 33, 34, 35, 36, + 0, 0, 0, 38, 39, 40, 0, 0, 42, 0, + 0, 0, 0, 0, 716, 48, 0, 0, 50, 717, + 237, 53, 718, 0, 238, 239, 0, 0, 0, 240, + 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, + 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 246, 247, 0, 0, 0, + 0, 0, 248, 0, 84, 85, 86, 326, 187, 6, + 0, 250, 0, 0, 251, 188, 189, 190, 0, 0, + 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, + 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, 214, 215, 216, 217, 218, 219, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1175, + 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, + 0, 229, 0, 0, 0, 0, 230, 0, 0, 231, + 0, 0, 232, 0, 233, 0, 0, 0, 0, 0, + 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 234, 0, 49, 0, 0, 235, 0, + 236, 0, 0, 0, 0, 0, 0, 59, 60, 61, + 62, 63, 0, 0, 65, 66, 67, 68, 69, 0, + 0, 0, 73, 0, 0, 76, 0, 0, 0, 0, + 0, 0, 0, 712, 25, 26, 713, 28, 29, 714, + 31, 715, 33, 34, 35, 36, 0, 0, 0, 38, + 39, 40, 0, 0, 42, 0, 0, 0, 0, 0, + 716, 48, 0, 0, 50, 717, 237, 53, 718, 0, + 238, 239, 0, 0, 0, 240, 241, 242, 0, 243, + 244, 245, 0, 0, 0, 107, 70, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 246, 433, 0, 0, 0, 0, 0, 248, 0, + 84, 85, 86, 326, 187, 6, 0, 522, 0, 0, + 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, + 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, + 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, + 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1194, 225, 226, 227, 0, + 0, 7, 8, 0, 228, 21, 0, 229, 0, 0, + 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, + 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 234, + 0, 49, 0, 0, 235, 0, 236, 0, 0, 0, + 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, + 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, + 0, 76, 0, 0, 0, 0, 0, 0, 0, 712, + 25, 26, 713, 28, 29, 714, 31, 715, 33, 34, + 35, 36, 0, 0, 0, 38, 39, 40, 0, 0, + 42, 0, 0, 0, 0, 0, 716, 48, 0, 0, + 50, 717, 237, 53, 718, 0, 238, 239, 0, 0, + 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, + 0, 107, 70, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 246, 433, 0, + 0, 0, 0, 0, 248, 0, 84, 85, 86, 326, + 187, 6, 0, 0, 527, 0, 251, 188, 189, 190, + 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, + 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, + 224, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1223, 225, 226, 227, 0, 0, 7, 8, 0, + 228, 21, 0, 229, 0, 0, 0, 0, 230, 0, + 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, + 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 234, 0, 49, 0, 0, + 235, 0, 236, 0, 0, 0, 0, 0, 0, 59, + 60, 61, 62, 63, 0, 0, 65, 66, 67, 68, + 69, 0, 0, 0, 73, 0, 0, 76, 0, 0, + 0, 0, 0, 0, 0, 712, 25, 26, 713, 28, + 29, 714, 31, 715, 33, 34, 35, 36, 0, 0, + 0, 38, 39, 40, 0, 0, 42, 0, 0, 0, + 0, 0, 716, 48, 0, 0, 50, 717, 237, 53, + 718, 0, 238, 239, 0, 0, 0, 240, 241, 242, + 0, 243, 244, 245, 0, 0, 0, 107, 70, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 246, 247, 0, 0, 0, 0, 0, + 248, 0, 84, 85, 86, 563, 187, 6, 0, 250, + 0, 0, 251, 188, 189, 190, 0, 0, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, + 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, + 213, 214, 215, 216, 217, 218, 219, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, + 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1256, 225, 226, + 227, 0, 0, 7, 8, 0, 228, 21, 0, 229, + 0, 0, 0, 0, 230, 0, 0, 231, 0, 0, + 232, 0, 233, 0, 0, 0, 0, 0, 0, 37, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 234, 0, 49, 0, 0, 235, 0, 236, 0, + 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, + 0, 0, 65, 66, 67, 68, 69, 0, 0, 0, + 73, 0, 0, 76, 0, 0, 0, 0, 0, 0, + 0, 712, 25, 26, 713, 28, 29, 714, 31, 715, + 33, 34, 35, 36, 0, 0, 0, 38, 39, 40, + 0, 0, 42, 0, 0, 0, 0, 0, 716, 48, + 0, 0, 50, 717, 237, 53, 718, 0, 238, 239, + 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, + 0, 0, 0, 107, 70, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, + 247, 0, 0, 0, 0, 0, 248, 0, 84, 85, + 86, 572, 187, 6, 0, 250, 0, 0, 251, 188, + 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, 218, 219, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, + 0, 0, 224, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1413, 225, 226, 227, 0, 0, 7, + 8, 0, 228, 21, 0, 229, 0, 0, 0, 0, + 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, + 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 234, 0, 49, + 0, 0, 235, 0, 236, 0, 0, 0, 0, 0, + 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, + 67, 68, 69, 0, 0, 0, 73, 0, 0, 76, + 0, 0, 0, 0, 0, 0, 0, 712, 25, 26, + 713, 28, 29, 714, 31, 715, 33, 34, 35, 36, + 0, 0, 0, 38, 39, 40, 0, 0, 42, 0, + 0, 0, 0, 0, 716, 48, 0, 0, 50, 717, + 237, 53, 718, 0, 238, 239, 0, 0, 0, 240, + 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, + 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 246, 247, 0, 0, 0, + 0, 0, 248, 0, 84, 85, 86, 574, 187, 6, + 0, 250, 0, 0, 251, 188, 189, 190, 0, 0, + 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, + 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, 214, 215, 216, 217, 218, 219, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2015, + 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, + 0, 229, 0, 0, 0, 0, 230, 0, 0, 231, + 0, 0, 232, 0, 233, 0, 0, 0, 0, 0, + 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 234, 0, 49, 0, 0, 235, 0, + 236, 0, 0, 0, 0, 0, 0, 59, 60, 61, + 62, 63, 0, 0, 65, 66, 67, 68, 69, 0, + 0, 0, 73, 0, 0, 76, 0, 0, 0, 0, + 0, 0, 0, 712, 25, 26, 713, 28, 29, 714, + 31, 715, 33, 34, 35, 36, 0, 0, 0, 38, + 39, 40, 0, 0, 42, 0, 0, 0, 0, 0, + 716, 48, 0, 0, 50, 717, 237, 53, 718, 0, + 238, 239, 0, 0, 0, 240, 241, 242, 0, 243, + 244, 245, 0, 0, 0, 107, 70, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 246, 247, 0, 0, 0, 0, 0, 248, 0, + 84, 85, 86, 576, 187, 6, 0, 250, 0, 0, + 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, + 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, + 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, + 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2078, 225, 226, 227, 0, + 0, 7, 8, 0, 228, 21, 0, 229, 0, 0, + 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, + 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 234, + 0, 49, 0, 0, 235, 0, 236, 0, 0, 0, + 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, + 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, + 0, 76, 0, 0, 0, 0, 0, 0, 0, 712, + 25, 26, 713, 28, 29, 714, 31, 715, 33, 34, + 35, 36, 0, 0, 0, 38, 39, 40, 0, 0, + 42, 0, 0, 0, 0, 0, 716, 48, 0, 0, + 50, 717, 237, 53, 718, 0, 238, 239, 0, 0, + 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, + 0, 107, 70, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 246, 433, 0, + 0, 0, 0, 0, 248, 0, 84, 85, 86, 326, + 187, 150, 344, 850, 0, 0, 251, 188, 189, 190, + 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 200, 201, 202, 203, 204, 205, 206, 207, 380, + 209, 210, 211, 212, 213, 214, 0, 0, 0, 0, + 0, 0, 0, 345, 346, 347, 348, 349, 350, 351, + 352, 353, 220, 221, 222, 223, 354, 355, 356, 357, + 224, 0, 0, 0, 358, 359, 360, 0, 0, 361, + 0, 362, 225, 226, 227, 0, 0, 0, 0, 0, + 228, 21, 363, 229, 0, 364, 0, 0, 0, 0, + 0, 0, 0, 0, 150, 344, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 699, 0, 700, 0, 0, 0, 0, 0, 1661, 0, + 0, 0, 0, 0, 0, 0, 345, 346, 347, 348, + 349, 350, 351, 352, 353, 0, 0, 0, 0, 354, + 355, 356, 357, 0, 0, 0, 0, 358, 359, 360, + 0, 0, 361, 0, 362, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 363, 0, 0, 364, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 237, 365, + 366, 367, 238, 0, 0, 0, 0, 240, 241, 242, + 368, 243, 244, 245, 369, 0, 370, 107, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 246, 381, 0, 0, 0, 0, 0, + 248, 0, 0, 0, 0, 326, 187, 6, 0, 1535, + 0, 0, 251, 188, 189, 190, 0, 0, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, + 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, + 213, 214, 215, 216, 217, 218, 219, 0, 0, 0, + 0, 0, 365, 366, 367, 0, 0, 0, 220, 221, + 222, 223, 0, 368, 0, 0, 224, 369, 0, 370, + 107, 0, 0, 0, 0, 0, 0, 0, 225, 226, + 227, 0, 0, 0, 0, 0, 228, 21, 0, 229, + 0, 0, 0, 0, 230, 0, 0, 231, 0, 0, + 232, 0, 233, 0, 0, 0, 0, 0, 0, 37, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 234, 0, 49, 0, 0, 235, 0, 236, 0, + 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, + 0, 0, 65, 66, 67, 68, 69, 0, 0, 0, + 73, 0, 0, 76, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 943, 0, + 0, 0, 0, 0, 0, 0, 904, 0, 0, 0, + 0, 0, 0, 0, 237, 0, 0, 0, 238, 239, + 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, + 0, 0, 0, 107, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, + 247, 0, 0, 0, 0, 0, 248, 0, 0, 0, + 0, 326, 187, 150, 344, 1643, 0, 0, 251, 188, + 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 380, 209, 210, 211, 212, 213, 214, 0, 0, + 0, 0, 0, 0, 0, 345, 346, 347, 348, 349, + 350, 351, 352, 353, 220, 221, 222, 223, 354, 355, + 356, 357, 224, 0, 0, 0, 358, 359, 360, 0, + 0, 361, 0, 362, 225, 226, 227, 0, 0, 0, + 0, 0, 228, 21, 363, 229, 0, 364, 187, 150, + 344, 0, 0, 0, 0, 188, 189, 190, 0, 0, + 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, + 201, 202, 203, 204, 205, 206, 207, 380, 209, 210, + 211, 212, 213, 214, 0, 0, 0, 0, 0, 0, + 0, 345, 346, 347, 348, 349, 350, 351, 352, 353, + 220, 221, 222, 223, 354, 355, 356, 357, 224, 0, + 0, 0, 358, 359, 360, 0, 0, 361, 0, 362, + 225, 226, 227, 0, 0, 0, 0, 0, 228, 21, + 363, 229, 0, 364, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 237, 365, 366, 367, 238, 0, 0, 0, 0, 240, + 241, 242, 368, 243, 244, 245, 369, 0, 370, 107, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 246, 381, 0, 0, 0, + 0, 0, 248, 0, 0, 0, 0, 326, 0, 0, + 0, 1802, 0, 0, 251, 0, 0, 0, 0, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 237, 365, 366, 367, + 238, 730, 0, 0, 0, 240, 241, 242, 368, 243, + 244, 245, 369, 0, 370, 107, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 246, 381, 0, 0, 0, 0, 0, 248, 0, + 0, 0, 0, 326, 187, 6, 0, 1808, 0, 0, + 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, + 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, + 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, + 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 225, 226, 227, 0, + 0, 0, 0, 0, 228, 21, 0, 229, 0, 0, + 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, + 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 234, + 0, 49, 0, 0, 235, 0, 236, 0, 0, 0, + 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, + 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, + 0, 76, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 1770, 0, 0, 0, 1771, 0, 0, 0, 0, 0, + 0, 0, 237, 0, 0, 0, 238, 239, 0, 0, + 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, + 0, 107, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 597, 1789, 0, + 0, 0, 0, 0, 248, 0, 0, 0, 0, 599, + 187, 6, 0, 290, 0, 0, 251, 188, 189, 190, + 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, + 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, + 224, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 225, 226, 227, 0, 0, 0, 0, 0, + 228, 21, 0, 229, 0, 0, 0, 0, 230, 0, + 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, + 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 234, 0, 49, 0, 0, + 235, 0, 236, 0, 0, 0, 0, 0, 0, 59, + 60, 61, 62, 63, 0, 0, 65, 66, 67, 68, + 69, 0, 0, 0, 73, 0, 0, 76, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 676, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 1797, 0, 0, 0, + 1798, 0, 0, 0, 0, 0, 0, 0, 237, 0, + 0, 0, 238, 239, 0, 0, 0, 240, 241, 242, + 0, 243, 244, 245, 0, 0, 0, 107, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 246, 433, 0, 0, 0, 0, 0, + 248, 187, 150, 344, 0, 326, 0, 0, 188, 189, + 190, 0, 251, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, + 380, 209, 210, 211, 212, 213, 214, 0, 0, 0, + 0, 0, 0, 0, 345, 346, 347, 348, 349, 350, + 351, 352, 353, 220, 221, 222, 223, 354, 355, 356, + 357, 224, 0, 0, 0, 358, 359, 360, 0, 0, + 361, 0, 362, 225, 226, 227, 0, 0, 0, 0, + 0, 228, 21, 363, 229, 0, 364, 187, 150, 0, + 0, 0, 0, 0, 188, 189, 190, 0, 0, 191, + 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, + 202, 203, 204, 205, 206, 207, 380, 209, 210, 211, + 212, 213, 214, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, + 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 225, + 226, 227, 0, 0, 0, 0, 0, 228, 21, 0, + 229, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 237, + 365, 366, 367, 238, 0, 0, 0, 0, 240, 241, + 242, 368, 243, 244, 245, 369, 0, 370, 107, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 246, 381, 0, 0, 0, 0, + 0, 248, 0, 0, 0, 0, 326, 0, 0, 0, + 0, 0, 0, 251, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 1958, 0, 0, 237, 1959, 0, 0, 238, + 0, 0, 0, 0, 240, 241, 242, 0, 243, 244, + 245, 0, 0, 0, 107, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 597, 598, 0, 0, 0, 0, 0, 248, 0, 0, + 0, 0, 599, 0, 187, 150, 290, 1260, 0, 251, + 0, 188, 189, 190, 0, 0, 191, 192, 193, 194, + 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, + 205, 206, 207, 380, 209, 210, 211, 212, 213, 214, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, + 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 225, 226, 227, 0, + 0, 0, 0, 0, 228, 21, 0, 229, 187, 150, + 0, 1421, 0, 0, 0, 188, 189, 190, 0, 0, + 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, + 201, 202, 203, 204, 205, 206, 207, 380, 209, 210, + 211, 212, 213, 214, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 225, 226, 227, 0, 0, 0, 0, 0, 228, 21, + 0, 229, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 0, 0, 237, 0, 550, 0, 238, 0, 0, 0, + 0, 240, 241, 242, 904, 243, 244, 245, 0, 0, + 0, 107, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 246, 381, 0, + 0, 0, 0, 0, 248, 0, 0, 0, 0, 326, + 0, 0, 0, 0, 0, 0, 251, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 0, 237, 0, 0, 905, + 238, 0, 0, 0, 0, 240, 241, 242, 0, 243, + 244, 245, 0, 0, 0, 107, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 246, 381, 0, 0, 0, 0, 0, 248, 187, + 150, 0, 1479, 326, 0, 0, 188, 189, 190, 0, + 251, 191, 192, 193, 194, 195, 196, 197, 198, 199, + 200, 201, 202, 203, 204, 205, 206, 207, 380, 209, + 210, 211, 212, 213, 214, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 225, 226, 227, 0, 0, 187, 150, 0, 228, + 21, 0, 229, 188, 189, 190, 0, 0, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, + 203, 204, 205, 206, 207, 380, 209, 210, 211, 212, + 213, 214, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, + 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 225, 226, + 227, 0, 0, 0, 0, 0, 228, 21, 0, 229, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 676, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 237, 0, 0, + 0, 238, 948, 0, 0, 0, 240, 241, 242, 0, + 243, 244, 245, 0, 0, 0, 107, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 246, 381, 0, 0, 0, 0, 0, 248, + 0, 0, 0, 0, 326, 0, 0, 0, 0, 0, + 0, 251, 0, -4, 1, 0, 0, -4, 0, 0, + 0, 0, 0, 0, 0, 0, -4, -4, 0, 0, + 0, 0, 0, 0, 237, 0, 0, 0, 238, 0, + 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, + 0, 0, 0, 107, 0, 0, 0, -4, -4, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, + 381, 0, 0, 0, 0, 0, 248, -4, -4, -4, + 0, 326, 0, -4, -4, 0, -4, 0, 251, 0, + 0, -4, -4, 0, -4, -4, 0, -4, 0, 0, + 0, 0, -4, -4, -4, -4, -4, -4, -4, -4, + -4, -4, -4, -4, -4, -4, -4, 0, 0, -4, + -4, -4, -4, -4, 0, -4, 0, -4, -4, -4, + -4, -4, -4, -4, 0, -4, -4, -4, -4, -4, + -4, 0, -4, -4, -4, -4, -4, -4, -4, -4, + -4, 0, -4, -4, -4, -4, -4, -4, -4, -4, + -4, -4, -4, -4, -4, -4, 0, 6, 0, -4, + -4, -4, 0, 0, 0, -4, 7, 8, 0, 0, + -4, -4, -4, -4, 0, 0, -4, 0, -4, 0, + -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, + -4, -4, -4, -4, 0, 0, 0, 9, 10, 0, + -4, -4, -4, 0, 0, 0, 0, 0, 0, 0, + 0, -4, 0, -4, 0, 0, 0, 11, 12, 13, + 0, 0, 0, 14, 15, 0, 16, 0, 0, 0, + 0, 17, 18, 0, 19, 20, 0, 21, 0, 0, + 0, 0, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, 36, 0, 0, 37, + 38, 39, 40, 41, 0, 42, 0, 43, 44, 45, + 46, 47, 48, 49, 0, 50, 51, 52, 53, 54, + 55, 0, 56, 57, 58, 59, 60, 61, 62, 63, + 64, 0, 65, 66, 67, 68, 69, 70, 71, 72, + 73, 74, 75, 76, 77, 78, 0, 0, 0, 79, + 80, 81, 0, 0, 0, 82, 0, 0, 0, 0, + 83, 84, 85, 86, 374, 344, 87, 0, 88, 0, + 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, + 99, 100, 101, 102, 0, 0, 0, 0, 0, 0, + 103, 104, 105, 0, 0, 344, 0, 0, 0, 0, + 0, 106, 0, 107, 0, 0, 345, 346, 347, 348, + 349, 350, 351, 352, 353, 0, 0, 0, 0, 354, + 355, 356, 357, 0, 0, 0, 0, 358, 359, 360, + 0, 0, 361, 0, 362, 0, 345, 346, 347, 348, + 349, 350, 351, 352, 353, 363, 0, 0, 364, 354, + 355, 356, 357, 0, 0, 0, 0, 358, 359, 360, + 0, 0, 361, 0, 362, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 363, 0, 0, 364, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1089, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1099, 0, 0, 0, 0, 0, + 0, 0, 365, 366, 367, 0, 0, 0, 0, 0, + 0, 0, 0, 368, 0, 0, 0, 369, 0, 370, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 365, 366, 367, 0, 0, 0, 0, 0, + 0, 0, 0, 368, 0, 0, 0, 369, 0, 370, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 676, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1100, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1101, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1106, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1107, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1109, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 676, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1217, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 676, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1238, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 676, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1321, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1415, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1416, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 676, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1458, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1578, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1579, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1580, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1586, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 676, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1587, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 676, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1588, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 676, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1589, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1718, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1833, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 676, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1834, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1860, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1861, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1862, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1863, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 676, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1864, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 676, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1927, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 676, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1984, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1985, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1997, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 676, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1998, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1999, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2000, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2001, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2033, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 676, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2063, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 676, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2068, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 676, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2069, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2070, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2071, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 676, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2072, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2073, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2115, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2116, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2117, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 676, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2118, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 676, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 1026, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 1118, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 1197, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 676, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 1266, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 1417, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 1485, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 1486, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 676, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 1487, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 676, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 1488, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 1768, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 676, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 1779, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 1815, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 1850, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 676, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 1851, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 1852, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 1853, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 1855, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 676, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 1878, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 676, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 1893, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 1947, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 676, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 1964, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 1973, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 1974, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 676, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 1995, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 2049, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 2091, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 2113, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 676, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 2139, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 676, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 2140, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 2141, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 676, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 2142, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 2143, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 2144, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 676, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 677, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 896, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 676, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 1871, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 699, 0, 700, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 954, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 1000, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 676, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 1140, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 1143, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 1210, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 676, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 1211, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 676, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 1215, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 676, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 1216, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 676, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 1302, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 1318, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 676, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 1517, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 676, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 1649, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 676, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 1826, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 676, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 1879, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 744, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 748, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 749, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 751, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 753, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 754, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 756, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 758, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 759, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 760, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 761, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 762, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 763, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 765, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 766, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 767, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 832, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 867, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 925, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 943, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 944, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 945, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 946, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 952, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 953, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 985, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 999, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1057, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1062, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1075, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1139, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1142, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1149, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1150, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1151, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1165, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1166, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1167, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1196, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1198, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1199, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1200, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1201, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1202, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1203, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1204, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1209, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1301, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1317, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1522, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1590, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1598, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1704, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1710, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1711, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1712, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1713, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1717, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1769, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1778, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1801, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1865, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1925, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 1926, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 2062, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 676, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 2110, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 676, 546, 547, + 548, 549, 0, 0, 0, 0, 550 +}; + +static const yytype_int16 yycheck[] = +{ + 3, 1191, 498, 594, 595, 283, 1195, 5, 1843, 694, + 3, 1637, 1675, 5, 1677, 4, 4, 702, 21, 4, + 295, 22, 23, 6, 4, 21, 4, 97, 4, 709, + 6, 5, 5, 4, 6, 148, 4, 6, 313, 4, + 241, 4, 6, 4, 47, 7, 247, 727, 118, 4, + 4, 235, 236, 5, 226, 227, 0, 4, 242, 5, + 173, 226, 227, 60, 61, 14, 63, 132, 7, 97, + 6, 74, 137, 138, 4, 247, 189, 190, 132, 82, + 226, 227, 247, 241, 87, 6, 6, 226, 227, 247, + 118, 9, 226, 227, 4, 98, 226, 227, 97, 9, + 9, 247, 377, 6, 379, 226, 227, 238, 247, 243, + 175, 386, 239, 1739, 241, 91, 238, 247, 240, 6, + 247, 186, 239, 84, 226, 227, 247, 238, 6, 132, + 247, 132, 226, 227, 137, 138, 94, 226, 227, 97, + 133, 239, 145, 241, 6, 247, 226, 227, 242, 247, + 646, 239, 648, 156, 834, 158, 239, 1992, 247, 247, + 163, 9, 235, 236, 247, 168, 242, 247, 239, 7, + 246, 244, 175, 244, 226, 227, 179, 6, 176, 182, + 183, 184, 185, 186, 176, 9, 238, 238, 6, 240, + 242, 192, 193, 194, 195, 196, 197, 198, 199, 200, + 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, + 188, 222, 223, 184, 176, 210, 238, 228, 229, 9, + 176, 234, 210, 163, 164, 165, 166, 238, 239, 210, + 161, 161, 1868, 1433, 247, 210, 240, 250, 251, 210, + 238, 240, 221, 222, 242, 251, 6, 246, 238, 242, + 245, 264, 242, 210, 267, 268, 269, 270, 242, 242, + 242, 242, 275, 276, 277, 238, 7, 242, 281, 242, + 283, 242, 244, 238, 238, 183, 184, 185, 242, 286, + 287, 6, 239, 4, 241, 1921, 242, 294, 295, 238, + 210, 240, 238, 306, 307, 308, 242, 238, 583, 240, + 585, 586, 238, 243, 999, 1000, 242, 320, 321, 384, + 238, 6, 240, 226, 227, 235, 236, 602, 238, 238, + 240, 240, 242, 7, 244, 244, 6, 158, 47, 226, + 227, 7, 163, 240, 345, 346, 347, 168, 226, 227, + 351, 352, 353, 354, 355, 356, 357, 4, 359, 221, + 222, 182, 363, 364, 2027, 640, 367, 238, 226, 227, + 268, 269, 270, 211, 212, 213, 214, 94, 238, 380, + 97, 384, 99, 226, 227, 388, 389, 235, 236, 247, + 238, 238, 240, 241, 226, 227, 244, 235, 236, 235, + 236, 404, 677, 7, 247, 239, 244, 410, 306, 307, + 308, 235, 236, 247, 238, 247, 240, 226, 227, 238, + 244, 238, 320, 321, 7, 242, 429, 492, 238, 494, + 433, 496, 497, 226, 227, 238, 226, 227, 247, 2065, + 239, 238, 241, 264, 226, 227, 238, 1127, 247, 1129, + 515, 516, 226, 227, 247, 235, 236, 247, 238, 238, + 240, 1141, 173, 174, 244, 247, 226, 227, 6, 7, + 179, 239, 1157, 247, 1159, 238, 1161, 480, 1163, 247, + 211, 212, 213, 214, 487, 488, 238, 247, 239, 492, + 241, 494, 495, 496, 497, 498, 247, 500, 239, 244, + 2126, 246, 226, 227, 235, 236, 247, 510, 511, 512, + 513, 514, 515, 516, 517, 518, 97, 520, 99, 522, + 226, 227, 518, 247, 520, 234, 173, 174, 238, 530, + 6, 7, 242, 226, 227, 226, 227, 211, 212, 213, + 214, 247, 545, 226, 227, 211, 212, 213, 214, 98, + 553, 100, 8, 4, 247, 238, 247, 239, 267, 242, + 238, 235, 236, 226, 227, 247, 275, 276, 277, 235, + 236, 1251, 281, 238, 91, 578, 579, 94, 94, 242, + 97, 97, 647, 132, 649, 650, 651, 652, 653, 654, + 238, 656, 657, 658, 659, 592, 593, 662, 663, 664, + 597, 594, 595, 226, 227, 111, 155, 211, 212, 213, + 214, 97, 242, 511, 512, 513, 514, 4, 238, 242, + 1300, 624, 625, 626, 239, 900, 241, 6, 211, 212, + 213, 214, 247, 231, 232, 238, 1316, 243, 243, 237, + 694, 247, 247, 646, 647, 648, 649, 650, 651, 652, + 653, 654, 242, 656, 657, 658, 659, 660, 238, 662, + 663, 664, 665, 666, 97, 91, 669, 732, 94, 665, + 243, 97, 737, 99, 247, 239, 94, 241, 242, 388, + 389, 132, 133, 134, 135, 242, 226, 227, 228, 229, + 230, 231, 232, 226, 227, 404, 147, 237, 701, 150, + 239, 522, 241, 706, 91, 132, 133, 244, 95, 243, + 247, 138, 8, 247, 101, 102, 242, 104, 105, 243, + 723, 724, 128, 247, 244, 91, 729, 247, 94, 732, + 238, 97, 735, 99, 737, 122, 94, 91, 238, 145, + 94, 94, 745, 97, 747, 99, 4, 153, 154, 155, + 132, 133, 97, 159, 160, 97, 138, 578, 579, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 94, 4, 243, + 97, 237, 99, 247, 243, 128, 495, 243, 247, 228, + 229, 230, 231, 232, 238, 238, 4, 128, 237, 242, + 803, 510, 145, 624, 625, 626, 1491, 238, 4, 863, + 153, 154, 155, 128, 145, 238, 159, 160, 1503, 242, + 6, 238, 153, 154, 155, 128, 238, 2016, 159, 160, + 145, 94, 6, 97, 97, 99, 99, 243, 153, 154, + 155, 240, 145, 392, 159, 160, 238, 850, 669, 243, + 153, 154, 155, 247, 243, 243, 159, 160, 247, 247, + 243, 2051, 865, 243, 247, 243, 240, 247, 243, 247, + 873, 243, 247, 238, 243, 247, 246, 242, 247, 243, + 701, 243, 243, 247, 243, 247, 247, 243, 247, 6, + 2079, 247, 243, 896, 243, 243, 247, 243, 247, 247, + 243, 247, 723, 243, 242, 238, 903, 247, 729, 242, + 2100, 243, 243, 910, 243, 247, 6, 914, 247, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 246, 243, 243, + 243, 237, 247, 247, 238, 999, 1000, 243, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, 97, 1030, 99, 243, 237, 243, + 519, 247, 243, 247, 9, 243, 247, 243, 4, 247, + 6, 247, 803, 243, 238, 238, 238, 247, 991, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, 1005, 238, 1282, 238, 237, 1010, 1504, 1505, + 239, 118, 241, 242, 1017, 1018, 1019, 1020, 238, 568, + 569, 570, 571, 238, 243, 238, 243, 1030, 247, 850, + 247, 1622, 1623, 243, 243, 4, 5, 247, 247, 243, + 238, 243, 1043, 247, 865, 247, 243, 1112, 1113, 242, + 247, 238, 1055, 1056, 1051, 1058, 238, 1060, 1061, 238, + 1063, 238, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, + 1073, 238, 243, 1076, 238, 896, 247, 46, 47, 48, + 49, 50, 51, 52, 53, 54, 242, 4, 1142, 1143, + 59, 60, 61, 62, 242, 242, 238, 243, 67, 68, + 69, 247, 243, 72, 242, 74, 247, 243, 1111, 1112, + 1113, 247, 661, 243, 243, 6, 85, 247, 247, 88, + 243, 243, 238, 238, 247, 247, 238, 238, 238, 238, + 1133, 6, 238, 6, 242, 240, 6, 6, 242, 242, + 240, 240, 240, 176, 1147, 1148, 242, 238, 240, 238, + 238, 238, 238, 238, 6, 6, 125, 6, 242, 6, + 242, 7, 6, 8, 873, 242, 6, 242, 87, 1234, + 243, 247, 239, 1238, 7, 247, 6, 6, 6, 239, + 242, 64, 1247, 64, 1249, 64, 64, 1252, 237, 244, + 4, 7, 7, 6, 743, 6, 1017, 1018, 1019, 1020, + 6, 239, 1205, 1478, 6, 242, 7, 1482, 6, 173, + 7, 6, 6, 6, 242, 1218, 1219, 1220, 241, 239, + 1498, 6, 244, 192, 193, 194, 1229, 242, 242, 242, + 242, 1234, 7, 6, 203, 1238, 240, 1302, 207, 238, + 209, 210, 4, 6, 1247, 6, 1249, 1301, 1302, 1252, + 6, 6, 239, 7, 240, 1076, 176, 242, 8, 7, + 1263, 7, 7, 176, 7, 7, 235, 236, 7, 176, + 7, 7, 7, 7, 7, 244, 7, 7, 7, 1282, + 7, 6, 991, 1874, 239, 1286, 1287, 241, 247, 247, + 247, 242, 242, 242, 242, 247, 239, 7, 244, 1302, + 238, 1010, 7, 242, 4, 6, 239, 247, 239, 239, + 247, 247, 1808, 239, 243, 247, 244, 7, 243, 128, + 6, 1324, 7, 7, 7, 239, 244, 1148, 239, 9, + 239, 247, 1335, 241, 7, 247, 148, 247, 1341, 243, + 246, 242, 6, 6, 4, 244, 1055, 1056, 6, 1058, + 46, 1060, 1061, 46, 1063, 244, 1065, 1066, 1067, 1068, + 1069, 1070, 1071, 1072, 1073, 4, 238, 238, 4, 6, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, 238, 1392, + 1393, 1394, 237, 7, 239, 1398, 241, 1400, 7, 1402, + 238, 1404, 1111, 1406, 1407, 1408, 238, 99, 1229, 7, + 247, 1689, 239, 238, 7, 7, 7, 7, 7, 7, + 1423, 7, 7, 4, 1133, 242, 6, 109, 238, 7, + 6, 1434, 7, 7, 7, 1432, 7, 1491, 1147, 1442, + 7, 7, 1445, 7, 6, 6, 242, 6, 97, 7, + 6, 6, 1001, 4, 4, 4, 245, 247, 239, 247, + 242, 6, 242, 242, 1529, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 243, 6, 6, 6, 237, 7, 239, + 6, 240, 6, 6, 238, 1498, 1205, 238, 6, 6, + 247, 1504, 1505, 6, 242, 122, 6, 1510, 6, 1218, + 1219, 1220, 244, 241, 6, 176, 242, 6, 242, 242, + 242, 242, 6, 6, 6, 6, 1529, 6, 6, 6, + 6, 5, 1535, 239, 247, 239, 1539, 6, 4, 6, + 239, 238, 4, 1597, 242, 6, 240, 242, 7, 6, + 6, 242, 1549, 242, 1263, 242, 6, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 242, 242, 242, 6, 237, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 1660, 242, 242, 1663, 237, + 242, 242, 6, 172, 6, 6, 239, 247, 1883, 244, + 7, 1614, 1615, 247, 238, 1324, 247, 247, 4, 242, + 238, 6, 6, 6, 1445, 6, 1335, 6, 6, 1622, + 1623, 4, 1341, 1911, 1637, 7, 6, 6, 6, 6, + 1643, 1638, 1639, 1640, 1641, 1642, 1643, 6, 1702, 1652, + 95, 6, 5, 247, 6, 242, 239, 1660, 242, 6, + 1663, 6, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 239, 6, 4, 6, 1678, 6, 247, 6, 242, + 7, 5, 1685, 1392, 1393, 1394, 1689, 247, 1691, 1398, + 242, 1400, 6, 1402, 242, 1404, 242, 1406, 1407, 1408, + 6, 242, 6, 1978, 243, 243, 7, 242, 6, 6, + 239, 171, 243, 243, 1423, 243, 6, 244, 7, 6, + 6, 6, 6, 6, 242, 1434, 6, 6, 6, 6, + 6, 6, 243, 1442, 6, 239, 1739, 3, 4, 6, + 242, 174, 2017, 6, 10, 11, 12, 242, 238, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 1322, 1777, 1324, 6, 242, 6, 243, + 243, 6, 6, 6, 242, 6, 1789, 242, 242, 55, + 56, 57, 58, 1614, 1615, 243, 6, 63, 242, 1802, + 239, 1510, 128, 6, 6, 1808, 6, 243, 243, 75, + 76, 77, 6, 6, 6, 6, 6, 83, 84, 6, + 86, 6, 242, 6, 242, 6, 1535, 6, 242, 6, + 6, 6, 6, 1836, 6, 1315, 2029, 1367, 1543, 1844, + 1334, 1603, 1845, 3, 426, 1812, 1849, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 1868, 3, 3, 1871, 237, + 3, 1376, 1473, 3, 1685, 1870, -1, -1, -1, 1882, + -1, 1874, -1, 1886, -1, -1, 567, -1, -1, -1, + 1887, 1888, 1889, 1890, 1891, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1911, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1921, -1, + -1, -1, -1, -1, -1, 191, -1, 1476, 1637, 195, + -1, -1, -1, -1, 200, 201, 202, -1, 204, 205, + 206, -1, -1, 1652, 210, -1, -1, -1, 1951, -1, + -1, -1, -1, 1950, -1, -1, -1, 1954, -1, -1, + 226, 227, -1, -1, -1, -1, -1, 233, -1, 1678, + -1, -1, 238, -1, -1, -1, 242, -1, -1, 245, + -1, 1802, 1691, -1, -1, -1, 1535, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 6, 2003, -1, -1, 237, + 2007, -1, -1, -1, -1, -1, 2019, 2020, 2021, 2022, + 2023, -1, -1, -1, -1, -1, 2023, -1, -1, -1, + 1739, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 2109, -1, -1, -1, -1, -1, + 1871, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 2065, -1, -1, 1886, -1, -1, 1777, 1618, + -1, 2136, 2137, -1, -1, -1, -1, 2074, 2075, -1, + -1, 2084, -1, -1, -1, -1, -1, -1, 2153, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 6, -1, 2109, -1, -1, 1658, + -1, -1, -1, 106, -1, -1, 1665, 1666, -1, -1, + -1, -1, -1, 2126, -1, -1, -1, 1836, -1, -1, + -1, -1, 1681, 2136, 2137, -1, 1845, -1, -1, 132, + -1, -1, -1, 136, -1, -1, -1, 140, 6, -1, + 2153, -1, -1, -1, -1, -1, -1, -1, -1, 1868, + -1, -1, -1, -1, 157, 158, 159, 160, -1, 162, + 163, 164, 165, 1882, 167, 168, 169, 170, 171, 172, + 173, 174, -1, 176, 177, 178, -1, -1, -1, 182, + -1, -1, -1, -1, -1, -1, -1, -1, 2019, 2020, + 2021, 2022, 2023, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1921, -1, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + -1, -1, 1951, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 246, 247, 248, 249, 250, -1, -1, + -1, -1, -1, 2084, -1, 1814, -1, -1, -1, -1, + 263, 264, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 279, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 289, 290, -1, 1848, + -1, -1, 295, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 305, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, 326, -1, 237, -1, 330, 331, 332, + -1, 334, -1, -1, -1, 338, 339, 340, -1, -1, + 343, -1, -1, -1, -1, -1, 2065, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, -1, -1, -1, 381, -1, + -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 401, 402, + -1, -1, -1, -1, -1, -1, -1, 2126, -1, -1, + -1, -1, 415, -1, -1, -1, -1, -1, -1, -1, + 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 433, -1, -1, -1, 1993, -1, 439, -1, -1, -1, + -1, 444, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 458, -1, -1, -1, -1, + -1, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, + 483, 484, 485, 486, 487, 488, -1, 490, 491, -1, + 493, -1, 158, -1, -1, -1, 499, 163, -1, -1, + 503, -1, 168, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 517, -1, 182, -1, -1, 522, + -1, -1, -1, -1, -1, -1, -1, -1, 531, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, + -1, 554, 555, -1, -1, -1, -1, -1, 561, 562, + 563, -1, -1, -1, -1, 568, 569, 570, 571, 572, + -1, 574, -1, 576, -1, 578, 579, -1, -1, -1, + -1, 247, -1, -1, 250, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 597, 598, 599, -1, 264, -1, + 603, 604, 605, 606, 607, 608, 609, 610, 611, -1, + -1, -1, -1, 616, 6, 618, -1, 620, -1, -1, + -1, 624, 625, 626, -1, -1, 629, 630, 631, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, 655, -1, -1, -1, -1, -1, -1, 128, + -1, -1, -1, -1, -1, -1, 669, -1, -1, -1, + -1, 674, -1, 676, -1, 678, 679, -1, -1, -1, + -1, -1, 685, -1, -1, -1, -1, -1, 691, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 701, -1, + -1, -1, -1, -1, 707, 708, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 723, -1, 725, 726, -1, -1, 729, 730, 4, 5, + -1, -1, -1, -1, -1, 738, -1, -1, -1, 742, + -1, -1, 745, -1, 747, -1, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, 768, -1, 433, 237, -1, + 46, 47, 48, 49, 50, 51, 52, 53, 54, -1, + -1, -1, -1, 59, 60, 61, 62, -1, -1, -1, + -1, 67, 68, 69, -1, -1, 72, -1, 74, -1, + 803, -1, -1, -1, -1, -1, -1, -1, -1, 85, + -1, -1, 88, -1, 480, -1, -1, -1, -1, -1, + -1, 487, 488, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 4, 5, -1, -1, 237, -1, 850, -1, 125, + -1, 517, -1, -1, -1, -1, 522, -1, -1, -1, + -1, -1, 865, -1, -1, -1, -1, -1, -1, 872, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 545, + -1, -1, -1, 46, 47, 48, 49, 50, 51, 52, + 53, 54, -1, 896, -1, -1, 59, 60, 61, 62, + -1, 904, 905, -1, 67, 68, 69, 910, -1, 72, + -1, 74, 578, 579, -1, -1, 192, 193, 194, -1, + -1, -1, 85, 926, -1, 88, 929, 203, -1, -1, + -1, 207, -1, 209, 210, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 948, -1, 950, 951, -1, + -1, -1, -1, -1, 6, -1, -1, -1, 624, 625, + 626, -1, 125, 239, -1, 241, 969, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 987, -1, -1, -1, -1, -1, + -1, 994, 995, 996, 997, -1, -1, -1, -1, 1002, + -1, -1, -1, 669, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 1016, 1017, 1018, 1019, 1020, 1021, -1, + -1, -1, -1, -1, -1, -1, 6, -1, -1, 192, + 193, 194, -1, -1, -1, 701, -1, -1, -1, -1, + 203, -1, -1, -1, 207, -1, 209, 210, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 723, -1, -1, + -1, -1, -1, 729, -1, 6, -1, -1, -1, -1, + -1, -1, -1, 1076, -1, -1, -1, -1, -1, 745, + -1, 747, -1, -1, -1, -1, 1089, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1099, 1100, 1101, -1, + -1, -1, -1, 1106, 1107, -1, 1109, -1, -1, -1, + -1, 6, -1, -1, 1117, -1, 1119, 1120, 1121, 1122, + 1123, -1, -1, -1, -1, -1, -1, 1130, -1, -1, + -1, -1, -1, 1136, 1137, -1, -1, 803, -1, -1, + -1, -1, 1145, -1, -1, 1148, 6, -1, -1, -1, + -1, -1, -1, -1, -1, 1158, -1, 1160, -1, 1162, + -1, 1164, -1, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, 1185, 6, 850, 237, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 865, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1217, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1229, -1, -1, -1, + 896, -1, -1, -1, 1237, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, 1259, 237, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 1273, -1, -1, 1276, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + 1303, -1, -1, -1, -1, -1, -1, 1310, 1311, 1312, + 1313, -1, -1, -1, -1, -1, 1319, -1, 1321, 1322, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, + -1, 1017, 1018, 1019, 1020, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + 1076, 1414, 1415, 1416, 237, -1, -1, -1, -1, -1, + 1423, -1, 1425, -1, -1, -1, -1, -1, -1, 1432, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1445, -1, -1, -1, -1, 1450, -1, -1, + -1, -1, -1, -1, -1, 1458, 1459, 1460, -1, -1, + -1, -1, -1, -1, -1, 1468, -1, -1, -1, -1, + -1, -1, -1, -1, 1477, -1, -1, -1, -1, -1, + -1, -1, 1148, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 1502, + -1, -1, -1, -1, -1, 1508, 1509, 6, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 406, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1539, -1, -1, 6, + -1, -1, -1, -1, 1547, 1548, -1, 13, 14, -1, + -1, 1554, 1555, -1, -1, -1, -1, -1, 1561, -1, + -1, -1, -1, 1229, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1578, 1579, 1580, -1, -1, + -1, -1, -1, 1586, 1587, 1588, 1589, -1, -1, -1, + -1, 6, -1, 1596, -1, -1, -1, -1, -1, -1, + -1, -1, 1605, -1, -1, -1, -1, -1, -1, -1, + -1, 1614, 1615, 1616, -1, 1618, -1, 500, -1, -1, + -1, 1624, 1625, -1, -1, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 103, -1, -1, + 1643, 107, 108, 109, 1647, -1, 112, -1, -1, -1, + -1, -1, 118, 119, -1, 1658, 122, 123, 1661, 125, + 126, -1, 1665, -1, -1, 131, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 558, -1, -1, 144, 1682, + -1, -1, 148, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1695, -1, -1, -1, -1, 1700, 1701, -1, + -1, -1, 168, 169, 170, -1, -1, -1, -1, -1, + -1, -1, 1715, -1, -1, 1718, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, -1, -1, -1, -1, -1, 1750, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, 1771, -1, + 237, -1, -1, -1, -1, -1, -1, 1780, -1, 1445, + -1, -1, -1, -1, -1, -1, 1789, -1, -1, -1, + -1, -1, -1, -1, -1, 1798, 1799, -1, -1, 1802, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, + 1833, 1834, 7, 8, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1847, -1, -1, -1, -1, -1, + -1, 1854, -1, -1, -1, -1, -1, 1860, 1861, 1862, + 1863, 1864, -1, -1, -1, -1, -1, -1, 1871, -1, + -1, -1, -1, 1539, -1, -1, -1, -1, -1, 13, + 14, -1, -1, 1886, -1, -1, -1, -1, -1, -1, + -1, 1894, 775, 776, 777, 778, 779, 780, 781, 782, + 783, 784, 785, -1, 787, 788, 789, 790, -1, 792, + 793, 794, 795, -1, -1, 1918, -1, -1, -1, -1, + -1, 1924, -1, 806, 1927, 808, -1, -1, -1, 7, + -1, -1, 815, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 826, 827, -1, -1, -1, 1614, 1615, + -1, -1, 835, -1, -1, -1, 1959, 91, 92, 93, + 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, + 8, -1, -1, 107, 108, 109, -1, 1643, 112, -1, + -1, 1984, 1985, -1, 118, 119, -1, -1, 122, 123, + -1, 125, 126, 1996, 1997, 1998, 1999, 2000, 2001, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 144, 2014, -1, -1, -1, -1, 2019, 2020, 2021, 2022, + 2023, -1, -1, -1, -1, -1, 2029, -1, -1, -1, + 2033, -1, -1, -1, 168, 169, 170, -1, -1, -1, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + 2063, -1, 237, -1, -1, 2068, 2069, 2070, 2071, 2072, + 2073, -1, 955, 956, 957, -1, -1, -1, 961, 962, + -1, 2084, 965, 966, 967, 968, -1, 970, -1, -1, + -1, -1, 975, -1, -1, -1, -1, -1, -1, -1, + -1, 8, -1, -1, -1, -1, -1, -1, -1, 243, + -1, -1, 2115, 2116, 2117, 2118, 2119, 2120, -1, -1, + -1, -1, -1, 1789, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1802, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 8, -1, -1, -1, 237, + -1, -1, -1, -1, -1, -1, 1049, 1050, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, 1871, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 1886, -1, 3, 4, 5, -1, 7, -1, -1, 10, + 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, -1, -1, + -1, -1, -1, -1, -1, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + 61, 62, 63, -1, -1, -1, 67, 68, 69, -1, + -1, 72, -1, 74, 75, 76, 77, -1, -1, -1, + -1, -1, 83, 84, 85, 86, -1, 88, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 125, -1, -1, -1, -1, -1, + -1, -1, -1, 2019, 2020, 2021, 2022, 2023, -1, -1, + -1, -1, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, 8, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1285, 184, -1, -1, -1, -1, -1, -1, + 191, 192, 193, 194, 195, -1, -1, -1, 2084, 200, + 201, 202, 203, 204, 205, 206, 207, -1, 209, 210, + 211, 212, 213, 214, -1, 13, 14, -1, -1, -1, + 1323, -1, -1, -1, -1, 226, 227, -1, -1, -1, + -1, -1, 233, -1, 235, 236, -1, 238, -1, 240, + -1, -1, -1, 244, 245, -1, -1, -1, -1, -1, + -1, -1, -1, 1356, 1357, 1358, 1359, 1360, -1, -1, + -1, -1, 1365, 1366, -1, 1368, -1, -1, -1, -1, + -1, 1374, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1389, -1, -1, -1, + -1, -1, -1, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 101, 102, 103, -1, -1, -1, 107, + 108, 109, -1, -1, 112, -1, -1, -1, -1, -1, + 118, 119, -1, -1, 122, 123, -1, 125, 126, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 8, 144, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1464, -1, 1466, -1, -1, -1, 1470, -1, 1472, + 168, 169, 170, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, 1504, -1, -1, 3, 4, 5, -1, -1, -1, + -1, 10, 11, 12, -1, -1, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 243, -1, 46, 47, 48, + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, + 59, 60, 61, 62, 63, -1, -1, -1, 67, 68, + 69, -1, -1, 72, -1, 74, 75, 76, 77, -1, + -1, -1, -1, -1, 83, 84, 85, 86, -1, 88, + -1, -1, 91, -1, -1, 94, -1, -1, 97, -1, + 99, -1, -1, -1, -1, -1, -1, 106, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 118, + -1, 120, -1, -1, 123, -1, 125, -1, -1, -1, + -1, -1, -1, 132, 133, 134, 135, 136, -1, -1, + 139, 140, 141, 142, 143, -1, -1, -1, 147, -1, + -1, 150, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 1693, 1694, 191, 192, 193, 194, 195, 196, -1, -1, + -1, 200, 201, 202, 203, 204, 205, 206, 207, 8, + 209, 210, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, + -1, -1, -1, -1, 233, -1, -1, 1740, 1741, 238, + -1, -1, -1, 242, -1, -1, 245, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 3, 4, 5, -1, -1, -1, -1, 10, + 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 1806, 1807, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + 61, 62, 63, -1, -1, -1, 67, 68, 69, -1, + -1, 72, -1, 74, 75, 76, 77, -1, -1, -1, + -1, -1, 83, 84, 85, 86, -1, 88, -1, -1, + 91, -1, -1, 94, -1, -1, 97, -1, 99, -1, + -1, -1, -1, -1, -1, 106, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, + -1, -1, 123, -1, 125, -1, -1, -1, -1, -1, + -1, 132, 133, 134, 135, 136, -1, -1, 139, 140, + 141, 142, 143, -1, -1, -1, 147, -1, -1, 150, + -1, -1, -1, -1, -1, -1, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 191, 192, 193, 194, 195, 196, -1, -1, -1, 200, + 201, 202, 203, 204, 205, 206, 207, -1, 209, 210, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, + -1, -1, 233, -1, -1, -1, -1, 238, 3, 4, + 5, 242, -1, -1, 245, 10, 11, 12, -1, -1, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 55, 56, 57, 58, -1, -1, -1, -1, 63, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 75, 76, 77, -1, -1, 13, 14, -1, 83, 84, + -1, 86, -1, -1, -1, -1, 91, -1, -1, 94, + 2093, -1, 97, -1, 99, -1, -1, -1, -1, -1, + -1, 106, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, + 125, -1, -1, -1, -1, -1, -1, 132, 133, 134, + 135, 136, -1, -1, 139, 140, 141, 142, 143, -1, + -1, -1, 147, -1, -1, 150, -1, -1, -1, -1, + -1, -1, -1, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 101, 102, 103, -1, -1, -1, 107, + 108, 109, -1, -1, 112, -1, -1, -1, -1, -1, + 118, 119, -1, -1, 122, 123, 191, 125, 126, -1, + 195, 196, -1, -1, -1, 200, 201, 202, -1, 204, + 205, 206, -1, -1, -1, 210, 144, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 226, 227, -1, -1, -1, -1, -1, 233, -1, + 168, 169, 170, 238, 3, 4, 5, 242, -1, -1, + 245, 10, 11, 12, -1, -1, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 55, 56, 57, 58, + -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 243, 75, 76, 77, -1, + -1, 13, 14, -1, 83, 84, -1, 86, -1, -1, + -1, -1, 91, -1, -1, 94, -1, -1, 97, -1, + 99, -1, -1, -1, -1, -1, -1, 106, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 118, + -1, 120, -1, -1, 123, -1, 125, -1, -1, -1, + -1, -1, -1, 132, 133, 134, 135, 136, -1, -1, + 139, 140, 141, 142, 143, -1, -1, -1, 147, -1, + -1, 150, -1, -1, -1, -1, -1, -1, -1, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, -1, -1, -1, 107, 108, 109, -1, -1, + 112, -1, -1, -1, -1, -1, 118, 119, -1, -1, + 122, 123, 191, 125, 126, -1, 195, 196, -1, -1, + -1, 200, 201, 202, -1, 204, 205, 206, -1, -1, + -1, 210, 144, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, + -1, -1, -1, -1, 233, -1, 168, 169, 170, 238, + 3, 4, -1, 242, -1, -1, 245, 10, 11, 12, + -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 55, 56, 57, 58, -1, -1, -1, -1, + 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 243, 75, 76, 77, -1, -1, 13, 14, -1, + 83, 84, -1, 86, -1, -1, -1, -1, 91, -1, + -1, 94, -1, -1, 97, -1, 99, -1, -1, -1, + -1, -1, -1, 106, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, + 123, -1, 125, -1, -1, -1, -1, -1, -1, 132, + 133, 134, 135, 136, -1, -1, 139, 140, 141, 142, + 143, -1, -1, -1, 147, -1, -1, 150, -1, -1, + -1, -1, -1, -1, -1, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 103, -1, -1, + -1, 107, 108, 109, -1, -1, 112, -1, -1, -1, + -1, -1, 118, 119, -1, -1, 122, 123, 191, 125, + 126, -1, 195, 196, -1, -1, -1, 200, 201, 202, + -1, 204, 205, 206, -1, -1, -1, 210, 144, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 226, 227, -1, -1, -1, -1, -1, + 233, -1, 168, 169, 170, 238, 3, 4, -1, 242, + 243, -1, 245, 10, 11, 12, -1, -1, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 55, 56, + 57, 58, -1, -1, -1, -1, 63, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 243, 75, 76, + 77, -1, -1, 13, 14, -1, 83, 84, -1, 86, + -1, -1, -1, -1, 91, -1, -1, 94, -1, -1, + 97, -1, 99, -1, -1, -1, -1, -1, -1, 106, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 118, -1, 120, -1, -1, 123, -1, 125, -1, + -1, -1, -1, -1, -1, 132, 133, 134, 135, 136, + -1, -1, 139, 140, 141, 142, 143, -1, -1, -1, + 147, -1, -1, 150, -1, -1, -1, -1, -1, -1, + -1, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 103, -1, -1, -1, 107, 108, 109, + -1, -1, 112, -1, -1, -1, -1, -1, 118, 119, + -1, -1, 122, 123, 191, 125, 126, -1, 195, 196, + -1, -1, -1, 200, 201, 202, -1, 204, 205, 206, + -1, -1, -1, 210, 144, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, + 227, -1, -1, -1, -1, -1, 233, -1, 168, 169, + 170, 238, 3, 4, -1, 242, -1, -1, 245, 10, + 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 55, 56, 57, 58, -1, -1, + -1, -1, 63, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 243, 75, 76, 77, -1, -1, 13, + 14, -1, 83, 84, -1, 86, -1, -1, -1, -1, + 91, -1, -1, 94, -1, -1, 97, -1, 99, -1, + -1, -1, -1, -1, -1, 106, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, + -1, -1, 123, -1, 125, -1, -1, -1, -1, -1, + -1, 132, 133, 134, 135, 136, -1, -1, 139, 140, + 141, 142, 143, -1, -1, -1, 147, -1, -1, 150, + -1, -1, -1, -1, -1, -1, -1, 91, 92, 93, + 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, + -1, -1, -1, 107, 108, 109, -1, -1, 112, -1, + -1, -1, -1, -1, 118, 119, -1, -1, 122, 123, + 191, 125, 126, -1, 195, 196, -1, -1, -1, 200, + 201, 202, -1, 204, 205, 206, -1, -1, -1, 210, + 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, + -1, -1, 233, -1, 168, 169, 170, 238, 3, 4, + -1, 242, -1, -1, 245, 10, 11, 12, -1, -1, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 55, 56, 57, 58, -1, -1, -1, -1, 63, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 243, + 75, 76, 77, -1, -1, 13, 14, -1, 83, 84, + -1, 86, -1, -1, -1, -1, 91, -1, -1, 94, + -1, -1, 97, -1, 99, -1, -1, -1, -1, -1, + -1, 106, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, + 125, -1, -1, -1, -1, -1, -1, 132, 133, 134, + 135, 136, -1, -1, 139, 140, 141, 142, 143, -1, + -1, -1, 147, -1, -1, 150, -1, -1, -1, -1, + -1, -1, -1, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 101, 102, 103, -1, -1, -1, 107, + 108, 109, -1, -1, 112, -1, -1, -1, -1, -1, + 118, 119, -1, -1, 122, 123, 191, 125, 126, -1, + 195, 196, -1, -1, -1, 200, 201, 202, -1, 204, + 205, 206, -1, -1, -1, 210, 144, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 226, 227, -1, -1, -1, -1, -1, 233, -1, + 168, 169, 170, 238, 3, 4, -1, 242, -1, -1, + 245, 10, 11, 12, -1, -1, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 55, 56, 57, 58, + -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 243, 75, 76, 77, -1, + -1, 13, 14, -1, 83, 84, -1, 86, -1, -1, + -1, -1, 91, -1, -1, 94, -1, -1, 97, -1, + 99, -1, -1, -1, -1, -1, -1, 106, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 118, + -1, 120, -1, -1, 123, -1, 125, -1, -1, -1, + -1, -1, -1, 132, 133, 134, 135, 136, -1, -1, + 139, 140, 141, 142, 143, -1, -1, -1, 147, -1, + -1, 150, -1, -1, -1, -1, -1, -1, -1, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, -1, -1, -1, 107, 108, 109, -1, -1, + 112, -1, -1, -1, -1, -1, 118, 119, -1, -1, + 122, 123, 191, 125, 126, -1, 195, 196, -1, -1, + -1, 200, 201, 202, -1, 204, 205, 206, -1, -1, + -1, 210, 144, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, + -1, -1, -1, -1, 233, -1, 168, 169, 170, 238, + 3, 4, -1, -1, 243, -1, 245, 10, 11, 12, + -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 55, 56, 57, 58, -1, -1, -1, -1, + 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 243, 75, 76, 77, -1, -1, 13, 14, -1, + 83, 84, -1, 86, -1, -1, -1, -1, 91, -1, + -1, 94, -1, -1, 97, -1, 99, -1, -1, -1, + -1, -1, -1, 106, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, + 123, -1, 125, -1, -1, -1, -1, -1, -1, 132, + 133, 134, 135, 136, -1, -1, 139, 140, 141, 142, + 143, -1, -1, -1, 147, -1, -1, 150, -1, -1, + -1, -1, -1, -1, -1, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 103, -1, -1, + -1, 107, 108, 109, -1, -1, 112, -1, -1, -1, + -1, -1, 118, 119, -1, -1, 122, 123, 191, 125, + 126, -1, 195, 196, -1, -1, -1, 200, 201, 202, + -1, 204, 205, 206, -1, -1, -1, 210, 144, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 226, 227, -1, -1, -1, -1, -1, + 233, -1, 168, 169, 170, 238, 3, 4, -1, 242, + -1, -1, 245, 10, 11, 12, -1, -1, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 55, 56, + 57, 58, -1, -1, -1, -1, 63, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 243, 75, 76, + 77, -1, -1, 13, 14, -1, 83, 84, -1, 86, + -1, -1, -1, -1, 91, -1, -1, 94, -1, -1, + 97, -1, 99, -1, -1, -1, -1, -1, -1, 106, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 118, -1, 120, -1, -1, 123, -1, 125, -1, + -1, -1, -1, -1, -1, 132, 133, 134, 135, 136, + -1, -1, 139, 140, 141, 142, 143, -1, -1, -1, + 147, -1, -1, 150, -1, -1, -1, -1, -1, -1, + -1, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 103, -1, -1, -1, 107, 108, 109, + -1, -1, 112, -1, -1, -1, -1, -1, 118, 119, + -1, -1, 122, 123, 191, 125, 126, -1, 195, 196, + -1, -1, -1, 200, 201, 202, -1, 204, 205, 206, + -1, -1, -1, 210, 144, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, + 227, -1, -1, -1, -1, -1, 233, -1, 168, 169, + 170, 238, 3, 4, -1, 242, -1, -1, 245, 10, + 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 55, 56, 57, 58, -1, -1, + -1, -1, 63, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 243, 75, 76, 77, -1, -1, 13, + 14, -1, 83, 84, -1, 86, -1, -1, -1, -1, + 91, -1, -1, 94, -1, -1, 97, -1, 99, -1, + -1, -1, -1, -1, -1, 106, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, + -1, -1, 123, -1, 125, -1, -1, -1, -1, -1, + -1, 132, 133, 134, 135, 136, -1, -1, 139, 140, + 141, 142, 143, -1, -1, -1, 147, -1, -1, 150, + -1, -1, -1, -1, -1, -1, -1, 91, 92, 93, + 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, + -1, -1, -1, 107, 108, 109, -1, -1, 112, -1, + -1, -1, -1, -1, 118, 119, -1, -1, 122, 123, + 191, 125, 126, -1, 195, 196, -1, -1, -1, 200, + 201, 202, -1, 204, 205, 206, -1, -1, -1, 210, + 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, + -1, -1, 233, -1, 168, 169, 170, 238, 3, 4, + -1, 242, -1, -1, 245, 10, 11, 12, -1, -1, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 55, 56, 57, 58, -1, -1, -1, -1, 63, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 243, + 75, 76, 77, -1, -1, 13, 14, -1, 83, 84, + -1, 86, -1, -1, -1, -1, 91, -1, -1, 94, + -1, -1, 97, -1, 99, -1, -1, -1, -1, -1, + -1, 106, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, + 125, -1, -1, -1, -1, -1, -1, 132, 133, 134, + 135, 136, -1, -1, 139, 140, 141, 142, 143, -1, + -1, -1, 147, -1, -1, 150, -1, -1, -1, -1, + -1, -1, -1, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 101, 102, 103, -1, -1, -1, 107, + 108, 109, -1, -1, 112, -1, -1, -1, -1, -1, + 118, 119, -1, -1, 122, 123, 191, 125, 126, -1, + 195, 196, -1, -1, -1, 200, 201, 202, -1, 204, + 205, 206, -1, -1, -1, 210, 144, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 226, 227, -1, -1, -1, -1, -1, 233, -1, + 168, 169, 170, 238, 3, 4, -1, 242, -1, -1, + 245, 10, 11, 12, -1, -1, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 55, 56, 57, 58, + -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 243, 75, 76, 77, -1, + -1, 13, 14, -1, 83, 84, -1, 86, -1, -1, + -1, -1, 91, -1, -1, 94, -1, -1, 97, -1, + 99, -1, -1, -1, -1, -1, -1, 106, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 118, + -1, 120, -1, -1, 123, -1, 125, -1, -1, -1, + -1, -1, -1, 132, 133, 134, 135, 136, -1, -1, + 139, 140, 141, 142, 143, -1, -1, -1, 147, -1, + -1, 150, -1, -1, -1, -1, -1, -1, -1, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, -1, -1, -1, 107, 108, 109, -1, -1, + 112, -1, -1, -1, -1, -1, 118, 119, -1, -1, + 122, 123, 191, 125, 126, -1, 195, 196, -1, -1, + -1, 200, 201, 202, -1, 204, 205, 206, -1, -1, + -1, 210, 144, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, + -1, -1, -1, -1, 233, -1, 168, 169, 170, 238, + 3, 4, 5, 242, -1, -1, 245, 10, 11, 12, + -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, -1, -1, -1, -1, + -1, -1, -1, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, + 63, -1, -1, -1, 67, 68, 69, -1, -1, 72, + -1, 74, 75, 76, 77, -1, -1, -1, -1, -1, + 83, 84, 85, 86, -1, 88, -1, -1, -1, -1, + -1, -1, -1, -1, 4, 5, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + 239, -1, 241, -1, -1, -1, -1, -1, 247, -1, + -1, -1, -1, -1, -1, -1, 46, 47, 48, 49, + 50, 51, 52, 53, 54, -1, -1, -1, -1, 59, + 60, 61, 62, -1, -1, -1, -1, 67, 68, 69, + -1, -1, 72, -1, 74, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 85, -1, -1, 88, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 191, 192, + 193, 194, 195, -1, -1, -1, -1, 200, 201, 202, + 203, 204, 205, 206, 207, -1, 209, 210, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 226, 227, -1, -1, -1, -1, -1, + 233, -1, -1, -1, -1, 238, 3, 4, -1, 242, + -1, -1, 245, 10, 11, 12, -1, -1, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, -1, -1, -1, + -1, -1, 192, 193, 194, -1, -1, -1, 55, 56, + 57, 58, -1, 203, -1, -1, 63, 207, -1, 209, + 210, -1, -1, -1, -1, -1, -1, -1, 75, 76, + 77, -1, -1, -1, -1, -1, 83, 84, -1, 86, + -1, -1, -1, -1, 91, -1, -1, 94, -1, -1, + 97, -1, 99, -1, -1, -1, -1, -1, -1, 106, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 118, -1, 120, -1, -1, 123, -1, 125, -1, + -1, -1, -1, -1, -1, 132, 133, 134, 135, 136, + -1, -1, 139, 140, 141, 142, 143, -1, -1, -1, + 147, -1, -1, 150, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, -1, + -1, -1, -1, -1, -1, -1, 247, -1, -1, -1, + -1, -1, -1, -1, 191, -1, -1, -1, 195, 196, + -1, -1, -1, 200, 201, 202, -1, 204, 205, 206, + -1, -1, -1, 210, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, + 227, -1, -1, -1, -1, -1, 233, -1, -1, -1, + -1, 238, 3, 4, 5, 242, -1, -1, 245, 10, + 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, -1, -1, + -1, -1, -1, -1, -1, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + 61, 62, 63, -1, -1, -1, 67, 68, 69, -1, + -1, 72, -1, 74, 75, 76, 77, -1, -1, -1, + -1, -1, 83, 84, 85, 86, -1, 88, 3, 4, + 5, -1, -1, -1, -1, 10, 11, 12, -1, -1, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, -1, -1, -1, -1, -1, -1, + -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, -1, + -1, -1, 67, 68, 69, -1, -1, 72, -1, 74, + 75, 76, 77, -1, -1, -1, -1, -1, 83, 84, + 85, 86, -1, 88, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 191, 192, 193, 194, 195, -1, -1, -1, -1, 200, + 201, 202, 203, 204, 205, 206, 207, -1, 209, 210, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, + -1, -1, 233, -1, -1, -1, -1, 238, -1, -1, + -1, 242, -1, -1, 245, -1, -1, -1, -1, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, -1, 191, 192, 193, 194, + 195, 247, -1, -1, -1, 200, 201, 202, 203, 204, + 205, 206, 207, -1, 209, 210, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 226, 227, -1, -1, -1, -1, -1, 233, -1, + -1, -1, -1, 238, 3, 4, -1, 242, -1, -1, + 245, 10, 11, 12, -1, -1, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 55, 56, 57, 58, + -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 75, 76, 77, -1, + -1, -1, -1, -1, 83, 84, -1, 86, -1, -1, + -1, -1, 91, -1, -1, 94, -1, -1, 97, -1, + 99, -1, -1, -1, -1, -1, -1, 106, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 118, + -1, 120, -1, -1, 123, -1, 125, -1, -1, -1, + -1, -1, -1, 132, 133, 134, 135, 136, -1, -1, + 139, 140, 141, 142, 143, -1, -1, -1, 147, -1, + -1, 150, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + 243, -1, -1, -1, 247, -1, -1, -1, -1, -1, + -1, -1, 191, -1, -1, -1, 195, 196, -1, -1, + -1, 200, 201, 202, -1, 204, 205, 206, -1, -1, + -1, 210, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, + -1, -1, -1, -1, 233, -1, -1, -1, -1, 238, + 3, 4, -1, 242, -1, -1, 245, 10, 11, 12, + -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 55, 56, 57, 58, -1, -1, -1, -1, + 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 75, 76, 77, -1, -1, -1, -1, -1, + 83, 84, -1, 86, -1, -1, -1, -1, 91, -1, + -1, 94, -1, -1, 97, -1, 99, -1, -1, -1, + -1, -1, -1, 106, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, + 123, -1, 125, -1, -1, -1, -1, -1, -1, 132, + 133, 134, 135, 136, -1, -1, 139, 140, 141, 142, + 143, -1, -1, -1, 147, -1, -1, 150, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, -1, -1, 243, -1, -1, -1, + 247, -1, -1, -1, -1, -1, -1, -1, 191, -1, + -1, -1, 195, 196, -1, -1, -1, 200, 201, 202, + -1, 204, 205, 206, -1, -1, -1, 210, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 226, 227, -1, -1, -1, -1, -1, + 233, 3, 4, 5, -1, 238, -1, -1, 10, 11, + 12, -1, 245, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, -1, -1, -1, + -1, -1, -1, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, -1, -1, -1, 67, 68, 69, -1, -1, + 72, -1, 74, 75, 76, 77, -1, -1, -1, -1, + -1, 83, 84, 85, 86, -1, 88, 3, 4, -1, + -1, -1, -1, -1, 10, 11, 12, -1, -1, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 55, + 56, 57, 58, -1, -1, -1, -1, 63, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 75, + 76, 77, -1, -1, -1, -1, -1, 83, 84, -1, + 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 191, + 192, 193, 194, 195, -1, -1, -1, -1, 200, 201, + 202, 203, 204, 205, 206, 207, -1, 209, 210, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 226, 227, -1, -1, -1, -1, + -1, 233, -1, -1, -1, -1, 238, -1, -1, -1, + -1, -1, -1, 245, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + -1, -1, 243, -1, -1, 191, 247, -1, -1, 195, + -1, -1, -1, -1, 200, 201, 202, -1, 204, 205, + 206, -1, -1, -1, 210, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 226, 227, -1, -1, -1, -1, -1, 233, -1, -1, + -1, -1, 238, -1, 3, 4, 242, 6, -1, 245, + -1, 10, 11, 12, -1, -1, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 55, 56, 57, 58, + -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 75, 76, 77, -1, + -1, -1, -1, -1, 83, 84, -1, 86, 3, 4, + -1, 6, -1, -1, -1, 10, 11, 12, -1, -1, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 55, 56, 57, 58, -1, -1, -1, -1, 63, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 75, 76, 77, -1, -1, -1, -1, -1, 83, 84, + -1, 86, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, 191, -1, 237, -1, 195, -1, -1, -1, + -1, 200, 201, 202, 247, 204, 205, 206, -1, -1, + -1, 210, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, + -1, -1, -1, -1, 233, -1, -1, -1, -1, 238, + -1, -1, -1, -1, -1, -1, 245, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, -1, 191, -1, -1, 247, + 195, -1, -1, -1, -1, 200, 201, 202, -1, 204, + 205, 206, -1, -1, -1, 210, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 226, 227, -1, -1, -1, -1, -1, 233, 3, + 4, -1, 6, 238, -1, -1, 10, 11, 12, -1, + 245, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 55, 56, 57, 58, -1, -1, -1, -1, 63, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 75, 76, 77, -1, -1, 3, 4, -1, 83, + 84, -1, 86, 10, 11, 12, -1, -1, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 55, 56, + 57, 58, -1, -1, -1, -1, 63, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 75, 76, + 77, -1, -1, -1, -1, -1, 83, 84, -1, 86, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, 191, -1, -1, + -1, 195, 247, -1, -1, -1, 200, 201, 202, -1, + 204, 205, 206, -1, -1, -1, 210, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 226, 227, -1, -1, -1, -1, -1, 233, + -1, -1, -1, -1, 238, -1, -1, -1, -1, -1, + -1, 245, -1, 0, 1, -1, -1, 4, -1, -1, + -1, -1, -1, -1, -1, -1, 13, 14, -1, -1, + -1, -1, -1, -1, 191, -1, -1, -1, 195, -1, + -1, -1, -1, 200, 201, 202, -1, 204, 205, 206, + -1, -1, -1, 210, -1, -1, -1, 44, 45, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, + 227, -1, -1, -1, -1, -1, 233, 64, 65, 66, + -1, 238, -1, 70, 71, -1, 73, -1, 245, -1, + -1, 78, 79, -1, 81, 82, -1, 84, -1, -1, + -1, -1, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, -1, -1, 106, + 107, 108, 109, 110, -1, 112, -1, 114, 115, 116, + 117, 118, 119, 120, -1, 122, 123, 124, 125, 126, + 127, -1, 129, 130, 131, 132, 133, 134, 135, 136, + 137, -1, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, -1, 4, -1, 156, + 157, 158, -1, -1, -1, 162, 13, 14, -1, -1, + 167, 168, 169, 170, -1, -1, 173, -1, 175, -1, + 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, -1, -1, -1, 44, 45, -1, + 197, 198, 199, -1, -1, -1, -1, -1, -1, -1, + -1, 208, -1, 210, -1, -1, -1, 64, 65, 66, + -1, -1, -1, 70, 71, -1, 73, -1, -1, -1, + -1, 78, 79, -1, 81, 82, -1, 84, -1, -1, + -1, -1, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, -1, -1, 106, + 107, 108, 109, 110, -1, 112, -1, 114, 115, 116, + 117, 118, 119, 120, -1, 122, 123, 124, 125, 126, + 127, -1, 129, 130, 131, 132, 133, 134, 135, 136, + 137, -1, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, -1, -1, -1, 156, + 157, 158, -1, -1, -1, 162, -1, -1, -1, -1, + 167, 168, 169, 170, 4, 5, 173, -1, 175, -1, + 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, + 187, 188, 189, 190, -1, -1, -1, -1, -1, -1, + 197, 198, 199, -1, -1, 5, -1, -1, -1, -1, + -1, 208, -1, 210, -1, -1, 46, 47, 48, 49, + 50, 51, 52, 53, 54, -1, -1, -1, -1, 59, + 60, 61, 62, -1, -1, -1, -1, 67, 68, 69, + -1, -1, 72, -1, 74, -1, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 85, -1, -1, 88, 59, + 60, 61, 62, -1, -1, -1, -1, 67, 68, 69, + -1, -1, 72, -1, 74, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 85, -1, -1, 88, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 247, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 247, -1, -1, -1, -1, -1, + -1, -1, 192, 193, 194, -1, -1, -1, -1, -1, + -1, -1, -1, 203, -1, -1, -1, 207, -1, 209, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 192, 193, 194, -1, -1, -1, -1, -1, + -1, -1, -1, 203, -1, -1, -1, 207, -1, 209, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 247, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 247, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 247, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 247, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 247, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 247, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 247, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, + -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 247, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 247, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 247, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 247, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 247, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 247, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 247, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 247, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 247, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 247, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, + -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 247, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 247, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 247, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 247, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 247, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 247, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 247, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 247, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 247, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 247, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, + -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 247, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 247, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 247, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 247, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 247, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 247, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 247, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 247, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 247, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 247, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, + -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 247, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 247, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 247, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 247, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 247, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 247, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 247, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 247, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 247, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, -1, -1, 243, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, 243, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, -1, -1, 243, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, 243, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + -1, -1, 243, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, 243, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + 243, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, + -1, -1, -1, 237, -1, -1, -1, -1, -1, 243, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, 243, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, -1, -1, 243, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, -1, -1, 243, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, 243, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, -1, -1, 243, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, 243, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + -1, -1, 243, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, 243, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + 243, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, + -1, -1, -1, 237, -1, -1, -1, -1, -1, 243, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, 243, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, -1, -1, 243, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, -1, -1, 243, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, 243, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, -1, -1, 243, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, 243, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + -1, -1, 243, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, 243, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + 243, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, + -1, -1, -1, 237, -1, -1, -1, -1, -1, 243, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, 243, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, -1, -1, 243, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, -1, -1, 243, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, 243, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, -1, -1, 243, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, 242, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, + 242, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, + -1, -1, -1, 237, -1, -1, -1, -1, 242, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, -1, 241, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, 241, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, 241, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, 241, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, 241, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + 241, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, + -1, -1, -1, 237, -1, -1, -1, 241, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, 241, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, 241, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, 241, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, 241, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, 241, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, 241, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, 241, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, 241, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237 +}; + +/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing + symbol of state STATE-NUM. */ +static const yytype_uint16 yystos[] = +{ + 0, 1, 249, 250, 6, 0, 4, 13, 14, 44, + 45, 64, 65, 66, 70, 71, 73, 78, 79, 81, + 82, 84, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 106, 107, 108, + 109, 110, 112, 114, 115, 116, 117, 118, 119, 120, + 122, 123, 124, 125, 126, 127, 129, 130, 131, 132, + 133, 134, 135, 136, 137, 139, 140, 141, 142, 143, + 144, 145, 146, 147, 148, 149, 150, 151, 152, 156, + 157, 158, 162, 167, 168, 169, 170, 173, 175, 177, + 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, 197, 198, 199, 208, 210, 251, 253, + 254, 274, 295, 296, 299, 300, 301, 302, 303, 304, + 305, 306, 307, 314, 316, 317, 323, 324, 325, 326, + 332, 353, 354, 242, 246, 14, 97, 238, 238, 6, + 242, 6, 6, 6, 6, 238, 6, 6, 240, 240, + 4, 334, 354, 238, 240, 272, 272, 238, 242, 238, + 238, 4, 238, 242, 238, 238, 4, 238, 242, 238, + 238, 238, 238, 238, 238, 238, 238, 238, 238, 111, + 97, 6, 242, 91, 94, 97, 238, 3, 10, 11, + 12, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, + 55, 56, 57, 58, 63, 75, 76, 77, 83, 86, + 91, 94, 97, 99, 118, 123, 125, 191, 195, 196, + 200, 201, 202, 204, 205, 206, 226, 227, 233, 238, + 242, 245, 296, 307, 314, 316, 327, 328, 332, 334, + 341, 343, 354, 238, 242, 97, 97, 118, 94, 97, + 99, 91, 94, 97, 99, 94, 97, 99, 94, 97, + 238, 94, 148, 173, 189, 190, 242, 226, 227, 238, + 242, 338, 339, 338, 242, 242, 338, 4, 91, 95, + 101, 102, 104, 105, 122, 238, 97, 99, 97, 94, + 4, 84, 184, 242, 354, 4, 6, 91, 94, 97, + 94, 97, 4, 4, 4, 5, 238, 341, 342, 4, + 238, 238, 238, 4, 242, 345, 354, 4, 238, 238, + 238, 6, 6, 240, 5, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 59, 60, 61, 62, 67, 68, + 69, 72, 74, 85, 88, 192, 193, 194, 203, 207, + 209, 349, 354, 238, 4, 349, 5, 242, 5, 242, + 32, 227, 327, 354, 240, 238, 242, 6, 238, 242, + 6, 246, 7, 125, 184, 211, 212, 213, 214, 235, + 236, 238, 240, 244, 270, 271, 272, 327, 348, 349, + 354, 4, 296, 297, 298, 242, 6, 327, 348, 349, + 354, 348, 327, 348, 352, 276, 280, 238, 337, 9, + 349, 354, 327, 227, 327, 343, 344, 327, 327, 238, + 327, 344, 327, 327, 238, 327, 344, 327, 327, 327, + 327, 327, 327, 348, 327, 327, 327, 341, 238, 344, + 342, 342, 342, 348, 272, 272, 272, 272, 272, 272, + 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, + 272, 272, 272, 272, 272, 272, 272, 238, 240, 272, + 272, 272, 272, 272, 272, 238, 272, 272, 238, 272, + 272, 5, 176, 242, 5, 176, 5, 176, 5, 176, + 118, 91, 94, 97, 99, 238, 272, 272, 238, 238, + 238, 327, 242, 327, 343, 327, 327, 243, 344, 334, + 354, 8, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + 237, 238, 240, 9, 238, 240, 244, 271, 272, 327, + 344, 238, 238, 238, 341, 342, 342, 342, 238, 238, + 238, 238, 238, 341, 238, 341, 238, 341, 242, 242, + 327, 4, 341, 242, 345, 242, 242, 338, 338, 338, + 327, 327, 226, 227, 242, 242, 338, 226, 227, 238, + 298, 338, 242, 238, 242, 238, 238, 238, 238, 238, + 238, 238, 327, 342, 342, 342, 238, 4, 240, 6, + 240, 298, 6, 6, 242, 242, 242, 342, 342, 240, + 240, 240, 327, 6, 6, 327, 327, 327, 244, 327, + 242, 176, 327, 327, 327, 327, 272, 272, 272, 238, + 238, 238, 272, 272, 272, 272, 272, 272, 272, 272, + 272, 272, 238, 238, 272, 238, 240, 6, 6, 242, + 6, 298, 6, 298, 272, 327, 228, 242, 238, 240, + 348, 327, 298, 341, 341, 242, 349, 91, 94, 97, + 99, 7, 327, 327, 4, 173, 174, 341, 6, 239, + 241, 242, 273, 6, 242, 6, 9, 238, 240, 244, + 354, 243, 91, 94, 97, 99, 118, 123, 126, 295, + 327, 6, 239, 247, 9, 238, 240, 244, 239, 247, + 247, 239, 247, 241, 247, 275, 241, 275, 87, 336, + 333, 354, 247, 247, 239, 228, 243, 247, 239, 239, + 327, 239, 243, 239, 239, 327, 239, 243, 239, 239, + 239, 239, 239, 239, 239, 239, 239, 239, 7, 327, + 243, 6, 6, 6, 239, 327, 327, 327, 327, 327, + 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, + 327, 327, 343, 327, 327, 327, 327, 327, 327, 327, + 343, 343, 354, 242, 327, 327, 348, 327, 348, 341, + 348, 348, 352, 327, 273, 354, 64, 327, 64, 64, + 64, 342, 342, 342, 342, 348, 348, 343, 334, 349, + 334, 344, 239, 243, 244, 272, 327, 327, 327, 327, + 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, + 242, 327, 343, 327, 327, 327, 327, 327, 327, 327, + 354, 327, 327, 4, 335, 242, 273, 239, 243, 327, + 327, 327, 7, 7, 320, 320, 289, 327, 349, 290, + 327, 349, 291, 327, 349, 292, 327, 349, 327, 6, + 327, 6, 327, 6, 344, 344, 242, 239, 6, 298, + 242, 298, 298, 247, 247, 247, 338, 338, 297, 297, + 247, 327, 243, 311, 247, 298, 327, 327, 327, 327, + 327, 327, 327, 327, 327, 239, 7, 321, 6, 7, + 327, 6, 327, 327, 243, 344, 344, 344, 6, 6, + 327, 327, 327, 239, 239, 239, 239, 173, 247, 298, + 242, 8, 239, 239, 241, 352, 348, 352, 348, 348, + 348, 348, 348, 348, 327, 348, 348, 348, 348, 245, + 351, 354, 349, 348, 348, 348, 334, 354, 344, 243, + 243, 327, 327, 298, 241, 239, 131, 148, 315, 239, + 243, 247, 327, 6, 242, 242, 242, 242, 327, 239, + 241, 7, 270, 271, 244, 7, 6, 344, 7, 214, + 270, 255, 354, 327, 327, 335, 240, 242, 242, 242, + 242, 238, 118, 94, 97, 99, 243, 6, 221, 222, + 252, 344, 354, 327, 327, 4, 335, 6, 344, 327, + 6, 348, 6, 354, 6, 348, 327, 239, 240, 327, + 349, 7, 176, 327, 343, 7, 7, 239, 7, 176, + 7, 7, 239, 7, 176, 7, 7, 7, 7, 7, + 7, 7, 7, 7, 327, 239, 242, 6, 273, 273, + 273, 273, 273, 273, 273, 273, 273, 273, 273, 247, + 273, 273, 273, 273, 273, 273, 273, 273, 273, 247, + 247, 247, 239, 241, 241, 344, 247, 247, 273, 247, + 273, 247, 247, 247, 239, 329, 273, 242, 243, 242, + 242, 242, 247, 247, 273, 273, 239, 244, 239, 244, + 247, 330, 243, 7, 335, 273, 8, 8, 344, 239, + 241, 244, 239, 241, 271, 238, 344, 7, 242, 239, + 239, 239, 327, 341, 4, 319, 6, 239, 247, 239, + 247, 239, 247, 239, 247, 239, 239, 239, 243, 243, + 344, 244, 243, 298, 243, 243, 338, 327, 327, 243, + 243, 327, 338, 128, 128, 145, 153, 154, 155, 159, + 160, 312, 313, 338, 243, 308, 239, 243, 239, 239, + 239, 239, 239, 239, 239, 7, 327, 6, 327, 239, + 241, 241, 243, 243, 243, 241, 241, 247, 7, 7, + 7, 244, 327, 243, 327, 327, 7, 244, 273, 247, + 273, 273, 239, 239, 247, 273, 273, 247, 247, 273, + 273, 273, 273, 327, 273, 9, 350, 247, 239, 247, + 273, 244, 247, 331, 241, 243, 243, 246, 7, 148, + 6, 327, 243, 242, 6, 341, 243, 327, 327, 327, + 327, 6, 7, 270, 271, 244, 270, 271, 349, 327, + 6, 4, 242, 346, 354, 243, 46, 46, 341, 4, + 163, 164, 165, 166, 243, 258, 262, 265, 267, 268, + 244, 239, 241, 238, 327, 344, 344, 344, 344, 327, + 238, 238, 238, 238, 348, 239, 244, 239, 241, 238, + 239, 247, 7, 272, 4, 283, 284, 285, 273, 273, + 338, 97, 99, 341, 341, 7, 341, 97, 99, 341, + 341, 7, 341, 99, 341, 341, 341, 341, 341, 341, + 341, 341, 341, 6, 7, 344, 327, 327, 327, 327, + 243, 327, 327, 327, 341, 348, 348, 247, 282, 327, + 327, 327, 327, 327, 327, 335, 335, 327, 239, 341, + 238, 327, 327, 243, 335, 271, 244, 271, 327, 243, + 341, 344, 7, 7, 7, 128, 318, 6, 270, 327, + 270, 327, 270, 327, 270, 327, 7, 7, 7, 7, + 7, 243, 4, 243, 247, 247, 247, 243, 243, 109, + 4, 6, 327, 242, 6, 238, 6, 161, 6, 161, + 243, 313, 247, 312, 7, 6, 7, 7, 7, 7, + 7, 7, 7, 341, 6, 242, 6, 6, 6, 97, + 7, 6, 6, 327, 341, 341, 341, 4, 247, 8, + 8, 239, 4, 4, 344, 348, 327, 348, 245, 247, + 286, 348, 348, 335, 348, 239, 247, 242, 242, 6, + 327, 6, 242, 341, 243, 243, 243, 243, 243, 327, + 6, 4, 173, 174, 327, 6, 6, 6, 7, 345, + 347, 6, 240, 273, 272, 272, 6, 259, 238, 238, + 242, 269, 6, 335, 244, 348, 327, 241, 243, 243, + 243, 243, 239, 327, 327, 327, 327, 6, 6, 252, + 335, 244, 327, 6, 327, 242, 327, 349, 273, 242, + 341, 349, 241, 247, 6, 6, 6, 242, 242, 122, + 294, 294, 341, 6, 242, 242, 6, 6, 341, 176, + 293, 242, 6, 6, 6, 6, 6, 6, 6, 6, + 6, 5, 243, 273, 273, 273, 273, 273, 247, 247, + 247, 239, 273, 273, 284, 273, 247, 247, 247, 247, + 239, 273, 239, 330, 6, 239, 238, 4, 239, 273, + 6, 243, 341, 341, 341, 4, 6, 341, 341, 341, + 341, 341, 341, 341, 242, 242, 7, 6, 7, 327, + 327, 327, 242, 242, 242, 240, 6, 327, 341, 327, + 6, 6, 327, 338, 243, 5, 341, 242, 242, 242, + 242, 242, 242, 242, 341, 6, 344, 242, 327, 241, + 6, 6, 172, 327, 327, 327, 6, 6, 7, 273, + 247, 247, 273, 247, 327, 4, 188, 287, 288, 273, + 239, 273, 331, 349, 327, 298, 6, 298, 247, 6, + 6, 7, 270, 271, 244, 7, 6, 345, 243, 247, + 327, 270, 273, 352, 352, 238, 327, 327, 340, 341, + 242, 238, 4, 6, 239, 6, 6, 6, 6, 6, + 239, 239, 239, 239, 348, 238, 4, 239, 247, 341, + 349, 7, 281, 327, 343, 285, 327, 327, 338, 6, + 6, 6, 327, 327, 6, 95, 6, 327, 5, 242, + 327, 327, 327, 327, 327, 327, 327, 239, 327, 271, + 242, 6, 293, 6, 327, 6, 6, 6, 6, 6, + 4, 6, 6, 344, 344, 327, 327, 349, 243, 239, + 243, 247, 297, 297, 327, 327, 243, 247, 239, 243, + 247, 6, 6, 340, 338, 338, 338, 338, 338, 227, + 338, 6, 243, 327, 6, 6, 341, 243, 247, 8, + 243, 239, 242, 327, 349, 348, 327, 348, 242, 327, + 349, 349, 247, 239, 247, 243, 315, 315, 341, 349, + 327, 6, 4, 346, 6, 345, 241, 341, 6, 273, + 273, 256, 327, 247, 247, 243, 247, 257, 327, 327, + 6, 327, 327, 277, 279, 242, 243, 247, 7, 7, + 243, 243, 243, 243, 242, 243, 5, 340, 273, 273, + 247, 247, 247, 247, 247, 239, 327, 6, 242, 243, + 243, 242, 6, 6, 242, 327, 243, 243, 243, 241, + 6, 341, 7, 242, 327, 243, 247, 247, 247, 247, + 247, 247, 6, 243, 171, 327, 327, 344, 6, 6, + 239, 273, 273, 352, 288, 349, 243, 243, 243, 6, + 6, 7, 6, 244, 6, 6, 6, 239, 247, 327, + 327, 242, 341, 243, 247, 239, 239, 247, 282, 286, + 341, 327, 349, 354, 6, 6, 6, 6, 327, 6, + 6, 243, 327, 327, 327, 327, 327, 243, 340, 132, + 133, 138, 322, 132, 133, 322, 344, 297, 243, 247, + 6, 243, 341, 298, 243, 6, 344, 338, 338, 338, + 338, 338, 327, 243, 243, 243, 243, 239, 242, 6, + 345, 174, 260, 327, 247, 247, 340, 6, 327, 327, + 243, 243, 278, 7, 238, 243, 242, 247, 247, 247, + 247, 247, 243, 242, 338, 341, 6, 242, 338, 6, + 243, 243, 327, 6, 128, 243, 309, 242, 243, 247, + 247, 247, 247, 247, 6, 6, 6, 298, 6, 242, + 327, 327, 243, 247, 282, 349, 239, 327, 327, 327, + 327, 327, 327, 6, 338, 6, 338, 6, 6, 243, + 327, 312, 298, 6, 344, 344, 344, 344, 338, 344, + 315, 257, 239, 247, 6, 242, 327, 243, 247, 247, + 247, 247, 247, 247, 247, 247, 6, 243, 243, 310, + 243, 243, 243, 243, 247, 243, 243, 243, 263, 327, + 340, 243, 327, 327, 327, 327, 327, 327, 338, 338, + 312, 6, 6, 6, 6, 344, 6, 6, 6, 242, + 239, 243, 6, 243, 273, 247, 247, 247, 247, 247, + 247, 243, 243, 261, 348, 266, 242, 6, 327, 327, + 327, 327, 327, 327, 6, 243, 247, 242, 340, 243, + 243, 243, 243, 243, 243, 6, 348, 264, 348, 243, + 6, 6, 243, 247, 6, 6, 348 +}; + +#define yyerrok (yyerrstatus = 0) +#define yyclearin (yychar = YYEMPTY) +#define YYEMPTY (-2) +#define YYEOF 0 + +#define YYACCEPT goto yyacceptlab +#define YYABORT goto yyabortlab +#define YYERROR goto yyerrorlab + + +/* Like YYERROR except do call yyerror. This remains here temporarily + to ease the transition to the new meaning of YYERROR, for GCC. + Once GCC version 2 has supplanted version 1, this can go. */ + +#define YYFAIL goto yyerrlab + +#define YYRECOVERING() (!!yyerrstatus) + +#define YYBACKUP(Token, Value) \ +do \ + if (yychar == YYEMPTY && yylen == 1) \ + { \ + yychar = (Token); \ + yylval = (Value); \ + yytoken = YYTRANSLATE (yychar); \ + YYPOPSTACK (1); \ + goto yybackup; \ + } \ + else \ + { \ + yyerror (YY_("syntax error: cannot back up")); \ + YYERROR; \ + } \ +while (YYID (0)) + + +#define YYTERROR 1 +#define YYERRCODE 256 + + +/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. + If N is 0, then set CURRENT to the empty location which ends + the previous symbol: RHS[0] (always defined). */ + +#define YYRHSLOC(Rhs, K) ((Rhs)[K]) +#ifndef YYLLOC_DEFAULT +# define YYLLOC_DEFAULT(Current, Rhs, N) \ + do \ + if (YYID (N)) \ + { \ + (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ + (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ + (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ + (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ + } \ + else \ + { \ + (Current).first_line = (Current).last_line = \ + YYRHSLOC (Rhs, 0).last_line; \ + (Current).first_column = (Current).last_column = \ + YYRHSLOC (Rhs, 0).last_column; \ + } \ + while (YYID (0)) +#endif + + +/* YY_LOCATION_PRINT -- Print the location on the stream. + This macro was not mandated originally: define only if we know + we won't break user code: when these are the locations we know. */ + +#ifndef YY_LOCATION_PRINT +# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +# define YY_LOCATION_PRINT(File, Loc) \ + fprintf (File, "%d.%d-%d.%d", \ + (Loc).first_line, (Loc).first_column, \ + (Loc).last_line, (Loc).last_column) +# else +# define YY_LOCATION_PRINT(File, Loc) ((void) 0) +# endif +#endif + + +/* YYLEX -- calling `yylex' with the right arguments. */ + +#ifdef YYLEX_PARAM +# define YYLEX yylex (YYLEX_PARAM) +#else +# define YYLEX yylex () +#endif + +/* Enable debugging if requested. */ +#if YYDEBUG + +# ifndef YYFPRINTF +# include <stdio.h> /* INFRINGES ON USER NAME SPACE */ +# define YYFPRINTF fprintf +# endif + +# define YYDPRINTF(Args) \ +do { \ + if (yydebug) \ + YYFPRINTF Args; \ +} while (YYID (0)) + +# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ +do { \ + if (yydebug) \ + { \ + YYFPRINTF (stderr, "%s ", Title); \ + yy_symbol_print (stderr, \ + Type, Value); \ + YYFPRINTF (stderr, "\n"); \ + } \ +} while (YYID (0)) + + +/*--------------------------------. +| Print this symbol on YYOUTPUT. | +`--------------------------------*/ + +/*ARGSUSED*/ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static void +yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) +#else +static void +yy_symbol_value_print (yyoutput, yytype, yyvaluep) + FILE *yyoutput; + int yytype; + YYSTYPE const * const yyvaluep; +#endif +{ + if (!yyvaluep) + return; +# ifdef YYPRINT + if (yytype < YYNTOKENS) + YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); +# else + YYUSE (yyoutput); +# endif + switch (yytype) + { + default: + break; + } +} + + +/*--------------------------------. +| Print this symbol on YYOUTPUT. | +`--------------------------------*/ + +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static void +yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) +#else +static void +yy_symbol_print (yyoutput, yytype, yyvaluep) + FILE *yyoutput; + int yytype; + YYSTYPE const * const yyvaluep; +#endif +{ + if (yytype < YYNTOKENS) + YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); + else + YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); + + yy_symbol_value_print (yyoutput, yytype, yyvaluep); + YYFPRINTF (yyoutput, ")"); +} + +/*------------------------------------------------------------------. +| yy_stack_print -- Print the state stack from its BOTTOM up to its | +| TOP (included). | +`------------------------------------------------------------------*/ + +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static void +yy_stack_print (yytype_int16 *bottom, yytype_int16 *top) +#else +static void +yy_stack_print (bottom, top) + yytype_int16 *bottom; + yytype_int16 *top; +#endif +{ + YYFPRINTF (stderr, "Stack now"); + for (; bottom <= top; ++bottom) + YYFPRINTF (stderr, " %d", *bottom); + YYFPRINTF (stderr, "\n"); +} + +# define YY_STACK_PRINT(Bottom, Top) \ +do { \ + if (yydebug) \ + yy_stack_print ((Bottom), (Top)); \ +} while (YYID (0)) + + +/*------------------------------------------------. +| Report that the YYRULE is going to be reduced. | +`------------------------------------------------*/ + +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static void +yy_reduce_print (YYSTYPE *yyvsp, int yyrule) +#else +static void +yy_reduce_print (yyvsp, yyrule) + YYSTYPE *yyvsp; + int yyrule; +#endif +{ + int yynrhs = yyr2[yyrule]; + int yyi; + unsigned long int yylno = yyrline[yyrule]; + YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", + yyrule - 1, yylno); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + fprintf (stderr, " $%d = ", yyi + 1); + yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi], + &(yyvsp[(yyi + 1) - (yynrhs)]) + ); + fprintf (stderr, "\n"); + } +} + +# define YY_REDUCE_PRINT(Rule) \ +do { \ + if (yydebug) \ + yy_reduce_print (yyvsp, Rule); \ +} while (YYID (0)) + +/* Nonzero means print parse trace. It is left uninitialized so that + multiple parsers can coexist. */ +int yydebug; +#else /* !YYDEBUG */ +# define YYDPRINTF(Args) +# define YY_SYMBOL_PRINT(Title, Type, Value, Location) +# define YY_STACK_PRINT(Bottom, Top) +# define YY_REDUCE_PRINT(Rule) +#endif /* !YYDEBUG */ + + +/* YYINITDEPTH -- initial size of the parser's stacks. */ +#ifndef YYINITDEPTH +# define YYINITDEPTH 200 +#endif + +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). + + Do not make this value too large; the results are undefined if + YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) + evaluated with infinite-precision integer arithmetic. */ + +#ifndef YYMAXDEPTH +# define YYMAXDEPTH 10000 +#endif + + + +#if YYERROR_VERBOSE + +# ifndef yystrlen +# if defined __GLIBC__ && defined _STRING_H +# define yystrlen strlen +# else +/* Return the length of YYSTR. */ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static YYSIZE_T +yystrlen (const char *yystr) +#else +static YYSIZE_T +yystrlen (yystr) + const char *yystr; +#endif +{ + YYSIZE_T yylen; + for (yylen = 0; yystr[yylen]; yylen++) + continue; + return yylen; +} +# endif +# endif + +# ifndef yystpcpy +# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE +# define yystpcpy stpcpy +# else +/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in + YYDEST. */ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static char * +yystpcpy (char *yydest, const char *yysrc) +#else +static char * +yystpcpy (yydest, yysrc) + char *yydest; + const char *yysrc; +#endif +{ + char *yyd = yydest; + const char *yys = yysrc; + + while ((*yyd++ = *yys++) != '\0') + continue; + + return yyd - 1; +} +# endif +# endif + +# ifndef yytnamerr +/* Copy to YYRES the contents of YYSTR after stripping away unnecessary + quotes and backslashes, so that it's suitable for yyerror. The + heuristic is that double-quoting is unnecessary unless the string + contains an apostrophe, a comma, or backslash (other than + backslash-backslash). YYSTR is taken from yytname. If YYRES is + null, do not copy; instead, return the length of what the result + would have been. */ +static YYSIZE_T +yytnamerr (char *yyres, const char *yystr) +{ + if (*yystr == '"') + { + YYSIZE_T yyn = 0; + char const *yyp = yystr; + + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + /* Fall through. */ + default: + if (yyres) + yyres[yyn] = *yyp; + yyn++; + break; + + case '"': + if (yyres) + yyres[yyn] = '\0'; + return yyn; + } + do_not_strip_quotes: ; + } + + if (! yyres) + return yystrlen (yystr); + + return yystpcpy (yyres, yystr) - yyres; +} +# endif + +/* Copy into YYRESULT an error message about the unexpected token + YYCHAR while in state YYSTATE. Return the number of bytes copied, + including the terminating null byte. If YYRESULT is null, do not + copy anything; just return the number of bytes that would be + copied. As a special case, return 0 if an ordinary "syntax error" + message will do. Return YYSIZE_MAXIMUM if overflow occurs during + size calculation. */ +static YYSIZE_T +yysyntax_error (char *yyresult, int yystate, int yychar) +{ + int yyn = yypact[yystate]; + + if (! (YYPACT_NINF < yyn && yyn <= YYLAST)) + return 0; + else + { + int yytype = YYTRANSLATE (yychar); + YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); + YYSIZE_T yysize = yysize0; + YYSIZE_T yysize1; + int yysize_overflow = 0; + enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; + char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; + int yyx; + +# if 0 + /* This is so xgettext sees the translatable formats that are + constructed on the fly. */ + YY_("syntax error, unexpected %s"); + YY_("syntax error, unexpected %s, expecting %s"); + YY_("syntax error, unexpected %s, expecting %s or %s"); + YY_("syntax error, unexpected %s, expecting %s or %s or %s"); + YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); +# endif + char *yyfmt; + char const *yyf; + static char const yyunexpected[] = "syntax error, unexpected %s"; + static char const yyexpecting[] = ", expecting %s"; + static char const yyor[] = " or %s"; + char yyformat[sizeof yyunexpected + + sizeof yyexpecting - 1 + + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) + * (sizeof yyor - 1))]; + char const *yyprefix = yyexpecting; + + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yycount = 1; + + yyarg[0] = yytname[yytype]; + yyfmt = yystpcpy (yyformat, yyunexpected); + + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) + { + if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) + { + yycount = 1; + yysize = yysize0; + yyformat[sizeof yyunexpected - 1] = '\0'; + break; + } + yyarg[yycount++] = yytname[yyx]; + yysize1 = yysize + yytnamerr (0, yytname[yyx]); + yysize_overflow |= (yysize1 < yysize); + yysize = yysize1; + yyfmt = yystpcpy (yyfmt, yyprefix); + yyprefix = yyor; + } + + yyf = YY_(yyformat); + yysize1 = yysize + yystrlen (yyf); + yysize_overflow |= (yysize1 < yysize); + yysize = yysize1; + + if (yysize_overflow) + return YYSIZE_MAXIMUM; + + if (yyresult) + { + /* Avoid sprintf, as that infringes on the user's name space. + Don't have undefined behavior even if the translation + produced a string with the wrong number of "%s"s. */ + char *yyp = yyresult; + int yyi = 0; + while ((*yyp = *yyf) != '\0') + { + if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) + { + yyp += yytnamerr (yyp, yyarg[yyi++]); + yyf += 2; + } + else + { + yyp++; + yyf++; + } + } + } + return yysize; + } +} +#endif /* YYERROR_VERBOSE */ + + +/*-----------------------------------------------. +| Release the memory associated to this symbol. | +`-----------------------------------------------*/ + +/*ARGSUSED*/ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static void +yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep) +#else +static void +yydestruct (yymsg, yytype, yyvaluep) + const char *yymsg; + int yytype; + YYSTYPE *yyvaluep; +#endif +{ + YYUSE (yyvaluep); + + if (!yymsg) + yymsg = "Deleting"; + YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); + + switch (yytype) + { + + default: + break; + } +} + + +/* Prevent warnings from -Wmissing-prototypes. */ + +#ifdef YYPARSE_PARAM +#if defined __STDC__ || defined __cplusplus +int yyparse (void *YYPARSE_PARAM); +#else +int yyparse (); +#endif +#else /* ! YYPARSE_PARAM */ +#if defined __STDC__ || defined __cplusplus +int yyparse (void); +#else +int yyparse (); +#endif +#endif /* ! YYPARSE_PARAM */ + + + +/* The look-ahead symbol. */ +int yychar; + +/* The semantic value of the look-ahead symbol. */ +YYSTYPE yylval; + +/* Number of syntax errors so far. */ +int yynerrs; + + + +/*----------. +| yyparse. | +`----------*/ + +#ifdef YYPARSE_PARAM +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +int +yyparse (void *YYPARSE_PARAM) +#else +int +yyparse (YYPARSE_PARAM) + void *YYPARSE_PARAM; +#endif +#else /* ! YYPARSE_PARAM */ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +int +yyparse (void) +#else +int +yyparse () + +#endif +#endif +{ + + int yystate; + int yyn; + int yyresult; + /* Number of tokens to shift before error messages enabled. */ + int yyerrstatus; + /* Look-ahead token as an internal (translated) token number. */ + int yytoken = 0; +#if YYERROR_VERBOSE + /* Buffer for error messages, and its allocated size. */ + char yymsgbuf[128]; + char *yymsg = yymsgbuf; + YYSIZE_T yymsg_alloc = sizeof yymsgbuf; +#endif + + /* Three stacks and their tools: + `yyss': related to states, + `yyvs': related to semantic values, + `yyls': related to locations. + + Refer to the stacks thru separate pointers, to allow yyoverflow + to reallocate them elsewhere. */ + + /* The state stack. */ + yytype_int16 yyssa[YYINITDEPTH]; + yytype_int16 *yyss = yyssa; + yytype_int16 *yyssp; + + /* The semantic value stack. */ + YYSTYPE yyvsa[YYINITDEPTH]; + YYSTYPE *yyvs = yyvsa; + YYSTYPE *yyvsp; + + + +#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) + + YYSIZE_T yystacksize = YYINITDEPTH; + + /* The variables used to return semantic value and location from the + action routines. */ + YYSTYPE yyval; + + + /* The number of symbols on the RHS of the reduced rule. + Keep to zero when no symbol should be popped. */ + int yylen = 0; + + YYDPRINTF ((stderr, "Starting parse\n")); + + yystate = 0; + yyerrstatus = 0; + yynerrs = 0; + yychar = YYEMPTY; /* Cause a token to be read. */ + + /* Initialize stack pointers. + Waste one element of value and location stack + so that they stay on the same level as the state stack. + The wasted elements are never initialized. */ + + yyssp = yyss; + yyvsp = yyvs; + + goto yysetstate; + +/*------------------------------------------------------------. +| yynewstate -- Push a new state, which is found in yystate. | +`------------------------------------------------------------*/ + yynewstate: + /* In all cases, when you get here, the value and location stacks + have just been pushed. So pushing a state here evens the stacks. */ + yyssp++; + + yysetstate: + *yyssp = yystate; + + if (yyss + yystacksize - 1 <= yyssp) + { + /* Get the current used size of the three stacks, in elements. */ + YYSIZE_T yysize = yyssp - yyss + 1; + +#ifdef yyoverflow + { + /* Give user a chance to reallocate the stack. Use copies of + these so that the &'s don't force the real ones into + memory. */ + YYSTYPE *yyvs1 = yyvs; + yytype_int16 *yyss1 = yyss; + + + /* Each stack pointer address is followed by the size of the + data in use in that stack, in bytes. This used to be a + conditional around just the two extra args, but that might + be undefined if yyoverflow is a macro. */ + yyoverflow (YY_("memory exhausted"), + &yyss1, yysize * sizeof (*yyssp), + &yyvs1, yysize * sizeof (*yyvsp), + + &yystacksize); + + yyss = yyss1; + yyvs = yyvs1; + } +#else /* no yyoverflow */ +# ifndef YYSTACK_RELOCATE + goto yyexhaustedlab; +# else + /* Extend the stack our own way. */ + if (YYMAXDEPTH <= yystacksize) + goto yyexhaustedlab; + yystacksize *= 2; + if (YYMAXDEPTH < yystacksize) + yystacksize = YYMAXDEPTH; + + { + yytype_int16 *yyss1 = yyss; + union yyalloc *yyptr = + (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); + if (! yyptr) + goto yyexhaustedlab; + YYSTACK_RELOCATE (yyss); + YYSTACK_RELOCATE (yyvs); + +# undef YYSTACK_RELOCATE + if (yyss1 != yyssa) + YYSTACK_FREE (yyss1); + } +# endif +#endif /* no yyoverflow */ + + yyssp = yyss + yysize - 1; + yyvsp = yyvs + yysize - 1; + + + YYDPRINTF ((stderr, "Stack size increased to %lu\n", + (unsigned long int) yystacksize)); + + if (yyss + yystacksize - 1 <= yyssp) + YYABORT; + } + + YYDPRINTF ((stderr, "Entering state %d\n", yystate)); + + goto yybackup; + +/*-----------. +| yybackup. | +`-----------*/ +yybackup: + + /* Do appropriate processing given the current state. Read a + look-ahead token if we need one and don't already have one. */ + + /* First try to decide what to do without reference to look-ahead token. */ + yyn = yypact[yystate]; + if (yyn == YYPACT_NINF) + goto yydefault; + + /* Not known => get a look-ahead token if don't already have one. */ + + /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */ + if (yychar == YYEMPTY) + { + YYDPRINTF ((stderr, "Reading a token: ")); + yychar = YYLEX; + } + + if (yychar <= YYEOF) + { + yychar = yytoken = YYEOF; + YYDPRINTF ((stderr, "Now at end of input.\n")); + } + else + { + yytoken = YYTRANSLATE (yychar); + YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); + } + + /* If the proper action on seeing token YYTOKEN is to reduce or to + detect an error, take that action. */ + yyn += yytoken; + if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken) + goto yydefault; + yyn = yytable[yyn]; + if (yyn <= 0) + { + if (yyn == 0 || yyn == YYTABLE_NINF) + goto yyerrlab; + yyn = -yyn; + goto yyreduce; + } + + if (yyn == YYFINAL) + YYACCEPT; + + /* Count tokens shifted since error; after three, turn off error + status. */ + if (yyerrstatus) + yyerrstatus--; + + /* Shift the look-ahead token. */ + YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); + + /* Discard the shifted token unless it is eof. */ + if (yychar != YYEOF) + yychar = YYEMPTY; + + yystate = yyn; + *++yyvsp = yylval; + + goto yynewstate; + + +/*-----------------------------------------------------------. +| yydefault -- do the default action for the current state. | +`-----------------------------------------------------------*/ +yydefault: + yyn = yydefact[yystate]; + if (yyn == 0) + goto yyerrlab; + goto yyreduce; + + +/*-----------------------------. +| yyreduce -- Do a reduction. | +`-----------------------------*/ +yyreduce: + /* yyn is the number of a rule to reduce with. */ + yylen = yyr2[yyn]; + + /* If YYLEN is nonzero, implement the default value of the action: + `$$ = $1'. + + Otherwise, the following line sets YYVAL to garbage. + This behavior is undocumented and Bison + users should not rely upon it. Assigning to YYVAL + unconditionally makes the parser a bit smaller, and it avoids a + GCC warning that YYVAL may be used uninitialized. */ + yyval = yyvsp[1-yylen]; + + + YY_REDUCE_PRINT (yyn); + switch (yyn) + { + case 3: +#line 260 "Gmsh.y" + { yyerrok; return 1; ;} + break; + + case 6: +#line 271 "Gmsh.y" + { return 1; ;} + break; + + case 7: +#line 272 "Gmsh.y" + { return 1; ;} + break; + + case 8: +#line 273 "Gmsh.y" + { return 1; ;} + break; + + case 9: +#line 275 "Gmsh.y" + { + factory = (yyvsp[(3) - (5)].c); + if(factory == "OpenCASCADE"){ + if(!GModel::current()->getOCCInternals()) + GModel::current()->createOCCInternals(); + for(int dim = -2; dim <= 3; dim++) + GModel::current()->getOCCInternals()->setMaxTag + (dim, std::max(GModel::current()->getOCCInternals()->getMaxTag(dim), + GModel::current()->getGEOInternals()->getMaxTag(dim))); + } + else if(GModel::current()->getOCCInternals()){ + for(int dim = -2; dim <= 3; dim++) + GModel::current()->getGEOInternals()->setMaxTag + (dim, std::max(GModel::current()->getGEOInternals()->getMaxTag(dim), + GModel::current()->getOCCInternals()->getMaxTag(dim))); + } + Free((yyvsp[(3) - (5)].c)); + ;} + break; + + case 10: +#line 293 "Gmsh.y" + { return 1; ;} + break; + + case 11: +#line 294 "Gmsh.y" + { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} + break; + + case 12: +#line 295 "Gmsh.y" + { return 1; ;} + break; + + case 13: +#line 296 "Gmsh.y" + { return 1; ;} + break; + + case 14: +#line 297 "Gmsh.y" + { return 1; ;} + break; + + case 15: +#line 298 "Gmsh.y" + { return 1; ;} + break; + + case 16: +#line 299 "Gmsh.y" + { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} + break; + + case 17: +#line 300 "Gmsh.y" + { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} + break; + + case 18: +#line 301 "Gmsh.y" + { return 1; ;} + break; + + case 19: +#line 302 "Gmsh.y" + { return 1; ;} + break; + + case 20: +#line 303 "Gmsh.y" + { return 1; ;} + break; + + case 21: +#line 304 "Gmsh.y" + { return 1; ;} + break; + + case 22: +#line 305 "Gmsh.y" + { return 1; ;} + break; + + case 23: +#line 306 "Gmsh.y" + { return 1; ;} + break; + + case 24: +#line 307 "Gmsh.y" + { return 1; ;} + break; + + case 25: +#line 308 "Gmsh.y" + { return 1; ;} + break; + + case 26: +#line 313 "Gmsh.y" + { + (yyval.c) = (char*)"w"; + ;} + break; + + case 27: +#line 317 "Gmsh.y" + { + (yyval.c) = (char*)"a"; + ;} + break; + + case 28: +#line 324 "Gmsh.y" + { + Msg::Direct((yyvsp[(3) - (5)].c)); + Free((yyvsp[(3) - (5)].c)); + ;} + break; + + case 29: +#line 329 "Gmsh.y" + { + Msg::Error((yyvsp[(3) - (5)].c)); + Free((yyvsp[(3) - (5)].c)); + ;} + break; + + case 30: +#line 334 "Gmsh.y" + { + std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(6) - (7)].c)); + FILE *fp = Fopen(tmp.c_str(), (yyvsp[(5) - (7)].c)); + if(!fp){ + yymsg(0, "Unable to open file '%s'", tmp.c_str()); + } + else{ + fprintf(fp, "%s\n", (yyvsp[(3) - (7)].c)); + fclose(fp); + } + Free((yyvsp[(3) - (7)].c)); + Free((yyvsp[(6) - (7)].c)); + ;} + break; + + case 31: +#line 348 "Gmsh.y" + { + char tmpstring[5000]; + int i = printListOfDouble((yyvsp[(3) - (7)].c), (yyvsp[(5) - (7)].l), tmpstring); + if(i < 0) + yymsg(0, "Too few arguments in Printf"); + else if(i > 0) + yymsg(0, "%d extra argument%s in Printf", i, (i > 1) ? "s" : ""); + else + Msg::Direct(tmpstring); + Free((yyvsp[(3) - (7)].c)); + List_Delete((yyvsp[(5) - (7)].l)); + ;} + break; + + case 32: +#line 361 "Gmsh.y" + { + char tmpstring[5000]; + int i = printListOfDouble((yyvsp[(3) - (7)].c), (yyvsp[(5) - (7)].l), tmpstring); + if(i < 0) + yymsg(0, "Too few arguments in Error"); + else if(i > 0) + yymsg(0, "%d extra argument%s in Error", i, (i > 1) ? "s" : ""); + else + Msg::Error(tmpstring); + Free((yyvsp[(3) - (7)].c)); + List_Delete((yyvsp[(5) - (7)].l)); + ;} + break; + + case 33: +#line 374 "Gmsh.y" + { + char tmpstring[5000]; + int i = printListOfDouble((yyvsp[(3) - (9)].c), (yyvsp[(5) - (9)].l), tmpstring); + if(i < 0) + yymsg(0, "Too few arguments in Printf"); + else if(i > 0) + yymsg(0, "%d extra argument%s in Printf", i, (i > 1) ? "s" : ""); + else{ + std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(8) - (9)].c)); + FILE *fp = Fopen(tmp.c_str(), (yyvsp[(7) - (9)].c)); + if(!fp){ + yymsg(0, "Unable to open file '%s'", tmp.c_str()); + } + else{ + fprintf(fp, "%s\n", tmpstring); + fclose(fp); + } + } + Free((yyvsp[(3) - (9)].c)); + Free((yyvsp[(8) - (9)].c)); + List_Delete((yyvsp[(5) - (9)].l)); + ;} + break; + + case 34: +#line 402 "Gmsh.y" + { +#if defined(HAVE_POST) + if(!strcmp((yyvsp[(1) - (6)].c), "View") && ViewData->finalize()){ + ViewData->setName((yyvsp[(2) - (6)].c)); + ViewData->setFileName(gmsh_yyname); + ViewData->setFileIndex(gmsh_yyviewindex++); + new PView(ViewData); + } + else + delete ViewData; +#endif + Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(2) - (6)].c)); + ;} + break; + + case 35: +#line 416 "Gmsh.y" + { +#if defined(HAVE_POST) + if(!strcmp((yyvsp[(2) - (6)].c), "View")){ + int index = (int)(yyvsp[(4) - (6)].d); + if(index >= 0 && index < (int)PView::list.size()) + new PView(PView::list[index], false); + else + yymsg(0, "Unknown view %d", index); + } +#endif + Free((yyvsp[(2) - (6)].c)); + ;} + break; + + case 36: +#line 429 "Gmsh.y" + { +#if defined(HAVE_POST) + if(!strcmp((yyvsp[(2) - (6)].c), "View")){ + int index = (int)(yyvsp[(4) - (6)].d); + if(index >= 0 && index < (int)PView::list.size()) + new PView(PView::list[index], true); + else + yymsg(0, "Unknown view %d", index); + } +#endif + Free((yyvsp[(2) - (6)].c)); + ;} + break; + + case 37: +#line 442 "Gmsh.y" + { +#if defined(HAVE_POST) + if(!strcmp((yyvsp[(2) - (8)].c), "View")){ + int index = (int)(yyvsp[(4) - (8)].d), index2 = (int)(yyvsp[(6) - (8)].d); + if(index >= 0 && index < (int)PView::list.size() && + index2 >= 0 && index2 < (int)PView::list.size()){ + PView::list[index2]->setOptions(PView::list[index]->getOptions()); + } + else + yymsg(0, "Unknown view %d or %d", index, index2); + } +#endif + Free((yyvsp[(2) - (8)].c)); + ;} + break; + + case 38: +#line 460 "Gmsh.y" + { +#if defined(HAVE_POST) + ViewData = new PViewDataList(); +#endif + ;} + break; + + case 44: +#line 474 "Gmsh.y" + { ViewCoord.push_back((yyvsp[(1) - (1)].d)); ;} + break; + + case 45: +#line 476 "Gmsh.y" + { ViewCoord.push_back((yyvsp[(3) - (3)].d)); ;} + break; + + case 46: +#line 481 "Gmsh.y" + { if(ViewValueList) ViewValueList->push_back((yyvsp[(1) - (1)].d)); ;} + break; + + case 47: +#line 483 "Gmsh.y" + { if(ViewValueList) ViewValueList->push_back((yyvsp[(3) - (3)].d)); ;} + break; + + case 48: +#line 488 "Gmsh.y" + { +#if defined(HAVE_POST) + if(!strncmp((yyvsp[(1) - (1)].c), "SP", 2)){ + ViewValueList = &ViewData->SP; ViewNumList = &ViewData->NbSP; + } + else if(!strncmp((yyvsp[(1) - (1)].c), "VP", 2)){ + ViewValueList = &ViewData->VP; ViewNumList = &ViewData->NbVP; + } + else if(!strncmp((yyvsp[(1) - (1)].c), "TP", 2)){ + ViewValueList = &ViewData->TP; ViewNumList = &ViewData->NbTP; + } + else if(!strncmp((yyvsp[(1) - (1)].c), "SL", 2)){ + ViewValueList = &ViewData->SL; ViewNumList = &ViewData->NbSL; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_LIN); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "VL", 2)){ + ViewValueList = &ViewData->VL; ViewNumList = &ViewData->NbVL; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_LIN); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "TL", 2)){ + ViewValueList = &ViewData->TL; ViewNumList = &ViewData->NbTL; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_LIN); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "ST", 2)){ + ViewValueList = &ViewData->ST; ViewNumList = &ViewData->NbST; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_TRI); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "VT", 2)){ + ViewValueList = &ViewData->VT; ViewNumList = &ViewData->NbVT; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_TRI); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "TT", 2)){ + ViewValueList = &ViewData->TT; ViewNumList = &ViewData->NbTT; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_TRI); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "SQ", 2)){ + ViewValueList = &ViewData->SQ; ViewNumList = &ViewData->NbSQ; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_QUA); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "VQ", 2)){ + ViewValueList = &ViewData->VQ; ViewNumList = &ViewData->NbVQ; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_QUA); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "TQ", 2)){ + ViewValueList = &ViewData->TQ; ViewNumList = &ViewData->NbTQ; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_QUA); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "SS", 2)){ + ViewValueList = &ViewData->SS; ViewNumList = &ViewData->NbSS; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_TET); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "VS", 2)){ + ViewValueList = &ViewData->VS; ViewNumList = &ViewData->NbVS; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_TET); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "TS", 2)){ + ViewValueList = &ViewData->TS; ViewNumList = &ViewData->NbTS; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_TET); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "SH", 2)){ + ViewValueList = &ViewData->SH; ViewNumList = &ViewData->NbSH; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_HEX); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "VH", 2)){ + ViewValueList = &ViewData->VH; ViewNumList = &ViewData->NbVH; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_HEX); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "TH", 2)){ + ViewValueList = &ViewData->TH; ViewNumList = &ViewData->NbTH; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_HEX); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "SI", 2)){ + ViewValueList = &ViewData->SI; ViewNumList = &ViewData->NbSI; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_PRI); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "VI", 2)){ + ViewValueList = &ViewData->VI; ViewNumList = &ViewData->NbVI; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_PRI); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "TI", 2)){ + ViewValueList = &ViewData->TI; ViewNumList = &ViewData->NbTI; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_PRI); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "SY", 2)){ + ViewValueList = &ViewData->SY; ViewNumList = &ViewData->NbSY; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_PYR); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "VY", 2)){ + ViewValueList = &ViewData->VY; ViewNumList = &ViewData->NbVY; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_PYR); + } + else if(!strncmp((yyvsp[(1) - (1)].c), "TY", 2)){ + ViewValueList = &ViewData->TY; ViewNumList = &ViewData->NbTY; + if(strlen((yyvsp[(1) - (1)].c)) > 2) ViewData->setOrder2(TYPE_PYR); + } + else{ + yymsg(0, "Unknown element type '%s'", (yyvsp[(1) - (1)].c)); + ViewValueList = 0; ViewNumList = 0; + } +#endif + ViewCoord.clear(); + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 49: +#line 592 "Gmsh.y" + { +#if defined(HAVE_POST) + if(ViewValueList){ + for(int i = 0; i < 3; i++) + for(unsigned int j = 0; j < ViewCoord.size() / 3; j++) + ViewValueList->push_back(ViewCoord[3 * j + i]); + } +#endif + ;} + break; + + case 50: +#line 602 "Gmsh.y" + { +#if defined(HAVE_POST) + if(ViewValueList) (*ViewNumList)++; +#endif + ;} + break; + + case 51: +#line 611 "Gmsh.y" + { +#if defined(HAVE_POST) + for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c)) + 1; i++) ViewData->T2C.push_back((yyvsp[(1) - (1)].c)[i]); +#endif + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 52: +#line 618 "Gmsh.y" + { +#if defined(HAVE_POST) + for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c)) + 1; i++) ViewData->T2C.push_back((yyvsp[(3) - (3)].c)[i]); +#endif + Free((yyvsp[(3) - (3)].c)); + ;} + break; + + case 53: +#line 628 "Gmsh.y" + { +#if defined(HAVE_POST) + ViewData->T2D.push_back((yyvsp[(3) - (8)].d)); + ViewData->T2D.push_back((yyvsp[(5) - (8)].d)); + ViewData->T2D.push_back((yyvsp[(7) - (8)].d)); + ViewData->T2D.push_back(ViewData->T2C.size()); +#endif + ;} + break; + + case 54: +#line 637 "Gmsh.y" + { +#if defined(HAVE_POST) + ViewData->NbT2++; +#endif + ;} + break; + + case 55: +#line 646 "Gmsh.y" + { +#if defined(HAVE_POST) + for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c)) + 1; i++) ViewData->T3C.push_back((yyvsp[(1) - (1)].c)[i]); +#endif + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 56: +#line 653 "Gmsh.y" + { +#if defined(HAVE_POST) + for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c)) + 1; i++) ViewData->T3C.push_back((yyvsp[(3) - (3)].c)[i]); +#endif + Free((yyvsp[(3) - (3)].c)); + ;} + break; + + case 57: +#line 663 "Gmsh.y" + { +#if defined(HAVE_POST) + ViewData->T3D.push_back((yyvsp[(3) - (10)].d)); ViewData->T3D.push_back((yyvsp[(5) - (10)].d)); + ViewData->T3D.push_back((yyvsp[(7) - (10)].d)); ViewData->T3D.push_back((yyvsp[(9) - (10)].d)); + ViewData->T3D.push_back(ViewData->T3C.size()); +#endif + ;} + break; + + case 58: +#line 671 "Gmsh.y" + { +#if defined(HAVE_POST) + ViewData->NbT3++; +#endif + ;} + break; + + case 59: +#line 681 "Gmsh.y" + { +#if defined(HAVE_POST) + int type = + (ViewData->NbSL || ViewData->NbVL) ? TYPE_LIN : + (ViewData->NbST || ViewData->NbVT) ? TYPE_TRI : + (ViewData->NbSQ || ViewData->NbVQ) ? TYPE_QUA : + (ViewData->NbSS || ViewData->NbVS) ? TYPE_TET : + (ViewData->NbSY || ViewData->NbVY) ? TYPE_PYR : + (ViewData->NbSI || ViewData->NbVI) ? TYPE_PRI : + (ViewData->NbSH || ViewData->NbVH) ? TYPE_HEX : + 0; + ViewData->setInterpolationMatrices(type, ListOfListOfDouble2Matrix((yyvsp[(3) - (8)].l)), + ListOfListOfDouble2Matrix((yyvsp[(6) - (8)].l))); +#endif + ;} + break; + + case 60: +#line 700 "Gmsh.y" + { +#if defined(HAVE_POST) + int type = + (ViewData->NbSL || ViewData->NbVL) ? TYPE_LIN : + (ViewData->NbST || ViewData->NbVT) ? TYPE_TRI : + (ViewData->NbSQ || ViewData->NbVQ) ? TYPE_QUA : + (ViewData->NbSS || ViewData->NbVS) ? TYPE_TET : + (ViewData->NbSH || ViewData->NbVH) ? TYPE_HEX : + 0; + ViewData->setInterpolationMatrices(type, ListOfListOfDouble2Matrix((yyvsp[(3) - (14)].l)), + ListOfListOfDouble2Matrix((yyvsp[(6) - (14)].l)), + ListOfListOfDouble2Matrix((yyvsp[(9) - (14)].l)), + ListOfListOfDouble2Matrix((yyvsp[(12) - (14)].l))); +#endif + ;} + break; + + case 61: +#line 719 "Gmsh.y" + { +#if defined(HAVE_POST) + ViewValueList = &ViewData->Time; +#endif + ;} + break; + + case 62: +#line 725 "Gmsh.y" + { + ;} + break; + + case 63: +#line 732 "Gmsh.y" + { (yyval.i) = 0; ;} + break; + + case 64: +#line 733 "Gmsh.y" + { (yyval.i) = 1; ;} + break; + + case 65: +#line 734 "Gmsh.y" + { (yyval.i) = 2; ;} + break; + + case 66: +#line 735 "Gmsh.y" + { (yyval.i) = 3; ;} + break; + + case 67: +#line 736 "Gmsh.y" + { (yyval.i) = 4; ;} + break; + + case 68: +#line 740 "Gmsh.y" + { (yyval.i) = 1; ;} + break; + + case 69: +#line 741 "Gmsh.y" + { (yyval.i) = -1; ;} + break; + + case 70: +#line 747 "Gmsh.y" + { (yyval.c) = (char*)"("; ;} + break; + + case 71: +#line 747 "Gmsh.y" + { (yyval.c) = (char*)"["; ;} + break; + + case 72: +#line 748 "Gmsh.y" + { (yyval.c) = (char*)")"; ;} + break; + + case 73: +#line 748 "Gmsh.y" + { (yyval.c) = (char*)"]"; ;} + break; + + case 77: +#line 758 "Gmsh.y" + { + Msg::SetOnelabNumber((yyvsp[(3) - (7)].c), (yyvsp[(5) - (7)].d)); + Free((yyvsp[(3) - (7)].c)); + ;} + break; + + case 78: +#line 763 "Gmsh.y" + { + Msg::SetOnelabString((yyvsp[(3) - (7)].c), (yyvsp[(5) - (7)].c)); + Free((yyvsp[(3) - (7)].c)); + Free((yyvsp[(5) - (7)].c)); + ;} + break; + + case 79: +#line 769 "Gmsh.y" + { + if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c)) && (yyvsp[(2) - (4)].i) && List_Nbr((yyvsp[(3) - (4)].l)) == 1){ + yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (4)].c)); + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(1) - (4)].c)]); + if(!(yyvsp[(2) - (4)].i)) s.list = (List_Nbr((yyvsp[(3) - (4)].l)) != 1); // list if 0 or > 1 elements + if(!s.list){ // single expression + if(List_Nbr((yyvsp[(3) - (4)].l)) != 1){ + yymsg(0, "Cannot assign list to variable '%s'", (yyvsp[(1) - (4)].c)); + } + else{ + double d; + List_Read((yyvsp[(3) - (4)].l), 0, &d); + if(s.value.empty()){ + if((yyvsp[(2) - (4)].i)) yymsg(1, "Uninitialized variable '%s'", (yyvsp[(1) - (4)].c)); + s.value.resize(1, 0.); + } + switch((yyvsp[(2) - (4)].i)){ + case 0 : s.value[0] = d; break; + case 1 : s.value[0] += d; break; + case 2 : s.value[0] -= d; break; + case 3 : s.value[0] *= d; break; + case 4 : + if(d) s.value[0] /= d; + else yymsg(0, "Division by zero in '%s /= %g'", (yyvsp[(1) - (4)].c), d); + break; + } + } + } + else{ + // list of expressions; this is not recommended (should use [] or () + // notation instead) + switch((yyvsp[(2) - (4)].i)){ + case 0: // affect + s.value.clear(); // fall-through + case 1: // append + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (4)].l), i, &d); + s.value.push_back(d); + } + break; + case 2: // remove + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (4)].l), i, &d); + std::vector<double>::iterator it = std::find(s.value.begin(), + s.value.end(), d); + if(it != s.value.end()) s.value.erase(it); + } + break; + default: + yymsg(0, "Operators *= and /= not available for lists"); + break; + } + } + } + Free((yyvsp[(1) - (4)].c)); + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 80: +#line 831 "Gmsh.y" + { + if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) + yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (3)].c)); + else{ + gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(1) - (3)].c)]); + if(!s.list && s.value.empty()) + yymsg(0, "Uninitialized variable '%s'", (yyvsp[(1) - (3)].c)); + else if(!s.list) + s.value[0] += (yyvsp[(2) - (3)].i); + else + yymsg(0, "Variable '%s' is a list", (yyvsp[(1) - (3)].c)); + } + Free((yyvsp[(1) - (3)].c)); + ;} + break; + + case 81: +#line 846 "Gmsh.y" + { + gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(1) - (6)].c)]); + s.list = true; + double d; + switch((yyvsp[(4) - (6)].i)){ + case 0: // affect + s.value.clear(); // fall-through + case 1: // append + for(int i = 0; i < List_Nbr((yyvsp[(5) - (6)].l)); i++){ + List_Read((yyvsp[(5) - (6)].l), i, &d); + s.value.push_back(d); + } + break; + case 2: // remove + for(int i = 0; i < List_Nbr((yyvsp[(5) - (6)].l)); i++){ + List_Read((yyvsp[(5) - (6)].l), i, &d); + std::vector<double>::iterator it = std::find(s.value.begin(), + s.value.end(), d); + if(it != s.value.end()) s.value.erase(it); + } + break; + default: + yymsg(0, "Operators *= and /= not available for lists"); + break; + } + Free((yyvsp[(1) - (6)].c)); + List_Delete((yyvsp[(5) - (6)].l)); + ;} + break; + + case 82: +#line 875 "Gmsh.y" + { + assignVariables((yyvsp[(1) - (9)].c), (yyvsp[(4) - (9)].l), (yyvsp[(7) - (9)].i), (yyvsp[(8) - (9)].l)); + Free((yyvsp[(1) - (9)].c)); + List_Delete((yyvsp[(4) - (9)].l)); + List_Delete((yyvsp[(8) - (9)].l)); + ;} + break; + + case 83: +#line 885 "Gmsh.y" + { + assignVariable((yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(5) - (7)].i), (yyvsp[(6) - (7)].d)); + Free((yyvsp[(1) - (7)].c)); + ;} + break; + + case 84: +#line 890 "Gmsh.y" + { + incrementVariable((yyvsp[(1) - (6)].c), (yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].i)); + Free((yyvsp[(1) - (6)].c)); + ;} + break; + + case 85: +#line 898 "Gmsh.y" + { + assignVariable((yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(5) - (7)].i), (yyvsp[(6) - (7)].d)); + Free((yyvsp[(1) - (7)].c)); + ;} + break; + + case 86: +#line 903 "Gmsh.y" + { + incrementVariable((yyvsp[(1) - (6)].c), (yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].i)); + Free((yyvsp[(1) - (6)].c)); + ;} + break; + + case 87: +#line 911 "Gmsh.y" + { + gmsh_yystringsymbols[(yyvsp[(1) - (4)].c)] = std::vector<std::string>(1, (yyvsp[(3) - (4)].c)); + Free((yyvsp[(1) - (4)].c)); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 88: +#line 920 "Gmsh.y" + { + gmsh_yystringsymbols[(yyvsp[(1) - (8)].c)] = std::vector<std::string>(); + Free((yyvsp[(1) - (8)].c)); + ;} + break; + + case 89: +#line 925 "Gmsh.y" + { + std::vector<std::string> s; + for(int i = 0; i < List_Nbr((yyvsp[(7) - (9)].l)); i++){ + char **c = (char**)List_Pointer((yyvsp[(7) - (9)].l), i); + s.push_back(*c); + Free(*c); + } + gmsh_yystringsymbols[(yyvsp[(1) - (9)].c)] = s; + Free((yyvsp[(1) - (9)].c)); + List_Delete((yyvsp[(7) - (9)].l)); + ;} + break; + + case 90: +#line 937 "Gmsh.y" + { + if(gmsh_yystringsymbols.count((yyvsp[(1) - (9)].c))){ + for(int i = 0; i < List_Nbr((yyvsp[(7) - (9)].l)); i++){ + char **c = (char**)List_Pointer((yyvsp[(7) - (9)].l), i); + gmsh_yystringsymbols[(yyvsp[(1) - (9)].c)].push_back(*c); + Free(*c); + } + } + else + yymsg(0, "Uninitialized variable '%s'", (yyvsp[(1) - (9)].c)); + Free((yyvsp[(1) - (9)].c)); + List_Delete((yyvsp[(7) - (9)].l)); + ;} + break; + + case 91: +#line 954 "Gmsh.y" + { + std::string tmp((yyvsp[(5) - (6)].c)); + StringOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), tmp); + Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c)); + ;} + break; + + case 92: +#line 960 "Gmsh.y" + { + std::string tmp((yyvsp[(8) - (9)].c)); + StringOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), tmp); + Free((yyvsp[(1) - (9)].c)); Free((yyvsp[(6) - (9)].c)); Free((yyvsp[(8) - (9)].c)); + ;} + break; + + case 93: +#line 969 "Gmsh.y" + { + double d = 0.; + if(NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), d)){ + switch((yyvsp[(4) - (6)].i)){ + case 0 : d = (yyvsp[(5) - (6)].d); break; + case 1 : d += (yyvsp[(5) - (6)].d); break; + case 2 : d -= (yyvsp[(5) - (6)].d); break; + case 3 : d *= (yyvsp[(5) - (6)].d); break; + case 4 : + if((yyvsp[(5) - (6)].d)) d /= (yyvsp[(5) - (6)].d); + else yymsg(0, "Division by zero in '%s.%s /= %g'", (yyvsp[(1) - (6)].c), (yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); + break; + } + NumberOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), d); + } + Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(3) - (6)].c)); + ;} + break; + + case 94: +#line 987 "Gmsh.y" + { + double d = 0.; + if(NumberOption(GMSH_GET, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), d)){ + switch((yyvsp[(7) - (9)].i)){ + case 0 : d = (yyvsp[(8) - (9)].d); break; + case 1 : d += (yyvsp[(8) - (9)].d); break; + case 2 : d -= (yyvsp[(8) - (9)].d); break; + case 3 : d *= (yyvsp[(8) - (9)].d); break; + case 4 : + if((yyvsp[(8) - (9)].d)) d /= (yyvsp[(8) - (9)].d); + else yymsg(0, "Division by zero in '%s[%d].%s /= %g'", (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), (yyvsp[(8) - (9)].d)); + break; + } + NumberOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), d); + } + Free((yyvsp[(1) - (9)].c)); Free((yyvsp[(6) - (9)].c)); + ;} + break; + + case 95: +#line 1005 "Gmsh.y" + { + double d = 0.; + if(NumberOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(3) - (5)].c), d)){ + d += (yyvsp[(4) - (5)].i); + NumberOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (5)].c), 0, (yyvsp[(3) - (5)].c), d); + } + Free((yyvsp[(1) - (5)].c)); Free((yyvsp[(3) - (5)].c)); + ;} + break; + + case 96: +#line 1014 "Gmsh.y" + { + double d = 0.; + if(NumberOption(GMSH_GET, (yyvsp[(1) - (8)].c), (int)(yyvsp[(3) - (8)].d), (yyvsp[(6) - (8)].c), d)){ + d += (yyvsp[(7) - (8)].i); + NumberOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (8)].c), (int)(yyvsp[(3) - (8)].d), (yyvsp[(6) - (8)].c), d); + } + Free((yyvsp[(1) - (8)].c)); Free((yyvsp[(6) - (8)].c)); + ;} + break; + + case 97: +#line 1026 "Gmsh.y" + { + ColorOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (8)].c), 0, (yyvsp[(5) - (8)].c), (yyvsp[(7) - (8)].u)); + Free((yyvsp[(1) - (8)].c)); Free((yyvsp[(5) - (8)].c)); + ;} + break; + + case 98: +#line 1031 "Gmsh.y" + { + ColorOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (11)].c), (int)(yyvsp[(3) - (11)].d), (yyvsp[(8) - (11)].c), (yyvsp[(10) - (11)].u)); + Free((yyvsp[(1) - (11)].c)); Free((yyvsp[(8) - (11)].c)); + ;} + break; + + case 99: +#line 1039 "Gmsh.y" + { + GmshColorTable *ct = GetColorTable(0); + if(!ct) + yymsg(0, "View[%d] does not exist", 0); + else{ + ct->size = List_Nbr((yyvsp[(5) - (6)].l)); + if(ct->size > COLORTABLE_NBMAX_COLOR) + yymsg(0, "Too many (%d>%d) colors in View[%d].ColorTable", + ct->size, COLORTABLE_NBMAX_COLOR, 0); + else + for(int i = 0; i < ct->size; i++) List_Read((yyvsp[(5) - (6)].l), i, &ct->table[i]); + if(ct->size == 1){ + ct->size = 2; + ct->table[1] = ct->table[0]; + } + } + Free((yyvsp[(1) - (6)].c)); + List_Delete((yyvsp[(5) - (6)].l)); + ;} + break; + + case 100: +#line 1059 "Gmsh.y" + { + GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (9)].d)); + if(!ct) + yymsg(0, "View[%d] does not exist", (int)(yyvsp[(3) - (9)].d)); + else{ + ct->size = List_Nbr((yyvsp[(8) - (9)].l)); + if(ct->size > COLORTABLE_NBMAX_COLOR) + yymsg(0, "Too many (%d>%d) colors in View[%d].ColorTable", + ct->size, COLORTABLE_NBMAX_COLOR, (int)(yyvsp[(3) - (9)].d)); + else + for(int i = 0; i < ct->size; i++) List_Read((yyvsp[(8) - (9)].l), i, &ct->table[i]); + if(ct->size == 1){ + ct->size = 2; + ct->table[1] = ct->table[0]; + } + } + Free((yyvsp[(1) - (9)].c)); + List_Delete((yyvsp[(8) - (9)].l)); + ;} + break; + + case 101: +#line 1082 "Gmsh.y" + { +#if defined(HAVE_MESH) + if(!strcmp((yyvsp[(1) - (5)].c),"Background")) + GModel::current()->getFields()->setBackgroundFieldId((int)(yyvsp[(4) - (5)].d)); + else if(!strcmp((yyvsp[(1) - (5)].c),"BoundaryLayer")) + GModel::current()->getFields()->setBoundaryLayerFieldId((int)(yyvsp[(4) - (5)].d)); + else + yymsg(0, "Unknown command '%s Field'", (yyvsp[(1) - (5)].c)); +#endif + ;} + break; + + case 102: +#line 1093 "Gmsh.y" + { +#if defined(HAVE_MESH) + if(!GModel::current()->getFields()->newField((int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c))) + yymsg(0, "Cannot create field %i of type '%s'", (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c)); +#endif + Free((yyvsp[(6) - (7)].c)); + ;} + break; + + case 103: +#line 1101 "Gmsh.y" + { +#if defined(HAVE_MESH) + Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (9)].d)); + if(field){ + FieldOption *option = field->options[(yyvsp[(6) - (9)].c)]; + if(option){ + try { option->numericalValue((yyvsp[(8) - (9)].d)); } + catch(...){ + yymsg(0, "Cannot assign a numerical value to option '%s' " + "in field %i of type '%s'", (yyvsp[(6) - (9)].c), (int)(yyvsp[(3) - (9)].d), field->getName()); + } + } + else + yymsg(0, "Unknown option '%s' in field %i of type '%s'", + (yyvsp[(6) - (9)].c), (int)(yyvsp[(3) - (9)].d), field->getName()); + } + else + yymsg(0, "No field with id %i", (int)(yyvsp[(3) - (9)].d)); +#endif + Free((yyvsp[(6) - (9)].c)); + ;} + break; + + case 104: +#line 1123 "Gmsh.y" + { +#if defined(HAVE_MESH) + Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (9)].d)); + if(field){ + FieldOption *option = field->options[(yyvsp[(6) - (9)].c)]; + if(option){ + try { option->string((yyvsp[(8) - (9)].c)); } + catch (...){ + yymsg(0, "Cannot assign a string value to option '%s' " + "in field %i of type '%s'", (yyvsp[(6) - (9)].c), (int)(yyvsp[(3) - (9)].d), field->getName()); + } + } + else + yymsg(0, "Unknown option '%s' in field %i of type '%s'", + (yyvsp[(6) - (9)].c), (int)(yyvsp[(3) - (9)].d), field->getName()); + } + else + yymsg(0, "No field with id %i", (int)(yyvsp[(3) - (9)].d)); +#endif + Free((yyvsp[(6) - (9)].c)); + Free((yyvsp[(8) - (9)].c)); + ;} + break; + + case 105: +#line 1146 "Gmsh.y" + { +#if defined(HAVE_MESH) + Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (11)].d)); + if(field){ + FieldOption *option = field->options[(yyvsp[(6) - (11)].c)]; + if(option){ + if (option->getType() == FIELD_OPTION_LIST) { + std::list<int> vl = option->list(); + vl.clear(); + for(int i = 0; i < List_Nbr((yyvsp[(9) - (11)].l)); i++){ + double id; + List_Read((yyvsp[(9) - (11)].l), i, &id); + vl.push_back((int)id); + } + option->list(vl); + } + else { + std::list<double> vl = option->listdouble(); + vl.clear(); + for(int i = 0; i < List_Nbr((yyvsp[(9) - (11)].l)); i++){ + double id; + List_Read((yyvsp[(9) - (11)].l), i, &id); + vl.push_back(id); + } + option->listdouble(vl); + } + } + else + yymsg(0, "Unknown option '%s' in field %i of type '%s'", + (yyvsp[(6) - (11)].c), (int)(yyvsp[(3) - (11)].d), field->getName()); + } + else + yymsg(0, "No field with id %i", (int)(yyvsp[(3) - (11)].d)); +#endif + Free((yyvsp[(6) - (11)].c)); + List_Delete((yyvsp[(9) - (11)].l)); + ;} + break; + + case 106: +#line 1184 "Gmsh.y" + { +#if defined(HAVE_MESH) + Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (7)].d)); + if(field){ + FieldCallback *callback = field->callbacks[(yyvsp[(6) - (7)].c)]; + if(callback) { + callback->run(); + } + else + yymsg(0, "Unknown callback '%s' in field %i of type '%s'", + (yyvsp[(6) - (7)].c), (int)(yyvsp[(3) - (7)].d), field->getName()); + } + else + yymsg(0, "No field with id %i", (int)(yyvsp[(3) - (7)].d)); +#endif + Free((yyvsp[(6) - (7)].c)); + ;} + break; + + case 107: +#line 1205 "Gmsh.y" + { +#if defined(HAVE_PLUGINS) + try { + PluginManager::instance()->setPluginOption((yyvsp[(3) - (9)].c), (yyvsp[(6) - (9)].c), (yyvsp[(8) - (9)].d)); + } + catch (...) { + yymsg(0, "Unknown option '%s' or plugin '%s'", (yyvsp[(6) - (9)].c), (yyvsp[(3) - (9)].c)); + } +#endif + Free((yyvsp[(3) - (9)].c)); Free((yyvsp[(6) - (9)].c)); + ;} + break; + + case 108: +#line 1217 "Gmsh.y" + { +#if defined(HAVE_PLUGINS) + try { + PluginManager::instance()->setPluginOption((yyvsp[(3) - (9)].c), (yyvsp[(6) - (9)].c), (yyvsp[(8) - (9)].c)); + } + catch (...) { + yymsg(0, "Unknown option '%s' or plugin '%s'", (yyvsp[(6) - (9)].c), (yyvsp[(3) - (9)].c)); + } +#endif + Free((yyvsp[(3) - (9)].c)); Free((yyvsp[(6) - (9)].c)); Free((yyvsp[(8) - (9)].c)); + ;} + break; + + case 112: +#line 1235 "Gmsh.y" + { + std::string key((yyvsp[(3) - (3)].c)); + std::vector<double> val(1, 0.); + if(!gmsh_yysymbols.count(key)){ + gmsh_yysymbols[key].value = val; + } + Free((yyvsp[(3) - (3)].c)); + ;} + break; + + case 113: +#line 1244 "Gmsh.y" + { + std::string key((yyvsp[(3) - (5)].c)); + std::vector<double> val(1, (yyvsp[(5) - (5)].d)); + if(!gmsh_yysymbols.count(key)){ + gmsh_yysymbols[key].value = val; + } + Free((yyvsp[(3) - (5)].c)); + ;} + break; + + case 114: +#line 1253 "Gmsh.y" + { init_options(); ;} + break; + + case 115: +#line 1255 "Gmsh.y" + { + if(List_Nbr((yyvsp[(6) - (9)].l)) != 1) + yymsg(1, "List notation should be used to define list '%s[]'", (yyvsp[(3) - (9)].c)); + std::string key((yyvsp[(3) - (9)].c)); + std::vector<double> val; + for(int i = 0; i < List_Nbr((yyvsp[(6) - (9)].l)); i++){ + double d; + List_Read((yyvsp[(6) - (9)].l), i, &d); + val.push_back(d); + } + if(!gmsh_yysymbols.count(key)){ + Msg::ExchangeOnelabParameter(key, val, floatOptions, charOptions); + gmsh_yysymbols[key].value = val; + } + Free((yyvsp[(3) - (9)].c)); + Free((yyvsp[(6) - (9)].l)); + ;} + break; + + case 116: +#line 1273 "Gmsh.y" + { init_options(); ;} + break; + + case 117: +#line 1275 "Gmsh.y" + { + std::string key((yyvsp[(3) - (11)].c)); + std::vector<double> val; + for(int i = 0; i < List_Nbr((yyvsp[(8) - (11)].l)); i++){ + double d; + List_Read((yyvsp[(8) - (11)].l), i, &d); + val.push_back(d); + } + if(!gmsh_yysymbols.count(key)){ + Msg::ExchangeOnelabParameter(key, val, floatOptions, charOptions); + gmsh_yysymbols[key].value = val; + } + Free((yyvsp[(3) - (11)].c)); + Free((yyvsp[(8) - (11)].l)); + ;} + break; + + case 118: +#line 1291 "Gmsh.y" + { + std::string key((yyvsp[(3) - (5)].c)), val((yyvsp[(5) - (5)].c)); + if(!gmsh_yystringsymbols.count(key)){ + gmsh_yystringsymbols[key] = std::vector<std::string>(1, val); + } + Free((yyvsp[(3) - (5)].c)); + Free((yyvsp[(5) - (5)].c)); + ;} + break; + + case 119: +#line 1300 "Gmsh.y" + { init_options(); ;} + break; + + case 120: +#line 1302 "Gmsh.y" + { + std::string key((yyvsp[(3) - (9)].c)), val((yyvsp[(6) - (9)].c)); + if(!gmsh_yysymbols.count(key)){ + Msg::ExchangeOnelabParameter(key, val, floatOptions, charOptions); + gmsh_yystringsymbols[key] = std::vector<std::string>(1, val); + } + Free((yyvsp[(3) - (9)].c)); + Free((yyvsp[(6) - (9)].c)); + ;} + break; + + case 122: +#line 1316 "Gmsh.y" + { + std::string name((yyvsp[(3) - (3)].c)); + Msg::UndefineOnelabParameter(name); + Free((yyvsp[(3) - (3)].c)); + ;} + break; + + case 123: +#line 1324 "Gmsh.y" + { + (yyval.l) = List_Create(20,20,sizeof(doubleXstring)); + doubleXstring v = {(yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].c)}; + List_Add((yyval.l), &v); + ;} + break; + + case 124: +#line 1330 "Gmsh.y" + { + doubleXstring v = {(yyvsp[(3) - (5)].d), (yyvsp[(5) - (5)].c)}; + List_Add((yyval.l), &v); + ;} + break; + + case 125: +#line 1335 "Gmsh.y" + { + (yyval.l) = List_Create(20,20,sizeof(doubleXstring)); + int n = List_Nbr((yyvsp[(1) - (5)].l)); + if(!gmsh_yystringsymbols.count((yyvsp[(3) - (5)].c))){ + yymsg(0, "Unknown string variable '%s'", (yyvsp[(3) - (5)].c)); + } + else{ + std::vector<std::string> &s(gmsh_yystringsymbols[(yyvsp[(3) - (5)].c)]); + int m = s.size(); + if(n == m){ + for(int i = 0; i < n; i++){ + double d; + List_Read((yyvsp[(1) - (5)].l), i, &d); + doubleXstring v = {d, strsave((char*)s[i].c_str())}; + List_Add((yyval.l), &v); + } + } + else{ + yymsg(0, "Size mismatch in enumeration: %d != %d", n, m); + } + } + List_Delete((yyvsp[(1) - (5)].l)); + ;} + break; + + case 132: +#line 1377 "Gmsh.y" + { + std::string key((yyvsp[(1) - (2)].c)); + for(int i = 0; i < List_Nbr((yyvsp[(2) - (2)].l)); i++){ + double v; + List_Read((yyvsp[(2) - (2)].l), i, &v); + floatOptions[key].push_back(v); + if (flag_Enum && !i) { member_ValMax = (int)v; } + } + Free((yyvsp[(1) - (2)].c)); + List_Delete((yyvsp[(2) - (2)].l)); + ;} + break; + + case 133: +#line 1389 "Gmsh.y" + { + std::string key((yyvsp[(1) - (1)].c)); + double v; + if (!flag_Enum) { + v = 1.; + if (key == "Enum") flag_Enum = 1; + } + else + v = (double)++member_ValMax; + floatOptions[key].push_back(v); + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 134: +#line 1402 "Gmsh.y" + { + std::string key((yyvsp[(1) - (4)].c)); + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + doubleXstring v; + List_Read((yyvsp[(3) - (4)].l), i, &v); + floatOptions[key].push_back(v.d); + charOptions[key].push_back(v.s); + } + Free((yyvsp[(1) - (4)].c)); + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++) + Free(((doubleXstring*)List_Pointer((yyvsp[(3) - (4)].l), i))->s); + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 135: +#line 1417 "Gmsh.y" + { + std::string key((yyvsp[(1) - (2)].c)); + std::string val((yyvsp[(2) - (2)].c)); + charOptions[key].push_back(val); + Free((yyvsp[(1) - (2)].c)); + Free((yyvsp[(2) - (2)].c)); + ;} + break; + + case 140: +#line 1439 "Gmsh.y" + { + std::string key((yyvsp[(1) - (2)].c)); + double val = (yyvsp[(2) - (2)].d); + floatOptions[key].push_back(val); + Free((yyvsp[(1) - (2)].c)); + ;} + break; + + case 141: +#line 1447 "Gmsh.y" + { + std::string key((yyvsp[(1) - (2)].c)); + std::string val((yyvsp[(2) - (2)].c)); + charOptions[key].push_back(val); + Free((yyvsp[(1) - (2)].c)); + Free((yyvsp[(2) - (2)].c)); + ;} + break; + + case 142: +#line 1456 "Gmsh.y" + { + std::string key("Macro"); + std::string val((yyvsp[(2) - (2)].c)); + charOptions[key].push_back(val); + Free((yyvsp[(2) - (2)].c)); + ;} + break; + + case 143: +#line 1464 "Gmsh.y" + { + std::string key((yyvsp[(1) - (4)].c)); + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + char *s; + List_Read((yyvsp[(3) - (4)].l), i, &s); + std::string val(s); + Free(s); + charOptions[key].push_back(val); + } + Free((yyvsp[(1) - (4)].c)); + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 144: +#line 1482 "Gmsh.y" + { + (yyval.i) = (int)(yyvsp[(1) - (1)].d); + ;} + break; + + case 145: +#line 1486 "Gmsh.y" + { + int t = GModel::current()->getGEOInternals()->getMaxPhysicalTag(); + GModel::current()->getGEOInternals()->setMaxPhysicalTag(t + 1); + (yyval.i) = GModel::current()->setPhysicalName(std::string((yyvsp[(1) - (1)].c)), 0, t + 1); + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 146: +#line 1493 "Gmsh.y" + { + (yyval.i) = GModel::current()->setPhysicalName(std::string((yyvsp[(1) - (3)].c)), 0, (yyvsp[(3) - (3)].d)); + Free((yyvsp[(1) - (3)].c)); + ;} + break; + + case 147: +#line 1501 "Gmsh.y" + { + (yyval.i) = (int)(yyvsp[(1) - (1)].d); + ;} + break; + + case 148: +#line 1505 "Gmsh.y" + { + int t = GModel::current()->getGEOInternals()->getMaxPhysicalTag(); + GModel::current()->getGEOInternals()->setMaxPhysicalTag(t + 1); + (yyval.i) = GModel::current()->setPhysicalName(std::string((yyvsp[(1) - (1)].c)), 1, t + 1); + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 149: +#line 1512 "Gmsh.y" + { + (yyval.i) = GModel::current()->setPhysicalName(std::string((yyvsp[(1) - (3)].c)), 1, (yyvsp[(3) - (3)].d)); + Free((yyvsp[(1) - (3)].c)); + ;} + break; + + case 150: +#line 1520 "Gmsh.y" + { + (yyval.i) = (int)(yyvsp[(1) - (1)].d); + ;} + break; + + case 151: +#line 1524 "Gmsh.y" + { + int t = GModel::current()->getGEOInternals()->getMaxPhysicalTag(); + GModel::current()->getGEOInternals()->setMaxPhysicalTag(t + 1); + (yyval.i) = GModel::current()->setPhysicalName(std::string((yyvsp[(1) - (1)].c)), 2, t + 1); + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 152: +#line 1531 "Gmsh.y" + { + (yyval.i) = GModel::current()->setPhysicalName(std::string((yyvsp[(1) - (3)].c)), 2, (yyvsp[(3) - (3)].d)); + Free((yyvsp[(1) - (3)].c)); + ;} + break; + + case 153: +#line 1539 "Gmsh.y" + { + (yyval.i) = (int)(yyvsp[(1) - (1)].d); + ;} + break; + + case 154: +#line 1543 "Gmsh.y" + { + int t = GModel::current()->getGEOInternals()->getMaxPhysicalTag(); + GModel::current()->getGEOInternals()->setMaxPhysicalTag(t + 1); + (yyval.i) = GModel::current()->setPhysicalName(std::string((yyvsp[(1) - (1)].c)), 3, t + 1); + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 155: +#line 1550 "Gmsh.y" + { + (yyval.i) = GModel::current()->setPhysicalName(std::string((yyvsp[(1) - (3)].c)), 3, (yyvsp[(3) - (3)].d)); + Free((yyvsp[(1) - (3)].c)); + ;} + break; + + case 156: +#line 1558 "Gmsh.y" + { + (yyval.i) = -1; + ;} + break; + + case 157: +#line 1562 "Gmsh.y" + { + (yyval.i) = (int)(yyvsp[(4) - (5)].d); + ;} + break; + + case 158: +#line 1568 "Gmsh.y" + { + for(int i = 0; i < 4; i++) (yyval.v)[i] = 0.; + ;} + break; + + case 159: +#line 1572 "Gmsh.y" + { + for(int i = 0; i < 4; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; + ;} + break; + + case 160: +#line 1579 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + double x = CTX::instance()->geom.scalingFactor * (yyvsp[(6) - (7)].v)[0]; + double y = CTX::instance()->geom.scalingFactor * (yyvsp[(6) - (7)].v)[1]; + double z = CTX::instance()->geom.scalingFactor * (yyvsp[(6) - (7)].v)[2]; + double lc = CTX::instance()->geom.scalingFactor * (yyvsp[(6) - (7)].v)[3]; + if(lc == 0.) lc = MAX_LC; // no mesh size given at the point + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addVertex(num, x, y, z, lc); + } + else{ + if(!myGmshSurface) + r = GModel::current()->getGEOInternals()->addVertex(num, x, y, z, lc); + else + r = GModel::current()->getGEOInternals()->addVertex(num, x, y, + myGmshSurface, lc); + } + if(!r) yymsg(0, "Could not add point"); + AddToTemporaryBoundingBox(x, y, z); + (yyval.s).Type = MSH_POINT; + (yyval.s).Num = num; + ;} + break; + + case 161: +#line 1603 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addLine(num, tags); + } + else{ + r = GModel::current()->getGEOInternals()->addLine(num, tags); + } + if(!r) yymsg(0, "Could not add line"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_SEGM_LINE; + (yyval.s).Num = num; + ;} + break; + + case 162: +#line 1619 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(0, "Spline not available with OpenCASCADE factory"); + } + else{ + r = GModel::current()->getGEOInternals()->addSpline(num, tags); + } + if(!r) yymsg(0, "Could not add spline"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_SEGM_SPLN; + (yyval.s).Num = num; + ;} + break; + + case 163: +#line 1635 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (8)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (8)].l), tags); + std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (8)].l), param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(tags.size() == 3){ + r = GModel::current()->getOCCInternals()->addCircleArc + (num, tags[0], tags[1], tags[2]); + } + else if(param.size() >= 4 && param.size() <= 6){ + double r = param[3]; + double a1 = (param.size() == 6) ? param[4] : 0.; + double a2 = (param.size() == 6) ? param[5] : + (param.size() == 5) ? param[4] : 2.*M_PI; + r = GModel::current()->getOCCInternals()->addCircle + (num, param[0], param[1], param[2], r, a1, a2); + } + else{ + yymsg(0, "Circle requires 3 points or 4 to 6 parameters"); + } + } + else{ + if(tags.size() == 3){ + r = GModel::current()->getGEOInternals()->addCircleArc + (num, tags[0], tags[1], tags[2], (yyvsp[(7) - (8)].v)[0], (yyvsp[(7) - (8)].v)[1], (yyvsp[(7) - (8)].v)[2]); + } + else{ + yymsg(0, "Circle requires 3 points"); + } + } + if(!r) yymsg(0, "Could not add circle"); + List_Delete((yyvsp[(6) - (8)].l)); + (yyval.s).Type = MSH_SEGM_CIRC; + (yyval.s).Num = num; + ;} + break; + + case 164: +#line 1672 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (8)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (8)].l), tags); + std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (8)].l), param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(tags.size() == 3){ + r = GModel::current()->getOCCInternals()->addEllipseArc + (num, tags[0], tags[1], tags[2]); + } + else if(tags.size() == 4){ + r = GModel::current()->getOCCInternals()->addEllipseArc + (num, tags[0], tags[1], tags[3]); + } + else if(param.size() >= 5 && param.size() <= 7){ + double a1 = (param.size() == 7) ? param[5] : 0.; + double a2 = (param.size() == 7) ? param[6] : + (param.size() == 6) ? param[5] : 2.*M_PI; + r = GModel::current()->getOCCInternals()->addEllipse + (num, param[0], param[1], param[2], param[3], param[4], a1, a2); + } + else{ + yymsg(0, "Ellipse requires 3 or 4 points, or 5 to 7 parameters"); + } + } + else{ + if(tags.size() == 4){ + r = GModel::current()->getGEOInternals()->addEllipseArc + (num, tags[0], tags[1], tags[2], tags[3], (yyvsp[(7) - (8)].v)[0], (yyvsp[(7) - (8)].v)[1], (yyvsp[(7) - (8)].v)[2]); + } + else{ + yymsg(0, "Ellipse requires 4 points"); + } + } + if(!r) yymsg(0, "Could not add ellipse"); + List_Delete((yyvsp[(6) - (8)].l)); + (yyval.s).Type = MSH_SEGM_ELLI; + (yyval.s).Num = num; + ;} + break; + + case 165: +#line 1712 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addBSpline(num, tags); + } + else{ + r = GModel::current()->getGEOInternals()->addBSpline(num, tags); + } + if(!r) yymsg(0, "Could not add BSpline"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_SEGM_BSPLN; + (yyval.s).Num = num; + ;} + break; + + case 166: +#line 1728 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addBezier(num, tags); + } + else{ + r = GModel::current()->getGEOInternals()->addBezier(num, tags); + } + if(!r) yymsg(0, "Could not add Bezier"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_SEGM_BEZIER; + (yyval.s).Num = num; + ;} + break; + + case 167: +#line 1745 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (11)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (11)].l), tags); + std::vector<double> knots; ListOfDouble2Vector((yyvsp[(8) - (11)].l), knots); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(0, "Nurbs not available yet with OpenCASCADE factory"); + } + else{ + int order = knots.size() - tags.size() - 1; + if(order != (int)(yyvsp[(10) - (11)].d)) + yymsg(1, "Incompatible Nurbs order: using %d", order); + r = GModel::current()->getGEOInternals()->addNurbs(num, tags, knots); + } + if(!r) yymsg(0, "Could not add nurbs"); + List_Delete((yyvsp[(6) - (11)].l)); + List_Delete((yyvsp[(8) - (11)].l)); + (yyval.s).Type = MSH_SEGM_NURBS; + (yyval.s).Num = num; + ;} + break; + + case 168: +#line 1766 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); + bool r = GModel::current()->getGEOInternals()->addCompoundLine(num, tags); + if(!r) yymsg(0, "Could not add compound line"); + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_SEGM_COMPOUND; + (yyval.s).Num = num; + ;} + break; + + case 169: +#line 1776 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addWire(num, tags, false); + } + else{ + yymsg(0, "Wire only available using OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add wire"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_SEGM_LOOP; + (yyval.s).Num = num; + ;} + break; + + case 170: +#line 1792 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addLineLoop(num, tags); + } + else{ + r = GModel::current()->getGEOInternals()->addLineLoop(num, tags); + } + if(!r) yymsg(0, "Could not add line loop"); + List_Delete((yyvsp[(7) - (8)].l)); + Free((yyvsp[(2) - (8)].c)); + (yyval.s).Type = MSH_SEGM_LOOP; + (yyval.s).Num = num; + ;} + break; + + case 171: +#line 1809 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addPlaneSurface(num, tags); + } + else{ + r = GModel::current()->getGEOInternals()->addPlaneSurface(num, tags); + } + if(!r) yymsg(0, "Could not add plane surface"); + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_SURF_PLAN; + (yyval.s).Num = num; + ;} + break; + + case 172: +#line 1825 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (8)].d); + std::vector<int> wires; ListOfDouble2Vector((yyvsp[(6) - (8)].l), wires); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(wires.size() != 1){ + yymsg(0, "OpenCASCADE face filling requires a single line loop"); + } + else{ + r = GModel::current()->getOCCInternals()->addSurfaceFilling(num, wires[0]); + } + } + else{ + r = GModel::current()->getGEOInternals()->addSurfaceFilling(num, wires, (yyvsp[(7) - (8)].i)); + } + if(!r) yymsg(0, "Could not add surface"); + List_Delete((yyvsp[(6) - (8)].l)); + (yyval.s).Type = MSH_SURF_REGL; + (yyval.s).Num = num; + ;} + break; + + case 173: +#line 1846 "Gmsh.y" + { + yymsg(2, "'Ruled Surface' command is deprecated: use 'Surface' instead"); + int num = (int)(yyvsp[(4) - (9)].d); + std::vector<int> wires; ListOfDouble2Vector((yyvsp[(7) - (9)].l), wires); + bool r = GModel::current()->getGEOInternals()->addSurfaceFilling(num, wires, (yyvsp[(8) - (9)].i)); + if(!r) yymsg(0, "Could not add surface"); + List_Delete((yyvsp[(7) - (9)].l)); + (yyval.s).Type = MSH_SURF_REGL; + (yyval.s).Num = num; + ;} + break; + + case 174: +#line 1857 "Gmsh.y" + { + myGmshSurface = 0; + (yyval.s).Type = 0; + (yyval.s).Num = 0; + ;} + break; + + case 175: +#line 1863 "Gmsh.y" + { + myGmshSurface = gmshSurface::getSurface((int)(yyvsp[(3) - (4)].d)); + (yyval.s).Type = 0; + (yyval.s).Num = 0; + ;} + break; + + case 176: +#line 1869 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (10)].d); + myGmshSurface = gmshParametricSurface::NewParametricSurface(num, (yyvsp[(7) - (10)].c), (yyvsp[(8) - (10)].c), (yyvsp[(9) - (10)].c)); + (yyval.s).Type = 0; + (yyval.s).Num = num; + ;} + break; + + case 177: +#line 1876 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); + std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); + (yyval.s).Type = 0; + bool r = true; + if(param.size() >= 4 && param.size() <= 7){ + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + double a1 = (param.size() >= 5) ? param[4] : -M_PI/2; + double a2 = (param.size() >= 6) ? param[5] : M_PI/2; + double a3 = (param.size() >= 7) ? param[6] : 2.*M_PI; + r = GModel::current()->getOCCInternals()->addSphere + (num, param[0], param[1], param[2], param[3], a1, a2, a3); + } + else{ + yymsg(0, "Sphere only available with OpenCASCADE factory"); + } + (yyval.s).Type = MSH_VOLUME; + } + else if(tags.size() == 2){ + myGmshSurface = GModel::current()->getGEOInternals()->newGeometrySphere + (num, tags[0], tags[1]); + } + else{ + yymsg(0, "Sphere requires 2 points or from 4 to 7 parameters"); + } + if(!r) yymsg(0, "Could not add sphere"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Num = num; + ;} + break; + + case 178: +#line 1907 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); + if(tags.size() == 2){ + myGmshSurface = GModel::current()->getGEOInternals()->newGeometryPolarSphere + (num, tags[0], tags[1]); + } + else{ + yymsg(0, "PolarSphere requires 2 points"); + } + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = 0; + (yyval.s).Num = num; + ;} + break; + + case 179: +#line 1922 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() == 6){ + r = GModel::current()->getOCCInternals()->addBlock + (num, param[0], param[1], param[2], param[3], param[4], param[5]); + } + else{ + yymsg(0, "Block requires 6 parameters"); + } + } + else{ + yymsg(0, "Block only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add block"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_VOLUME; + (yyval.s).Num = num; + ;} + break; + + case 180: +#line 1944 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() == 5 || param.size() == 6){ + double alpha = (param.size() == 6) ? param[5] : 2*M_PI; + r = GModel::current()->getOCCInternals()->addTorus + (num, param[0], param[1], param[2], param[3], param[4], alpha); + } + else{ + yymsg(0, "Torus requires 5 ou 6 parameters"); + } + } + else{ + yymsg(0, "Torus only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add torus"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_VOLUME; + (yyval.s).Num = num; + ;} + break; + + case 181: +#line 1967 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() == 6 || param.size() == 7){ + double r = (param.size() == 7) ? param[6] : 0.; + r = GModel::current()->getOCCInternals()->addRectangle + (num, param[0], param[1], param[2], param[3], param[4], param[5], r); + } + else{ + yymsg(0, "Rectangle requires 6 ou 7 parameters"); + } + } + else{ + yymsg(0, "Rectangle only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add rectangle"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_SURF_PLAN; + (yyval.s).Num = num; + ;} + break; + + case 182: +#line 1990 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() == 4 || param.size() == 5){ + double ry = (param.size() == 5) ? param[4] : param[3]; + r = GModel::current()->getOCCInternals()->addDisk + (num, param[0], param[1], param[2], param[3], ry); + } + else{ + yymsg(0, "Disk requires 4 or 5 parameters"); + } + } + else{ + yymsg(0, "Disk only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add disk"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_SURF_PLAN; + (yyval.s).Num = num; + ;} + break; + + case 183: +#line 2013 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() == 7 || param.size() == 8){ + double angle = (param.size() == 8) ? param[7] : 2*M_PI; + r = GModel::current()->getOCCInternals()->addCylinder + (num, param[0], param[1], param[2], param[3], param[4], param[5], + param[6], angle); + } + else{ + yymsg(0, "Cylinder requires 7 or 8 parameters"); + } + } + else{ + yymsg(0, "Cylinder only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add cylinder"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_VOLUME; + (yyval.s).Num = num; + ;} + break; + + case 184: +#line 2037 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() == 8 || param.size() == 9){ + double alpha = (param.size() == 9) ? param[8] : 2*M_PI; + r = GModel::current()->getOCCInternals()->addCone + (num, param[0], param[1], param[2], param[3], param[4], param[5], + param[6], param[7], alpha); + } + else{ + yymsg(0, "Cone requires 8 or 9 parameters"); + } + } + else{ + yymsg(0, "Cone only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add cone"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_VOLUME; + (yyval.s).Num = num; + ;} + break; + + case 185: +#line 2061 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() == 7){ + r = GModel::current()->getOCCInternals()->addWedge + (num, param[0], param[1], param[2], param[3], param[4], param[5], + param[6]); + } + else{ + yymsg(0, "Wedge requires 7 parameters"); + } + } + else{ + yymsg(0, "Wedge only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add wedge"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_VOLUME; + (yyval.s).Num = num; + ;} + break; + + case 186: +#line 2084 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() >= 2){ + int in = (int)param[0]; + double offset = param[1]; + std::vector<int> exclude; + for(unsigned int i = 2; i < param.size(); i++) + exclude.push_back(param[i]); + r = GModel::current()->getOCCInternals()->addThickSolid + (num, in, exclude, offset); + } + else{ + yymsg(0, "ThickSolid requires at least 2 parameters"); + } + } + else{ + yymsg(0, "ThickSolid only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add thick solid"); + List_Delete((yyvsp[(6) - (7)].l)); + ;} + break; + + case 187: +#line 2109 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); + bool r = GModel::current()->getGEOInternals()->addCompoundSurface(num, tags); + if(!r) yymsg(0, "Could not add compound surface"); + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_SURF_COMPOUND; + (yyval.s).Num = num; + ;} + break; + + case 188: +#line 2120 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (12)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (12)].l), tags); + std::vector<int> bndTags[4]; + for(int i = 0; i < List_Nbr((yyvsp[(10) - (12)].l)); i++){ + if(i < 4) + ListOfDouble2Vector(*(List_T**)List_Pointer((yyvsp[(10) - (12)].l), i), bndTags[i]); + else + break; + } + bool r = GModel::current()->getGEOInternals()->addCompoundSurface + (num, tags, bndTags); + if(!r) yymsg(0, "Could not add compound surface"); + List_Delete((yyvsp[(7) - (12)].l)); + Free((yyvsp[(8) - (12)].c)); + for (int i = 0; i < List_Nbr((yyvsp[(10) - (12)].l)); i++) + List_Delete(*(List_T**)List_Pointer((yyvsp[(10) - (12)].l), i)); + List_Delete((yyvsp[(10) - (12)].l)); + (yyval.s).Type = MSH_SURF_COMPOUND; + (yyval.s).Num = num; + ;} + break; + + case 189: +#line 2142 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addSurfaceLoop(num, tags); + } + else{ + r = GModel::current()->getGEOInternals()->addSurfaceLoop(num, tags); + } + if(!r) yymsg(0, "Could not add surface loop"); + List_Delete((yyvsp[(7) - (8)].l)); + Free((yyvsp[(2) - (8)].c)); + (yyval.s).Type = MSH_SURF_LOOP; + (yyval.s).Num = num; + ;} + break; + + case 190: +#line 2159 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addVolume(num, tags); + } + else{ + r = GModel::current()->getGEOInternals()->addVolume(num, tags); + } + if(!r) yymsg(0, "Could not add volume"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_VOLUME; + (yyval.s).Num = num; + ;} + break; + + case 191: +#line 2175 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + std::vector<int> wires; ListOfDouble2Vector((yyvsp[(6) - (7)].l), wires); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<std::pair<int, int> > outDimTags; + r = GModel::current()->getOCCInternals()->addThruSections + (num, wires, outDimTags, true, false); + } + else{ + yymsg(0, "ThruSections only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add thrusections"); + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_VOLUME; + (yyval.s).Num = num; + ;} + break; + + case 192: +#line 2193 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].d); + std::vector<int> wires; ListOfDouble2Vector((yyvsp[(7) - (8)].l), wires); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<std::pair<int, int> > outDimTags; + r = GModel::current()->getOCCInternals()->addThruSections + (num, wires, outDimTags, true, true); + } + else{ + yymsg(0, "ThruSections only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add ruled thrusections"); + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_VOLUME; + (yyval.s).Num = num; + ;} + break; + + case 193: +#line 2211 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].d); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); + bool r = GModel::current()->getGEOInternals()->addCompoundVolume(num, tags); + if(!r) yymsg(0, "Could not add compound volume"); + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_VOLUME_COMPOUND; + (yyval.s).Num = num; + ;} + break; + + case 194: +#line 2221 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].i); + int op = (yyvsp[(6) - (8)].i); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); + bool r = GModel::current()->getGEOInternals()->modifyPhysicalGroup + (0, num, op, tags); + if(!r) yymsg(0, "Could not modify physical point"); + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_PHYSICAL_POINT; + (yyval.s).Num = num; + ;} + break; + + case 195: +#line 2233 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].i); + int op = (yyvsp[(6) - (8)].i); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); + bool r = GModel::current()->getGEOInternals()->modifyPhysicalGroup + (1, num, op, tags); + if(!r) yymsg(0, "Could not modify physical line"); + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_PHYSICAL_LINE; + (yyval.s).Num = num; + ;} + break; + + case 196: +#line 2245 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].i); + int op = (yyvsp[(6) - (8)].i); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); + bool r = GModel::current()->getGEOInternals()->modifyPhysicalGroup + (2, num, op, tags); + if(!r) yymsg(0, "Could not modify physical surface"); + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_PHYSICAL_SURFACE; + (yyval.s).Num = num; + ;} + break; + + case 197: +#line 2257 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].i); + int op = (yyvsp[(6) - (8)].i); + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); + bool r = GModel::current()->getGEOInternals()->modifyPhysicalGroup + (3, num, op, tags); + if(!r) yymsg(0, "Could not modify physical volume"); + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_PHYSICAL_VOLUME; + (yyval.s).Num = num; + ;} + break; + + case 198: +#line 2274 "Gmsh.y" + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), dimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->translate + (dimTags, (yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2]); + } + else{ + r = GModel::current()->getGEOInternals()->translate + (dimTags, (yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2]); + } + if(!r) yymsg(0, "Could not translate shapes"); + (yyval.l) = (yyvsp[(4) - (5)].l); + ;} + break; + + case 199: +#line 2290 "Gmsh.y" + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs((yyvsp[(10) - (11)].l), dimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->rotate + (dimTags, (yyvsp[(5) - (11)].v)[0], (yyvsp[(5) - (11)].v)[1], (yyvsp[(5) - (11)].v)[2], (yyvsp[(3) - (11)].v)[0], (yyvsp[(3) - (11)].v)[1], (yyvsp[(3) - (11)].v)[2], (yyvsp[(7) - (11)].d)); + } + else{ + r = GModel::current()->getGEOInternals()->rotate + (dimTags, (yyvsp[(5) - (11)].v)[0], (yyvsp[(5) - (11)].v)[1], (yyvsp[(5) - (11)].v)[2], (yyvsp[(3) - (11)].v)[0], (yyvsp[(3) - (11)].v)[1], (yyvsp[(3) - (11)].v)[2], (yyvsp[(7) - (11)].d)); + } + if(!r) yymsg(0, "Could not rotate shapes"); + (yyval.l) = (yyvsp[(10) - (11)].l); + ;} + break; + + case 200: +#line 2306 "Gmsh.y" + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), dimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + Msg::Error("Symmetry not implemented yet with OpenCASCADE factory"); + } + else{ + r = GModel::current()->getGEOInternals()->symmetry + (dimTags, (yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], (yyvsp[(2) - (5)].v)[3]); + } + if(!r) yymsg(0, "Could not apply symmetry transform"); + (yyval.l) = (yyvsp[(4) - (5)].l); + ;} + break; + + case 201: +#line 2321 "Gmsh.y" + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs((yyvsp[(8) - (9)].l), dimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(1, "Warning Dilate OCC: Dilatation (second argument) + Translation (first argument) "); + r = GModel::current()->getOCCInternals()->dilate + (dimTags, (yyvsp[(3) - (9)].v)[0], (yyvsp[(3) - (9)].v)[1], (yyvsp[(3) - (9)].v)[2], (yyvsp[(5) - (9)].d), (yyvsp[(5) - (9)].d), (yyvsp[(5) - (9)].d)); + } + else{ + r = GModel::current()->getGEOInternals()->dilate + (dimTags, (yyvsp[(3) - (9)].v)[0], (yyvsp[(3) - (9)].v)[1], (yyvsp[(3) - (9)].v)[2], (yyvsp[(5) - (9)].d), (yyvsp[(5) - (9)].d), (yyvsp[(5) - (9)].d)); + } + if(!r) yymsg(0, "Could not dilate shapes"); + (yyval.l) = (yyvsp[(8) - (9)].l); + ;} + break; + + case 202: +#line 2338 "Gmsh.y" + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs((yyvsp[(8) - (9)].l), dimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(1, "Warning Dilate OCC: Dilatation (second argument) + Translation (first argument) "); + r = GModel::current()->getOCCInternals()->dilate + (dimTags, (yyvsp[(3) - (9)].v)[0], (yyvsp[(3) - (9)].v)[1], (yyvsp[(3) - (9)].v)[2], (yyvsp[(5) - (9)].v)[0], (yyvsp[(5) - (9)].v)[1], (yyvsp[(5) - (9)].v)[2]); + } + else{ + r = GModel::current()->getGEOInternals()->dilate + (dimTags, (yyvsp[(3) - (9)].v)[0], (yyvsp[(3) - (9)].v)[1], (yyvsp[(3) - (9)].v)[2], (yyvsp[(5) - (9)].v)[0], (yyvsp[(5) - (9)].v)[1], (yyvsp[(5) - (9)].v)[2]); + } + if(!r) yymsg(0, "Could not dilate shapes"); + (yyval.l) = (yyvsp[(8) - (9)].l); + ;} + break; + + case 203: +#line 2355 "Gmsh.y" + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs((yyvsp[(3) - (4)].l), inDimTags); + (yyval.l) = (yyvsp[(3) - (4)].l); + List_Reset((yyval.l)); + std::string action((yyvsp[(1) - (4)].c)); + bool r = true; + if(action == "Duplicata"){ + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->copy(inDimTags, outDimTags); + } + else{ + r = GModel::current()->getGEOInternals()->copy(inDimTags, outDimTags); + } + } + else if(action == "Boundary" || action == "CombinedBoundary"){ + // boundary operations are performed directly on GModel, which enables + // to compute the boundary of hybrid CAD models; this also automatically + // binds all boundary entities for OCC models + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + r = GModel::current()->getBoundaryTags + (inDimTags, outDimTags, action == "CombinedBoundary"); + } + else{ + yymsg(0, "Unknown action on multiple shapes '%s'", (yyvsp[(1) - (4)].c)); + } + if(!r) yymsg(0, "Could not apply operation on shapes"); + VectorOfPairs2ListOfShapes(outDimTags, (yyval.l)); + Free((yyvsp[(1) - (4)].c)); + ;} + break; + + case 204: +#line 2390 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(0, "Intersect line not available with OpenCASCADE"); + } + else{ + std::vector<int> in, out; ListOfDouble2Vector((yyvsp[(4) - (9)].l), in); + r = GModel::current()->getGEOInternals()->intersectCurvesWithSurface + (in, (int)(yyvsp[(8) - (9)].d), out); + for(unsigned int i = 0; i < out.size(); i++){ + Shape s; + s.Type = MSH_POINT; + s.Num = out[i]; + List_Add((yyval.l), &s); + } + } + if(!r) yymsg(0, "Could not intersect line"); + List_Delete((yyvsp[(4) - (9)].l)); + ;} + break; + + case 205: +#line 2412 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(0, "Split Line not available with OpenCASCADE"); + } + else{ + std::vector<int> vertices, curves; ListOfDouble2Vector((yyvsp[(7) - (9)].l), vertices); + r = GModel::current()->getGEOInternals()->splitCurve + ((int)(yyvsp[(4) - (9)].d), vertices, curves); + for(unsigned int i = 0; i < curves.size(); i++){ + Shape s; + s.Type = MSH_SEGM_LINE; + s.Num = curves[i]; + List_Add((yyval.l), &s); + } + } + if(!r) yymsg(0, "Could not split line"); + List_Delete((yyvsp[(7) - (9)].l)); + ;} + break; + + case 206: +#line 2435 "Gmsh.y" + { (yyval.l) = (yyvsp[(1) - (1)].l); ;} + break; + + case 207: +#line 2436 "Gmsh.y" + { (yyval.l) = (yyvsp[(1) - (1)].l); ;} + break; + + case 208: +#line 2441 "Gmsh.y" + { + (yyval.l) = List_Create(3, 3, sizeof(Shape)); + ;} + break; + + case 209: +#line 2445 "Gmsh.y" + { + List_Add((yyval.l), &(yyvsp[(2) - (2)].s)); + ;} + break; + + case 210: +#line 2449 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ + double d; + List_Read((yyvsp[(4) - (6)].l), i, &d); + Shape s; + s.Num = (int)d; + s.Type = MSH_POINT; + List_Add((yyval.l), &s); + } + ;} + break; + + case 211: +#line 2460 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ + double d; + List_Read((yyvsp[(4) - (6)].l), i, &d); + Shape s; + s.Num = (int)d; + s.Type = MSH_SEGM_LINE; + List_Add((yyval.l), &s); + } + ;} + break; + + case 212: +#line 2471 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ + double d; + List_Read((yyvsp[(4) - (6)].l), i, &d); + Shape s; + s.Num = (int)d; + s.Type = MSH_SURF_PLAN; // we don't care about the actual type + List_Add((yyval.l), &s); + } + ;} + break; + + case 213: +#line 2482 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ + double d; + List_Read((yyvsp[(4) - (6)].l), i, &d); + Shape s; + s.Num = (int)d; + s.Type = MSH_VOLUME; + List_Add((yyval.l), &s); + } + ;} + break; + + case 214: +#line 2498 "Gmsh.y" + { + if(List_Nbr((yyvsp[(7) - (8)].l)) == 4){ + int t = (int)(yyvsp[(4) - (8)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d[4]; + for(int i = 0; i < 4; i++) + List_Read((yyvsp[(7) - (8)].l), i, &d[i]); + gLevelset *ls = new gLevelsetPlane(d[0], d[1], d[2], d[3], t); + gLevelset::add(ls); + } + } + else + yymsg(0, "Wrong number of arguments for levelset definition"); + List_Delete((yyvsp[(7) - (8)].l)); + ;} + break; + + case 215: +#line 2517 "Gmsh.y" + { + int t = (int)(yyvsp[(4) - (10)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + fullMatrix<double> centers(List_Nbr((yyvsp[(8) - (10)].l)),3); + for (int i = 0; i < List_Nbr((yyvsp[(8) - (10)].l)); i++){ + List_T *l = *(List_T**)List_Pointer((yyvsp[(8) - (10)].l), i); + for (int j = 0; j < List_Nbr(l); j++){ + centers(i,j) = (double)(*(double*)List_Pointer(l, j)); + } + } + gLevelset *ls = new gLevelsetPoints(centers, t); + gLevelset::add(ls); + } + for(int i = 0; i < List_Nbr((yyvsp[(8) - (10)].l)); i++) + List_Delete(*(List_T**)List_Pointer((yyvsp[(8) - (10)].l), i)); + List_Delete((yyvsp[(8) - (10)].l)); + ;} + break; + + case 216: +#line 2539 "Gmsh.y" + { + int t = (int)(yyvsp[(4) - (14)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double pt[3] = {(yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2]}; + double n[3] = {(yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2]}; + gLevelset *ls = new gLevelsetPlane(pt, n, t); + gLevelset::add(ls); + } + List_Delete((yyvsp[(12) - (14)].l)); + ;} + break; + + case 217: +#line 2554 "Gmsh.y" + { + int t = (int)(yyvsp[(4) - (16)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double pt1[3] = {(yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2]}; + double pt2[3] = {(yyvsp[(10) - (16)].v)[0], (yyvsp[(10) - (16)].v)[1], (yyvsp[(10) - (16)].v)[2]}; + double pt3[3] = {(yyvsp[(12) - (16)].v)[0], (yyvsp[(12) - (16)].v)[1], (yyvsp[(12) - (16)].v)[2]}; + gLevelset *ls = new gLevelsetPlane(pt1, pt2, pt3, t); + gLevelset::add(ls); + } + List_Delete((yyvsp[(14) - (16)].l)); + ;} + break; + + case 218: +#line 2569 "Gmsh.y" + { + if(List_Nbr((yyvsp[(10) - (12)].l)) == 1){ + int t = (int)(yyvsp[(4) - (12)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d; + List_Read((yyvsp[(10) - (12)].l), 0, &d); + gLevelset *ls = new gLevelsetSphere((yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], d, t); + gLevelset::add(ls); + } + } + else + yymsg(0, "Wrong number of arguments for levelset definition"); + List_Delete((yyvsp[(10) - (12)].l)); + ;} + break; + + case 219: +#line 2588 "Gmsh.y" + { + if(List_Nbr((yyvsp[(12) - (14)].l)) == 1){ + int t = (int)(yyvsp[(4) - (14)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d; + List_Read((yyvsp[(12) - (14)].l), 0, &d); + double pt[3] = {(yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2]}; + double dir[3] = {(yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2]}; + gLevelset *ls = new gLevelsetGenCylinder(pt, dir, d, t); + gLevelset::add(ls); + } + } + else if(List_Nbr((yyvsp[(12) - (14)].l)) == 2){ + int t = (int)(yyvsp[(4) - (14)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d[2]; + for(int i = 0; i < 2; i++) + List_Read((yyvsp[(12) - (14)].l), i, &d[i]); + double pt[3] = {(yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2]}; + double dir[3] = {(yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2]}; + gLevelset *ls = new gLevelsetCylinder(pt, dir, d[0], d[1], t); + gLevelset::add(ls); + } + } + else if(List_Nbr((yyvsp[(12) - (14)].l)) == 3){ + int t = (int)(yyvsp[(4) - (14)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d[3]; + for(int i = 0; i < 3; i++) + List_Read((yyvsp[(12) - (14)].l), i, &d[i]); + double pt[3] = {(yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2]}; + double dir[3] = {(yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2]}; + gLevelset *ls = new gLevelsetCylinder(pt, dir, d[0], d[1], d[2], t); + gLevelset::add(ls); + } + } + else + yymsg(0, "Wrong number of arguments for levelset definition"); + List_Delete((yyvsp[(12) - (14)].l)); + ;} + break; + + case 220: +#line 2639 "Gmsh.y" + { + if(List_Nbr((yyvsp[(12) - (14)].l)) == 1){ + int t = (int)(yyvsp[(4) - (14)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d; + List_Read((yyvsp[(12) - (14)].l), 0, &d); + double pt[3] = {(yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2]}; + double dir[3] = {(yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2]}; + gLevelset *ls = new gLevelsetCone(pt, dir, d, t); + gLevelset::add(ls); + } + } + else + yymsg(0, "Wrong number of arguments for levelset definition"); + List_Delete((yyvsp[(12) - (14)].l)); + ;} + break; + + case 221: +#line 2660 "Gmsh.y" + { + if(List_Nbr((yyvsp[(12) - (14)].l)) == 3){ + int t = (int)(yyvsp[(4) - (14)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d[3]; + for(int i = 0; i < 3; i++) + List_Read((yyvsp[(12) - (14)].l), i, &d[i]); + double pt[3] = {(yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2]}; + double dir[3] = {(yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2]}; + gLevelset *ls = new gLevelsetEllipsoid(pt, dir, d[0], d[1], d[2], t); + gLevelset::add(ls); + } + } + else + yymsg(0, "Wrong number of arguments for levelset definition"); + List_Delete((yyvsp[(12) - (14)].l)); + ;} + break; + + case 222: +#line 2682 "Gmsh.y" + { + if(List_Nbr((yyvsp[(12) - (14)].l)) == 5){ + int t = (int)(yyvsp[(4) - (14)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d[5]; + for(int i = 0; i < 5; i++) + List_Read((yyvsp[(12) - (14)].l), i, &d[i]); + double pt[3] = {(yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2]}; + double dir[3] = {(yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2]}; + gLevelset *ls = new gLevelsetGeneralQuadric(pt, dir, d[0], d[1], + d[2], d[3], d[4], t); + gLevelset::add(ls); + } + } + else + yymsg(0, "Wrong number of arguments for levelset definition"); + List_Delete((yyvsp[(12) - (14)].l)); + ;} + break; + + case 223: +#line 2704 "Gmsh.y" + { + if(!strcmp((yyvsp[(2) - (8)].c), "Union")){ + int t = (int)(yyvsp[(4) - (8)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + std::vector<gLevelset *> vl; + for(int i = 0; i < List_Nbr((yyvsp[(7) - (8)].l)); i++) { + double d; List_Read((yyvsp[(7) - (8)].l), i, &d); + gLevelset *pl = gLevelset::find((int)d); + if(!pl) yymsg(0, "Unknown levelset %d", (int)d); + else vl.push_back(pl); + } + gLevelset *ls = new gLevelsetUnion(vl, true, t); + gLevelset::add(ls); + } + } + else if(!strcmp((yyvsp[(2) - (8)].c), "Intersection")){ + int t = (int)(yyvsp[(4) - (8)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + std::vector<gLevelset *> vl; + for(int i = 0; i < List_Nbr((yyvsp[(7) - (8)].l)); i++) { + double d; List_Read((yyvsp[(7) - (8)].l), i, &d); + gLevelset *pl = gLevelset::find((int)d); + if(!pl) yymsg(0, "Unknown levelset %d", (int)d); + else vl.push_back(pl); + } + gLevelset *ls = new gLevelsetIntersection(vl, true, t); + gLevelset::add(ls); + } + } + else if(!strcmp((yyvsp[(2) - (8)].c), "Cut")){ + int t = (int)(yyvsp[(4) - (8)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + std::vector<gLevelset *> vl; + for(int i = 0; i < List_Nbr((yyvsp[(7) - (8)].l)); i++) { + double d; List_Read((yyvsp[(7) - (8)].l), i, &d); + gLevelset *pl = gLevelset::find((int)d); + if(!pl) yymsg(0, "Unknown levelset %d", (int)d); + else vl.push_back(pl); + } + gLevelset *ls = new gLevelsetCut(vl, true, t); + gLevelset::add(ls); + } + } + else if(!strcmp((yyvsp[(2) - (8)].c), "Crack")){ + int t = (int)(yyvsp[(4) - (8)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + std::vector<gLevelset *> vl; + for(int i = 0; i < List_Nbr((yyvsp[(7) - (8)].l)); i++) { + double d; List_Read((yyvsp[(7) - (8)].l), i, &d); + gLevelset *pl = gLevelset::find((int)d); + if(!pl) yymsg(0, "Unknown levelset %d", (int)d); + else vl.push_back(pl); + } + gLevelset *ls = new gLevelsetCrack(vl, false, t); + gLevelset::add(ls); + } + } + else if(!strcmp((yyvsp[(2) - (8)].c), "Reverse")){ + int t = (int)(yyvsp[(4) - (8)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d; + List_Read((yyvsp[(7) - (8)].l), 0, &d); + gLevelset *pl = gLevelset::find((int)d); + gLevelset *ls = NULL; + if(!pl) yymsg(0, "Unknown levelset %d", (int)d); + else ls = new gLevelsetReverse(pl, t); + if(ls) gLevelset::add(ls); + } + } +#if defined(HAVE_POST) + else if(!strcmp((yyvsp[(2) - (8)].c), "PostView")){ + int t = (int)(yyvsp[(4) - (8)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + if(List_Nbr((yyvsp[(7) - (8)].l)) > 0){ + double d; List_Read((yyvsp[(7) - (8)].l), 0, &d); + gLevelset *ls = new gLevelsetPostView((int)d, t); + gLevelset::add(ls); + } + } + } +#endif + else + yymsg(0, "Wrong number of arguments for levelset definition"); + Free((yyvsp[(2) - (8)].c)); + List_Delete((yyvsp[(7) - (8)].l)); + ;} + break; + + case 224: +#line 2809 "Gmsh.y" + { + if(!strcmp((yyvsp[(2) - (8)].c), "MathEval")){ + int t = (int)(yyvsp[(4) - (8)].d); + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + gLevelset *ls = new gLevelsetMathEval((yyvsp[(7) - (8)].c), t); + gLevelset::add(ls); + } + } + else + yymsg(0, "Unknown levelset '%s'", (yyvsp[(2) - (8)].c)); + Free((yyvsp[(2) - (8)].c)); Free((yyvsp[(7) - (8)].c)); + ;} + break; + + case 225: +#line 2825 "Gmsh.y" + { + if(!strcmp((yyvsp[(2) - (6)].c), "CutMesh")){ + int t = (int)(yyvsp[(4) - (6)].d); + if(gLevelset::find(t)){ + GModel::current()->buildCutGModel(gLevelset::find(t), true, false); + } + else + yymsg(0, "Unknown levelset %d", t); + } + else if(!strcmp((yyvsp[(2) - (6)].c), "CutMeshTri")){ + int t = (int)(yyvsp[(4) - (6)].d); + if(gLevelset::find(t)){ + GModel::current()->buildCutGModel(gLevelset::find(t), true, true); + } + else + yymsg(0, "Unknown levelset %d", t); + } + else if(!strcmp((yyvsp[(2) - (6)].c), "SplitMesh")){ + int t = (int)(yyvsp[(4) - (6)].d); + if(gLevelset::find(t)){ + GModel::current()->buildCutGModel(gLevelset::find(t), false, true); + } + else + yymsg(0, "Unknown levelset %d", t); + } + else + yymsg(0, "Unknown levelset '%s'", (yyvsp[(2) - (6)].c)); + Free((yyvsp[(2) - (6)].c)); + ;} + break; + + case 226: +#line 2860 "Gmsh.y" + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs((yyvsp[(3) - (4)].l), dimTags); + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + GModel::current()->getOCCInternals()->remove(dimTags); + } + GModel::current()->getGEOInternals()->remove(dimTags); + GModel::current()->remove(dimTags); + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 227: +#line 2871 "Gmsh.y" + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), dimTags); + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + GModel::current()->getOCCInternals()->remove(dimTags, true); + } + GModel::current()->getGEOInternals()->remove(dimTags, true); + GModel::current()->remove(dimTags, true); + List_Delete((yyvsp[(4) - (5)].l)); + ;} + break; + + case 228: +#line 2882 "Gmsh.y" + { +#if defined(HAVE_MESH) + GModel::current()->getFields()->deleteField((int)(yyvsp[(4) - (6)].d)); +#endif + ;} + break; + + case 229: +#line 2888 "Gmsh.y" + { +#if defined(HAVE_POST) + if(!strcmp((yyvsp[(2) - (6)].c), "View")){ + int index = (int)(yyvsp[(4) - (6)].d); + if(index >= 0 && index < (int)PView::list.size()) + delete PView::list[index]; + else + yymsg(0, "Unknown view %d", index); + } + else + yymsg(0, "Unknown command 'Delete %s'", (yyvsp[(2) - (6)].c)); +#endif + Free((yyvsp[(2) - (6)].c)); + ;} + break; + + case 230: +#line 2903 "Gmsh.y" + { + if(!strcmp((yyvsp[(2) - (3)].c), "Meshes") || !strcmp((yyvsp[(2) - (3)].c), "All")){ + ClearProject(); + } + else if(!strcmp((yyvsp[(2) - (3)].c), "Model")){ + GModel::current()->destroy(true); // destroy, but keep name/filename + GModel::current()->getGEOInternals()->destroy(); + } + else if(!strcmp((yyvsp[(2) - (3)].c), "Physicals")){ + GModel::current()->getGEOInternals()->resetPhysicalGroups(); + GModel::current()->deletePhysicalGroups(); + } + else if(!strcmp((yyvsp[(2) - (3)].c), "Variables")){ + gmsh_yysymbols.clear(); + } + else if(!strcmp((yyvsp[(2) - (3)].c), "Options")){ + ReInitOptions(0); + InitOptionsGUI(0); + } + else{ + if(gmsh_yysymbols.count((yyvsp[(2) - (3)].c))) + gmsh_yysymbols.erase((yyvsp[(2) - (3)].c)); + else + yymsg(0, "Unknown object or expression to delete '%s'", (yyvsp[(2) - (3)].c)); + } + Free((yyvsp[(2) - (3)].c)); + ;} + break; + + case 231: +#line 2931 "Gmsh.y" + { +#if defined(HAVE_POST) + if(!strcmp((yyvsp[(2) - (4)].c), "Empty") && !strcmp((yyvsp[(3) - (4)].c), "Views")){ + for(int i = PView::list.size() - 1; i >= 0; i--) + if(PView::list[i]->getData()->empty()) delete PView::list[i]; + } + else + yymsg(0, "Unknown command 'Delete %s %s'", (yyvsp[(2) - (4)].c), (yyvsp[(3) - (4)].c)); +#endif + Free((yyvsp[(2) - (4)].c)); Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 232: +#line 2943 "Gmsh.y" + { + nameSpaces.clear(); + ;} + break; + + case 233: +#line 2952 "Gmsh.y" + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), dimTags); + setColor(dimTags, (yyvsp[(2) - (5)].u), false); + List_Delete((yyvsp[(4) - (5)].l)); + ;} + break; + + case 234: +#line 2959 "Gmsh.y" + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs((yyvsp[(5) - (6)].l), dimTags); + setColor(dimTags, (yyvsp[(3) - (6)].u), true); + List_Delete((yyvsp[(5) - (6)].l)); + ;} + break; + + case 235: +#line 2971 "Gmsh.y" + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), dimTags); + for(unsigned int i = 0; i < dimTags.size(); i++){ + GEntity *ge = GModel::current()->getEntityByTag + (dimTags[i].first, dimTags[i].second); + if(ge){ + for(unsigned int j = 0; j < ge->getNumMeshElements(); j++) + ge->getMeshElement(j)->setPartition((int)(yyvsp[(2) - (5)].d)); + } + } + List_Delete((yyvsp[(4) - (5)].l)); + ;} + break; + + case 236: +#line 2990 "Gmsh.y" + { + std::string what = (yyvsp[(2) - (3)].c); + setVisibility(-1, 1, false); + Free((yyvsp[(2) - (3)].c)); + ;} + break; + + case 237: +#line 2996 "Gmsh.y" + { + std::string what = (yyvsp[(2) - (3)].c); + setVisibility(-1, 0, false); + Free((yyvsp[(2) - (3)].c)); + ;} + break; + + case 238: +#line 3002 "Gmsh.y" + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs((yyvsp[(3) - (4)].l), dimTags); + setVisibility(dimTags, 1, false); + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 239: +#line 3009 "Gmsh.y" + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), dimTags); + setVisibility(dimTags, 1, true); + List_Delete((yyvsp[(4) - (5)].l)); + ;} + break; + + case 240: +#line 3016 "Gmsh.y" + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs((yyvsp[(3) - (4)].l), dimTags); + setVisibility(dimTags, 0, false); + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 241: +#line 3023 "Gmsh.y" + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), dimTags); + setVisibility(dimTags, 0, true); + List_Delete((yyvsp[(4) - (5)].l)); + ;} + break; + + case 242: +#line 3035 "Gmsh.y" + { + if(!strcmp((yyvsp[(1) - (3)].c), "Include")){ + std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(2) - (3)].c)); + Msg::StatusBar(true, "Reading '%s'...", tmp.c_str()); + // Warning: we explicitly ask ParseFile not to fclose() the included + // file, in order to allow user functions definitions in these files. + // The files will be closed in the next time OpenFile terminates. If + // you need to include many many files and don't have functions in + // the files, use "Merge" instead of "Include", as some OSes limit + // the number of files a process can open simultaneously. (A better + // solution would be to modify FunctionManager to reopen the files + // instead of using the FILE pointer...) + ParseFile(tmp, false, true); + SetBoundingBox(); + Msg::StatusBar(true, "Done reading '%s'", tmp.c_str()); + } + else if(!strcmp((yyvsp[(1) - (3)].c), "Print")){ + // make sure we have the latest data from CAD internals in GModel (fixes + // bug where we would have no geometry in the picture if the print + // command is in the same file as the geometry) + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(2) - (3)].c)); + CreateOutputFile(tmp, CTX::instance()->print.fileFormat); + } + else if(!strcmp((yyvsp[(1) - (3)].c), "Save")){ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(2) - (3)].c)); + CreateOutputFile(tmp, CTX::instance()->mesh.fileFormat); + } + else if(!strcmp((yyvsp[(1) - (3)].c), "Merge") || !strcmp((yyvsp[(1) - (3)].c), "MergeWithBoundingBox")){ + // sync CAD internals here, so that if we e.g. import a STEP file, we + // have the correct entity tags and the numberings don't clash + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(2) - (3)].c)); + MergeFile(tmp, true); + } + else if(!strcmp((yyvsp[(1) - (3)].c), "NonBlockingSystemCall")){ + SystemCall((yyvsp[(2) - (3)].c)); + } + else if(!strcmp((yyvsp[(1) - (3)].c), "System") || !strcmp((yyvsp[(1) - (3)].c), "SystemCall")){ + SystemCall((yyvsp[(2) - (3)].c), true); + } + else if(!strcmp((yyvsp[(1) - (3)].c), "SetName")){ + GModel::current()->setName((yyvsp[(2) - (3)].c)); + } + else if(!strcmp((yyvsp[(1) - (3)].c), "CreateDir")){ + std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(2) - (3)].c)); + CreateSingleDir(tmp); + } + else if(!strcmp((yyvsp[(1) - (3)].c), "OnelabRun")){ + Msg::RunOnelabClient((yyvsp[(2) - (3)].c)); + } + else if(!strcmp((yyvsp[(1) - (3)].c), "OptimizeMesh")){ + GModel::current()->optimizeMesh((yyvsp[(2) - (3)].c)); + } + else{ + yymsg(0, "Unknown command '%s'", (yyvsp[(1) - (3)].c)); + } + Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(2) - (3)].c)); + ;} + break; + + case 243: +#line 3108 "Gmsh.y" + { + int n = List_Nbr((yyvsp[(3) - (5)].l)); + if(n == 1){ + char *s; List_Read((yyvsp[(3) - (5)].l), 0, &s); + Msg::RunOnelabClient(s); + Free(s); + } + else if(n == 2){ + char *s, *t; List_Read((yyvsp[(3) - (5)].l), 0, &s); List_Read((yyvsp[(3) - (5)].l), 1, &t); + Msg::RunOnelabClient(s, t); + Free(s); Free(t); + } + else{ + yymsg(0, "OnelabRun takes one or two arguments"); + } + List_Delete((yyvsp[(3) - (5)].l)); + ;} + break; + + case 244: +#line 3126 "Gmsh.y" + { +#if defined(HAVE_POST) + if(!strcmp((yyvsp[(1) - (7)].c), "Save") && !strcmp((yyvsp[(2) - (7)].c), "View")){ + int index = (int)(yyvsp[(4) - (7)].d); + if(index >= 0 && index < (int)PView::list.size()){ + std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(6) - (7)].c)); + PView::list[index]->write(tmp, CTX::instance()->post.fileFormat); + } + else + yymsg(0, "Unknown view %d", index); + } + else + yymsg(0, "Unknown command '%s'", (yyvsp[(1) - (7)].c)); +#endif + Free((yyvsp[(1) - (7)].c)); Free((yyvsp[(2) - (7)].c)); Free((yyvsp[(6) - (7)].c)); + ;} + break; + + case 245: +#line 3143 "Gmsh.y" + { +#if defined(HAVE_POST) && defined(HAVE_MESH) + if(!strcmp((yyvsp[(1) - (7)].c), "Background") && !strcmp((yyvsp[(2) - (7)].c), "Mesh") && !strcmp((yyvsp[(3) - (7)].c), "View")){ + int index = (int)(yyvsp[(5) - (7)].d); + if(index >= 0 && index < (int)PView::list.size()) + GModel::current()->getFields()->setBackgroundMesh(index); + else + yymsg(0, "Unknown view %d", index); + } + else + yymsg(0, "Unknown command '%s'", (yyvsp[(1) - (7)].c)); +#endif + Free((yyvsp[(1) - (7)].c)); Free((yyvsp[(2) - (7)].c)); Free((yyvsp[(3) - (7)].c)); + ;} + break; + + case 246: +#line 3158 "Gmsh.y" + { + if(!strcmp((yyvsp[(1) - (3)].c), "Sleep")){ + SleepInSeconds((yyvsp[(2) - (3)].d)); + } + else if(!strcmp((yyvsp[(1) - (3)].c), "Remesh")){ + yymsg(0, "Surface remeshing must be reinterfaced"); + } + else if(!strcmp((yyvsp[(1) - (3)].c), "Mesh")){ + int lock = CTX::instance()->lock; + CTX::instance()->lock = 0; + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + GModel::current()->mesh((int)(yyvsp[(2) - (3)].d)); + CTX::instance()->lock = lock; + } + else if(!strcmp((yyvsp[(1) - (3)].c), "SetOrder")){ +#if defined(HAVE_MESH) + SetOrderN(GModel::current(), (yyvsp[(2) - (3)].d), CTX::instance()->mesh.secondOrderLinear, + CTX::instance()->mesh.secondOrderIncomplete, + CTX::instance()->mesh.meshOnlyVisible); +#endif + } + else if(!strcmp((yyvsp[(1) - (3)].c), "PartitionMesh")){ + GModel::current()->partitionMesh((yyvsp[(2) - (3)].d)); + } + else + yymsg(0, "Unknown command '%s'", (yyvsp[(1) - (3)].c)); + Free((yyvsp[(1) - (3)].c)); + ;} + break; + + case 247: +#line 3191 "Gmsh.y" + { +#if defined(HAVE_PLUGINS) + try { + PluginManager::instance()->action((yyvsp[(3) - (7)].c), (yyvsp[(6) - (7)].c), 0); + } + catch(...) { + yymsg(0, "Unknown action '%s' or plugin '%s'", (yyvsp[(6) - (7)].c), (yyvsp[(3) - (7)].c)); + } +#endif + Free((yyvsp[(3) - (7)].c)); Free((yyvsp[(6) - (7)].c)); + ;} + break; + + case 248: +#line 3203 "Gmsh.y" + { +#if defined(HAVE_POST) + if(!strcmp((yyvsp[(2) - (3)].c), "ElementsFromAllViews")) + PView::combine(false, 1, CTX::instance()->post.combineRemoveOrig); + else if(!strcmp((yyvsp[(2) - (3)].c), "ElementsFromVisibleViews")) + PView::combine(false, 0, CTX::instance()->post.combineRemoveOrig); + else if(!strcmp((yyvsp[(2) - (3)].c), "ElementsByViewName")) + PView::combine(false, 2, CTX::instance()->post.combineRemoveOrig); + else if(!strcmp((yyvsp[(2) - (3)].c), "TimeStepsFromAllViews")) + PView::combine(true, 1, CTX::instance()->post.combineRemoveOrig); + else if(!strcmp((yyvsp[(2) - (3)].c), "TimeStepsFromVisibleViews")) + PView::combine(true, 0, CTX::instance()->post.combineRemoveOrig); + else if(!strcmp((yyvsp[(2) - (3)].c), "TimeStepsByViewName")) + PView::combine(true, 2, CTX::instance()->post.combineRemoveOrig); + else if(!strcmp((yyvsp[(2) - (3)].c), "Views")) + PView::combine(false, 1, CTX::instance()->post.combineRemoveOrig); + else if(!strcmp((yyvsp[(2) - (3)].c), "TimeSteps")) + PView::combine(true, 2, CTX::instance()->post.combineRemoveOrig); + else + yymsg(0, "Unknown 'Combine' command"); +#endif + Free((yyvsp[(2) - (3)].c)); + ;} + break; + + case 249: +#line 3227 "Gmsh.y" + { + Msg::Exit(0); + ;} + break; + + case 250: +#line 3231 "Gmsh.y" + { + gmsh_yyerrorstate = 999; // this will be checked when yyparse returns + YYABORT; + ;} + break; + + case 251: +#line 3236 "Gmsh.y" + { + // force sync + if(GModel::current()->getOCCInternals()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + ;} + break; + + case 252: +#line 3243 "Gmsh.y" + { + new GModel(); + GModel::current(GModel::list.size() - 1); + ;} + break; + + case 253: +#line 3248 "Gmsh.y" + { + CTX::instance()->forcedBBox = 0; + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + SetBoundingBox(); + ;} + break; + + case 254: +#line 3258 "Gmsh.y" + { + CTX::instance()->forcedBBox = 1; + SetBoundingBox((yyvsp[(3) - (15)].d), (yyvsp[(5) - (15)].d), (yyvsp[(7) - (15)].d), (yyvsp[(9) - (15)].d), (yyvsp[(11) - (15)].d), (yyvsp[(13) - (15)].d)); + ;} + break; + + case 255: +#line 3263 "Gmsh.y" + { +#if defined(HAVE_OPENGL) + drawContext::global()->draw(); +#endif + ;} + break; + + case 256: +#line 3269 "Gmsh.y" + { +#if defined(HAVE_OPENGL) + CTX::instance()->mesh.changed = ENT_ALL; + for(unsigned int index = 0; index < PView::list.size(); index++) + PView::list[index]->setChanged(true); +#endif + ;} + break; + + case 257: +#line 3277 "Gmsh.y" + { + GModel::current()->createTopologyFromMesh(); + ;} + break; + + case 258: +#line 3281 "Gmsh.y" + { + GModel::current()->createTopologyFromMesh(1); + ;} + break; + + case 259: +#line 3285 "Gmsh.y" + { + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + GModel::current()->refineMesh(CTX::instance()->mesh.secondOrderLinear); + ;} + break; + + case 260: +#line 3295 "Gmsh.y" + { + int lock = CTX::instance()->lock; + CTX::instance()->lock = 0; + std::vector<int> technique; + for(int i = 0; i < List_Nbr((yyvsp[(3) - (16)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (16)].l), i, &d); + technique.push_back((int)d); + } + if(technique.empty()){ + yymsg(0, "Need at least one adaptation technique"); + } + else{ + std::vector<simpleFunction<double>*> f; + for(int i = 0; i < List_Nbr((yyvsp[(6) - (16)].l)); i++){ + double d; + List_Read((yyvsp[(6) - (16)].l), i, &d); + gLevelset *l = gLevelset::find((int)d); + if(l) f.push_back(l); + else yymsg(0, "Unknown levelset %d", (int)d); + } + if(technique.size() != f.size()){ + yymsg(0, "Number of techniques != number of levelsets"); + } + else{ + if(List_Nbr((yyvsp[(9) - (16)].l)) != (int)f.size()){ + yymsg(0, "Number of parameters != number of levelsets"); + } + else{ + std::vector<std::vector<double> > parameters; + parameters.resize(List_Nbr((yyvsp[(9) - (16)].l))); + for(int i = 0; i < List_Nbr((yyvsp[(9) - (16)].l)); i++){ + List_T *l = *(List_T**)List_Pointer((yyvsp[(9) - (16)].l), i); + for(int j = 0; j < List_Nbr(l); j++){ + double d; + List_Read(l, j, &d); + parameters[i].push_back(d); + } + } + int niter = (int)(yyvsp[(12) - (16)].d); + bool meshAll = ((yyvsp[(14) - (16)].d) == 0) ? false : true; + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + GModel::current()->adaptMesh(technique, f, parameters, niter, meshAll); + } + } + } + List_Delete((yyvsp[(3) - (16)].l)); + List_Delete((yyvsp[(6) - (16)].l)); + for(int i = 0; i < List_Nbr((yyvsp[(9) - (16)].l)); i++) + List_Delete(*(List_T**)List_Pointer((yyvsp[(9) - (16)].l), i)); + List_Delete((yyvsp[(9) - (16)].l)); + CTX::instance()->lock = lock; + ;} + break; + + case 261: +#line 3358 "Gmsh.y" + { +#if defined(HAVE_POPPLER) + std::vector<int> is; + for(int i = 0; i < List_Nbr((yyvsp[(4) - (11)].l)); i++){ + double d; + List_Read((yyvsp[(4) - (11)].l), i, &d); + is.push_back ((int) d); + } + gmshPopplerWrapper::instance()->setMacroForPages(is, (yyvsp[(7) - (11)].c), (yyvsp[(9) - (11)].c) ); +#endif + ;} + break; + + case 262: +#line 3374 "Gmsh.y" + { + LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (6)].d); + LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (6)].d); + LoopControlVariablesTab[ImbricatedLoop][2] = 1.0; + LoopControlVariablesNameTab[ImbricatedLoop] = ""; + gmshgetpos(gmsh_yyin, &yyposImbricatedLoopsTab[ImbricatedLoop]); + yylinenoImbricatedLoopsTab[ImbricatedLoop] = gmsh_yylineno; + if((yyvsp[(3) - (6)].d) > (yyvsp[(5) - (6)].d)) + skip("For", "EndFor"); + else + ImbricatedLoop++; + if(ImbricatedLoop > MAX_RECUR_LOOPS - 1){ + yymsg(0, "Reached maximum number of imbricated loops"); + ImbricatedLoop = MAX_RECUR_LOOPS - 1; + } + ;} + break; + + case 263: +#line 3391 "Gmsh.y" + { + LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (8)].d); + LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (8)].d); + LoopControlVariablesTab[ImbricatedLoop][2] = (yyvsp[(7) - (8)].d); + LoopControlVariablesNameTab[ImbricatedLoop] = ""; + gmshgetpos(gmsh_yyin, &yyposImbricatedLoopsTab[ImbricatedLoop]); + yylinenoImbricatedLoopsTab[ImbricatedLoop] = gmsh_yylineno; + if(((yyvsp[(7) - (8)].d) > 0. && (yyvsp[(3) - (8)].d) > (yyvsp[(5) - (8)].d)) || ((yyvsp[(7) - (8)].d) < 0. && (yyvsp[(3) - (8)].d) < (yyvsp[(5) - (8)].d))) + skip("For", "EndFor"); + else + ImbricatedLoop++; + if(ImbricatedLoop > MAX_RECUR_LOOPS - 1){ + yymsg(0, "Reached maximum number of imbricated loops"); + ImbricatedLoop = MAX_RECUR_LOOPS - 1; + } + ;} + break; + + case 264: +#line 3408 "Gmsh.y" + { + LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (8)].d); + LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (8)].d); + LoopControlVariablesTab[ImbricatedLoop][2] = 1.0; + LoopControlVariablesNameTab[ImbricatedLoop] = (yyvsp[(2) - (8)].c); + gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(2) - (8)].c)]); + s.list = false; + s.value.resize(1); + s.value[0] = (yyvsp[(5) - (8)].d); + gmshgetpos(gmsh_yyin, &yyposImbricatedLoopsTab[ImbricatedLoop]); + yylinenoImbricatedLoopsTab[ImbricatedLoop] = gmsh_yylineno; + if((yyvsp[(5) - (8)].d) > (yyvsp[(7) - (8)].d)) + skip("For", "EndFor"); + else + ImbricatedLoop++; + if(ImbricatedLoop > MAX_RECUR_LOOPS - 1){ + yymsg(0, "Reached maximum number of imbricated loops"); + ImbricatedLoop = MAX_RECUR_LOOPS - 1; + } + Free((yyvsp[(2) - (8)].c)); + ;} + break; + + case 265: +#line 3430 "Gmsh.y" + { + LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (10)].d); + LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (10)].d); + LoopControlVariablesTab[ImbricatedLoop][2] = (yyvsp[(9) - (10)].d); + LoopControlVariablesNameTab[ImbricatedLoop] = (yyvsp[(2) - (10)].c); + gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(2) - (10)].c)]); + s.list = false; + s.value.resize(1); + s.value[0] = (yyvsp[(5) - (10)].d); + gmshgetpos(gmsh_yyin, &yyposImbricatedLoopsTab[ImbricatedLoop]); + yylinenoImbricatedLoopsTab[ImbricatedLoop] = gmsh_yylineno; + if(((yyvsp[(9) - (10)].d) > 0. && (yyvsp[(5) - (10)].d) > (yyvsp[(7) - (10)].d)) || ((yyvsp[(9) - (10)].d) < 0. && (yyvsp[(5) - (10)].d) < (yyvsp[(7) - (10)].d))) + skip("For", "EndFor"); + else + ImbricatedLoop++; + if(ImbricatedLoop > MAX_RECUR_LOOPS - 1){ + yymsg(0, "Reached maximum number of imbricated loops"); + ImbricatedLoop = MAX_RECUR_LOOPS - 1; + } + Free((yyvsp[(2) - (10)].c)); + ;} + break; + + case 266: +#line 3452 "Gmsh.y" + { + if(ImbricatedLoop <= 0){ + yymsg(0, "Invalid For/EndFor loop"); + ImbricatedLoop = 0; + } + else{ + double step = LoopControlVariablesTab[ImbricatedLoop - 1][2]; + std::string name = LoopControlVariablesNameTab[ImbricatedLoop - 1]; + if(name.size()){ + if(!gmsh_yysymbols.count(name)) + yymsg(0, "Unknown loop variable '%s'", name.c_str()); + else{ + gmsh_yysymbol &s(gmsh_yysymbols[name]); + if(!s.list && s.value.size()){ + s.value[0] += step; + LoopControlVariablesTab[ImbricatedLoop - 1][0] = s.value[0]; + } + else + yymsg(0, "Bad loop variable %s", name.c_str()); + } + } + else{ + LoopControlVariablesTab[ImbricatedLoop - 1][0] += step; + } + double x0 = LoopControlVariablesTab[ImbricatedLoop - 1][0]; + double x1 = LoopControlVariablesTab[ImbricatedLoop - 1][1]; + if((step > 0. && x0 <= x1) || (step < 0. && x0 >= x1)){ + gmshsetpos(gmsh_yyin, &yyposImbricatedLoopsTab[ImbricatedLoop - 1]); + gmsh_yylineno = yylinenoImbricatedLoopsTab[ImbricatedLoop - 1]; + } + else + ImbricatedLoop--; + } + ;} + break; + + case 267: +#line 3487 "Gmsh.y" + { + if(!FunctionManager::Instance()->createFunction + (std::string((yyvsp[(2) - (2)].c)), gmsh_yyin, gmsh_yyname, gmsh_yylineno)) + yymsg(0, "Redefinition of function %s", (yyvsp[(2) - (2)].c)); + skip(NULL, "Return"); + Free((yyvsp[(2) - (2)].c)); + ;} + break; + + case 268: +#line 3495 "Gmsh.y" + { + if(!FunctionManager::Instance()->createFunction + (std::string((yyvsp[(2) - (2)].c)), gmsh_yyin, gmsh_yyname, gmsh_yylineno)) + yymsg(0, "Redefinition of function %s", (yyvsp[(2) - (2)].c)); + skip(NULL, "Return"); + Free((yyvsp[(2) - (2)].c)); + ;} + break; + + case 269: +#line 3503 "Gmsh.y" + { + if(!FunctionManager::Instance()->leaveFunction + (&gmsh_yyin, gmsh_yyname, gmsh_yylineno)) + yymsg(0, "Error while exiting function"); + ;} + break; + + case 270: +#line 3509 "Gmsh.y" + { + if(!FunctionManager::Instance()->enterFunction + (std::string((yyvsp[(2) - (3)].c)), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) + yymsg(0, "Unknown function '%s'", (yyvsp[(2) - (3)].c)); + Free((yyvsp[(2) - (3)].c)); + ;} + break; + + case 271: +#line 3516 "Gmsh.y" + { + if(!FunctionManager::Instance()->enterFunction + (std::string((yyvsp[(2) - (3)].c)), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) + yymsg(0, "Unknown function '%s'", (yyvsp[(2) - (3)].c)); + Free((yyvsp[(2) - (3)].c)); + ;} + break; + + case 272: +#line 3523 "Gmsh.y" + { + ImbricatedTest++; + if(ImbricatedTest > MAX_RECUR_TESTS-1){ + yymsg(0, "Reached maximum number of imbricated tests"); + ImbricatedTest = MAX_RECUR_TESTS-1; + } + + if((yyvsp[(3) - (4)].d)){ + // Current test is true + statusImbricatedTests[ImbricatedTest] = 1; + } + else{ + statusImbricatedTests[ImbricatedTest] = 0; + // Go after the next ElseIf or Else or EndIf + int type_until2 = 0; + skipTest("If", "EndIf", "ElseIf", 4, &type_until2); + if(!type_until2) ImbricatedTest--; // EndIf reached + } + ;} + break; + + case 273: +#line 3543 "Gmsh.y" + { + if(ImbricatedTest > 0){ + if (statusImbricatedTests[ImbricatedTest]){ + // Last test (If or ElseIf) was true, thus go after EndIf (out of If EndIf) + skip("If", "EndIf"); + ImbricatedTest--; + } + else{ + // Previous test(s) (If and ElseIf) not yet true + if((yyvsp[(3) - (4)].d)){ + statusImbricatedTests[ImbricatedTest] = 1; + } + else{ + // Current test still not true: statusImbricatedTests[ImbricatedTest] = 0; + // Go after the next ElseIf or Else or EndIf + int type_until2 = 0; + skipTest("If", "EndIf", "ElseIf", 4, &type_until2); + if(!type_until2) ImbricatedTest--; + } + } + } + else{ + yymsg(0, "Orphan ElseIf"); + } + ;} + break; + + case 274: +#line 3569 "Gmsh.y" + { + if(ImbricatedTest > 0){ + if(statusImbricatedTests[ImbricatedTest]){ + skip("If", "EndIf"); + ImbricatedTest--; + } + } + else{ + yymsg(0, "Orphan Else"); + } + ;} + break; + + case 275: +#line 3581 "Gmsh.y" + { + ImbricatedTest--; + if(ImbricatedTest < 0) + yymsg(1, "Orphan EndIf"); + ;} + break; + + case 276: +#line 3593 "Gmsh.y" + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->extrude + (inDimTags, (yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], outDimTags); + } + else{ + r = GModel::current()->getGEOInternals()->extrude + (inDimTags, (yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], outDimTags); + } + if(!r) yymsg(0, "Could not extrude shapes"); + (yyval.l) = (yyvsp[(4) - (5)].l); + List_Reset((yyval.l)); + VectorOfPairs2ListOfShapes(outDimTags, (yyval.l)); + ;} + break; + + case 277: +#line 3611 "Gmsh.y" + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs((yyvsp[(10) - (11)].l), inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->revolve + (inDimTags, (yyvsp[(5) - (11)].v)[0], (yyvsp[(5) - (11)].v)[1], (yyvsp[(5) - (11)].v)[2], (yyvsp[(3) - (11)].v)[0], (yyvsp[(3) - (11)].v)[1], (yyvsp[(3) - (11)].v)[2], (yyvsp[(7) - (11)].d), outDimTags); + } + else{ + r = GModel::current()->getGEOInternals()->revolve + (inDimTags, (yyvsp[(5) - (11)].v)[0], (yyvsp[(5) - (11)].v)[1], (yyvsp[(5) - (11)].v)[2], (yyvsp[(3) - (11)].v)[0], (yyvsp[(3) - (11)].v)[1], (yyvsp[(3) - (11)].v)[2], (yyvsp[(7) - (11)].d), outDimTags); + } + if(!r) yymsg(0, "Could not extrude shapes"); + (yyval.l) = (yyvsp[(10) - (11)].l); + List_Reset((yyval.l)); + VectorOfPairs2ListOfShapes(outDimTags, (yyval.l)); + ;} + break; + + case 278: +#line 3629 "Gmsh.y" + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs((yyvsp[(12) - (13)].l), inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(0, "Twisting extrude not available with OpenCASCADE factory"); + } + else{ + r = GModel::current()->getGEOInternals()->twist + (inDimTags, (yyvsp[(7) - (13)].v)[0], (yyvsp[(7) - (13)].v)[1], (yyvsp[(7) - (13)].v)[2], (yyvsp[(3) - (13)].v)[0], (yyvsp[(3) - (13)].v)[1], (yyvsp[(3) - (13)].v)[2], (yyvsp[(5) - (13)].v)[0], (yyvsp[(5) - (13)].v)[1], (yyvsp[(5) - (13)].v)[2], + (yyvsp[(9) - (13)].d), outDimTags); + } + if(!r) yymsg(0, "Could not extrude shapes"); + (yyval.l) = (yyvsp[(12) - (13)].l); + List_Reset((yyval.l)); + VectorOfPairs2ListOfShapes(outDimTags, (yyval.l)); + ;} + break; + + case 279: +#line 3647 "Gmsh.y" + { + extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; + extr.mesh.QuadToTri = NO_QUADTRI; + extr.mesh.ScaleLast = false; + ;} + break; + + case 280: +#line 3653 "Gmsh.y" + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs((yyvsp[(4) - (7)].l), inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->extrude + (inDimTags, (yyvsp[(2) - (7)].v)[0], (yyvsp[(2) - (7)].v)[1], (yyvsp[(2) - (7)].v)[2], outDimTags, &extr); + } + else{ + r = GModel::current()->getGEOInternals()->extrude + (inDimTags, (yyvsp[(2) - (7)].v)[0], (yyvsp[(2) - (7)].v)[1], (yyvsp[(2) - (7)].v)[2], outDimTags, &extr); + } + if(!r) yymsg(0, "Could not extrude shapes"); + (yyval.l) = (yyvsp[(4) - (7)].l); + List_Reset((yyval.l)); + VectorOfPairs2ListOfShapes(outDimTags, (yyval.l)); + ;} + break; + + case 281: +#line 3671 "Gmsh.y" + { + extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; + extr.mesh.QuadToTri = NO_QUADTRI; + extr.mesh.ScaleLast = false; + ;} + break; + + case 282: +#line 3677 "Gmsh.y" + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs((yyvsp[(10) - (13)].l), inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->revolve + (inDimTags, (yyvsp[(5) - (13)].v)[0], (yyvsp[(5) - (13)].v)[1], (yyvsp[(5) - (13)].v)[2], (yyvsp[(3) - (13)].v)[0], (yyvsp[(3) - (13)].v)[1], (yyvsp[(3) - (13)].v)[2], (yyvsp[(7) - (13)].d), outDimTags, + &extr); + } + else{ + r = GModel::current()->getGEOInternals()->revolve + (inDimTags, (yyvsp[(5) - (13)].v)[0], (yyvsp[(5) - (13)].v)[1], (yyvsp[(5) - (13)].v)[2], (yyvsp[(3) - (13)].v)[0], (yyvsp[(3) - (13)].v)[1], (yyvsp[(3) - (13)].v)[2], (yyvsp[(7) - (13)].d), outDimTags, + &extr); + } + if(!r) yymsg(0, "Could not extrude shapes"); + (yyval.l) = (yyvsp[(10) - (13)].l); + List_Reset((yyval.l)); + VectorOfPairs2ListOfShapes(outDimTags, (yyval.l)); + ;} + break; + + case 283: +#line 3697 "Gmsh.y" + { + extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; + extr.mesh.QuadToTri = NO_QUADTRI; + extr.mesh.ScaleLast = false; + ;} + break; + + case 284: +#line 3703 "Gmsh.y" + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs((yyvsp[(12) - (15)].l), inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(0, "Twisting extrude not available with OpenCASCADE factory"); + } + else{ + r = GModel::current()->getGEOInternals()->twist + (inDimTags, (yyvsp[(7) - (15)].v)[0], (yyvsp[(7) - (15)].v)[1], (yyvsp[(7) - (15)].v)[2], (yyvsp[(3) - (15)].v)[0], (yyvsp[(3) - (15)].v)[1], (yyvsp[(3) - (15)].v)[2], (yyvsp[(5) - (15)].v)[0], (yyvsp[(5) - (15)].v)[1], (yyvsp[(5) - (15)].v)[2], + (yyvsp[(9) - (15)].d), outDimTags, &extr); + } + if(!r) yymsg(0, "Could not extrude shapes"); + (yyval.l) = (yyvsp[(12) - (15)].l); + List_Reset((yyval.l)); + VectorOfPairs2ListOfShapes(outDimTags, (yyval.l)); + ;} + break; + + case 285: +#line 3721 "Gmsh.y" + { + extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; + extr.mesh.QuadToTri = NO_QUADTRI; + extr.mesh.ScaleLast = false; + ;} + break; + + case 286: +#line 3727 "Gmsh.y" + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs((yyvsp[(3) - (6)].l), inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(0, "Boundary layer extrusion not available with OpenCASCADE factory"); + } + else{ + r = GModel::current()->getGEOInternals()->boundaryLayer + (inDimTags, outDimTags, &extr); + } + if(!r) yymsg(0, "Could not extrude shapes"); + (yyval.l) = (yyvsp[(3) - (6)].l); + List_Reset((yyval.l)); + VectorOfPairs2ListOfShapes(outDimTags, (yyval.l)); + ;} + break; + + case 287: +#line 3744 "Gmsh.y" + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs((yyvsp[(3) - (9)].l), inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addPipe(inDimTags, (int)(yyvsp[(8) - (9)].d), outDimTags); + } + else{ + yymsg(0, "Pipe only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not extrude shapes"); + (yyval.l) = (yyvsp[(3) - (9)].l); + List_Reset((yyval.l)); + VectorOfPairs2ListOfShapes(outDimTags, (yyval.l)); + ;} + break; + + case 288: +#line 3760 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<int> wires; ListOfDouble2Vector((yyvsp[(2) - (2)].l), wires); + std::vector<std::pair<int, int> > outDimTags; + r = GModel::current()->getOCCInternals()->addThruSections + (-1, wires, outDimTags, false, false); + VectorOfPairs2ListOfShapes(outDimTags, (yyval.l)); + } + else{ + yymsg(0, "ThruSections only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add thrusections"); + List_Delete((yyvsp[(2) - (2)].l)); + ;} + break; + + case 289: +#line 3777 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<int> wires; ListOfDouble2Vector((yyvsp[(3) - (3)].l), wires); + std::vector<std::pair<int, int> > outDimTags; + r = GModel::current()->getOCCInternals()->addThruSections + (-1, wires, outDimTags, false, true); + VectorOfPairs2ListOfShapes(outDimTags, (yyval.l)); + } + else{ + yymsg(0, "ThruSections only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add ruled thrusections"); + List_Delete((yyvsp[(3) - (3)].l)); + ;} + break; + + case 290: +#line 3794 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + double radius = (yyvsp[(9) - (10)].d); + std::vector<int> regions, edges; + ListOfDouble2Vector((yyvsp[(3) - (10)].l), regions); ListOfDouble2Vector((yyvsp[(6) - (10)].l), edges); + std::vector<std::pair<int, int> > outDimTags; + r = GModel::current()->getOCCInternals()->fillet + (regions, edges, radius, outDimTags); + VectorOfPairs2ListOfShapes(outDimTags, (yyval.l)); + } + else{ + yymsg(0, "Fillet only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not fillet shapes"); + List_Delete((yyvsp[(3) - (10)].l)); + List_Delete((yyvsp[(6) - (10)].l)); + ;} + break; + + case 291: +#line 3817 "Gmsh.y" + { + ;} + break; + + case 292: +#line 3820 "Gmsh.y" + { + ;} + break; + + case 293: +#line 3826 "Gmsh.y" + { + int n = (int)fabs((yyvsp[(3) - (5)].d)); + if(n){ // we accept n==0 to easily disable layers + extr.mesh.ExtrudeMesh = true; + extr.mesh.NbLayer = 1; + extr.mesh.NbElmLayer.clear(); + extr.mesh.hLayer.clear(); + extr.mesh.NbElmLayer.push_back((int)fabs((yyvsp[(3) - (5)].d))); + extr.mesh.hLayer.push_back(1.); + } + ;} + break; + + case 294: +#line 3838 "Gmsh.y" + { + extr.mesh.ExtrudeMesh = true; + extr.mesh.NbLayer = List_Nbr((yyvsp[(3) - (7)].l)); + if(List_Nbr((yyvsp[(3) - (7)].l)) == List_Nbr((yyvsp[(5) - (7)].l))){ + extr.mesh.NbElmLayer.clear(); + extr.mesh.hLayer.clear(); + for(int i = 0; i < List_Nbr((yyvsp[(3) - (7)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (7)].l), i, &d); + extr.mesh.NbElmLayer.push_back((d > 0) ? (int)d : 1); + List_Read((yyvsp[(5) - (7)].l), i, &d); + extr.mesh.hLayer.push_back(d); + } + } + else + yymsg(0, "Wrong layer definition {%d, %d}", List_Nbr((yyvsp[(3) - (7)].l)), List_Nbr((yyvsp[(5) - (7)].l))); + List_Delete((yyvsp[(3) - (7)].l)); + List_Delete((yyvsp[(5) - (7)].l)); + ;} + break; + + case 295: +#line 3858 "Gmsh.y" + { + extr.mesh.ScaleLast = true; + ;} + break; + + case 296: +#line 3862 "Gmsh.y" + { + extr.mesh.Recombine = true; + ;} + break; + + case 297: +#line 3866 "Gmsh.y" + { + extr.mesh.Recombine = (yyvsp[(2) - (3)].d) ? true : false; + ;} + break; + + case 298: +#line 3870 "Gmsh.y" + { + extr.mesh.QuadToTri = QUADTRI_ADDVERTS_1; + ;} + break; + + case 299: +#line 3874 "Gmsh.y" + { + extr.mesh.QuadToTri = QUADTRI_ADDVERTS_1_RECOMB; + ;} + break; + + case 300: +#line 3878 "Gmsh.y" + { + extr.mesh.QuadToTri = QUADTRI_NOVERTS_1; + ;} + break; + + case 301: +#line 3882 "Gmsh.y" + { + extr.mesh.QuadToTri = QUADTRI_NOVERTS_1_RECOMB; + ;} + break; + + case 302: +#line 3886 "Gmsh.y" + { + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (9)].l), tags); + int num = (int)(yyvsp[(3) - (9)].d); + GModel::current()->getGEOInternals()->addDiscreteSurface(num); + extr.mesh.Holes[num].first = (yyvsp[(8) - (9)].d); + extr.mesh.Holes[num].second = tags; + List_Delete((yyvsp[(6) - (9)].l)); + ;} + break; + + case 303: +#line 3895 "Gmsh.y" + { + if(!strcmp((yyvsp[(2) - (6)].c), "Index")) + extr.mesh.BoundaryLayerIndex = (yyvsp[(4) - (6)].d); + else if(!strcmp((yyvsp[(2) - (6)].c), "View")) + extr.mesh.ViewIndex = (yyvsp[(4) - (6)].d); + Free((yyvsp[(2) - (6)].c)); + ;} + break; + + case 304: +#line 3907 "Gmsh.y" + { (yyval.i) = OCC_Internals::Union; ;} + break; + + case 305: +#line 3908 "Gmsh.y" + { (yyval.i) = OCC_Internals::Intersection; ;} + break; + + case 306: +#line 3909 "Gmsh.y" + { (yyval.i) = OCC_Internals::Difference; ;} + break; + + case 307: +#line 3910 "Gmsh.y" + { (yyval.i) = OCC_Internals::Section; ;} + break; + + case 308: +#line 3911 "Gmsh.y" + { (yyval.i) = OCC_Internals::Fragments; ;} + break; + + case 309: +#line 3915 "Gmsh.y" + { (yyval.i) = 0; ;} + break; + + case 310: +#line 3916 "Gmsh.y" + { (yyval.i) = 1; ;} + break; + + case 311: +#line 3917 "Gmsh.y" + { (yyval.i) = 2; ;} + break; + + case 312: +#line 3918 "Gmsh.y" + { (yyval.i) = (yyvsp[(2) - (3)].d) ? 1 : 0; ;} + break; + + case 313: +#line 3919 "Gmsh.y" + { (yyval.i) = (yyvsp[(3) - (4)].d) ? 2 : 0; ;} + break; + + case 314: +#line 3924 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<std::pair<int, int > > object, tool, out; + ListOfShapes2VectorOfPairs((yyvsp[(3) - (9)].l), object); + ListOfShapes2VectorOfPairs((yyvsp[(7) - (9)].l), tool); + // currently we don't distinguish between Delete and Recursive Delete: + // we always delete recursively. Let us know if you have examples where + // having the choice would be interesting + r = GModel::current()->getOCCInternals()->applyBooleanOperator + (-1, (OCC_Internals::BooleanOperator)(yyvsp[(1) - (9)].i), object, tool, out, (yyvsp[(4) - (9)].i), (yyvsp[(8) - (9)].i)); + VectorOfPairs2ListOfShapes(out, (yyval.l)); + } + else{ + yymsg(0, "Boolean operators only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not apply boolean operator"); + List_Delete((yyvsp[(3) - (9)].l)); + List_Delete((yyvsp[(7) - (9)].l)); + ;} + break; + + case 315: +#line 3946 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<std::pair<int, int> > out; + std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(3) - (4)].c)); + GModel::current()->getOCCInternals()->importShapes(tmp, true, out); + VectorOfPairs2ListOfShapes(out, (yyval.l)); + } + else{ + yymsg(0, "ShapeFromFile only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could import shape"); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 316: +#line 3966 "Gmsh.y" + { + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<std::pair<int, int> > object, tool, out; + ListOfShapes2VectorOfPairs((yyvsp[(7) - (14)].l), object); + ListOfShapes2VectorOfPairs((yyvsp[(11) - (14)].l), tool); + // currently we don't distinguish between Delete and Recursive Delete: + // we always delete recursively. Let us know if you have examples where + // having the choice would be interesting + r = GModel::current()->getOCCInternals()->applyBooleanOperator + ((int)(yyvsp[(3) - (14)].d), (OCC_Internals::BooleanOperator)(yyvsp[(1) - (14)].i), object, tool, out, (yyvsp[(8) - (14)].i), (yyvsp[(12) - (14)].i)); + } + if(!r) yymsg(0, "Could not apply boolean operator"); + List_Delete((yyvsp[(7) - (14)].l)); + List_Delete((yyvsp[(11) - (14)].l)); + ;} + break; + + case 317: +#line 3986 "Gmsh.y" + { + (yyval.v)[0] = (yyval.v)[1] = 1.; + ;} + break; + + case 318: +#line 3990 "Gmsh.y" + { + if(!strcmp((yyvsp[(2) - (3)].c), "Progression") || !strcmp((yyvsp[(2) - (3)].c), "Power")) + (yyval.v)[0] = 1.; + else if(!strcmp((yyvsp[(2) - (3)].c), "Bump")) + (yyval.v)[0] = 2.; + else{ + yymsg(0, "Unknown transfinite mesh type"); + (yyval.v)[0] = 1.; + } + (yyval.v)[1] = (yyvsp[(3) - (3)].d); + Free((yyvsp[(2) - (3)].c)); + ;} + break; + + case 319: +#line 4005 "Gmsh.y" + { + (yyval.i) = -1; // left + ;} + break; + + case 320: +#line 4009 "Gmsh.y" + { + if(!strcmp((yyvsp[(1) - (1)].c), "Right")) + (yyval.i) = 1; + else if(!strcmp((yyvsp[(1) - (1)].c), "Left")) + (yyval.i) = -1; + else if(!strcmp((yyvsp[(1) - (1)].c), "AlternateRight")) + (yyval.i) = 2; + else if(!strcmp((yyvsp[(1) - (1)].c), "AlternateLeft")) + (yyval.i) = -2; + else // "Alternate" -> "Alternate Right" + (yyval.i) = 2; + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 321: +#line 4025 "Gmsh.y" + { + (yyval.l) = List_Create(1, 1, sizeof(double)); + ;} + break; + + case 322: +#line 4029 "Gmsh.y" + { + (yyval.l) = (yyvsp[(2) - (2)].l); + ;} + break; + + case 323: +#line 4034 "Gmsh.y" + { + (yyval.i) = 45; + ;} + break; + + case 324: +#line 4038 "Gmsh.y" + { + (yyval.i) = (int)(yyvsp[(2) - (2)].d); + ;} + break; + + case 325: +#line 4044 "Gmsh.y" + { + (yyval.l) = List_Create(1, 1, sizeof(double)); + ;} + break; + + case 326: +#line 4048 "Gmsh.y" + { + (yyval.l) = (yyvsp[(2) - (2)].l); + ;} + break; + + case 327: +#line 4055 "Gmsh.y" + { + // mesh sizes at vertices are stored in internal CAD data, as they can be + // specified during vertex creation and copied around during CAD + // operations + for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (6)].l), i, &d); + int tag = (int)d; + if(GModel::current()->getOCCInternals()) + GModel::current()->getOCCInternals()->setMeshSize(0, tag, (yyvsp[(5) - (6)].d)); + GModel::current()->getGEOInternals()->setMeshSize(0, tag, (yyvsp[(5) - (6)].d)); + GVertex *gv = GModel::current()->getVertexByTag(tag); + if(gv) gv->setPrescribedMeshSizeAtVertex((yyvsp[(5) - (6)].d)); + } + List_Delete((yyvsp[(3) - (6)].l)); + ;} + break; + + case 328: +#line 4072 "Gmsh.y" + { + // transfinite constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + int type = (int)(yyvsp[(6) - (7)].v)[0]; + double coef = fabs((yyvsp[(6) - (7)].v)[1]); + int npoints = ((int)(yyvsp[(5) - (7)].d) < 2) ? 2 : (int)(yyvsp[(5) - (7)].d); + if(!(yyvsp[(3) - (7)].l)){ + GModel::current()->getGEOInternals()->setTransfiniteLine + (0, npoints, type, coef); + for(GModel::eiter it = GModel::current()->firstEdge(); + it != GModel::current()->lastEdge(); it++){ + (*it)->meshAttributes.method = MESH_TRANSFINITE; + (*it)->meshAttributes.nbPointsTransfinite = npoints; + (*it)->meshAttributes.typeTransfinite = type; + (*it)->meshAttributes.coeffTransfinite = coef; + } + } + else{ + for(int i = 0; i < List_Nbr((yyvsp[(3) - (7)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (7)].l), i, &d); + int j = (int)fabs(d); + for(int sig = -1; sig <= 1; sig += 2){ + GModel::current()->getGEOInternals()->setTransfiniteLine + (sig * j, npoints, type * gmsh_sign(d), coef); + GEdge *ge = GModel::current()->getEdgeByTag(sig * j); + if(ge){ + ge->meshAttributes.method = MESH_TRANSFINITE; + ge->meshAttributes.nbPointsTransfinite = npoints; + ge->meshAttributes.typeTransfinite = type * gmsh_sign(d); + ge->meshAttributes.coeffTransfinite = coef; + } + } + } + List_Delete((yyvsp[(3) - (7)].l)); + } + ;} + break; + + case 329: +#line 4113 "Gmsh.y" + { + // transfinite constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + std::vector<int> corners; ListOfDouble2Vector((yyvsp[(4) - (6)].l), corners); + if(!(yyvsp[(3) - (6)].l)){ + GModel::current()->getGEOInternals()->setTransfiniteSurface(0, (yyvsp[(5) - (6)].i), corners); + for(GModel::fiter it = GModel::current()->firstFace(); + it != GModel::current()->lastFace(); it++){ + (*it)->meshAttributes.method = MESH_TRANSFINITE; + (*it)->meshAttributes.transfiniteArrangement = (yyvsp[(5) - (6)].i); + } + } + else{ + for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (6)].l), i, &d); + int tag = (int)d; + GModel::current()->getGEOInternals()->setTransfiniteSurface(tag, (yyvsp[(5) - (6)].i), corners); + GFace *gf = GModel::current()->getFaceByTag(tag); + if(gf){ + gf->meshAttributes.method = MESH_TRANSFINITE; + gf->meshAttributes.transfiniteArrangement = (yyvsp[(5) - (6)].i); + if(corners.empty() || corners.size() == 3 || corners.size() == 4){ + for(unsigned int j = 0; j < corners.size(); j++){ + GVertex *gv = GModel::current()->getVertexByTag(corners[j]); + if(gv) + gf->meshAttributes.corners.push_back(gv); + else + yymsg(0, "Unknown model vertex with tag %d", corners[j]); + } + } + else{ + yymsg(0, "Transfinite surface requires 3 or 4 corners vertices"); + } + } + } + List_Delete((yyvsp[(3) - (6)].l)); + } + List_Delete((yyvsp[(4) - (6)].l)); + ;} + break; + + case 330: +#line 4157 "Gmsh.y" + { + // transfinite constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + std::vector<int> corners; ListOfDouble2Vector((yyvsp[(4) - (5)].l), corners); + if(!(yyvsp[(3) - (5)].l)){ + GModel::current()->getGEOInternals()->setTransfiniteVolume(0, corners); + for(GModel::riter it = GModel::current()->firstRegion(); + it != GModel::current()->lastRegion(); it++){ + (*it)->meshAttributes.method = MESH_TRANSFINITE; + } + } + else{ + for(int i = 0; i < List_Nbr((yyvsp[(3) - (5)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (5)].l), i, &d); + int tag = (int)d; + GModel::current()->getGEOInternals()->setTransfiniteVolume(tag, corners); + GRegion *gr = GModel::current()->getRegionByTag(tag); + if(gr){ + gr->meshAttributes.method = MESH_TRANSFINITE; + if(corners.empty() || corners.size() == 6 || corners.size() == 8){ + for(unsigned int i = 0; i < corners.size(); i++){ + GVertex *gv = GModel::current()->getVertexByTag(corners[i]); + if(gv) + gr->meshAttributes.corners.push_back(gv); + else + yymsg(0, "Unknown model vertex with tag %d", corners[i]); + } + } + } + } + List_Delete((yyvsp[(3) - (5)].l)); + } + List_Delete((yyvsp[(4) - (5)].l)); + ;} + break; + + case 331: +#line 4196 "Gmsh.y" + { + // transfinite constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(!(yyvsp[(2) - (3)].l)){ + GModel::current()->getGEOInternals()->setTransfiniteVolumeQuadTri(0); + for(GModel::riter it = GModel::current()->firstRegion(); + it != GModel::current()->lastRegion(); it++) + (*it)->meshAttributes.QuadTri = TRANSFINITE_QUADTRI_1; + } + else{ + for(int i = 0; i < List_Nbr((yyvsp[(2) - (3)].l)); i++){ + double d; + List_Read((yyvsp[(2) - (3)].l), i, &d); + int tag = (int)d; + GModel::current()->getGEOInternals()->setTransfiniteVolumeQuadTri(tag); + GRegion *gr = GModel::current()->getRegionByTag(tag); + if(gr) gr->meshAttributes.QuadTri = TRANSFINITE_QUADTRI_1; + } + List_Delete((yyvsp[(2) - (3)].l)); + } + ;} + break; + + case 332: +#line 4221 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(4) - (8)].l)); i++){ + double d; + List_Read((yyvsp[(4) - (8)].l), i, &d); + CTX::instance()->mesh.algo2d_per_face[(int)d] = (int)(yyvsp[(7) - (8)].d); + } + List_Delete((yyvsp[(4) - (8)].l)); + ;} + break; + + case 333: +#line 4230 "Gmsh.y" + { + // recombine constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(!(yyvsp[(3) - (5)].l)){ + GModel::current()->getGEOInternals()->setRecombine(2, 0, (yyvsp[(4) - (5)].i)); + for(GModel::fiter it = GModel::current()->firstFace(); + it != GModel::current()->lastFace(); it++){ + (*it)->meshAttributes.recombine = 1; + (*it)->meshAttributes.recombineAngle = (yyvsp[(4) - (5)].i); + } + } + else{ + for(int i = 0; i < List_Nbr((yyvsp[(3) - (5)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (5)].l), i, &d); + int tag = (int)d; + GModel::current()->getGEOInternals()->setRecombine(2, tag, (yyvsp[(4) - (5)].i)); + GFace *gf = GModel::current()->getFaceByTag(tag); + if(gf){ + gf->meshAttributes.recombine = 1; + gf->meshAttributes.recombineAngle = (yyvsp[(4) - (5)].i); + } + } + List_Delete((yyvsp[(3) - (5)].l)); + } + ;} + break; + + case 334: +#line 4260 "Gmsh.y" + { + // recombine constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(!(yyvsp[(3) - (4)].l)){ + GModel::current()->getGEOInternals()->setRecombine(3, 0, 0.); + for(GModel::riter it = GModel::current()->firstRegion(); + it != GModel::current()->lastRegion(); it++){ + (*it)->meshAttributes.recombine3D = 1; + } + } + else{ + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (4)].l), i, &d); + int tag = (int)d; + GModel::current()->getGEOInternals()->setRecombine(3, tag, 0.); + GRegion *gr = GModel::current()->getRegionByTag(tag); + if(gr) gr->meshAttributes.recombine3D = 1; + } + List_Delete((yyvsp[(3) - (4)].l)); + } + ;} + break; + + case 335: +#line 4286 "Gmsh.y" + { + // smoothing constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(!(yyvsp[(3) - (6)].l)){ + GModel::current()->getGEOInternals()->setSmoothing(0, (int)(yyvsp[(5) - (6)].d)); + for(GModel::fiter it = GModel::current()->firstFace(); + it != GModel::current()->lastFace(); it++){ + (*it)->meshAttributes.transfiniteSmoothing = (int)(yyvsp[(5) - (6)].d); + } + } + else{ + for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (6)].l), i, &d); + int tag = (int)d; + GModel::current()->getGEOInternals()->setSmoothing(tag, (int)(yyvsp[(5) - (6)].d)); + GFace *gf = GModel::current()->getFaceByTag(tag); + if(gf) gf->meshAttributes.transfiniteSmoothing = (int)(yyvsp[(5) - (6)].d); + } + List_Delete((yyvsp[(3) - (6)].l)); + } + ;} + break; + + case 336: +#line 4313 "Gmsh.y" + { + if (List_Nbr((yyvsp[(4) - (11)].l)) != List_Nbr((yyvsp[(8) - (11)].l))){ + yymsg(0, "Number of master lines (%d) different from number of " + "slaves (%d) ", List_Nbr((yyvsp[(8) - (11)].l)), List_Nbr((yyvsp[(4) - (11)].l))); + } + else{ + std::vector<double> transfo; + if(List_Nbr((yyvsp[(10) - (11)].l)) != 0) { + if (List_Nbr((yyvsp[(10) - (11)].l)) < 12){ + yymsg(0, "Affine transformation requires at least 12 entries (we have %d)", + List_Nbr((yyvsp[(10) - (11)].l))); + } + else { + transfo.resize(List_Nbr((yyvsp[(10) - (11)].l))); + for(int i = 0; i < List_Nbr((yyvsp[(10) - (11)].l)); i++) + List_Read((yyvsp[(10) - (11)].l), i, &transfo[i]); + } + } + for(int i = 0; i < List_Nbr((yyvsp[(4) - (11)].l)); i++){ + double d_master, d_slave; + List_Read((yyvsp[(8) - (11)].l), i, &d_master); + List_Read((yyvsp[(4) - (11)].l), i, &d_slave); + int j_master = (int)d_master; + int j_slave = (int)d_slave; + addPeriodicEdge(j_slave, j_master, transfo); + } + } + List_Delete((yyvsp[(4) - (11)].l)); + List_Delete((yyvsp[(8) - (11)].l)); + ;} + break; + + case 337: +#line 4345 "Gmsh.y" + { + if (List_Nbr((yyvsp[(4) - (11)].l)) != List_Nbr((yyvsp[(8) - (11)].l))){ + yymsg(0, "Number of master faces (%d) different from number of " + "slaves (%d) ", List_Nbr((yyvsp[(8) - (11)].l)), List_Nbr((yyvsp[(4) - (11)].l))); + } + else{ + if (List_Nbr((yyvsp[(10) - (11)].l)) < 12){ + // FIXME full automatic case here if List_Nbr($10) == 0) + yymsg(0, "Affine transformation requires at least 12 entries"); + } + else { + std::vector<double> transfo(16,0); + for(int i = 0; i < List_Nbr((yyvsp[(10) - (11)].l)); i++) + List_Read((yyvsp[(10) - (11)].l), i, &transfo[i]); + for(int i = 0; i < List_Nbr((yyvsp[(4) - (11)].l)); i++){ + double d_master, d_slave; + List_Read((yyvsp[(8) - (11)].l), i, &d_master); + List_Read((yyvsp[(4) - (11)].l), i, &d_slave); + addPeriodicFace(d_slave, d_master, transfo); + } + } + } + List_Delete((yyvsp[(4) - (11)].l)); + List_Delete((yyvsp[(8) - (11)].l)); + ;} + break; + + case 338: +#line 4372 "Gmsh.y" + { + if (List_Nbr((yyvsp[(4) - (18)].l)) != List_Nbr((yyvsp[(8) - (18)].l))){ + yymsg(0, "Number of master edges (%d) different from number of " + "slaves (%d) ", List_Nbr((yyvsp[(8) - (18)].l)), List_Nbr((yyvsp[(4) - (18)].l))); + } + else{ + SPoint3 axis((yyvsp[(12) - (18)].v)[0],(yyvsp[(12) - (18)].v)[1],(yyvsp[(12) - (18)].v)[2]); + SPoint3 origin((yyvsp[(14) - (18)].v)[0],(yyvsp[(14) - (18)].v)[1],(yyvsp[(14) - (18)].v)[2]); + double angle((yyvsp[(16) - (18)].d)); + SPoint3 translation(0,0,0); + + std::vector<double> transfo; + computeAffineTransformation(origin,axis,angle,translation,transfo); + + for(int i = 0; i < List_Nbr((yyvsp[(4) - (18)].l)); i++){ + double d_master, d_slave; + List_Read((yyvsp[(8) - (18)].l), i, &d_master); + List_Read((yyvsp[(4) - (18)].l), i, &d_slave); + addPeriodicEdge(d_slave,d_master,transfo); + } + } + List_Delete((yyvsp[(4) - (18)].l)); + List_Delete((yyvsp[(8) - (18)].l)); + ;} + break; + + case 339: +#line 4398 "Gmsh.y" + { + if (List_Nbr((yyvsp[(4) - (18)].l)) != List_Nbr((yyvsp[(8) - (18)].l))){ + yymsg(0, "Number of master faces (%d) different from number of " + "slaves (%d) ", List_Nbr((yyvsp[(8) - (18)].l)), List_Nbr((yyvsp[(4) - (18)].l))); + } + else{ + SPoint3 origin((yyvsp[(14) - (18)].v)[0],(yyvsp[(14) - (18)].v)[1],(yyvsp[(14) - (18)].v)[2]); + SPoint3 axis((yyvsp[(12) - (18)].v)[0],(yyvsp[(12) - (18)].v)[1],(yyvsp[(12) - (18)].v)[2]); + double angle((yyvsp[(16) - (18)].d)); + SPoint3 translation(0,0,0); + + std::vector<double> transfo; + computeAffineTransformation(origin,axis,angle,translation,transfo); + + for(int i = 0; i < List_Nbr((yyvsp[(4) - (18)].l)); i++){ + double d_master, d_slave; + List_Read((yyvsp[(8) - (18)].l), i, &d_master); + List_Read((yyvsp[(4) - (18)].l), i, &d_slave); + addPeriodicFace(d_slave, d_master, transfo); + } + } + List_Delete((yyvsp[(4) - (18)].l)); + List_Delete((yyvsp[(8) - (18)].l)); + ;} + break; + + case 340: +#line 4424 "Gmsh.y" + { + if (List_Nbr((yyvsp[(4) - (12)].l)) != List_Nbr((yyvsp[(8) - (12)].l))){ + yymsg(0, "Number of master edges (%d) different from number of " + "slaves (%d) ", List_Nbr((yyvsp[(8) - (12)].l)), List_Nbr((yyvsp[(4) - (12)].l))); + } + else{ + SPoint3 origin(0,0,0); + SPoint3 axis(0,0,0); + double angle(0); + SPoint3 translation((yyvsp[(11) - (12)].v)[0],(yyvsp[(11) - (12)].v)[1],(yyvsp[(11) - (12)].v)[2]); + + std::vector<double> transfo; + computeAffineTransformation(origin,axis,angle,translation,transfo); + + for(int i = 0; i < List_Nbr((yyvsp[(4) - (12)].l)); i++){ + double d_master, d_slave; + List_Read((yyvsp[(8) - (12)].l), i, &d_master); + List_Read((yyvsp[(4) - (12)].l), i, &d_slave); + addPeriodicEdge(d_slave,d_master,transfo); + } + } + List_Delete((yyvsp[(4) - (12)].l)); + List_Delete((yyvsp[(8) - (12)].l)); + ;} + break; + + case 341: +#line 4450 "Gmsh.y" + { + if (List_Nbr((yyvsp[(4) - (12)].l)) != List_Nbr((yyvsp[(8) - (12)].l))){ + yymsg(0, "Number of master faces (%d) different from number of " + "slaves (%d) ", List_Nbr((yyvsp[(8) - (12)].l)), List_Nbr((yyvsp[(4) - (12)].l))); + } + else{ + SPoint3 origin(0,0,0); + SPoint3 axis(0,0,0); + double angle(0); + SPoint3 translation((yyvsp[(11) - (12)].v)[0],(yyvsp[(11) - (12)].v)[1],(yyvsp[(11) - (12)].v)[2]); + + std::vector<double> transfo; + computeAffineTransformation(origin,axis,angle,translation,transfo); + + for(int i = 0; i < List_Nbr((yyvsp[(4) - (12)].l)); i++){ + double d_master, d_slave; + List_Read((yyvsp[(8) - (12)].l), i, &d_master); + List_Read((yyvsp[(4) - (12)].l), i, &d_slave); + addPeriodicFace(d_slave, d_master, transfo); + } + } + List_Delete((yyvsp[(4) - (12)].l)); + List_Delete((yyvsp[(8) - (12)].l)); + ;} + break; + + case 342: +#line 4476 "Gmsh.y" + { + if (List_Nbr((yyvsp[(5) - (12)].l)) != List_Nbr((yyvsp[(10) - (12)].l))){ + yymsg(0, "Number of master surface edges (%d) different from number of " + "slave (%d) edges", List_Nbr((yyvsp[(10) - (12)].l)), List_Nbr((yyvsp[(5) - (12)].l))); + } + else{ + int j_master = (int)(yyvsp[(8) - (12)].d); + int j_slave = (int)(yyvsp[(3) - (12)].d); + std::map<int,int> edgeCounterParts; + for (int i = 0; i < List_Nbr((yyvsp[(5) - (12)].l)); i++){ + double ds,dm; + List_Read((yyvsp[(5) - (12)].l),i,&ds); + List_Read((yyvsp[(10) - (12)].l),i,&dm); + edgeCounterParts[(int) ds] = (int) dm; + } + addPeriodicFace(j_slave, j_master, edgeCounterParts); + } + List_Delete((yyvsp[(5) - (12)].l)); + List_Delete((yyvsp[(10) - (12)].l)); + ;} + break; + + case 343: +#line 4497 "Gmsh.y" + { + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); + addEmbedded(0, tags, 2, (int)(yyvsp[(8) - (10)].d)); + List_Delete((yyvsp[(3) - (10)].l)); + ;} + break; + + case 344: +#line 4503 "Gmsh.y" + { + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); + addEmbedded(1, tags, 2, (int)(yyvsp[(8) - (10)].d)); + List_Delete((yyvsp[(3) - (10)].l)); + ;} + break; + + case 345: +#line 4509 "Gmsh.y" + { + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); + addEmbedded(0, tags, 3, (int)(yyvsp[(8) - (10)].d)); + List_Delete((yyvsp[(3) - (10)].l)); + ;} + break; + + case 346: +#line 4515 "Gmsh.y" + { + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); + addEmbedded(1, tags, 3, (int)(yyvsp[(8) - (10)].d)); + List_Delete((yyvsp[(3) - (10)].l)); + ;} + break; + + case 347: +#line 4521 "Gmsh.y" + { + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); + addEmbedded(2, tags, 3, (int)(yyvsp[(8) - (10)].d)); + List_Delete((yyvsp[(3) - (10)].l)); + ;} + break; + + case 348: +#line 4527 "Gmsh.y" + { + // reverse mesh constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(!(yyvsp[(3) - (4)].l)){ + GModel::current()->getGEOInternals()->setReverseMesh(2, 0); + for(GModel::fiter it = GModel::current()->firstFace(); + it != GModel::current()->lastFace(); it++){ + (*it)->meshAttributes.reverseMesh = 1; + } + } + else{ + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (4)].l), i, &d); + int num = (int)d; + GModel::current()->getGEOInternals()->setReverseMesh(2, num); + GFace *gf = GModel::current()->getFaceByTag(num); + if(gf) gf->meshAttributes.reverseMesh = 1; + } + List_Delete((yyvsp[(3) - (4)].l)); + } + ;} + break; + + case 349: +#line 4553 "Gmsh.y" + { + // reverse mesh constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(!(yyvsp[(3) - (4)].l)){ + GModel::current()->getGEOInternals()->setReverseMesh(1, 0); + for(GModel::eiter it = GModel::current()->firstEdge(); + it != GModel::current()->lastEdge(); it++){ + (*it)->meshAttributes.reverseMesh = 1; + } + } + else{ + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (4)].l), i, &d); + int num = (int)d; + GModel::current()->getGEOInternals()->setReverseMesh(1, num); + GEdge *ge = GModel::current()->getEdgeByTag(num); + if(ge) ge->meshAttributes.reverseMesh = 1; + } + List_Delete((yyvsp[(3) - (4)].l)); + } + ;} + break; + + case 350: +#line 4579 "Gmsh.y" + { + if(!(yyvsp[(3) - (4)].l)){ + for(GModel::viter it = GModel::current()->firstVertex(); + it != GModel::current()->lastVertex(); it++) + (*it)->relocateMeshVertices(); + } + else{ + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (4)].l), i, &d); + GVertex *gv = GModel::current()->getVertexByTag((int)d); + if(gv) gv->relocateMeshVertices(); + } + List_Delete((yyvsp[(3) - (4)].l)); + } + ;} + break; + + case 351: +#line 4596 "Gmsh.y" + { + if(!(yyvsp[(3) - (4)].l)){ + for(GModel::eiter it = GModel::current()->firstEdge(); + it != GModel::current()->lastEdge(); it++) + (*it)->relocateMeshVertices(); + } + else{ + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (4)].l), i, &d); + GEdge *ge = GModel::current()->getEdgeByTag((int)d); + if(ge) ge->relocateMeshVertices(); + } + List_Delete((yyvsp[(3) - (4)].l)); + } + ;} + break; + + case 352: +#line 4613 "Gmsh.y" + { + if(!(yyvsp[(3) - (4)].l)){ + for(GModel::fiter it = GModel::current()->firstFace(); + it != GModel::current()->lastFace(); it++) + (*it)->relocateMeshVertices(); + } + else{ + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (4)].l), i, &d); + GFace *gf = GModel::current()->getFaceByTag((int)d); + if(gf) gf->relocateMeshVertices(); + } + List_Delete((yyvsp[(3) - (4)].l)); + } + ;} + break; + + case 353: +#line 4630 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + double dnum; + List_Read((yyvsp[(3) - (4)].l), i, &dnum); + int num = (int)dnum; + GModel::current()->getGEOInternals()->setDegenerated(1, num); + GEdge *ge = GModel::current()->getEdgeByTag(num); + if(ge) ge->setTooSmall(true); + } + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 354: +#line 4642 "Gmsh.y" + { + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (4)].l), tags); + GModel::current()->getGEOInternals()->setCompoundMesh(1, tags); + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 355: +#line 4648 "Gmsh.y" + { + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (4)].l), tags); + GModel::current()->getGEOInternals()->setCompoundMesh(2, tags); + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 356: +#line 4654 "Gmsh.y" + { + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (4)].l), tags); + GModel::current()->getGEOInternals()->setCompoundMesh(3, tags); + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 357: +#line 4666 "Gmsh.y" + { + GModel::current()->getGEOInternals()->removeAllDuplicates(); + ;} + break; + + case 358: +#line 4670 "Gmsh.y" + { + if(!strcmp((yyvsp[(2) - (3)].c), "Geometry")) + GModel::current()->getGEOInternals()->removeAllDuplicates(); + else if(!strcmp((yyvsp[(2) - (3)].c), "Mesh")) + GModel::current()->removeDuplicateMeshVertices(CTX::instance()->geom.tolerance); + else + yymsg(0, "Unknown coherence command"); + Free((yyvsp[(2) - (3)].c)); + ;} + break; + + case 359: +#line 4680 "Gmsh.y" + { + std::vector<int> tags; ListOfDouble2Vector((yyvsp[(4) - (6)].l), tags); + GModel::current()->getGEOInternals()->mergeVertices(tags); + List_Delete((yyvsp[(4) - (6)].l)); + ;} + break; + + case 360: +#line 4690 "Gmsh.y" + { (yyval.c) = (char*)"Homology"; ;} + break; + + case 361: +#line 4691 "Gmsh.y" + { (yyval.c) = (char*)"Cohomology"; ;} + break; + + case 362: +#line 4692 "Gmsh.y" + { (yyval.c) = (char*)"Betti"; ;} + break; + + case 363: +#line 4697 "Gmsh.y" + { + std::vector<int> domain, subdomain, dim; + for(int i = 0; i < 4; i++) dim.push_back(i); + GModel::current()->addHomologyRequest((yyvsp[(1) - (2)].c), domain, subdomain, dim); + ;} + break; + + case 364: +#line 4703 "Gmsh.y" + { + std::vector<int> domain, subdomain, dim; + for(int i = 0; i < List_Nbr((yyvsp[(3) - (5)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (5)].l), i, &d); + domain.push_back((int)d); + } + for(int i = 0; i < 4; i++) dim.push_back(i); + GModel::current()->addHomologyRequest((yyvsp[(1) - (5)].c), domain, subdomain, dim); + List_Delete((yyvsp[(3) - (5)].l)); + ;} + break; + + case 365: +#line 4715 "Gmsh.y" + { + std::vector<int> domain, subdomain, dim; + for(int i = 0; i < List_Nbr((yyvsp[(3) - (7)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (7)].l), i, &d); + domain.push_back((int)d); + } + for(int i = 0; i < List_Nbr((yyvsp[(5) - (7)].l)); i++){ + double d; + List_Read((yyvsp[(5) - (7)].l), i, &d); + subdomain.push_back((int)d); + } + for(int i = 0; i < 4; i++) dim.push_back(i); + GModel::current()->addHomologyRequest((yyvsp[(1) - (7)].c), domain, subdomain, dim); + List_Delete((yyvsp[(3) - (7)].l)); + List_Delete((yyvsp[(5) - (7)].l)); + ;} + break; + + case 366: +#line 4733 "Gmsh.y" + { + std::vector<int> domain, subdomain, dim; + for(int i = 0; i < List_Nbr((yyvsp[(6) - (10)].l)); i++){ + double d; + List_Read((yyvsp[(6) - (10)].l), i, &d); + domain.push_back((int)d); + } + for(int i = 0; i < List_Nbr((yyvsp[(8) - (10)].l)); i++){ + double d; + List_Read((yyvsp[(8) - (10)].l), i, &d); + subdomain.push_back((int)d); + } + for(int i = 0; i < List_Nbr((yyvsp[(3) - (10)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (10)].l), i, &d); + dim.push_back((int)d); + } + GModel::current()->addHomologyRequest((yyvsp[(1) - (10)].c), domain, subdomain, dim); + List_Delete((yyvsp[(6) - (10)].l)); + List_Delete((yyvsp[(8) - (10)].l)); + List_Delete((yyvsp[(3) - (10)].l)); + ;} + break; + + case 367: +#line 4760 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (1)].d); ;} + break; + + case 368: +#line 4761 "Gmsh.y" + { (yyval.d) = (yyvsp[(2) - (3)].d); ;} + break; + + case 369: +#line 4762 "Gmsh.y" + { (yyval.d) = -(yyvsp[(2) - (2)].d); ;} + break; + + case 370: +#line 4763 "Gmsh.y" + { (yyval.d) = (yyvsp[(2) - (2)].d); ;} + break; + + case 371: +#line 4764 "Gmsh.y" + { (yyval.d) = !(yyvsp[(2) - (2)].d); ;} + break; + + case 372: +#line 4765 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;} + break; + + case 373: +#line 4766 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;} + break; + + case 374: +#line 4767 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;} + break; + + case 375: +#line 4769 "Gmsh.y" + { + if(!(yyvsp[(3) - (3)].d)) + yymsg(0, "Division by zero in '%g / %g'", (yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); + else + (yyval.d) = (yyvsp[(1) - (3)].d) / (yyvsp[(3) - (3)].d); + ;} + break; + + case 376: +#line 4775 "Gmsh.y" + { (yyval.d) = (int)(yyvsp[(1) - (3)].d) | (int)(yyvsp[(3) - (3)].d); ;} + break; + + case 377: +#line 4776 "Gmsh.y" + { (yyval.d) = (int)(yyvsp[(1) - (3)].d) & (int)(yyvsp[(3) - (3)].d); ;} + break; + + case 378: +#line 4777 "Gmsh.y" + { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;} + break; + + case 379: +#line 4778 "Gmsh.y" + { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;} + break; + + case 380: +#line 4779 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;} + break; + + case 381: +#line 4780 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;} + break; + + case 382: +#line 4781 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;} + break; + + case 383: +#line 4782 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;} + break; + + case 384: +#line 4783 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;} + break; + + case 385: +#line 4784 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;} + break; + + case 386: +#line 4785 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;} + break; + + case 387: +#line 4786 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;} + break; + + case 388: +#line 4787 "Gmsh.y" + { (yyval.d) = ((int)(yyvsp[(1) - (3)].d) >> (int)(yyvsp[(3) - (3)].d)); ;} + break; + + case 389: +#line 4788 "Gmsh.y" + { (yyval.d) = ((int)(yyvsp[(1) - (3)].d) << (int)(yyvsp[(3) - (3)].d)); ;} + break; + + case 390: +#line 4789 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;} + break; + + case 391: +#line 4790 "Gmsh.y" + { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} + break; + + case 392: +#line 4791 "Gmsh.y" + { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} + break; + + case 393: +#line 4792 "Gmsh.y" + { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} + break; + + case 394: +#line 4793 "Gmsh.y" + { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} + break; + + case 395: +#line 4794 "Gmsh.y" + { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} + break; + + case 396: +#line 4795 "Gmsh.y" + { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} + break; + + case 397: +#line 4796 "Gmsh.y" + { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} + break; + + case 398: +#line 4797 "Gmsh.y" + { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} + break; + + case 399: +#line 4798 "Gmsh.y" + { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} + break; + + case 400: +#line 4799 "Gmsh.y" + { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} + break; + + case 401: +#line 4800 "Gmsh.y" + { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} + break; + + case 402: +#line 4801 "Gmsh.y" + { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} + break; + + case 403: +#line 4802 "Gmsh.y" + { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} + break; + + case 404: +#line 4803 "Gmsh.y" + { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} + break; + + case 405: +#line 4804 "Gmsh.y" + { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} + break; + + case 406: +#line 4805 "Gmsh.y" + { (yyval.d) = std::abs((yyvsp[(3) - (4)].d)); ;} + break; + + case 407: +#line 4806 "Gmsh.y" + { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} + break; + + case 408: +#line 4807 "Gmsh.y" + { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} + break; + + case 409: +#line 4808 "Gmsh.y" + { (yyval.d) = floor((yyvsp[(3) - (4)].d) + 0.5); ;} + break; + + case 410: +#line 4809 "Gmsh.y" + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} + break; + + case 411: +#line 4810 "Gmsh.y" + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} + break; + + case 412: +#line 4811 "Gmsh.y" + { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} + break; + + case 413: +#line 4812 "Gmsh.y" + { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} + break; + + case 414: +#line 4821 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (1)].d); ;} + break; + + case 415: +#line 4822 "Gmsh.y" + { (yyval.d) = 3.141592653589793; ;} + break; + + case 416: +#line 4823 "Gmsh.y" + { (yyval.d) = (double)ImbricatedTest; ;} + break; + + case 417: +#line 4824 "Gmsh.y" + { (yyval.d) = Msg::GetCommRank(); ;} + break; + + case 418: +#line 4825 "Gmsh.y" + { (yyval.d) = Msg::GetCommSize(); ;} + break; + + case 419: +#line 4826 "Gmsh.y" + { (yyval.d) = GetGmshMajorVersion(); ;} + break; + + case 420: +#line 4827 "Gmsh.y" + { (yyval.d) = GetGmshMinorVersion(); ;} + break; + + case 421: +#line 4828 "Gmsh.y" + { (yyval.d) = GetGmshPatchVersion(); ;} + break; + + case 422: +#line 4829 "Gmsh.y" + { (yyval.d) = Cpu(); ;} + break; + + case 423: +#line 4830 "Gmsh.y" + { (yyval.d) = GetMemoryUsage()/1024./1024.; ;} + break; + + case 424: +#line 4831 "Gmsh.y" + { (yyval.d) = TotalRam(); ;} + break; + + case 425: +#line 4836 "Gmsh.y" + { init_options(); ;} + break; + + case 426: +#line 4838 "Gmsh.y" + { + std::vector<double> val(1, (yyvsp[(3) - (6)].d)); + Msg::ExchangeOnelabParameter("", val, floatOptions, charOptions); + (yyval.d) = val[0]; + ;} + break; + + case 427: +#line 4844 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (1)].d); ;} + break; + + case 428: +#line 4846 "Gmsh.y" + { + (yyval.d) = Msg::GetOnelabNumber((yyvsp[(3) - (4)].c)); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 429: +#line 4851 "Gmsh.y" + { + (yyval.d) = Msg::GetOnelabNumber((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); + Free((yyvsp[(3) - (6)].c)); + ;} + break; + + case 430: +#line 4856 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_Float((yyvsp[(1) - (1)].c2).char1, (yyvsp[(1) - (1)].c2).char2); + ;} + break; + + case 431: +#line 4861 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_Float((yyvsp[(1) - (4)].c2).char1, (yyvsp[(1) - (4)].c2).char2, 2, (int)(yyvsp[(3) - (4)].d)); + /* + int index = (int)$3; + if(!gmsh_yysymbols.count($1)){ + yymsg(0, "Unknown variable '%s'", $1); + $$ = 0.; + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[$1]); + if((int)s.value.size() < index + 1){ + yymsg(0, "Uninitialized variable '%s[%d]'", $1, index); + $$ = 0.; + } + else + $$ = s.value[index]; + } + Free($1); + */ + ;} + break; + + case 432: +#line 4883 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_Float((yyvsp[(1) - (4)].c2).char1, (yyvsp[(1) - (4)].c2).char2, 2, (int)(yyvsp[(3) - (4)].d)); + /* + int index = (int)$3; + if(!gmsh_yysymbols.count($1)){ + yymsg(0, "Unknown variable '%s'", $1); + $$ = 0.; + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[$1]); + if((int)s.value.size() < index + 1){ + yymsg(0, "Uninitialized variable '%s[%d]'", $1, index); + $$ = 0.; + } + else + $$ = s.value[index]; + } + Free($1); + */ + ;} + break; + + case 433: +#line 4904 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_Float((yyvsp[(3) - (4)].c2).char1, (yyvsp[(3) - (4)].c2).char2, 1, 0, 0., 1); + ;} + break; + + case 434: +#line 4908 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float((yyvsp[(3) - (6)].c2).char1, (yyvsp[(3) - (6)].c2).char2, (yyvsp[(5) - (6)].c), 0, 0., 1); + ;} + break; + + case 435: +#line 4912 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_Float((yyvsp[(3) - (5)].c2).char1, (yyvsp[(3) - (5)].c2).char2, 1, 0, (yyvsp[(4) - (5)].d), 2); + ;} + break; + + case 436: +#line 4916 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float((yyvsp[(3) - (7)].c2).char1, (yyvsp[(3) - (7)].c2).char2, (yyvsp[(5) - (7)].c), 0, (yyvsp[(6) - (7)].d), 2); + ;} + break; + + case 437: +#line 4920 "Gmsh.y" + { + std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(3) - (4)].c)); + (yyval.d) = !StatFile(tmp); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 438: +#line 4926 "Gmsh.y" + { + if(gmsh_yysymbols.count((yyvsp[(2) - (4)].c))){ + gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(2) - (4)].c)]); + (yyval.d) = s.value.size(); + } + else if(gmsh_yystringsymbols.count((yyvsp[(2) - (4)].c))){ + (yyval.d) = gmsh_yystringsymbols[(yyvsp[(2) - (4)].c)].size(); + } + else{ + yymsg(0, "Unknown variable '%s'", (yyvsp[(2) - (4)].c)); + (yyval.d) = 0.; + } + Free((yyvsp[(2) - (4)].c)); + ;} + break; + + case 439: +#line 4942 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float_getDim((yyvsp[(2) - (6)].c2).char1, (yyvsp[(2) - (6)].c2).char2, (yyvsp[(4) - (6)].c)); + ;} + break; + + case 440: +#line 4947 "Gmsh.y" + { + std::string struct_namespace((yyvsp[(3) - (4)].c)); + (yyval.d) = (double)nameSpaces[struct_namespace].size(); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 441: +#line 4953 "Gmsh.y" + { + std::string struct_namespace(std::string("")); + (yyval.d) = (double)nameSpaces[struct_namespace].size(); + ;} + break; + + case 442: +#line 4959 "Gmsh.y" + { + if(!gmsh_yysymbols.count((yyvsp[(1) - (2)].c))){ + yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (2)].c)); + (yyval.d) = 0.; + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(1) - (2)].c)]); + if(s.value.empty()){ + yymsg(0, "Uninitialized variable '%s'", (yyvsp[(1) - (2)].c)); + (yyval.d) = 0.; + } + else{ + (yyval.d) = s.value[0]; + s.value[0] += (yyvsp[(2) - (2)].i); + } + } + Free((yyvsp[(1) - (2)].c)); + ;} + break; + + case 443: +#line 4978 "Gmsh.y" + { + int index = (int)(yyvsp[(3) - (5)].d); + if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ + yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (5)].c)); + (yyval.d) = 0.; + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(1) - (5)].c)]); + if((int)s.value.size() < index + 1){ + yymsg(0, "Uninitialized variable '%s[%d]'", (yyvsp[(1) - (5)].c), index); + (yyval.d) = 0.; + } + else{ + (yyval.d) = s.value[index]; + s.value[index] += (yyvsp[(5) - (5)].i); + } + } + Free((yyvsp[(1) - (5)].c)); + ;} + break; + + case 444: +#line 4999 "Gmsh.y" + { + int index = (int)(yyvsp[(3) - (5)].d); + if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ + yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (5)].c)); + (yyval.d) = 0.; + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(1) - (5)].c)]); + if((int)s.value.size() < index + 1){ + yymsg(0, "Uninitialized variable '%s[%d]'", (yyvsp[(1) - (5)].c), index); + (yyval.d) = 0.; + } + else{ + (yyval.d) = s.value[index]; + s.value[index] += (yyvsp[(5) - (5)].i); + } + } + Free((yyvsp[(1) - (5)].c)); + ;} + break; + + case 445: +#line 5032 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float(NULL, (yyvsp[(1) - (3)].c), (yyvsp[(3) - (3)].c)); + ;} + break; + + case 446: +#line 5036 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float((yyvsp[(1) - (5)].c), (yyvsp[(3) - (5)].c), (yyvsp[(5) - (5)].c)); + ;} + break; + + case 447: +#line 5041 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float(NULL, (yyvsp[(1) - (6)].c), (yyvsp[(3) - (6)].c), (int)(yyvsp[(5) - (6)].d)); + ;} + break; + + case 448: +#line 5045 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float((yyvsp[(1) - (8)].c), (yyvsp[(3) - (8)].c), (yyvsp[(5) - (8)].c), (int)(yyvsp[(7) - (8)].d)); + ;} + break; + + case 449: +#line 5050 "Gmsh.y" + { + NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), (yyval.d)); + Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); + ;} + break; + + case 450: +#line 5055 "Gmsh.y" + { + double d = 0.; + if(NumberOption(GMSH_GET, (yyvsp[(1) - (4)].c), 0, (yyvsp[(3) - (4)].c), d)){ + d += (yyvsp[(4) - (4)].i); + NumberOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (4)].c), 0, (yyvsp[(3) - (4)].c), d); + (yyval.d) = d; + } + Free((yyvsp[(1) - (4)].c)); Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 451: +#line 5065 "Gmsh.y" + { + double d = 0.; + if(NumberOption(GMSH_GET, (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c), d)){ + d += (yyvsp[(7) - (7)].i); + NumberOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c), d); + (yyval.d) = d; + } + Free((yyvsp[(1) - (7)].c)); Free((yyvsp[(6) - (7)].c)); + ;} + break; + + case 452: +#line 5075 "Gmsh.y" + { + (yyval.d) = Msg::GetValue((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); + Free((yyvsp[(3) - (6)].c)); + ;} + break; + + case 453: +#line 5080 "Gmsh.y" + { + int matches = 0; + for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (6)].l), i, &d); + matches += List_Search((yyvsp[(5) - (6)].l), &d, fcmp_double); + } + (yyval.d) = matches; + Free((yyvsp[(3) - (6)].l)); Free((yyvsp[(5) - (6)].l)); + ;} + break; + + case 454: +#line 5091 "Gmsh.y" + { + std::string s((yyvsp[(3) - (6)].c)), substr((yyvsp[(5) - (6)].c)); + if(s.find(substr) != std::string::npos) + (yyval.d) = 1.; + else + (yyval.d) = 0.; + Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c)); + ;} + break; + + case 455: +#line 5100 "Gmsh.y" + { + (yyval.d) = strlen((yyvsp[(3) - (4)].c)); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 456: +#line 5105 "Gmsh.y" + { + (yyval.d) = strcmp((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); + Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c)); + ;} + break; + + case 457: +#line 5110 "Gmsh.y" + { + int align = 0, font = 0, fontsize = CTX::instance()->glFontSize; + if(List_Nbr((yyvsp[(3) - (4)].l)) % 2){ + yymsg(0, "Number of text attributes should be even"); + } + else{ + for(int i = 0 ; i < List_Nbr((yyvsp[(3) - (4)].l)); i += 2){ + char *s1, *s2; List_Read((yyvsp[(3) - (4)].l), i, &s1); List_Read((yyvsp[(3) - (4)].l), i + 1, &s2); + std::string key(s1), val(s2); + Free(s1); Free(s2); +#if defined(HAVE_OPENGL) + if(key == "Font") + font = drawContext::global()->getFontIndex(val.c_str()); + else if(key == "FontSize") + fontsize = atoi(val.c_str()); + else if(key == "Align") + align = drawContext::global()->getFontAlign(val.c_str()); +#endif + } + } + List_Delete((yyvsp[(3) - (4)].l)); + (yyval.d) = (double)((align<<16)|(font<<8)|(fontsize)); + ;} + break; + + case 458: +#line 5137 "Gmsh.y" + { (yyval.d) = 0.; ;} + break; + + case 459: +#line 5139 "Gmsh.y" + { (yyval.d) = (yyvsp[(2) - (2)].d);;} + break; + + case 460: +#line 5144 "Gmsh.y" + { (yyval.c) = NULL; ;} + break; + + case 461: +#line 5146 "Gmsh.y" + { (yyval.c) = (yyvsp[(2) - (2)].c);;} + break; + + case 462: +#line 5151 "Gmsh.y" + { + std::string struct_namespace((yyvsp[(2) - (3)].c2).char1? (yyvsp[(2) - (3)].c2).char1 : std::string("")), + struct_name((yyvsp[(2) - (3)].c2).char2); + init_options + (nameSpaces.getMember_ValMax(struct_namespace, struct_name)); + ;} + break; + + case 463: +#line 5158 "Gmsh.y" + { + std::string struct_namespace((yyvsp[(2) - (7)].c2).char1? (yyvsp[(2) - (7)].c2).char1 : std::string("")), + struct_name((yyvsp[(2) - (7)].c2).char2); + Free((yyvsp[(2) - (7)].c2).char1); Free((yyvsp[(2) - (7)].c2).char2); + int tag_out; + if (nameSpaces.defStruct(struct_namespace, struct_name, + floatOptions, charOptions, + tag_out, member_ValMax, (yyvsp[(3) - (7)].i))) + yymsg(0, "Redefinition of Struct '%s::%s'", + struct_namespace.c_str(), struct_name.c_str()); + (yyval.d) = (double)tag_out; + ;} + break; + + case 464: +#line 5174 "Gmsh.y" + { (yyval.c2).char1 = NULL; (yyval.c2).char2 = (yyvsp[(1) - (1)].c); ;} + break; + + case 465: +#line 5176 "Gmsh.y" + { (yyval.c2).char1 = (yyvsp[(1) - (3)].c); (yyval.c2).char2 = (yyvsp[(3) - (3)].c); ;} + break; + + case 466: +#line 5181 "Gmsh.y" + { (yyval.c) = (yyvsp[(1) - (1)].c); flag_tSTRING_alloc = 1; ;} + break; + + case 467: +#line 5190 "Gmsh.y" + { (yyval.i) = 99; ;} + break; + + case 468: +#line 5192 "Gmsh.y" + { (yyval.i) = (int)(yyvsp[(2) - (2)].d); ;} + break; + + case 469: +#line 5197 "Gmsh.y" + { (yyval.i) = 0; ;} + break; + + case 470: +#line 5199 "Gmsh.y" + { (yyval.i) = (yyvsp[(2) - (3)].i); ;} + break; + + case 471: +#line 5205 "Gmsh.y" + { + memcpy((yyval.v), (yyvsp[(1) - (1)].v), 5*sizeof(double)); + ;} + break; + + case 472: +#line 5209 "Gmsh.y" + { + for(int i = 0; i < 5; i++) (yyval.v)[i] = -(yyvsp[(2) - (2)].v)[i]; + ;} + break; + + case 473: +#line 5213 "Gmsh.y" + { + for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; + ;} + break; + + case 474: +#line 5217 "Gmsh.y" + { + for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] - (yyvsp[(3) - (3)].v)[i]; + ;} + break; + + case 475: +#line 5221 "Gmsh.y" + { + for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] + (yyvsp[(3) - (3)].v)[i]; + ;} + break; + + case 476: +#line 5228 "Gmsh.y" + { + (yyval.v)[0] = (yyvsp[(2) - (11)].d); (yyval.v)[1] = (yyvsp[(4) - (11)].d); (yyval.v)[2] = (yyvsp[(6) - (11)].d); (yyval.v)[3] = (yyvsp[(8) - (11)].d); (yyval.v)[4] = (yyvsp[(10) - (11)].d); + ;} + break; + + case 477: +#line 5232 "Gmsh.y" + { + (yyval.v)[0] = (yyvsp[(2) - (9)].d); (yyval.v)[1] = (yyvsp[(4) - (9)].d); (yyval.v)[2] = (yyvsp[(6) - (9)].d); (yyval.v)[3] = (yyvsp[(8) - (9)].d); (yyval.v)[4] = 1.0; + ;} + break; + + case 478: +#line 5236 "Gmsh.y" + { + (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; + ;} + break; + + case 479: +#line 5240 "Gmsh.y" + { + (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; + ;} + break; + + case 480: +#line 5247 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(List_T*)); + List_Add((yyval.l), &((yyvsp[(1) - (1)].l))); + ;} + break; + + case 481: +#line 5252 "Gmsh.y" + { + List_Add((yyval.l), &((yyvsp[(3) - (3)].l))); + ;} + break; + + case 482: +#line 5259 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(double)); + List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); + ;} + break; + + case 483: +#line 5264 "Gmsh.y" + { + (yyval.l) = (yyvsp[(1) - (1)].l); + ;} + break; + + case 484: +#line 5268 "Gmsh.y" + { + // creates an empty list + (yyval.l) = List_Create(2, 1, sizeof(double)); + ;} + break; + + case 485: +#line 5273 "Gmsh.y" + { + (yyval.l) = (yyvsp[(2) - (3)].l); + ;} + break; + + case 486: +#line 5277 "Gmsh.y" + { + (yyval.l) = (yyvsp[(3) - (4)].l); + for(int i = 0; i < List_Nbr((yyval.l)); i++){ + double *pd = (double*)List_Pointer((yyval.l), i); + (*pd) = - (*pd); + } + ;} + break; + + case 487: +#line 5285 "Gmsh.y" + { + (yyval.l) = (yyvsp[(4) - (5)].l); + for(int i = 0; i < List_Nbr((yyval.l)); i++){ + double *pd = (double*)List_Pointer((yyval.l), i); + (*pd) *= (yyvsp[(1) - (5)].d); + } + ;} + break; + + case 488: +#line 5296 "Gmsh.y" + { + (yyval.l) = (yyvsp[(1) - (1)].l); + ;} + break; + + case 489: +#line 5300 "Gmsh.y" + { + if(!strcmp((yyvsp[(1) - (1)].c), "*") || !strcmp((yyvsp[(1) - (1)].c), "all")) + (yyval.l) = 0; + else{ + yyerror("Unknown special string for list replacement"); + (yyval.l) = List_Create(2, 1, sizeof(double)); + } + ;} + break; + + case 490: +#line 5312 "Gmsh.y" + { + (yyval.l) = (yyvsp[(2) - (2)].l); + for(int i = 0; i < List_Nbr((yyval.l)); i++){ + double *pd = (double*)List_Pointer((yyval.l), i); + (*pd) = - (*pd); + } + ;} + break; + + case 491: +#line 5320 "Gmsh.y" + { + (yyval.l) = (yyvsp[(3) - (3)].l); + for(int i = 0; i < List_Nbr((yyval.l)); i++){ + double *pd = (double*)List_Pointer((yyval.l), i); + (*pd) *= (yyvsp[(1) - (3)].d); + } + ;} + break; + + case 492: +#line 5328 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(double)); + for(double d = (yyvsp[(1) - (3)].d); ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d <= (yyvsp[(3) - (3)].d)) : (d >= (yyvsp[(3) - (3)].d)); + ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d += 1.) : (d -= 1.)) + List_Add((yyval.l), &d); + ;} + break; + + case 493: +#line 5335 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(double)); + if(!(yyvsp[(5) - (5)].d)){ //|| ($1 < $3 && $5 < 0) || ($1 > $3 && $5 > 0) + yymsg(0, "Wrong increment in '%g:%g:%g'", (yyvsp[(1) - (5)].d), (yyvsp[(3) - (5)].d), (yyvsp[(5) - (5)].d)); + } + else + for(double d = (yyvsp[(1) - (5)].d); ((yyvsp[(5) - (5)].d) > 0) ? (d <= (yyvsp[(3) - (5)].d)) : (d >= (yyvsp[(3) - (5)].d)); d += (yyvsp[(5) - (5)].d)) + List_Add((yyval.l), &d); + ;} + break; + + case 494: +#line 5345 "Gmsh.y" + { + (yyval.l) = List_Create(3, 1, sizeof(double)); + int tag = (int)(yyvsp[(3) - (4)].d); + double x = 0., y = 0., z = 0.; + bool found = GModel::current()->getGEOInternals()->getVertex(tag, x, y, z); + if(!found && GModel::current()->getOCCInternals()) + found = GModel::current()->getOCCInternals()->getVertex(tag, x, y, z); + if(!found){ + GVertex *gv = GModel::current()->getVertexByTag(tag); + if(gv){ + x = gv->x(); + y = gv->y(); + z = gv->z(); + } + else{ + yymsg(0, "Unknown model vertex with tag %d", tag); + } + } + List_Add((yyval.l), &x); + List_Add((yyval.l), &y); + List_Add((yyval.l), &z); + ;} + break; + + case 495: +#line 5368 "Gmsh.y" + { + (yyval.l) = List_Create(10, 10, sizeof(double)); + getAllElementaryTags(0, (yyval.l)); + Free((yyvsp[(2) - (2)].c)); + ;} + break; + + case 496: +#line 5374 "Gmsh.y" + { + (yyval.l) = List_Create(10, 10, sizeof(double)); + getAllElementaryTags(1, (yyval.l)); + Free((yyvsp[(2) - (2)].c)); + ;} + break; + + case 497: +#line 5380 "Gmsh.y" + { + (yyval.l) = List_Create(10, 10, sizeof(double)); + getAllElementaryTags(2, (yyval.l)); + Free((yyvsp[(2) - (2)].c)); + ;} + break; + + case 498: +#line 5386 "Gmsh.y" + { + (yyval.l) = List_Create(10, 10, sizeof(double)); + getAllElementaryTags(3, (yyval.l)); + Free((yyvsp[(2) - (2)].c)); + ;} + break; + + case 499: +#line 5392 "Gmsh.y" + { + (yyval.l) = List_Create(10, 10, sizeof(double)); + if(!(yyvsp[(3) - (3)].l)){ + getAllPhysicalTags(0, (yyval.l)); + } + else{ + getElementaryTagsForPhysicalGroups(0, (yyvsp[(3) - (3)].l), (yyval.l)); + List_Delete((yyvsp[(3) - (3)].l)); + } + ;} + break; + + case 500: +#line 5403 "Gmsh.y" + { + (yyval.l) = List_Create(10, 10, sizeof(double)); + if(!(yyvsp[(3) - (3)].l)){ + getAllPhysicalTags(1, (yyval.l)); + } + else{ + getElementaryTagsForPhysicalGroups(1, (yyvsp[(3) - (3)].l), (yyval.l)); + List_Delete((yyvsp[(3) - (3)].l)); + } + ;} + break; + + case 501: +#line 5414 "Gmsh.y" + { + (yyval.l) = List_Create(10, 10, sizeof(double)); + if(!(yyvsp[(3) - (3)].l)){ + getAllPhysicalTags(2, (yyval.l)); + } + else{ + getElementaryTagsForPhysicalGroups(2, (yyvsp[(3) - (3)].l), (yyval.l)); + List_Delete((yyvsp[(3) - (3)].l)); + } + ;} + break; + + case 502: +#line 5425 "Gmsh.y" + { + (yyval.l) = List_Create(10, 10, sizeof(double)); + if(!(yyvsp[(3) - (3)].l)){ + getAllPhysicalTags(3, (yyval.l)); + } + else{ + getElementaryTagsForPhysicalGroups(3, (yyvsp[(3) - (3)].l), (yyval.l)); + List_Delete((yyvsp[(3) - (3)].l)); + } + ;} + break; + + case 503: +#line 5437 "Gmsh.y" + { + (yyval.l) = List_Create(10, 10, sizeof(double)); + getElementaryTagsInBoundingBox(0, (yyvsp[(5) - (16)].d), (yyvsp[(7) - (16)].d), (yyvsp[(9) - (16)].d), (yyvsp[(11) - (16)].d), (yyvsp[(13) - (16)].d), (yyvsp[(15) - (16)].d), (yyval.l)); + ;} + break; + + case 504: +#line 5443 "Gmsh.y" + { + (yyval.l) = List_Create(10, 10, sizeof(double)); + getElementaryTagsInBoundingBox(1, (yyvsp[(5) - (16)].d), (yyvsp[(7) - (16)].d), (yyvsp[(9) - (16)].d), (yyvsp[(11) - (16)].d), (yyvsp[(13) - (16)].d), (yyvsp[(15) - (16)].d), (yyval.l)); + ;} + break; + + case 505: +#line 5449 "Gmsh.y" + { + (yyval.l) = List_Create(10, 10, sizeof(double)); + getElementaryTagsInBoundingBox(2, (yyvsp[(5) - (16)].d), (yyvsp[(7) - (16)].d), (yyvsp[(9) - (16)].d), (yyvsp[(11) - (16)].d), (yyvsp[(13) - (16)].d), (yyvsp[(15) - (16)].d), (yyval.l)); + ;} + break; + + case 506: +#line 5455 "Gmsh.y" + { + (yyval.l) = List_Create(10, 10, sizeof(double)); + getElementaryTagsInBoundingBox(3, (yyvsp[(5) - (16)].d), (yyvsp[(7) - (16)].d), (yyvsp[(9) - (16)].d), (yyvsp[(11) - (16)].d), (yyvsp[(13) - (16)].d), (yyvsp[(15) - (16)].d), (yyval.l)); + ;} + break; + + case 507: +#line 5460 "Gmsh.y" + { + (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); + for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ + Shape *s = (Shape*) List_Pointer((yyvsp[(1) - (1)].l), i); + double d = s->Num; + List_Add((yyval.l), &d); + } + List_Delete((yyvsp[(1) - (1)].l)); + ;} + break; + + case 508: +#line 5470 "Gmsh.y" + { + (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); + for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ + Shape *s = (Shape*) List_Pointer((yyvsp[(1) - (1)].l), i); + double d = s->Num; + List_Add((yyval.l), &d); + } + List_Delete((yyvsp[(1) - (1)].l)); + ;} + break; + + case 509: +#line 5480 "Gmsh.y" + { + (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); + for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ + Shape *s = (Shape*) List_Pointer((yyvsp[(1) - (1)].l), i); + double d = s->Num; + List_Add((yyval.l), &d); + } + List_Delete((yyvsp[(1) - (1)].l)); + ;} + break; + + case 510: +#line 5490 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(double)); + if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) + yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (3)].c)); + else{ + gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(1) - (3)].c)]); + for(unsigned int i = 0; i < s.value.size(); i++) + List_Add((yyval.l), &s.value[i]); + } + Free((yyvsp[(1) - (3)].c)); + ;} + break; + + case 511: +#line 5503 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(double)); + if(!gmsh_yysymbols.count((yyvsp[(3) - (4)].c))) + yymsg(0, "Unknown variable '%s'", (yyvsp[(3) - (4)].c)); + else{ + gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(3) - (4)].c)]); + for(unsigned int i = 0; i < s.value.size(); i++) + List_Add((yyval.l), &s.value[i]); + } + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 512: +#line 5515 "Gmsh.y" + { + (yyval.l) = (yyvsp[(3) - (4)].l); + ;} + break; + + case 513: +#line 5519 "Gmsh.y" + { + (yyval.l) = (yyvsp[(3) - (4)].l); + ;} + break; + + case 514: +#line 5523 "Gmsh.y" + { + (yyval.l) = (yyvsp[(4) - (6)].l); + ;} + break; + + case 515: +#line 5527 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(double)); + if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) + yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (6)].c)); + else{ + gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(1) - (6)].c)]); + for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ + int index = (int)(*(double*)List_Pointer_Fast((yyvsp[(4) - (6)].l), i)); + if((int)s.value.size() < index + 1) + yymsg(0, "Uninitialized variable '%s[%d]'", (yyvsp[(1) - (6)].c), index); + else + List_Add((yyval.l), &s.value[index]); + } + } + Free((yyvsp[(1) - (6)].c)); + List_Delete((yyvsp[(4) - (6)].l)); + ;} + break; + + case 516: +#line 5545 "Gmsh.y" + { + (yyval.l) = List_Create(20,20,sizeof(double)); + for(int i = 0; i < (int)(yyvsp[(7) - (8)].d); i++) { + double d = (yyvsp[(3) - (8)].d) + ((yyvsp[(5) - (8)].d)-(yyvsp[(3) - (8)].d))*(double)i/((yyvsp[(7) - (8)].d)-1); + List_Add((yyval.l), &d); + } + ;} + break; + + case 517: +#line 5553 "Gmsh.y" + { + (yyval.l) = List_Create(20,20,sizeof(double)); + for(int i = 0; i < (int)(yyvsp[(7) - (8)].d); i++) { + double d = pow(10,(yyvsp[(3) - (8)].d) + ((yyvsp[(5) - (8)].d)-(yyvsp[(3) - (8)].d))*(double)i/((yyvsp[(7) - (8)].d)-1)); + List_Add((yyval.l), &d); + } + ;} + break; + + case 518: +#line 5561 "Gmsh.y" + { + Msg::Barrier(); + FILE *File; + (yyval.l) = List_Create(100, 100, sizeof(double)); + std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(3) - (4)].c)); + if(!(File = Fopen(tmp.c_str(), "rb"))){ + yymsg(0, "Could not open file '%s'", (yyvsp[(3) - (4)].c)); + } + else{ + double d; + while(!feof(File)){ + int ret = fscanf(File, "%lf", &d); + if(ret == 1){ + List_Add((yyval.l), &d); + } + else if(ret == EOF){ + break; + } + else{ + char dummy[1024]; + fscanf(File, "%s", dummy); + yymsg(0, "Ignoring '%s' in file '%s'", dummy, (yyvsp[(3) - (4)].c)); + } + } + fclose(File); + } + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 519: +#line 5590 "Gmsh.y" + { + double x0 = (yyvsp[(3) - (14)].d), x1 = (yyvsp[(5) - (14)].d), y0 = (yyvsp[(7) - (14)].d), y1 = (yyvsp[(9) - (14)].d), ys = (yyvsp[(11) - (14)].d); + int N = (int)(yyvsp[(13) - (14)].d); + std::vector<double> y(N); + if(!catenary(x0, x1, y0, y1, ys, N, &y[0])) + Msg::Warning("Catenary did not converge, using linear interpolation"); + (yyval.l) = List_Create(N,10,sizeof(double)); + for(int i = 0; i < N; i++) List_Add((yyval.l), &y[i]); + ;} + break; + + case 520: +#line 5600 "Gmsh.y" + { + std::vector<double> tmp; + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + double d; List_Read((yyvsp[(3) - (4)].l), i, &d); + tmp.push_back(d); + } + std::sort(tmp.begin(), tmp.end()); + std::vector<double>::iterator last = std::unique(tmp.begin(), tmp.end()); + tmp.erase(last, tmp.end()); + (yyval.l) = (yyvsp[(3) - (4)].l); + List_Reset((yyval.l)); + for(unsigned int i = 0; i < tmp.size(); i++){ + List_Add((yyval.l), &tmp[i]); + } + ;} + break; + + case 521: +#line 5616 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + double *d = (double*)List_Pointer((yyvsp[(3) - (4)].l), i); + *d = std::abs(*d); + } + (yyval.l) = (yyvsp[(3) - (4)].l); + ;} + break; + + case 522: +#line 5627 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(double)); + List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); + ;} + break; + + case 523: +#line 5632 "Gmsh.y" + { + (yyval.l) = (yyvsp[(1) - (1)].l); + ;} + break; + + case 524: +#line 5636 "Gmsh.y" + { + List_Add((yyval.l), &((yyvsp[(3) - (3)].d))); + ;} + break; + + case 525: +#line 5640 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ + double d; + List_Read((yyvsp[(3) - (3)].l), i, &d); + List_Add((yyval.l), &d); + } + List_Delete((yyvsp[(3) - (3)].l)); + ;} + break; + + case 526: +#line 5652 "Gmsh.y" + { + (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (9)].d), (int)(yyvsp[(4) - (9)].d), (int)(yyvsp[(6) - (9)].d), (int)(yyvsp[(8) - (9)].d)); + ;} + break; + + case 527: +#line 5656 "Gmsh.y" + { + (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (7)].d), (int)(yyvsp[(4) - (7)].d), (int)(yyvsp[(6) - (7)].d), 255); + ;} + break; + + case 528: +#line 5668 "Gmsh.y" + { + int flag = 0; + if(gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c))){ + if(gmsh_yystringsymbols[(yyvsp[(1) - (1)].c)].size()){ + (yyval.u) = GetColorForString(-1, gmsh_yystringsymbols[(yyvsp[(1) - (1)].c)][0].c_str(), &flag); + } + else{ + yymsg(0, "Unknown color '%s'", (yyvsp[(1) - (1)].c)); + (yyval.u) = 0; + } + } + else + (yyval.u) = GetColorForString(-1, (yyvsp[(1) - (1)].c), &flag); + if(flag) yymsg(0, "Unknown color '%s'", (yyvsp[(1) - (1)].c)); + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 529: +#line 5685 "Gmsh.y" + { + unsigned int val = 0; + ColorOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(5) - (5)].c), val); + (yyval.u) = val; + Free((yyvsp[(1) - (5)].c)); Free((yyvsp[(5) - (5)].c)); + ;} + break; + + case 530: +#line 5695 "Gmsh.y" + { + (yyval.l) = (yyvsp[(2) - (3)].l); + ;} + break; + + case 531: +#line 5699 "Gmsh.y" + { + (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); + GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (6)].d)); + if(!ct) + yymsg(0, "View[%d] does not exist", (int)(yyvsp[(3) - (6)].d)); + else{ + for(int i = 0; i < ct->size; i++) + List_Add((yyval.l), &ct->table[i]); + } + Free((yyvsp[(1) - (6)].c)); + ;} + break; + + case 532: +#line 5714 "Gmsh.y" + { + (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); + List_Add((yyval.l), &((yyvsp[(1) - (1)].u))); + ;} + break; + + case 533: +#line 5719 "Gmsh.y" + { + List_Add((yyval.l), &((yyvsp[(3) - (3)].u))); + ;} + break; + + case 534: +#line 5726 "Gmsh.y" + { + (yyval.c) = (yyvsp[(1) - (1)].c); + ;} + break; + + case 535: +#line 5730 "Gmsh.y" + { + // No need to extend to Struct_FullName (a Tag is not a String) + (yyval.c) = treat_Struct_FullName_String(NULL, (yyvsp[(1) - (1)].c)); + ;} + break; + + case 536: +#line 5735 "Gmsh.y" + { + std::string val; + int j = (int)(yyvsp[(3) - (4)].d); + if(!gmsh_yystringsymbols.count((yyvsp[(1) - (4)].c))) + yymsg(0, "Unknown string variable '%s'", (yyvsp[(1) - (4)].c)); + else if(j >= 0 && j < (int)gmsh_yystringsymbols[(yyvsp[(1) - (4)].c)].size()) + val = gmsh_yystringsymbols[(yyvsp[(1) - (4)].c)][j]; + else + yymsg(0, "Index %d out of range", j); + (yyval.c) = (char *)Malloc((val.size() + 1) * sizeof(char)); + strcpy((yyval.c), val.c_str()); + Free((yyvsp[(1) - (4)].c)); + ;} + break; + + case 537: +#line 5749 "Gmsh.y" + { + std::string val; + int j = (int)(yyvsp[(3) - (4)].d); + if(!gmsh_yystringsymbols.count((yyvsp[(1) - (4)].c))) + yymsg(0, "Unknown string variable '%s'", (yyvsp[(1) - (4)].c)); + else if(j >= 0 && j < (int)gmsh_yystringsymbols[(yyvsp[(1) - (4)].c)].size()) + val = gmsh_yystringsymbols[(yyvsp[(1) - (4)].c)][j]; + else + yymsg(0, "Index %d out of range", j); + (yyval.c) = (char *)Malloc((val.size() + 1) * sizeof(char)); + strcpy((yyval.c), val.c_str()); + Free((yyvsp[(1) - (4)].c)); + ;} + break; + + case 538: +#line 5766 "Gmsh.y" + { + (yyval.c) = treat_Struct_FullName_dot_tSTRING_String(NULL, (yyvsp[(1) - (3)].c), (yyvsp[(3) - (3)].c)); + ;} + break; + + case 539: +#line 5770 "Gmsh.y" + { + (yyval.c) = treat_Struct_FullName_dot_tSTRING_String((yyvsp[(1) - (5)].c), (yyvsp[(3) - (5)].c), (yyvsp[(5) - (5)].c)); + ;} + break; + + case 540: +#line 5775 "Gmsh.y" + { + (yyval.c) = treat_Struct_FullName_dot_tSTRING_String(NULL, (yyvsp[(1) - (6)].c), (yyvsp[(3) - (6)].c), (int)(yyvsp[(5) - (6)].d)); + ;} + break; + + case 541: +#line 5779 "Gmsh.y" + { + (yyval.c) = treat_Struct_FullName_dot_tSTRING_String((yyvsp[(1) - (8)].c), (yyvsp[(3) - (8)].c), (yyvsp[(5) - (8)].c), (int)(yyvsp[(7) - (8)].d)); + ;} + break; + + case 542: +#line 5784 "Gmsh.y" + { + std::string out; + StringOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), out); + (yyval.c) = (char*)Malloc((out.size() + 1) * sizeof(char)); + strcpy((yyval.c), out.c_str()); + Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); + ;} + break; + + case 543: +#line 5792 "Gmsh.y" + { + std::string name = GModel::current()->getPhysicalName(0, (int)(yyvsp[(4) - (5)].d)); + (yyval.c) = (char*)Malloc((name.size() + 1) * sizeof(char)); + strcpy((yyval.c), name.c_str()); + ;} + break; + + case 544: +#line 5798 "Gmsh.y" + { + std::string name = GModel::current()->getPhysicalName(1, (int)(yyvsp[(4) - (5)].d)); + (yyval.c) = (char*)Malloc((name.size() + 1) * sizeof(char)); + strcpy((yyval.c), name.c_str()); + ;} + break; + + case 545: +#line 5804 "Gmsh.y" + { + std::string name = GModel::current()->getPhysicalName(2, (int)(yyvsp[(4) - (5)].d)); + (yyval.c) = (char*)Malloc((name.size() + 1) * sizeof(char)); + strcpy((yyval.c), name.c_str()); + ;} + break; + + case 546: +#line 5810 "Gmsh.y" + { + std::string name = GModel::current()->getPhysicalName(3, (int)(yyvsp[(4) - (5)].d)); + (yyval.c) = (char*)Malloc((name.size() + 1) * sizeof(char)); + strcpy((yyval.c), name.c_str()); + ;} + break; + + case 547: +#line 5819 "Gmsh.y" + { + (yyval.c) = (yyvsp[(1) - (1)].c); + ;} + break; + + case 548: +#line 5823 "Gmsh.y" + { + (yyval.c) = (yyvsp[(3) - (4)].c); + ;} + break; + + case 549: +#line 5827 "Gmsh.y" + { + (yyval.c) = (char *)Malloc(32 * sizeof(char)); + time_t now; + time(&now); + strcpy((yyval.c), ctime(&now)); + (yyval.c)[strlen((yyval.c)) - 1] = '\0'; + ;} + break; + + case 550: +#line 5835 "Gmsh.y" + { + std::string exe = Msg::GetExecutableName(); + (yyval.c) = (char *)Malloc(exe.size() + 1); + strcpy((yyval.c), exe.c_str()); + ;} + break; + + case 551: +#line 5841 "Gmsh.y" + { + std::string action = Msg::GetOnelabAction(); + (yyval.c) = (char *)Malloc(action.size() + 1); + strcpy((yyval.c), action.c_str()); + ;} + break; + + case 552: +#line 5847 "Gmsh.y" + { + (yyval.c) = strsave((char*)"Gmsh"); + ;} + break; + + case 553: +#line 5851 "Gmsh.y" + { + const char *env = GetEnvironmentVar((yyvsp[(3) - (4)].c)); + if(!env) env = ""; + (yyval.c) = (char *)Malloc((sizeof(env) + 1) * sizeof(char)); + strcpy((yyval.c), env); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 554: +#line 5859 "Gmsh.y" + { + std::string s = Msg::GetString((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); + (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); + strcpy((yyval.c), s.c_str()); + Free((yyvsp[(3) - (6)].c)); + Free((yyvsp[(5) - (6)].c)); + ;} + break; + + case 555: +#line 5867 "Gmsh.y" + { + std::string s = Msg::GetOnelabString((yyvsp[(3) - (4)].c)); + (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); + strcpy((yyval.c), s.c_str()); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 556: +#line 5874 "Gmsh.y" + { + std::string s = Msg::GetOnelabString((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); + (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); + strcpy((yyval.c), s.c_str()); + Free((yyvsp[(3) - (6)].c)); + Free((yyvsp[(5) - (6)].c)); + ;} + break; + + case 557: +#line 5884 "Gmsh.y" + { + (yyval.c) = treat_Struct_FullName_String(NULL, (yyvsp[(3) - (5)].c2).char2, 1, 0, (yyvsp[(4) - (5)].c), 2); + ;} + break; + + case 558: +#line 5889 "Gmsh.y" + { + (yyval.c) = treat_Struct_FullName_dot_tSTRING_String((yyvsp[(3) - (7)].c2).char1, (yyvsp[(3) - (7)].c2).char2, (yyvsp[(5) - (7)].c), 0, (yyvsp[(6) - (7)].c), 2); + ;} + break; + + case 559: +#line 5894 "Gmsh.y" + { + int size = 1; + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++) + size += strlen(*(char**)List_Pointer((yyvsp[(3) - (4)].l), i)) + 1; + (yyval.c) = (char*)Malloc(size * sizeof(char)); + (yyval.c)[0] = '\0'; + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + char *s; + List_Read((yyvsp[(3) - (4)].l), i, &s); + strcat((yyval.c), s); + Free(s); + } + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 560: +#line 5909 "Gmsh.y" + { + (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); + int i; + for(i = strlen((yyvsp[(3) - (4)].c)) - 1; i >= 0; i--){ + if((yyvsp[(3) - (4)].c)[i] == '.'){ + strncpy((yyval.c), (yyvsp[(3) - (4)].c), i); + (yyval.c)[i]='\0'; + break; + } + } + if(i <= 0) strcpy((yyval.c), (yyvsp[(3) - (4)].c)); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 561: +#line 5923 "Gmsh.y" + { + (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); + int i; + for(i = strlen((yyvsp[(3) - (4)].c)) - 1; i >= 0; i--){ + if((yyvsp[(3) - (4)].c)[i] == '/' || (yyvsp[(3) - (4)].c)[i] == '\\') + break; + } + if(i <= 0) + strcpy((yyval.c), (yyvsp[(3) - (4)].c)); + else + strcpy((yyval.c), &(yyvsp[(3) - (4)].c)[i+1]); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 562: +#line 5937 "Gmsh.y" + { + std::string input = (yyvsp[(3) - (8)].c); + std::string substr_old = (yyvsp[(5) - (8)].c); + std::string substr_new = (yyvsp[(7) - (8)].c); + std::string ret = ReplaceSubString(substr_old, substr_new, input); + (yyval.c) = (char *)Malloc((ret.size() + 1) * sizeof(char)); + strcpy((yyval.c), ret.c_str()); + Free((yyvsp[(3) - (8)].c)); + Free((yyvsp[(5) - (8)].c)); + Free((yyvsp[(7) - (8)].c)); + ;} + break; + + case 563: +#line 5949 "Gmsh.y" + { + int size = 1; + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++) + size += strlen(*(char**)List_Pointer((yyvsp[(3) - (4)].l), i)) + 1; + (yyval.c) = (char*)Malloc(size * sizeof(char)); + (yyval.c)[0] = '\0'; + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ + char *s; + List_Read((yyvsp[(3) - (4)].l), i, &s); + strcat((yyval.c), s); + Free(s); + if(i != List_Nbr((yyvsp[(3) - (4)].l)) - 1) strcat((yyval.c), "\n"); + } + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 564: +#line 5965 "Gmsh.y" + { + int i = 0; + while ((yyvsp[(3) - (4)].c)[i]) { + (yyvsp[(3) - (4)].c)[i] = toupper((yyvsp[(3) - (4)].c)[i]); + i++; + } + (yyval.c) = (yyvsp[(3) - (4)].c); + ;} + break; + + case 565: +#line 5974 "Gmsh.y" + { + int i = 0; + while ((yyvsp[(3) - (4)].c)[i]) { + (yyvsp[(3) - (4)].c)[i] = tolower((yyvsp[(3) - (4)].c)[i]); + i++; + } + (yyval.c) = (yyvsp[(3) - (4)].c); + ;} + break; + + case 566: +#line 5983 "Gmsh.y" + { + int i = 0; + while ((yyvsp[(3) - (4)].c)[i]) { + if (i > 0 && (yyvsp[(3) - (4)].c)[i-1] != '_') + (yyvsp[(3) - (4)].c)[i] = tolower((yyvsp[(3) - (4)].c)[i]); + i++; + } + (yyval.c) = (yyvsp[(3) - (4)].c); + ;} + break; + + case 567: +#line 5993 "Gmsh.y" + { + if((yyvsp[(3) - (8)].d)){ + (yyval.c) = (yyvsp[(5) - (8)].c); + Free((yyvsp[(7) - (8)].c)); + } + else{ + (yyval.c) = (yyvsp[(7) - (8)].c); + Free((yyvsp[(5) - (8)].c)); + } + ;} + break; + + case 568: +#line 6004 "Gmsh.y" + { + std::string in = (yyvsp[(3) - (8)].c); + std::string out = in.substr((int)(yyvsp[(5) - (8)].d), (int)(yyvsp[(7) - (8)].d)); + (yyval.c) = (char *)Malloc((out.size() + 1) * sizeof(char)); + strcpy((yyval.c), out.c_str()); + Free((yyvsp[(3) - (8)].c)); + ;} + break; + + case 569: +#line 6012 "Gmsh.y" + { + std::string in = (yyvsp[(3) - (6)].c); + std::string out = in.substr((int)(yyvsp[(5) - (6)].d), std::string::npos); + (yyval.c) = (char *)Malloc((out.size() + 1) * sizeof(char)); + strcpy((yyval.c), out.c_str()); + Free((yyvsp[(3) - (6)].c)); + ;} + break; + + case 570: +#line 6020 "Gmsh.y" + { + (yyval.c) = (yyvsp[(3) - (4)].c); + ;} + break; + + case 571: +#line 6024 "Gmsh.y" + { + char tmpstring[5000]; + int i = printListOfDouble((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].l), tmpstring); + if(i < 0){ + yymsg(0, "Too few arguments in Sprintf"); + (yyval.c) = (yyvsp[(3) - (6)].c); + } + else if(i > 0){ + yymsg(0, "%d extra argument%s in Sprintf", i, (i > 1) ? "s" : ""); + (yyval.c) = (yyvsp[(3) - (6)].c); + } + else{ + (yyval.c) = (char*)Malloc((strlen(tmpstring) + 1) * sizeof(char)); + strcpy((yyval.c), tmpstring); + Free((yyvsp[(3) - (6)].c)); + } + List_Delete((yyvsp[(5) - (6)].l)); + ;} + break; + + case 572: +#line 6043 "Gmsh.y" + { + std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(3) - (4)].c)); + (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); + strcpy((yyval.c), tmp.c_str()); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 573: +#line 6050 "Gmsh.y" + { + std::string tmp = SplitFileName(GetAbsolutePath(gmsh_yyname))[0]; + (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); + strcpy((yyval.c), tmp.c_str()); + ;} + break; + + case 574: +#line 6056 "Gmsh.y" + { + std::string tmp = SplitFileName((yyvsp[(3) - (4)].c))[0]; + (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); + strcpy((yyval.c), tmp.c_str()); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 575: +#line 6063 "Gmsh.y" + { + std::string tmp = GetAbsolutePath((yyvsp[(3) - (4)].c)); + (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); + strcpy((yyval.c), tmp.c_str()); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 576: +#line 6070 "Gmsh.y" + { init_options(); ;} + break; + + case 577: +#line 6072 "Gmsh.y" + { + std::string val((yyvsp[(3) - (6)].c)); + Msg::ExchangeOnelabParameter("", val, floatOptions, charOptions); + (yyval.c) = (char*)Malloc((val.size() + 1) * sizeof(char)); + strcpy((yyval.c), val.c_str()); + Free((yyvsp[(3) - (6)].c)); + ;} + break; + + case 578: +#line 6080 "Gmsh.y" + { + std::string out; + const std::string * key_struct = NULL; + switch (nameSpaces.get_key_struct_from_tag(struct_namespace, + (int)(yyvsp[(3) - (4)].d), key_struct)) { + case 0: + out = *key_struct; + break; + case 1: + yymsg(1, "Unknown NameSpace '%s' of Struct", struct_namespace.c_str()); + break; + case 2: + yymsg(1, "Unknown Struct of index %d", (int)(yyvsp[(3) - (4)].d)); + break; + default: + break; + } + (yyval.c) = (char*)Malloc((out.size() + 1) * sizeof(char)); + strcpy((yyval.c), out.c_str()); + ;} + break; + + case 579: +#line 6104 "Gmsh.y" + { struct_namespace = std::string(""); (yyval.d) = (yyvsp[(2) - (2)].d); ;} + break; + + case 580: +#line 6106 "Gmsh.y" + { struct_namespace = (yyvsp[(1) - (4)].c); Free((yyvsp[(1) - (4)].c)); (yyval.d) = (yyvsp[(4) - (4)].d); ;} + break; + + case 581: +#line 6112 "Gmsh.y" + { + (yyval.l) = List_Create(20,20,sizeof(char*)); + List_Add((yyval.l), &((yyvsp[(1) - (1)].c))); + ;} + break; + + case 582: +#line 6117 "Gmsh.y" + { + List_Add((yyval.l), &((yyvsp[(3) - (3)].c))); + ;} + break; + + case 583: +#line 6125 "Gmsh.y" + { + char tmpstr[256]; + sprintf(tmpstr, "_%d", (int)(yyvsp[(4) - (5)].d)); + (yyval.c) = (char *)Malloc((strlen((yyvsp[(1) - (5)].c))+strlen(tmpstr)+1)*sizeof(char)); + strcpy((yyval.c), (yyvsp[(1) - (5)].c)); strcat((yyval.c), tmpstr); + Free((yyvsp[(1) - (5)].c)); + ;} + break; + + case 584: +#line 6134 "Gmsh.y" + { + char tmpstr[256]; + sprintf(tmpstr, "_%d", (int)(yyvsp[(4) - (5)].d)); + (yyval.c) = (char *)Malloc((strlen((yyvsp[(1) - (5)].c))+strlen(tmpstr)+1)*sizeof(char)) ; + strcpy((yyval.c), (yyvsp[(1) - (5)].c)) ; strcat((yyval.c), tmpstr) ; + Free((yyvsp[(1) - (5)].c)); + ;} + break; + + case 585: +#line 6143 "Gmsh.y" + { + char tmpstr[256]; + sprintf(tmpstr, "_%d", (int)(yyvsp[(7) - (8)].d)); + (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (8)].c))+strlen(tmpstr)+1)*sizeof(char)); + strcpy((yyval.c), (yyvsp[(3) - (8)].c)); strcat((yyval.c), tmpstr); + Free((yyvsp[(3) - (8)].c)); + ;} + break; + + case 586: +#line 6155 "Gmsh.y" + { (yyval.c) = (yyvsp[(1) - (1)].c); ;} + break; + + case 587: +#line 6158 "Gmsh.y" + { (yyval.c) = (yyvsp[(1) - (1)].c); ;} + break; + + case 588: +#line 6162 "Gmsh.y" + { (yyval.c) = (yyvsp[(3) - (4)].c); ;} + break; + + +/* Line 1267 of yacc.c. */ +#line 13551 "Gmsh.tab.c" + default: break; + } + YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); + + YYPOPSTACK (yylen); + yylen = 0; + YY_STACK_PRINT (yyss, yyssp); + + *++yyvsp = yyval; + + + /* Now `shift' the result of the reduction. Determine what state + that goes to, based on the state we popped back to and the rule + number reduced by. */ + + yyn = yyr1[yyn]; + + yystate = yypgoto[yyn - YYNTOKENS] + *yyssp; + if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp) + yystate = yytable[yystate]; + else + yystate = yydefgoto[yyn - YYNTOKENS]; + + goto yynewstate; + + +/*------------------------------------. +| yyerrlab -- here on detecting error | +`------------------------------------*/ +yyerrlab: + /* If not already recovering from an error, report this error. */ + if (!yyerrstatus) + { + ++yynerrs; +#if ! YYERROR_VERBOSE + yyerror (YY_("syntax error")); +#else + { + YYSIZE_T yysize = yysyntax_error (0, yystate, yychar); + if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM) + { + YYSIZE_T yyalloc = 2 * yysize; + if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM)) + yyalloc = YYSTACK_ALLOC_MAXIMUM; + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); + yymsg = (char *) YYSTACK_ALLOC (yyalloc); + if (yymsg) + yymsg_alloc = yyalloc; + else + { + yymsg = yymsgbuf; + yymsg_alloc = sizeof yymsgbuf; + } + } + + if (0 < yysize && yysize <= yymsg_alloc) + { + (void) yysyntax_error (yymsg, yystate, yychar); + yyerror (yymsg); + } + else + { + yyerror (YY_("syntax error")); + if (yysize != 0) + goto yyexhaustedlab; + } + } +#endif + } + + + + if (yyerrstatus == 3) + { + /* If just tried and failed to reuse look-ahead token after an + error, discard it. */ + + if (yychar <= YYEOF) + { + /* Return failure if at end of input. */ + if (yychar == YYEOF) + YYABORT; + } + else + { + yydestruct ("Error: discarding", + yytoken, &yylval); + yychar = YYEMPTY; + } + } + + /* Else will try to reuse look-ahead token after shifting the error + token. */ + goto yyerrlab1; + + +/*---------------------------------------------------. +| yyerrorlab -- error raised explicitly by YYERROR. | +`---------------------------------------------------*/ +yyerrorlab: + + /* Pacify compilers like GCC when the user code never invokes + YYERROR and the label yyerrorlab therefore never appears in user + code. */ + if (/*CONSTCOND*/ 0) + goto yyerrorlab; + + /* Do not reclaim the symbols of the rule which action triggered + this YYERROR. */ + YYPOPSTACK (yylen); + yylen = 0; + YY_STACK_PRINT (yyss, yyssp); + yystate = *yyssp; + goto yyerrlab1; + + +/*-------------------------------------------------------------. +| yyerrlab1 -- common code for both syntax error and YYERROR. | +`-------------------------------------------------------------*/ +yyerrlab1: + yyerrstatus = 3; /* Each real token shifted decrements this. */ + + for (;;) + { + yyn = yypact[yystate]; + if (yyn != YYPACT_NINF) + { + yyn += YYTERROR; + if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) + { + yyn = yytable[yyn]; + if (0 < yyn) + break; + } + } + + /* Pop the current state because it cannot handle the error token. */ + if (yyssp == yyss) + YYABORT; + + + yydestruct ("Error: popping", + yystos[yystate], yyvsp); + YYPOPSTACK (1); + yystate = *yyssp; + YY_STACK_PRINT (yyss, yyssp); + } + + if (yyn == YYFINAL) + YYACCEPT; + + *++yyvsp = yylval; + + + /* Shift the error token. */ + YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp); + + yystate = yyn; + goto yynewstate; + + +/*-------------------------------------. +| yyacceptlab -- YYACCEPT comes here. | +`-------------------------------------*/ +yyacceptlab: + yyresult = 0; + goto yyreturn; + +/*-----------------------------------. +| yyabortlab -- YYABORT comes here. | +`-----------------------------------*/ +yyabortlab: + yyresult = 1; + goto yyreturn; + +#ifndef yyoverflow +/*-------------------------------------------------. +| yyexhaustedlab -- memory exhaustion comes here. | +`-------------------------------------------------*/ +yyexhaustedlab: + yyerror (YY_("memory exhausted")); + yyresult = 2; + /* Fall through. */ +#endif + +yyreturn: + if (yychar != YYEOF && yychar != YYEMPTY) + yydestruct ("Cleanup: discarding lookahead", + yytoken, &yylval); + /* Do not reclaim the symbols of the rule which action triggered + this YYABORT or YYACCEPT. */ + YYPOPSTACK (yylen); + YY_STACK_PRINT (yyss, yyssp); + while (yyssp != yyss) + { + yydestruct ("Cleanup: popping", + yystos[*yyssp], yyvsp); + YYPOPSTACK (1); + } +#ifndef yyoverflow + if (yyss != yyssa) + YYSTACK_FREE (yyss); +#endif +#if YYERROR_VERBOSE + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); +#endif + /* Make sure YYID is used. */ + return YYID (yyresult); +} + + +#line 6165 "Gmsh.y" + + +void assignVariable(const std::string &name, int index, int assignType, + double value) +{ + if(!gmsh_yysymbols.count(name)){ + if(!assignType){ + gmsh_yysymbol &s(gmsh_yysymbols[name]); + s.list = true; + s.value.resize(index + 1, 0.); + s.value[index] = value; + } + else + yymsg(0, "Unknown variable '%s'", name.c_str()); + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[name]); + if(s.list){ + if((int)s.value.size() < index + 1) s.value.resize(index + 1, 0.); + switch(assignType){ + case 0 : s.value[index] = value; break; + case 1 : s.value[index] += value; break; + case 2 : s.value[index] -= value; break; + case 3 : s.value[index] *= value; break; + case 4 : + if(value) s.value[index] /= value; + else yymsg(0, "Division by zero in '%s[%d] /= %g'", + name.c_str(), index, value); + break; + } + } + else + yymsg(0, "Variable '%s' is not a list", name.c_str()); + } +} + +void assignVariables(const std::string &name, List_T *indices, int assignType, + List_T *values) +{ + if(List_Nbr(indices) != List_Nbr(values)){ + yymsg(0, "Incompatible array dimensions in affectation"); + } + else{ + if(!gmsh_yysymbols.count(name)){ + if(!assignType){ + gmsh_yysymbol &s(gmsh_yysymbols[name]); + s.list = true; + for(int i = 0; i < List_Nbr(indices); i++){ + int index = (int)(*(double*)List_Pointer(indices, i)); + s.value.resize(index + 1, 0.); + s.value[index] = *(double*)List_Pointer(values, i); + } + } + else + yymsg(0, "Unknown variable '%s'", name.c_str()); + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[name]); + if(s.list){ + for(int i = 0; i < List_Nbr(indices); i++){ + int index = (int)(*(double*)List_Pointer(indices, i)); + double d = *(double*)List_Pointer(values, i); + if((int)s.value.size() < index + 1) s.value.resize(index + 1, 0.); + switch(assignType){ + case 0 : s.value[index] = d; break; + case 1 : s.value[index] += d; break; + case 2 : s.value[index] -= d; break; + case 3 : s.value[index] *= d; break; + case 4 : + if(d) s.value[index] /= d; + else yymsg(0, "Division by zero in '%s[%d] /= %g'", name.c_str(), index, d); + break; + } + } + } + else + yymsg(0, "Variable '%s' is not a list", name.c_str()); + } + } +} + +void incrementVariable(const std::string &name, int index, double value) +{ + if(!gmsh_yysymbols.count(name)) + yymsg(0, "Unknown variable '%s'", name.c_str()); + else{ + gmsh_yysymbol &s(gmsh_yysymbols[name]); + if(s.list){ + if((int)s.value.size() < index + 1) s.value.resize(index + 1, 0.); + s.value[index] += value; + } + else + yymsg(0, "Variable '%s' is not a list", name.c_str()); + } +} + +int printListOfDouble(char *format, List_T *list, char *buffer) +{ + // if format does not contain formatting characters, dump the list (useful for + // quick debugging of lists) + int numFormats = 0; + for(unsigned int i = 0; i < strlen(format); i++) + if(format[i] == '%') numFormats++; + if(!numFormats){ + strcpy(buffer, format); + for(int i = 0; i < List_Nbr(list); i++){ + double d; + List_Read(list, i, &d); + char tmp[256]; + sprintf(tmp, " [%d]%g", i, d); + strcat(buffer, tmp); + } + return 0; + } + + char tmp1[256], tmp2[256]; + int j = 0, k = 0; + buffer[j] = '\0'; + + while(j < (int)strlen(format) && format[j] != '%') j++; + strncpy(buffer, format, j); + buffer[j] = '\0'; + for(int i = 0; i < List_Nbr(list); i++){ + k = j; + j++; + if(j < (int)strlen(format)){ + if(format[j] == '%'){ + strcat(buffer, "%"); + j++; + } + while(j < (int)strlen(format) && format[j] != '%') j++; + if(k != j){ + strncpy(tmp1, &(format[k]), j-k); + tmp1[j-k] = '\0'; + sprintf(tmp2, tmp1, *(double*)List_Pointer(list, i)); + strcat(buffer, tmp2); + } + } + else + return List_Nbr(list) - i; + } + if(j != (int)strlen(format)) + return -1; + return 0; +} + +void PrintParserSymbols(bool help, std::vector<std::string> &vec) +{ + if(help){ + vec.push_back("//"); + vec.push_back("// Numbers"); + vec.push_back("//"); + } + for(std::map<std::string, gmsh_yysymbol>::iterator it = gmsh_yysymbols.begin(); + it != gmsh_yysymbols.end(); it++){ + gmsh_yysymbol s(it->second); + std::ostringstream sstream; + sstream.precision(12); + sstream << it->first; + if(s.list){ + sstream << "[] = {"; + for(unsigned int i = 0; i < s.value.size(); i++){ + if(i) sstream << ", "; + sstream << s.value[i]; + } + sstream << "}"; + } + else + sstream << " = " << s.value[0]; + sstream << ";"; + vec.push_back(sstream.str()); + } + if(help){ + vec.push_back("//"); + vec.push_back("// Strings"); + vec.push_back("//"); + } + for(std::map<std::string, std::vector<std::string> >::iterator it = + gmsh_yystringsymbols.begin(); it != gmsh_yystringsymbols.end(); it++){ + if(it->second.size() == 1) + vec.push_back(it->first + " = \"" + it->second[0] + "\";"); + else{ + std::string s = it->first + "[] = Str("; + for(unsigned int i = 0; i < it->second.size(); i++){ + if(i) s += ", "; + s += std::string("\"") + it->second[i] + "\""; + } + s += ");"; + vec.push_back(s); + } + } + if (nameSpaces.size()){ + if(help){ + vec.push_back("//"); + vec.push_back("// Structures"); + vec.push_back("//"); + } + std::vector<std::string> strs; + nameSpaces.sprint(strs); + vec.insert(vec.end(), strs.begin(), strs.end()); + } +} + +fullMatrix<double> ListOfListOfDouble2Matrix(List_T *list) +{ + // Warning: this returns a fullMatrix copy, and deletes the input list + int M = List_Nbr(list); + int N = 0; + for(int i = 0; i < M; i++){ + List_T *line = *(List_T**)List_Pointer_Fast(list, i); + N = std::max(N, List_Nbr(line)); + } + fullMatrix<double> mat(M, N); + for(int i = 0; i < M; i++){ + List_T *line = *(List_T**)List_Pointer_Fast(list, i); + for(int j = 0; j < List_Nbr(line); j++){ + double val; + List_Read(line, j, &val); + mat(i, j) = val; + } + } + for(int i = 0; i < List_Nbr(list); i++) + List_Delete(*(List_T**)List_Pointer(list, i)); + List_Delete(list); + return mat; +} + +void ListOfDouble2Vector(List_T *list, std::vector<int> &v) +{ + v.clear(); + if(!list) return; + v.reserve(List_Nbr(list)); + for(int i = 0; i < List_Nbr(list); i++){ + double d; + List_Read(list, i, &d); + v.push_back((int)d); + } +} + +void ListOfDouble2Vector(List_T *list, std::vector<double> &v) +{ + v.clear(); + if(!list) return; + v.reserve(List_Nbr(list)); + for(int i = 0; i < List_Nbr(list); i++){ + double d; + List_Read(list, i, &d); + v.push_back(d); + } +} + +void ListOfShapes2VectorOfPairs(List_T *list, std::vector<std::pair<int, int> > &v) +{ + for(int i = 0; i < List_Nbr(list); i++){ + Shape s; + List_Read(list, i, &s); + int dim = s.Type / 100 - 1; + if(dim >= 0 && dim <= 3) v.push_back(std::pair<int, int>(dim, s.Num)); + } +} + +void VectorOfPairs2ListOfShapes(const std::vector<std::pair<int, int> > &v, List_T *list) +{ + for(unsigned int i = 0; i < v.size(); i++){ + int dim = v[i].first; + int tag = v[i].second; + Shape s; + s.Type = (dim == 3) ? MSH_VOLUME : (dim == 2) ? MSH_SURF_PLAN : + (dim == 1) ? MSH_SEGM_LINE : MSH_POINT; + s.Num = tag; + List_Add(list, &s); + } +} + +void yyerror(const char *s) +{ + Msg::Error("'%s', line %d : %s (%s)", gmsh_yyname.c_str(), gmsh_yylineno - 1, + s, gmsh_yytext); + gmsh_yyerrorstate++; +} + +void yymsg(int level, const char *fmt, ...) +{ + va_list args; + char tmp[1024]; + + va_start(args, fmt); + vsprintf(tmp, fmt, args); + va_end(args); + + if(level == 0){ + Msg::Error("'%s', line %d : %s", gmsh_yyname.c_str(), gmsh_yylineno - 1, tmp); + gmsh_yyerrorstate++; + } + else if(level == 1){ + Msg::Warning("'%s', line %d : %s", gmsh_yyname.c_str(), gmsh_yylineno - 1, tmp); + } + else{ + Msg::Info("'%s', line %d : %s", gmsh_yyname.c_str(), gmsh_yylineno - 1, tmp); + } +} + +void addPeriodicFace(int iTarget, int iSource, + const std::vector<double>& affineTransform) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + GFace *target = GModel::current()->getFaceByTag(std::abs(iTarget)); + GFace *source = GModel::current()->getFaceByTag(std::abs(iSource)); + if (!target || !source) { + Msg::Error("Could not find edge slave %d or master %d for periodic copy", + iTarget, iSource); + } + else target->setMeshMaster(source, affineTransform); +} + +void addPeriodicFace(int iTarget, int iSource, + const std::map<int,int>& edgeCounterparts) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + Msg::Info("Encoding periodic connection between %d and %d", iTarget, iSource); + std::map<int,int>::const_iterator sIter = edgeCounterparts.begin(); + for (; sIter != edgeCounterparts.end(); ++sIter) { + Msg::Info("%d - %d", sIter->first, sIter->second); + } + + GFace *target = GModel::current()->getFaceByTag(std::abs(iTarget)); + GFace *source = GModel::current()->getFaceByTag(std::abs(iSource)); + if (!target || !source) { + Msg::Error("Could not find surface slave %d or master %d for periodic copy", + iTarget,iSource); + } + else target->setMeshMaster(source, edgeCounterparts); +} + +void addPeriodicEdge(int iTarget,int iSource, + const std::vector<double>& affineTransform) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + GEdge *target = GModel::current()->getEdgeByTag(std::abs(iTarget)); + GEdge *source = GModel::current()->getEdgeByTag(std::abs(iSource)); + if (!target || !source) + Msg::Error("Could not find surface %d or %d for periodic copy", + iTarget,iSource); + if (affineTransform.size() >= 12) { + target->setMeshMaster(source, affineTransform); + } + else { + target->setMeshMaster(source, iSource * iTarget < 0 ? -1 : 1); + } +} + +void computeAffineTransformation(SPoint3& origin, SPoint3& axis, + double angle, SPoint3& translation, + std::vector<double>& tfo) +{ + tfo.resize(16,0.0); + + double ca = cos(angle); + double sa = sin(angle); + + double ux = axis.x(); + double uy = axis.y(); + double uz = axis.z(); + + tfo.resize(16); + + tfo[0*4+0] = ca + ux*ux*(1.-ca); + tfo[0*4+1] = ux*uy*(1.-ca) - uz * sa; + tfo[0*4+2] = ux*uz*(1.-ca) + uy * sa; + + tfo[1*4+0] = ux*uy*(1.-ca) + uz * sa; + tfo[1*4+1] = ca + uy*uy*(1.-ca); + tfo[1*4+2] = uy*uz*(1.-ca) - ux * sa; + + tfo[2*4+0] = ux*uz*(1.-ca) - uy * sa; + tfo[2*4+1] = uy*uz*(1.-ca) + ux * sa; + tfo[2*4+2] = ca + uz*uz*(1.-ca); + + int idx = 0; + for (size_t i = 0; i < 3; i++,idx++) { + int tIdx = i*4+3; + tfo[tIdx] = origin[i] + translation[i]; + for (int j = 0; j < 3; j++,idx++) tfo[tIdx] -= tfo[idx] * origin[j]; + } + + for (int i = 0; i < 4; i++) tfo[12+i] = 0; + tfo[15] = 1; +} + +void addEmbedded(int dim, std::vector<int> tags, int dim2, int tag2) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + if(dim2 == 2){ + GFace *gf = GModel::current()->getFaceByTag(tag2); + if(!gf){ + yymsg(0, "Unknown model face with tag %d", tag2); + return; + } + for(unsigned int i = 0; i < tags.size(); i++){ + if(dim == 0){ + GVertex *gv = GModel::current()->getVertexByTag(tags[i]); + if(gv) + gf->addEmbeddedVertex(gv); + else + yymsg(0, "Unknown model vertex %d", tags[i]); + } + else if(dim == 1){ + GEdge *ge = GModel::current()->getEdgeByTag(tags[i]); + if(ge) + gf->addEmbeddedEdge(ge); + else + yymsg(0, "Unknown model edge %d", tags[i]); + } + } + } + else if(dim2 == 3){ + GRegion *gr = GModel::current()->getRegionByTag(tag2); + if(!gr){ + yymsg(0, "Unknown model region with tag %d", tag2); + return; + } + for(unsigned int i = 0; i < tags.size(); i++){ + if(dim == 0){ + GVertex *gv = GModel::current()->getVertexByTag(tags[i]); + if(gv) + gr->addEmbeddedVertex(gv); + else + yymsg(0, "Unknown model vertex with tag %d", tags[i]); + } + else if(dim == 1){ + GEdge *ge = GModel::current()->getEdgeByTag(tags[i]); + if(ge) + gr->addEmbeddedEdge(ge); + else + yymsg(0, "Unknown model edge with tag %d", tags[i]); + } + else if(dim == 2){ + GFace *gf = GModel::current()->getFaceByTag(tags[i]); + if(gf) + gr->addEmbeddedFace(gf); + else + yymsg(0, "Unknown model face with tag %d", tags[i]); + } + } + } +} + +void getAllElementaryTags(int dim, List_T *out) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + std::vector<GEntity*> entities; + GModel::current()->getEntities(entities, dim); + for(unsigned int i = 0; i < entities.size(); i++){ + double tag = entities[i]->tag(); + List_Add(out, &tag); + } +} + +void getAllPhysicalTags(int dim, List_T *out) +{ + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + std::map<int, std::vector<GEntity*> > groups; + GModel::current()->getPhysicalGroups(dim, groups); + for(std::map<int, std::vector<GEntity*> >::iterator it = groups.begin(); + it != groups.end(); it++){ + double d = it->first; + List_Add(out, &d); + } +} + +void getElementaryTagsForPhysicalGroups(int dim, List_T *in, List_T *out) +{ + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + std::map<int, std::vector<GEntity*> > groups; + GModel::current()->getPhysicalGroups(dim, groups); + for(int i = 0; i < List_Nbr(in); i++){ + double num; + List_Read(in, i, &num); + std::map<int, std::vector<GEntity*> >::iterator it = groups.find(num); + if(it != groups.end()){ + for(unsigned j = 0; j < it->second.size(); j++){ + double d = it->second[j]->tag(); + List_Add(out, &d); + } + } + } +} + +void getElementaryTagsInBoundingBox(int dim, double x1, double y1, double z1, + double x2, double y2, double z2, List_T *out) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + SBoundingBox3d box(x1, y1, z1, x2, y2, z2); + std::vector<GEntity*> entities; + GModel::current()->getEntitiesInBox(entities, box, dim); + for(unsigned int i = 0; i < entities.size(); i++){ + double d = entities[i]->tag(); + List_Add(out, &d); + } +} + +void setVisibility(int dim, int visible, bool recursive) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + std::vector<GEntity*> entities; + GModel::current()->getEntities(entities, dim); + for(unsigned int i = 0; i < entities.size(); i++){ + entities[i]->setVisibility(visible); + } +} + +void setVisibility(const std::vector<std::pair<int, int> > &dimTags, + int visible, bool recursive) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + for(unsigned int i = 0; i < dimTags.size(); i++){ + GEntity *ge = GModel::current()->getEntityByTag + (dimTags[i].first, std::abs(dimTags[i].second)); + if(ge) ge->setVisibility(visible, recursive); + } +} + +void setColor(const std::vector<std::pair<int, int> > &dimTags, + unsigned int val, bool recursive) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + for(unsigned int i = 0; i < dimTags.size(); i++){ + GEntity *ge = GModel::current()->getEntityByTag + (dimTags[i].first, std::abs(dimTags[i].second)); + if(ge) ge->setColor(val, recursive); + } +} + +int NEWPOINT() +{ + int tag = GModel::current()->getGEOInternals()->getMaxTag(0) + 1; + if(GModel::current()->getOCCInternals()) + tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(0) + 1); + return tag; +} + +int NEWLINE() +{ + int tag = 0; + if(CTX::instance()->geom.oldNewreg) + tag = NEWREG(); + else + tag = GModel::current()->getGEOInternals()->getMaxTag(1) + 1; + if(GModel::current()->getOCCInternals()) + tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(1) + 1); + return tag; +} + +int NEWLINELOOP() +{ + int tag = 0; + if(CTX::instance()->geom.oldNewreg) + tag = NEWREG(); + else + tag = GModel::current()->getGEOInternals()->getMaxTag(-1) + 1; + if(GModel::current()->getOCCInternals()) + tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(-1) + 1); + return tag; +} + +int NEWSURFACE() +{ + int tag = 0; + if(CTX::instance()->geom.oldNewreg) + tag = NEWREG(); + else + tag = GModel::current()->getGEOInternals()->getMaxTag(2) + 1; + if(GModel::current()->getOCCInternals()) + tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(2) + 1); + return tag; +} + +int NEWSURFACELOOP() +{ + int tag = 0; + if(CTX::instance()->geom.oldNewreg) + tag = NEWREG(); + else + tag = GModel::current()->getGEOInternals()->getMaxTag(-2) + 1; + if(GModel::current()->getOCCInternals()) + tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(-2) + 1); + return tag; +} + +int NEWVOLUME() +{ + int tag = 0; + if(CTX::instance()->geom.oldNewreg) + tag = NEWREG(); + else + tag = GModel::current()->getGEOInternals()->getMaxTag(3) + 1; + if(GModel::current()->getOCCInternals()) + tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(3) + 1); + return tag; +} + +int NEWREG() +{ + int tag = 0; + for(int dim = -2; dim <= 3; dim++){ + if(dim) + tag = std::max(tag, GModel::current()->getGEOInternals()->getMaxTag(dim) + 1); + } + tag = std::max(tag, GModel::current()->getGEOInternals()->getMaxPhysicalTag() + 1); + if(GModel::current()->getOCCInternals()){ + for(int dim = -2; dim <= 3; dim++){ + if(dim) + tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(dim) + 1); + } + } + return tag; +} + +int NEWFIELD() +{ +#if defined(HAVE_MESH) + return (GModel::current()->getFields()->maxId() + 1); +#else + return 0; +#endif +} + +int NEWPHYSICAL() +{ + if(CTX::instance()->geom.oldNewreg) + return NEWREG(); + else + return (GModel::current()->getGEOInternals()->getMaxPhysicalTag() + 1); +} + + +double treat_Struct_FullName_Float +(char* c1, char* c2, int type_var, int index, double val_default, int type_treat) +{ + double out; + if(!c1 && gmsh_yysymbols.count(c2)){ + if (type_treat == 1) out = 1.; // Exists (type_treat == 1) + else { // Get (0) or GetForced (2) + if (type_var == 1) { + gmsh_yysymbol &s(gmsh_yysymbols[c2]); + if(s.value.empty()){ + out = val_default; + if (type_treat == 0) yymsg(0, "Uninitialized variable '%s'", c2); + } + else + out = s.value[0]; + } + else if (type_var == 2) { + gmsh_yysymbol &s(gmsh_yysymbols[c2]); + if((int)s.value.size() < index + 1){ + out = val_default; + if (type_treat == 0) yymsg(0, "Uninitialized variable '%s[%d]'", c2, index); + } + else + out = s.value[0]; + } + else { + out = val_default; + } + } + } + else if(!c1 && type_treat == 1 && gmsh_yystringsymbols.count(c2)) { + out = 1.; + } + else{ + std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); + if(nameSpaces.getTag(struct_namespace, struct_name, out)) { + out = val_default; + if (type_treat == 0) yymsg(0, "Unknown variable '%s'", struct_name.c_str()); + } + } + Free(c1); Free(c2); + return out; +} + +double treat_Struct_FullName_dot_tSTRING_Float +(char* c1, char* c2, char* c3, int index, double val_default, int type_treat) +{ + double out; + std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); + std::string key_member(c3); + switch (nameSpaces.getMember + (struct_namespace, struct_name, key_member, out, index)) { + case 0: + if (type_treat == 1) out = 1.; // Exists (type_treat == 1) + break; + case 1: + if (!NumberOption(GMSH_GET, c2, 0, c3, out, type_treat==0)) + out = val_default; + break; + case 2: + if (type_treat != 0) { + const std::string * out_dummy = NULL; + out = (nameSpaces.getMember + (struct_namespace, struct_name, key_member, out_dummy))? + val_default : 1.; + } + else { + out = val_default; + if (type_treat == 0) + yymsg(0, "Unknown member '%s' of Struct %s", c3, struct_name.c_str()); + } + break; + case 3: + out = val_default; + if (type_treat == 0) + yymsg(0, "Index %d out of range", index); + break; + } + Free(c1); Free(c2); + if (flag_tSTRING_alloc) Free(c3); + return out; +} + +int treat_Struct_FullName_dot_tSTRING_Float_getDim +(char* c1, char* c2, char* c3) +{ + int out; + std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); + std::string key_member(c3); + switch (nameSpaces.getMember_Dim + (struct_namespace, struct_name, key_member, out)) { + case 0: + break; + case 1: + out = 0; + break; + case 2: + out = 0; + yymsg(0, "Unknown member '%s' of Struct %s", c3, struct_name.c_str()); + break; + } + Free(c1); Free(c2); + if (flag_tSTRING_alloc) Free(c3); + return out; +} + +char * treat_Struct_FullName_String +(char* c1, char* c2, int type_var, int index, char * val_default, int type_treat) +{ + std::string string_default(val_default? val_default : std::string("")); + const std::string * out = NULL; + std::string out_tmp; + if(!c1 && gmsh_yystringsymbols.count(c2)){ + // Get (0) or GetForced (2) + if(gmsh_yystringsymbols[c2].size() != 1){ + out = &string_default; + if (type_treat == 0) + yymsg(0, "Expected single valued string variable '%s'", c2); + } + else { + out_tmp = gmsh_yystringsymbols[c2][0]; + out = &out_tmp; + } + } + else{ + out = &string_default; + if (type_treat == 0) yymsg(0, "Unknown string variable '%s'", c2); + } + char* out_c = (char*)Malloc((out->size() + 1) * sizeof(char)); + strcpy(out_c, out->c_str()); + Free(c1); Free(c2); + return out_c; +} + +char* treat_Struct_FullName_dot_tSTRING_String +(char* c1, char* c2, char* c3, int index, char * val_default, int type_treat) +{ + std::string string_default(val_default? val_default : std::string("")); + const std::string * out = NULL; + std::string out_tmp; // PD: we should avoid that -> StringOption() to be changed + std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); + std::string key_member(c3); + switch (nameSpaces.getMember + (struct_namespace, struct_name, key_member, out, index)) { + case 0: + break; + case 1: + if (StringOption(GMSH_GET, c2, 0, c3, out_tmp, type_treat==0)) + out = &out_tmp; + else + out = &string_default; + break; + case 2: + out = &string_default; + if (type_treat == 0) + yymsg(0, "Unknown member '%s' of Struct %s", c3, struct_name.c_str()); + break; + case 3: + out = &string_default; + if (type_treat == 0) + yymsg(0, "Index %d out of range", index); + break; + } + char* out_c = (char*)Malloc((out->size() + 1) * sizeof(char)); + strcpy(out_c, out->c_str()); + Free(c1); Free(c2); + if (flag_tSTRING_alloc) Free(c3); + return out_c; +} + diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index e12b706879c23db6c733fa8ef12ff918671898aa..26b3abde2db8c2bf426c2d0369bbf74592b62f7a 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -666,13 +666,19 @@ void setColor(const std::vector<std::pair<int, int> > &dimTags, unsigned int val bool recursive); double treat_Struct_FullName_Float - (char* c1, char* c2, double val_default = 0., int type_treat = 0); + (char* c1, char* c2, int type_var = 1, int index = 0, + double val_default = 0., int type_treat = 0); double treat_Struct_FullName_dot_tSTRING_Float - (char* c1, char* c2, char* c3, double val_default = 0., int type_treat = 0); + (char* c1, char* c2, char* c3, int index = 0, + double val_default = 0., int type_treat = 0); +int treat_Struct_FullName_dot_tSTRING_Float_getDim + (char* c1, char* c2, char* c3); char* treat_Struct_FullName_String - (char* c1, char* c2, char* val_default = NULL, int type_treat = 0); + (char* c1, char* c2, int type_var = 1, int index = 0, + char* val_default = NULL, int type_treat = 0); char* treat_Struct_FullName_dot_tSTRING_String - (char* c1, char* c2, char* c3, char* val_default = NULL, int type_treat = 0); + (char* c1, char* c2, char* c3, int index = 0, + char* val_default = NULL, int type_treat = 0); struct doubleXstring{ double d; @@ -701,7 +707,7 @@ struct doubleXstring{ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 153 "Gmsh.y" +#line 159 "Gmsh.y" { char *c; int i; @@ -713,7 +719,7 @@ typedef union YYSTYPE struct TwoChar c2; } /* Line 193 of yacc.c. */ -#line 717 "Gmsh.tab.cpp" +#line 723 "Gmsh.tab.cpp" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -726,7 +732,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 730 "Gmsh.tab.cpp" +#line 736 "Gmsh.tab.cpp" #ifdef short # undef short @@ -941,16 +947,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 5 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 15257 +#define YYLAST 15487 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 248 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 107 /* YYNRULES -- Number of rules. */ -#define YYNRULES 583 +#define YYNRULES 588 /* YYNRULES -- Number of states. */ -#define YYNSTATES 2128 +#define YYNSTATES 2151 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -1062,21 +1068,21 @@ static const yytype_uint16 yyprhs[] = 2322, 2329, 2336, 2343, 2348, 2350, 2352, 2354, 2356, 2358, 2360, 2362, 2364, 2366, 2368, 2370, 2371, 2378, 2380, 2385, 2392, 2394, 2399, 2404, 2409, 2416, 2422, 2430, 2435, 2440, - 2445, 2449, 2452, 2458, 2464, 2468, 2474, 2481, 2486, 2494, - 2501, 2508, 2515, 2520, 2527, 2532, 2533, 2536, 2537, 2540, - 2541, 2549, 2551, 2555, 2557, 2559, 2562, 2563, 2567, 2569, - 2572, 2575, 2579, 2583, 2595, 2605, 2613, 2621, 2623, 2627, - 2629, 2631, 2634, 2638, 2643, 2649, 2651, 2653, 2656, 2660, - 2664, 2670, 2675, 2678, 2681, 2684, 2687, 2691, 2695, 2699, - 2703, 2720, 2737, 2754, 2771, 2773, 2775, 2777, 2781, 2786, - 2791, 2796, 2803, 2810, 2819, 2828, 2833, 2848, 2853, 2858, - 2860, 2862, 2866, 2870, 2880, 2888, 2890, 2896, 2900, 2907, - 2909, 2913, 2915, 2917, 2922, 2927, 2931, 2937, 2944, 2950, - 2956, 2962, 2968, 2970, 2975, 2977, 2979, 2981, 2983, 2988, - 2995, 3000, 3007, 3013, 3021, 3026, 3031, 3036, 3045, 3050, - 3055, 3060, 3065, 3074, 3083, 3090, 3095, 3102, 3107, 3109, - 3114, 3119, 3120, 3127, 3132, 3135, 3140, 3142, 3146, 3152, - 3158, 3167, 3169, 3171 + 2447, 2452, 2456, 2459, 2465, 2471, 2475, 2481, 2488, 2497, + 2504, 2509, 2517, 2524, 2531, 2538, 2543, 2550, 2555, 2556, + 2559, 2560, 2563, 2564, 2572, 2574, 2578, 2580, 2582, 2585, + 2586, 2590, 2592, 2595, 2598, 2602, 2606, 2618, 2628, 2636, + 2644, 2646, 2650, 2652, 2654, 2657, 2661, 2666, 2672, 2674, + 2676, 2679, 2683, 2687, 2693, 2698, 2701, 2704, 2707, 2710, + 2714, 2718, 2722, 2726, 2743, 2760, 2777, 2794, 2796, 2798, + 2800, 2804, 2809, 2814, 2819, 2826, 2833, 2842, 2851, 2856, + 2871, 2876, 2881, 2883, 2885, 2889, 2893, 2903, 2911, 2913, + 2919, 2923, 2930, 2932, 2936, 2938, 2940, 2945, 2950, 2954, + 2960, 2967, 2976, 2983, 2989, 2995, 3001, 3007, 3009, 3014, + 3016, 3018, 3020, 3022, 3027, 3034, 3039, 3046, 3052, 3060, + 3065, 3070, 3075, 3084, 3089, 3094, 3099, 3104, 3113, 3122, + 3129, 3134, 3141, 3146, 3148, 3153, 3158, 3159, 3166, 3171, + 3174, 3179, 3181, 3185, 3191, 3197, 3206, 3208, 3210 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -1326,144 +1332,148 @@ static const yytype_int16 yyrhs[] = 238, 334, 244, 335, 239, -1, 202, 238, 334, 330, 239, -1, 202, 238, 334, 244, 335, 330, 239, -1, 201, 238, 349, 239, -1, 245, 354, 272, 273, -1, - 86, 272, 354, 273, -1, 86, 272, 273, -1, 354, - 271, -1, 354, 240, 327, 241, 271, -1, 354, 238, - 327, 239, 271, -1, 354, 244, 335, -1, 354, 9, - 354, 244, 335, -1, 354, 240, 327, 241, 244, 4, - -1, 354, 244, 4, 271, -1, 354, 240, 327, 241, - 244, 4, 271, -1, 191, 238, 348, 247, 327, 239, - -1, 56, 238, 341, 247, 341, 239, -1, 57, 272, - 348, 247, 348, 273, -1, 55, 272, 348, 273, -1, - 58, 272, 348, 247, 348, 273, -1, 63, 238, 352, - 239, -1, -1, 247, 327, -1, -1, 247, 348, -1, - -1, 84, 334, 337, 333, 240, 283, 241, -1, 354, - -1, 354, 9, 354, -1, 4, -1, 87, -1, 87, - 327, -1, -1, 238, 336, 239, -1, 339, -1, 227, - 338, -1, 226, 338, -1, 338, 227, 338, -1, 338, - 226, 338, -1, 242, 327, 247, 327, 247, 327, 247, - 327, 247, 327, 243, -1, 242, 327, 247, 327, 247, - 327, 247, 327, 243, -1, 242, 327, 247, 327, 247, - 327, 243, -1, 238, 327, 247, 327, 247, 327, 239, - -1, 341, -1, 340, 247, 341, -1, 327, -1, 343, - -1, 242, 243, -1, 242, 344, 243, -1, 227, 242, - 344, 243, -1, 327, 228, 242, 344, 243, -1, 341, - -1, 5, -1, 227, 343, -1, 327, 228, 343, -1, - 327, 8, 327, -1, 327, 8, 327, 8, 327, -1, - 91, 242, 327, 243, -1, 91, 5, -1, 94, 5, - -1, 97, 5, -1, 99, 5, -1, 125, 91, 342, - -1, 125, 94, 342, -1, 125, 97, 342, -1, 125, - 99, 342, -1, 91, 176, 64, 242, 327, 247, 327, + 245, 334, 244, 335, 238, 239, -1, 86, 272, 354, + 273, -1, 86, 272, 273, -1, 354, 271, -1, 354, + 240, 327, 241, 271, -1, 354, 238, 327, 239, 271, + -1, 354, 244, 335, -1, 354, 9, 354, 244, 335, + -1, 354, 244, 335, 238, 327, 239, -1, 354, 9, + 354, 244, 335, 238, 327, 239, -1, 354, 240, 327, + 241, 244, 4, -1, 354, 244, 4, 271, -1, 354, + 240, 327, 241, 244, 4, 271, -1, 191, 238, 348, + 247, 327, 239, -1, 56, 238, 341, 247, 341, 239, + -1, 57, 272, 348, 247, 348, 273, -1, 55, 272, + 348, 273, -1, 58, 272, 348, 247, 348, 273, -1, + 63, 238, 352, 239, -1, -1, 247, 327, -1, -1, + 247, 348, -1, -1, 84, 334, 337, 333, 240, 283, + 241, -1, 354, -1, 354, 9, 354, -1, 4, -1, + 87, -1, 87, 327, -1, -1, 238, 336, 239, -1, + 339, -1, 227, 338, -1, 226, 338, -1, 338, 227, + 338, -1, 338, 226, 338, -1, 242, 327, 247, 327, + 247, 327, 247, 327, 247, 327, 243, -1, 242, 327, + 247, 327, 247, 327, 247, 327, 243, -1, 242, 327, + 247, 327, 247, 327, 243, -1, 238, 327, 247, 327, + 247, 327, 239, -1, 341, -1, 340, 247, 341, -1, + 327, -1, 343, -1, 242, 243, -1, 242, 344, 243, + -1, 227, 242, 344, 243, -1, 327, 228, 242, 344, + 243, -1, 341, -1, 5, -1, 227, 343, -1, 327, + 228, 343, -1, 327, 8, 327, -1, 327, 8, 327, + 8, 327, -1, 91, 242, 327, 243, -1, 91, 5, + -1, 94, 5, -1, 97, 5, -1, 99, 5, -1, + 125, 91, 342, -1, 125, 94, 342, -1, 125, 97, + 342, -1, 125, 99, 342, -1, 91, 176, 64, 242, + 327, 247, 327, 247, 327, 247, 327, 247, 327, 247, + 327, 243, -1, 94, 176, 64, 242, 327, 247, 327, 247, 327, 247, 327, 247, 327, 247, 327, 243, -1, - 94, 176, 64, 242, 327, 247, 327, 247, 327, 247, - 327, 247, 327, 247, 327, 243, -1, 97, 176, 64, + 97, 176, 64, 242, 327, 247, 327, 247, 327, 247, + 327, 247, 327, 247, 327, 243, -1, 99, 176, 64, 242, 327, 247, 327, 247, 327, 247, 327, 247, 327, - 247, 327, 243, -1, 99, 176, 64, 242, 327, 247, - 327, 247, 327, 247, 327, 247, 327, 247, 327, 243, - -1, 296, -1, 307, -1, 316, -1, 354, 272, 273, - -1, 39, 240, 354, 241, -1, 39, 240, 343, 241, - -1, 39, 238, 343, 239, -1, 39, 272, 242, 344, - 243, 273, -1, 354, 272, 242, 344, 243, 273, -1, - 40, 272, 327, 247, 327, 247, 327, 273, -1, 41, - 272, 327, 247, 327, 247, 327, 273, -1, 42, 272, - 348, 273, -1, 43, 272, 327, 247, 327, 247, 327, - 247, 327, 247, 327, 247, 327, 273, -1, 196, 272, - 343, 273, -1, 32, 272, 343, 273, -1, 327, -1, - 343, -1, 344, 247, 327, -1, 344, 247, 343, -1, - 242, 327, 247, 327, 247, 327, 247, 327, 243, -1, - 242, 327, 247, 327, 247, 327, 243, -1, 354, -1, - 4, 244, 173, 244, 4, -1, 242, 347, 243, -1, - 354, 240, 327, 241, 244, 174, -1, 345, -1, 347, - 247, 345, -1, 349, -1, 354, -1, 354, 240, 327, - 241, -1, 354, 238, 327, 239, -1, 354, 244, 335, - -1, 354, 9, 354, 244, 335, -1, 354, 240, 327, - 241, 244, 4, -1, 125, 91, 242, 327, 243, -1, - 125, 94, 242, 327, 243, -1, 125, 97, 242, 327, - 243, -1, 125, 99, 242, 327, 243, -1, 5, -1, - 209, 240, 354, 241, -1, 67, -1, 207, -1, 72, - -1, 74, -1, 193, 238, 348, 239, -1, 192, 238, - 348, 247, 348, 239, -1, 194, 272, 348, 273, -1, - 194, 272, 348, 247, 348, 273, -1, 203, 238, 334, - 331, 239, -1, 203, 238, 334, 244, 335, 331, 239, - -1, 48, 272, 352, 273, -1, 49, 238, 348, 239, - -1, 50, 238, 348, 239, -1, 51, 238, 348, 247, - 348, 247, 348, 239, -1, 46, 272, 352, 273, -1, - 60, 272, 348, 273, -1, 61, 272, 348, 273, -1, - 62, 272, 348, 273, -1, 59, 272, 327, 247, 348, - 247, 348, 273, -1, 54, 272, 348, 247, 327, 247, - 327, 273, -1, 54, 272, 348, 247, 327, 273, -1, - 47, 272, 348, 273, -1, 47, 272, 348, 247, 344, - 273, -1, 68, 272, 348, 273, -1, 69, -1, 53, - 272, 348, 273, -1, 52, 272, 348, 273, -1, -1, - 88, 272, 349, 350, 286, 273, -1, 85, 272, 351, - 273, -1, 245, 327, -1, 354, 9, 245, 327, -1, - 348, -1, 352, 247, 348, -1, 4, 246, 242, 327, - 243, -1, 353, 246, 242, 327, 243, -1, 210, 240, - 348, 241, 246, 242, 327, 243, -1, 4, -1, 353, - -1, 210, 240, 348, 241, -1 + 247, 327, 243, -1, 296, -1, 307, -1, 316, -1, + 354, 272, 273, -1, 39, 240, 354, 241, -1, 39, + 240, 343, 241, -1, 39, 238, 343, 239, -1, 39, + 272, 242, 344, 243, 273, -1, 354, 272, 242, 344, + 243, 273, -1, 40, 272, 327, 247, 327, 247, 327, + 273, -1, 41, 272, 327, 247, 327, 247, 327, 273, + -1, 42, 272, 348, 273, -1, 43, 272, 327, 247, + 327, 247, 327, 247, 327, 247, 327, 247, 327, 273, + -1, 196, 272, 343, 273, -1, 32, 272, 343, 273, + -1, 327, -1, 343, -1, 344, 247, 327, -1, 344, + 247, 343, -1, 242, 327, 247, 327, 247, 327, 247, + 327, 243, -1, 242, 327, 247, 327, 247, 327, 243, + -1, 354, -1, 4, 244, 173, 244, 4, -1, 242, + 347, 243, -1, 354, 240, 327, 241, 244, 174, -1, + 345, -1, 347, 247, 345, -1, 349, -1, 354, -1, + 354, 240, 327, 241, -1, 354, 238, 327, 239, -1, + 354, 244, 335, -1, 354, 9, 354, 244, 335, -1, + 354, 244, 335, 238, 327, 239, -1, 354, 9, 354, + 244, 335, 238, 327, 239, -1, 354, 240, 327, 241, + 244, 4, -1, 125, 91, 242, 327, 243, -1, 125, + 94, 242, 327, 243, -1, 125, 97, 242, 327, 243, + -1, 125, 99, 242, 327, 243, -1, 5, -1, 209, + 240, 354, 241, -1, 67, -1, 207, -1, 72, -1, + 74, -1, 193, 238, 348, 239, -1, 192, 238, 348, + 247, 348, 239, -1, 194, 272, 348, 273, -1, 194, + 272, 348, 247, 348, 273, -1, 203, 238, 334, 331, + 239, -1, 203, 238, 334, 244, 335, 331, 239, -1, + 48, 272, 352, 273, -1, 49, 238, 348, 239, -1, + 50, 238, 348, 239, -1, 51, 238, 348, 247, 348, + 247, 348, 239, -1, 46, 272, 352, 273, -1, 60, + 272, 348, 273, -1, 61, 272, 348, 273, -1, 62, + 272, 348, 273, -1, 59, 272, 327, 247, 348, 247, + 348, 273, -1, 54, 272, 348, 247, 327, 247, 327, + 273, -1, 54, 272, 348, 247, 327, 273, -1, 47, + 272, 348, 273, -1, 47, 272, 348, 247, 344, 273, + -1, 68, 272, 348, 273, -1, 69, -1, 53, 272, + 348, 273, -1, 52, 272, 348, 273, -1, -1, 88, + 272, 349, 350, 286, 273, -1, 85, 272, 351, 273, + -1, 245, 327, -1, 354, 9, 245, 327, -1, 348, + -1, 352, 247, 348, -1, 4, 246, 242, 327, 243, + -1, 353, 246, 242, 327, 243, -1, 210, 240, 348, + 241, 246, 242, 327, 243, -1, 4, -1, 353, -1, + 210, 240, 348, 241, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 253, 253, 254, 259, 261, 265, 266, 267, 268, - 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 299, 300, 301, 302, 306, 310, 317, 322, - 327, 341, 354, 367, 395, 409, 422, 435, 454, 459, - 460, 461, 462, 463, 467, 469, 474, 476, 482, 586, - 481, 604, 611, 622, 621, 639, 646, 657, 656, 673, - 690, 713, 712, 726, 727, 728, 729, 730, 734, 735, - 741, 741, 742, 742, 748, 749, 750, 751, 756, 762, - 824, 839, 868, 878, 883, 891, 896, 904, 913, 918, - 930, 947, 953, 962, 980, 998, 1007, 1019, 1024, 1032, - 1052, 1075, 1086, 1094, 1116, 1139, 1177, 1198, 1210, 1224, - 1224, 1226, 1228, 1237, 1247, 1246, 1267, 1266, 1284, 1294, - 1293, 1307, 1309, 1317, 1323, 1328, 1354, 1356, 1359, 1361, - 1365, 1366, 1370, 1382, 1395, 1410, 1420, 1422, 1426, 1427, - 1432, 1440, 1449, 1457, 1475, 1479, 1486, 1494, 1498, 1505, - 1513, 1517, 1524, 1532, 1536, 1543, 1552, 1555, 1562, 1565, - 1572, 1596, 1612, 1628, 1665, 1705, 1721, 1737, 1759, 1769, - 1785, 1802, 1818, 1839, 1850, 1856, 1862, 1869, 1900, 1915, - 1937, 1960, 1983, 2006, 2030, 2054, 2077, 2102, 2112, 2135, - 2152, 2168, 2186, 2204, 2214, 2226, 2238, 2250, 2267, 2283, - 2299, 2314, 2331, 2348, 2383, 2405, 2429, 2430, 2435, 2438, - 2442, 2453, 2464, 2475, 2491, 2510, 2531, 2546, 2562, 2580, - 2631, 2652, 2674, 2697, 2802, 2818, 2853, 2864, 2875, 2881, - 2896, 2924, 2936, 2945, 2952, 2964, 2983, 2989, 2995, 3002, - 3009, 3016, 3028, 3101, 3119, 3136, 3151, 3184, 3196, 3220, - 3224, 3229, 3236, 3241, 3251, 3256, 3262, 3270, 3274, 3278, - 3287, 3351, 3367, 3384, 3401, 3423, 3445, 3480, 3488, 3496, - 3502, 3509, 3516, 3536, 3562, 3574, 3586, 3604, 3622, 3641, - 3640, 3665, 3664, 3691, 3690, 3715, 3714, 3737, 3753, 3770, - 3787, 3810, 3813, 3819, 3831, 3851, 3855, 3859, 3863, 3867, - 3871, 3875, 3879, 3888, 3901, 3902, 3903, 3904, 3905, 3909, - 3910, 3911, 3912, 3913, 3916, 3939, 3958, 3980, 3983, 3999, - 4002, 4019, 4022, 4028, 4031, 4038, 4041, 4048, 4065, 4106, - 4150, 4189, 4214, 4223, 4253, 4279, 4305, 4337, 4364, 4390, - 4416, 4442, 4468, 4490, 4496, 4502, 4508, 4514, 4520, 4546, - 4572, 4589, 4606, 4623, 4635, 4641, 4647, 4659, 4663, 4673, - 4684, 4685, 4686, 4690, 4696, 4708, 4726, 4754, 4755, 4756, - 4757, 4758, 4759, 4760, 4761, 4762, 4769, 4770, 4771, 4772, - 4773, 4774, 4775, 4776, 4777, 4778, 4779, 4780, 4781, 4782, - 4783, 4784, 4785, 4786, 4787, 4788, 4789, 4790, 4791, 4792, - 4793, 4794, 4795, 4796, 4797, 4798, 4799, 4800, 4801, 4802, - 4803, 4804, 4805, 4806, 4815, 4816, 4817, 4818, 4819, 4820, - 4821, 4822, 4823, 4824, 4825, 4830, 4829, 4837, 4839, 4844, - 4849, 4853, 4871, 4889, 4893, 4897, 4901, 4905, 4911, 4927, - 4933, 4939, 4958, 4979, 5012, 5016, 5021, 5026, 5036, 5046, - 5051, 5062, 5071, 5076, 5081, 5109, 5110, 5116, 5117, 5123, - 5122, 5145, 5147, 5152, 5161, 5163, 5169, 5170, 5176, 5180, - 5184, 5188, 5192, 5199, 5203, 5207, 5211, 5218, 5223, 5230, - 5235, 5239, 5244, 5248, 5256, 5267, 5271, 5283, 5291, 5299, - 5306, 5316, 5339, 5345, 5351, 5357, 5363, 5374, 5385, 5396, - 5407, 5413, 5419, 5425, 5431, 5441, 5451, 5461, 5474, 5486, - 5490, 5494, 5498, 5516, 5524, 5532, 5561, 5571, 5587, 5598, - 5603, 5607, 5611, 5623, 5627, 5639, 5656, 5666, 5670, 5685, - 5690, 5697, 5701, 5706, 5720, 5737, 5741, 5746, 5754, 5760, - 5766, 5772, 5781, 5785, 5789, 5797, 5803, 5809, 5813, 5821, - 5829, 5836, 5846, 5851, 5856, 5871, 5885, 5899, 5911, 5927, - 5936, 5945, 5955, 5966, 5974, 5982, 5986, 6005, 6012, 6018, - 6025, 6033, 6032, 6042, 6066, 6068, 6074, 6079, 6087, 6096, - 6105, 6117, 6120, 6124 + 0, 259, 259, 260, 265, 267, 271, 272, 273, 274, + 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, + 303, 304, 305, 306, 307, 308, 312, 316, 323, 328, + 333, 347, 360, 373, 401, 415, 428, 441, 460, 465, + 466, 467, 468, 469, 473, 475, 480, 482, 488, 592, + 487, 610, 617, 628, 627, 645, 652, 663, 662, 679, + 696, 719, 718, 732, 733, 734, 735, 736, 740, 741, + 747, 747, 748, 748, 754, 755, 756, 757, 762, 768, + 830, 845, 874, 884, 889, 897, 902, 910, 919, 924, + 936, 953, 959, 968, 986, 1004, 1013, 1025, 1030, 1038, + 1058, 1081, 1092, 1100, 1122, 1145, 1183, 1204, 1216, 1230, + 1230, 1232, 1234, 1243, 1253, 1252, 1273, 1272, 1290, 1300, + 1299, 1313, 1315, 1323, 1329, 1334, 1360, 1362, 1365, 1367, + 1371, 1372, 1376, 1388, 1401, 1416, 1426, 1428, 1432, 1433, + 1438, 1446, 1455, 1463, 1481, 1485, 1492, 1500, 1504, 1511, + 1519, 1523, 1530, 1538, 1542, 1549, 1558, 1561, 1568, 1571, + 1578, 1602, 1618, 1634, 1671, 1711, 1727, 1743, 1765, 1775, + 1791, 1808, 1824, 1845, 1856, 1862, 1868, 1875, 1906, 1921, + 1943, 1966, 1989, 2012, 2036, 2060, 2083, 2108, 2118, 2141, + 2158, 2174, 2192, 2210, 2220, 2232, 2244, 2256, 2273, 2289, + 2305, 2320, 2337, 2354, 2389, 2411, 2435, 2436, 2441, 2444, + 2448, 2459, 2470, 2481, 2497, 2516, 2537, 2552, 2568, 2586, + 2637, 2658, 2680, 2703, 2808, 2824, 2859, 2870, 2881, 2887, + 2902, 2930, 2942, 2951, 2958, 2970, 2989, 2995, 3001, 3008, + 3015, 3022, 3034, 3107, 3125, 3142, 3157, 3190, 3202, 3226, + 3230, 3235, 3242, 3247, 3257, 3262, 3268, 3276, 3280, 3284, + 3293, 3357, 3373, 3390, 3407, 3429, 3451, 3486, 3494, 3502, + 3508, 3515, 3522, 3542, 3568, 3580, 3592, 3610, 3628, 3647, + 3646, 3671, 3670, 3697, 3696, 3721, 3720, 3743, 3759, 3776, + 3793, 3816, 3819, 3825, 3837, 3857, 3861, 3865, 3869, 3873, + 3877, 3881, 3885, 3894, 3907, 3908, 3909, 3910, 3911, 3915, + 3916, 3917, 3918, 3919, 3922, 3945, 3964, 3986, 3989, 4005, + 4008, 4025, 4028, 4034, 4037, 4044, 4047, 4054, 4071, 4112, + 4156, 4195, 4220, 4229, 4259, 4285, 4311, 4343, 4370, 4396, + 4422, 4448, 4474, 4496, 4502, 4508, 4514, 4520, 4526, 4552, + 4578, 4595, 4612, 4629, 4641, 4647, 4653, 4665, 4669, 4679, + 4690, 4691, 4692, 4696, 4702, 4714, 4732, 4760, 4761, 4762, + 4763, 4764, 4765, 4766, 4767, 4768, 4775, 4776, 4777, 4778, + 4779, 4780, 4781, 4782, 4783, 4784, 4785, 4786, 4787, 4788, + 4789, 4790, 4791, 4792, 4793, 4794, 4795, 4796, 4797, 4798, + 4799, 4800, 4801, 4802, 4803, 4804, 4805, 4806, 4807, 4808, + 4809, 4810, 4811, 4812, 4821, 4822, 4823, 4824, 4825, 4826, + 4827, 4828, 4829, 4830, 4831, 4836, 4835, 4843, 4845, 4850, + 4855, 4859, 4864, 4869, 4873, 4877, 4881, 4885, 4891, 4907, + 4912, 4918, 4924, 4943, 4964, 4997, 5001, 5006, 5010, 5015, + 5020, 5030, 5040, 5045, 5056, 5065, 5070, 5075, 5103, 5104, + 5110, 5111, 5117, 5116, 5139, 5141, 5146, 5155, 5157, 5163, + 5164, 5170, 5174, 5178, 5182, 5186, 5193, 5197, 5201, 5205, + 5212, 5217, 5224, 5229, 5233, 5238, 5242, 5250, 5261, 5265, + 5277, 5285, 5293, 5300, 5310, 5333, 5339, 5345, 5351, 5357, + 5368, 5379, 5390, 5401, 5407, 5413, 5419, 5425, 5435, 5445, + 5455, 5468, 5480, 5484, 5488, 5492, 5510, 5518, 5526, 5555, + 5565, 5581, 5592, 5597, 5601, 5605, 5617, 5621, 5633, 5650, + 5660, 5664, 5679, 5684, 5691, 5695, 5700, 5714, 5731, 5735, + 5740, 5744, 5749, 5757, 5763, 5769, 5775, 5784, 5788, 5792, + 5800, 5806, 5812, 5816, 5824, 5832, 5839, 5849, 5854, 5859, + 5874, 5888, 5902, 5914, 5930, 5939, 5948, 5958, 5969, 5977, + 5985, 5989, 6008, 6015, 6021, 6028, 6036, 6035, 6045, 6069, + 6071, 6077, 6082, 6090, 6099, 6108, 6120, 6123, 6127 }; #endif @@ -1628,20 +1638,20 @@ static const yytype_uint16 yyr1[] = 328, 328, 328, 328, 328, 329, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, - 328, 328, 328, 328, 328, 330, 330, 331, 331, 333, - 332, 334, 334, 335, 336, 336, 337, 337, 338, 338, - 338, 338, 338, 339, 339, 339, 339, 340, 340, 341, - 341, 341, 341, 341, 341, 342, 342, 343, 343, 343, + 328, 328, 328, 328, 328, 328, 328, 328, 330, 330, + 331, 331, 333, 332, 334, 334, 335, 336, 336, 337, + 337, 338, 338, 338, 338, 338, 339, 339, 339, 339, + 340, 340, 341, 341, 341, 341, 341, 341, 342, 342, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, - 343, 343, 343, 343, 343, 343, 343, 343, 343, 344, - 344, 344, 344, 345, 345, 345, 345, 346, 346, 347, - 347, 348, 348, 348, 348, 348, 348, 348, 348, 348, - 348, 348, 349, 349, 349, 349, 349, 349, 349, 349, + 343, 343, 343, 343, 343, 343, 343, 343, 343, 343, + 343, 343, 344, 344, 344, 344, 345, 345, 345, 345, + 346, 346, 347, 347, 348, 348, 348, 348, 348, 348, + 348, 348, 348, 348, 348, 348, 348, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, 349, - 349, 350, 349, 349, 351, 351, 352, 352, 353, 353, - 353, 354, 354, 354 + 349, 349, 349, 349, 349, 349, 350, 349, 349, 351, + 351, 352, 352, 353, 353, 353, 354, 354, 354 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1690,22 +1700,22 @@ static const yytype_uint8 yyr2[] = 4, 6, 4, 4, 4, 4, 4, 4, 4, 4, 6, 6, 6, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 6, 1, 4, 6, - 1, 4, 4, 4, 6, 5, 7, 4, 4, 4, - 3, 2, 5, 5, 3, 5, 6, 4, 7, 6, - 6, 6, 4, 6, 4, 0, 2, 0, 2, 0, - 7, 1, 3, 1, 1, 2, 0, 3, 1, 2, - 2, 3, 3, 11, 9, 7, 7, 1, 3, 1, - 1, 2, 3, 4, 5, 1, 1, 2, 3, 3, - 5, 4, 2, 2, 2, 2, 3, 3, 3, 3, - 16, 16, 16, 16, 1, 1, 1, 3, 4, 4, - 4, 6, 6, 8, 8, 4, 14, 4, 4, 1, - 1, 3, 3, 9, 7, 1, 5, 3, 6, 1, - 3, 1, 1, 4, 4, 3, 5, 6, 5, 5, - 5, 5, 1, 4, 1, 1, 1, 1, 4, 6, - 4, 6, 5, 7, 4, 4, 4, 8, 4, 4, - 4, 4, 8, 8, 6, 4, 6, 4, 1, 4, - 4, 0, 6, 4, 2, 4, 1, 3, 5, 5, - 8, 1, 1, 4 + 1, 4, 4, 4, 6, 5, 7, 4, 4, 6, + 4, 3, 2, 5, 5, 3, 5, 6, 8, 6, + 4, 7, 6, 6, 6, 4, 6, 4, 0, 2, + 0, 2, 0, 7, 1, 3, 1, 1, 2, 0, + 3, 1, 2, 2, 3, 3, 11, 9, 7, 7, + 1, 3, 1, 1, 2, 3, 4, 5, 1, 1, + 2, 3, 3, 5, 4, 2, 2, 2, 2, 3, + 3, 3, 3, 16, 16, 16, 16, 1, 1, 1, + 3, 4, 4, 4, 6, 6, 8, 8, 4, 14, + 4, 4, 1, 1, 3, 3, 9, 7, 1, 5, + 3, 6, 1, 3, 1, 1, 4, 4, 3, 5, + 6, 8, 6, 5, 5, 5, 5, 1, 4, 1, + 1, 1, 1, 4, 6, 4, 6, 5, 7, 4, + 4, 4, 8, 4, 4, 4, 4, 8, 8, 6, + 4, 6, 4, 1, 4, 4, 0, 6, 4, 2, + 4, 1, 3, 5, 5, 8, 1, 1, 4 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1713,7 +1723,7 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 0, 0, 0, 2, 3, 1, 581, 0, 0, 0, + 0, 0, 0, 2, 3, 1, 586, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1726,9 +1736,9 @@ static const yytype_uint16 yydefact[] = 0, 0, 0, 360, 361, 362, 0, 0, 5, 6, 7, 8, 10, 11, 24, 12, 13, 14, 15, 23, 22, 21, 16, 0, 17, 18, 19, 20, 0, 25, - 0, 582, 0, 208, 0, 0, 0, 0, 0, 253, + 0, 587, 0, 208, 0, 0, 0, 0, 0, 253, 0, 255, 256, 251, 252, 0, 257, 258, 111, 121, - 581, 466, 461, 70, 71, 0, 0, 0, 0, 0, + 586, 469, 464, 70, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 259, 0, 0, 0, 0, 0, 414, 415, 417, @@ -1738,1005 +1748,1050 @@ static const yytype_uint16 yydefact[] = 0, 0, 0, 0, 0, 422, 423, 424, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 419, 420, 421, 0, 0, 0, 0, - 0, 0, 504, 505, 0, 506, 479, 367, 427, 430, - 288, 480, 461, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 507, 508, 0, 509, 482, 367, 427, 430, + 288, 483, 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 468, 0, 0, 208, 0, 0, 0, 0, + 0, 0, 471, 0, 0, 208, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 581, 0, 0, 208, 0, 0, 357, 0, 0, 0, - 0, 0, 0, 0, 0, 486, 0, 485, 0, 0, - 0, 0, 0, 581, 0, 0, 525, 0, 0, 0, - 0, 249, 250, 0, 542, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 544, 0, - 568, 546, 547, 0, 0, 0, 0, 0, 0, 545, + 586, 0, 0, 208, 0, 0, 357, 0, 0, 0, + 0, 0, 0, 0, 0, 489, 0, 488, 0, 0, + 0, 0, 0, 586, 0, 0, 528, 0, 0, 0, + 0, 249, 250, 0, 547, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 549, 0, + 573, 551, 552, 0, 0, 0, 0, 0, 0, 550, 0, 0, 0, 0, 267, 268, 0, 208, 0, 208, - 0, 0, 0, 461, 0, 0, 208, 363, 0, 0, + 0, 0, 0, 464, 0, 0, 208, 363, 0, 0, 76, 0, 63, 0, 0, 67, 66, 65, 64, 69, - 68, 70, 71, 0, 0, 0, 0, 0, 0, 531, - 461, 0, 207, 0, 206, 0, 174, 0, 0, 531, - 532, 0, 0, 576, 0, 109, 109, 0, 459, 0, - 0, 0, 0, 0, 519, 520, 0, 0, 0, 0, + 68, 70, 71, 0, 0, 0, 0, 0, 0, 534, + 464, 0, 207, 0, 206, 0, 174, 0, 0, 534, + 535, 0, 0, 581, 0, 109, 109, 0, 462, 0, + 0, 0, 0, 0, 522, 523, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 492, 0, 0, 493, 0, 494, 0, 495, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 370, 0, 369, 487, 371, 0, 481, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 70, 71, 0, 441, 0, 0, 0, 0, 0, - 0, 289, 0, 321, 321, 0, 0, 0, 0, 0, + 0, 495, 0, 0, 496, 0, 497, 0, 498, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 208, 0, 208, 208, 0, 470, 469, 0, 0, 0, - 0, 208, 208, 0, 0, 0, 0, 285, 0, 208, + 0, 370, 0, 369, 490, 371, 0, 484, 0, 0, + 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 323, 0, 0, 0, 0, 0, 232, 0, 0, 230, - 358, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 331, 248, 0, 0, 0, 0, 0, 208, 0, 0, + 0, 0, 70, 71, 0, 442, 0, 0, 0, 0, + 0, 0, 289, 0, 321, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 208, 0, 208, 208, 0, 473, 472, 0, 0, + 0, 0, 208, 208, 0, 0, 0, 0, 285, 0, + 208, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 323, 0, 0, 0, 0, 0, 232, 0, 0, + 230, 358, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 331, 248, 0, 0, 0, 0, 0, 208, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 271, 270, 0, 236, 0, 237, - 0, 0, 369, 0, 208, 0, 0, 0, 0, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 80, 72, 73, 0, 0, - 246, 38, 242, 0, 0, 0, 0, 0, 203, 0, - 0, 0, 0, 0, 0, 0, 209, 0, 175, 0, + 0, 0, 0, 0, 0, 271, 270, 0, 236, 0, + 237, 0, 0, 369, 0, 208, 0, 0, 0, 0, + 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 80, 72, 73, 0, + 0, 246, 38, 242, 0, 0, 0, 0, 0, 203, + 0, 0, 0, 0, 0, 0, 0, 209, 0, 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 110, 0, 0, 0, 464, 0, 0, 462, 0, + 0, 0, 110, 0, 0, 0, 467, 0, 0, 465, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 315, 0, 0, 0, 0, 0, 0, 350, 351, - 352, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 315, 0, 0, 0, 0, 0, 0, 350, + 351, 352, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 461, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 425, 440, 0, 0, 0, 0, 0, 0, 496, 497, - 498, 499, 0, 0, 0, 0, 0, 455, 0, 368, - 482, 0, 489, 0, 387, 386, 385, 384, 380, 381, - 388, 389, 383, 382, 373, 372, 0, 374, 488, 375, - 378, 376, 377, 379, 462, 0, 0, 463, 444, 0, - 507, 0, 0, 0, 0, 0, 0, 0, 319, 0, - 0, 144, 145, 0, 147, 148, 0, 150, 151, 0, - 153, 154, 0, 354, 0, 355, 0, 356, 0, 0, - 0, 0, 353, 0, 208, 0, 0, 0, 0, 0, - 472, 471, 0, 0, 0, 0, 0, 0, 0, 279, + 464, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 425, 441, 0, 0, 0, 0, 0, 0, 499, + 500, 501, 502, 0, 0, 0, 0, 0, 458, 0, + 368, 485, 0, 0, 492, 0, 387, 386, 385, 384, + 380, 381, 388, 389, 383, 382, 373, 372, 0, 374, + 491, 375, 378, 376, 377, 379, 465, 0, 0, 466, + 445, 0, 510, 0, 0, 0, 0, 0, 0, 0, + 319, 0, 0, 144, 145, 0, 147, 148, 0, 150, + 151, 0, 153, 154, 0, 354, 0, 355, 0, 356, + 0, 0, 0, 0, 353, 0, 208, 0, 0, 0, + 0, 0, 475, 474, 0, 0, 0, 0, 0, 0, + 0, 279, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 334, 0, 0, 231, 0, 0, + 226, 0, 0, 0, 349, 348, 0, 0, 0, 368, + 0, 0, 0, 0, 0, 0, 0, 0, 272, 273, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 334, 0, 0, 231, 0, 0, 226, 0, - 0, 0, 349, 348, 0, 0, 0, 368, 0, 0, - 0, 0, 0, 0, 0, 0, 272, 273, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 576, 0, + 0, 0, 460, 0, 0, 238, 240, 0, 374, 0, + 588, 0, 0, 0, 0, 0, 0, 0, 0, 87, + 0, 0, 0, 0, 0, 368, 0, 63, 0, 0, + 0, 0, 79, 0, 63, 64, 0, 0, 465, 0, + 0, 445, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 583, 28, 26, 27, 0, 0, 0, 0, + 0, 466, 538, 29, 0, 0, 243, 582, 74, 112, + 75, 122, 468, 470, 128, 0, 0, 0, 0, 524, + 525, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 571, 0, 0, 0, - 457, 0, 0, 238, 240, 0, 374, 0, 583, 0, - 0, 0, 0, 0, 0, 0, 0, 87, 0, 0, - 0, 0, 0, 368, 0, 63, 0, 0, 0, 0, - 79, 0, 63, 64, 0, 0, 462, 0, 0, 444, + 0, 0, 0, 9, 391, 392, 393, 394, 395, 396, + 397, 398, 399, 413, 400, 0, 402, 403, 404, 405, + 406, 521, 407, 408, 409, 0, 0, 0, 513, 512, + 511, 0, 0, 0, 518, 0, 455, 0, 0, 0, + 457, 126, 440, 0, 494, 0, 0, 0, 0, 0, + 428, 520, 433, 0, 437, 0, 0, 0, 486, 0, + 0, 438, 0, 0, 0, 0, 432, 431, 450, 0, + 0, 0, 0, 0, 0, 368, 317, 322, 320, 0, + 330, 0, 0, 0, 0, 0, 0, 0, 0, 368, + 368, 368, 0, 0, 0, 0, 227, 0, 239, 241, + 0, 0, 0, 198, 200, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 291, 0, 276, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 578, 28, 26, 27, 0, 0, 0, 0, 0, 463, - 535, 29, 0, 0, 243, 577, 74, 112, 75, 122, - 465, 467, 128, 0, 0, 0, 0, 521, 522, 0, + 324, 333, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 233, 0, 0, + 0, 0, 563, 0, 570, 559, 560, 561, 0, 575, + 574, 0, 0, 564, 565, 566, 572, 579, 578, 0, + 136, 0, 553, 0, 555, 0, 0, 0, 548, 0, + 235, 0, 0, 0, 310, 0, 0, 0, 364, 0, + 584, 0, 0, 0, 0, 101, 63, 0, 0, 0, + 0, 0, 0, 0, 95, 0, 0, 0, 0, 0, + 0, 0, 0, 48, 0, 0, 0, 61, 0, 39, + 40, 41, 42, 43, 0, 432, 431, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 537, 536, 0, 0, 0, 0, 0, 133, 0, + 129, 130, 0, 0, 0, 0, 0, 158, 158, 0, + 0, 0, 0, 0, 0, 0, 156, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 327, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 9, 391, 392, 393, 394, 395, 396, 397, 398, - 399, 413, 400, 0, 402, 403, 404, 405, 406, 518, - 407, 408, 409, 0, 0, 0, 510, 509, 508, 0, - 0, 0, 515, 0, 452, 0, 0, 0, 454, 126, - 439, 0, 491, 0, 0, 0, 0, 0, 428, 517, - 433, 0, 437, 0, 0, 0, 483, 0, 438, 0, - 0, 0, 0, 432, 431, 447, 0, 0, 0, 0, - 0, 368, 317, 322, 320, 0, 330, 0, 0, 0, - 0, 0, 0, 0, 0, 368, 368, 368, 0, 0, - 0, 0, 227, 0, 239, 241, 0, 0, 0, 198, - 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 291, 0, 276, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 324, 333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 233, 0, 0, 0, 0, 558, 0, - 565, 554, 555, 556, 0, 570, 569, 0, 0, 559, - 560, 561, 567, 574, 573, 0, 136, 0, 548, 0, - 550, 0, 0, 0, 543, 0, 235, 0, 0, 0, - 310, 0, 0, 0, 364, 0, 579, 0, 0, 0, - 0, 101, 63, 0, 0, 0, 0, 0, 0, 0, - 95, 0, 0, 0, 0, 0, 0, 0, 0, 48, - 0, 0, 0, 61, 0, 39, 40, 41, 42, 43, - 0, 432, 431, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 534, 533, 0, 0, - 0, 0, 133, 0, 129, 130, 0, 0, 0, 0, - 0, 158, 158, 0, 0, 0, 0, 0, 0, 0, - 156, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 327, 0, 0, 0, 0, 0, 0, 0, 0, + 458, 459, 435, 0, 0, 493, 390, 487, 446, 444, + 0, 443, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 329, 0, 146, 0, 149, 0, 152, 0, 155, + 0, 0, 0, 0, 0, 0, 0, 234, 0, 0, + 0, 0, 0, 0, 0, 296, 0, 0, 295, 0, + 298, 0, 300, 0, 286, 292, 0, 0, 0, 225, + 0, 0, 0, 0, 0, 0, 0, 0, 335, 0, + 229, 228, 359, 0, 0, 35, 36, 0, 0, 0, + 0, 529, 0, 0, 0, 262, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 460, 461, 557, + 0, 0, 208, 311, 0, 312, 208, 0, 0, 543, + 544, 545, 546, 0, 86, 0, 0, 0, 0, 84, + 91, 93, 0, 532, 0, 99, 0, 0, 0, 0, + 81, 0, 0, 0, 0, 0, 34, 446, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 455, 456, 435, 0, 490, 390, - 484, 445, 443, 0, 442, 0, 0, 0, 0, 0, - 0, 0, 0, 329, 0, 146, 0, 149, 0, 152, - 0, 155, 0, 0, 0, 0, 0, 0, 0, 234, - 0, 0, 0, 0, 0, 0, 0, 296, 0, 0, - 295, 0, 298, 0, 300, 0, 286, 292, 0, 0, - 0, 225, 0, 0, 0, 0, 0, 0, 0, 0, - 335, 0, 229, 228, 359, 0, 0, 35, 36, 0, - 0, 0, 0, 526, 0, 0, 0, 262, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 457, - 458, 552, 0, 0, 208, 311, 0, 312, 208, 0, - 0, 538, 539, 540, 541, 0, 86, 0, 0, 0, - 0, 84, 91, 93, 0, 529, 0, 99, 0, 0, - 0, 0, 81, 0, 0, 0, 0, 0, 34, 445, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 30, 31, 0, 536, 0, 32, 0, 0, - 113, 118, 0, 0, 132, 135, 460, 0, 77, 78, + 0, 30, 31, 0, 539, 0, 0, 32, 0, 0, + 113, 118, 0, 0, 132, 135, 463, 0, 77, 78, 160, 0, 0, 0, 0, 0, 0, 161, 0, 0, 177, 178, 0, 0, 0, 0, 162, 190, 179, 183, 184, 180, 181, 182, 169, 0, 0, 401, 410, 411, - 412, 511, 0, 0, 0, 450, 451, 453, 127, 426, - 0, 0, 0, 0, 449, 429, 434, 0, 191, 446, - 512, 185, 0, 0, 156, 0, 0, 328, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 247, 0, - 0, 0, 0, 208, 208, 0, 0, 297, 479, 0, - 0, 299, 301, 0, 0, 280, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 186, 0, 0, 0, - 0, 165, 166, 0, 0, 0, 0, 102, 106, 0, - 566, 0, 0, 564, 0, 575, 0, 0, 137, 138, - 572, 549, 551, 0, 0, 0, 309, 313, 309, 0, - 365, 85, 63, 0, 0, 0, 0, 83, 0, 527, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 477, 0, 446, 244, 245, 210, 211, 212, 213, 0, - 0, 0, 0, 0, 537, 0, 114, 119, 0, 0, - 519, 520, 131, 0, 0, 159, 163, 164, 170, 0, - 0, 189, 0, 172, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 436, 448, 0, 171, 0, 192, - 318, 194, 195, 196, 197, 168, 0, 187, 193, 0, - 0, 0, 0, 0, 0, 476, 475, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 224, 223, 0, - 0, 0, 0, 0, 0, 0, 0, 214, 0, 0, - 332, 37, 0, 524, 0, 0, 264, 263, 0, 0, - 0, 0, 0, 0, 0, 140, 141, 142, 0, 553, - 0, 580, 0, 0, 0, 0, 0, 96, 0, 0, - 97, 530, 0, 0, 88, 0, 0, 0, 44, 0, - 0, 0, 0, 0, 46, 33, 0, 126, 136, 0, + 412, 514, 0, 0, 0, 453, 454, 456, 127, 426, + 0, 0, 0, 0, 452, 429, 434, 0, 191, 439, + 0, 449, 447, 515, 185, 0, 0, 156, 0, 0, + 328, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 247, 0, 0, 0, 0, 208, 208, 0, 0, + 297, 482, 0, 0, 299, 301, 0, 0, 280, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 186, + 0, 0, 0, 0, 165, 166, 0, 0, 0, 0, + 102, 106, 0, 571, 0, 0, 569, 0, 580, 0, + 0, 137, 138, 577, 554, 556, 0, 0, 0, 309, + 313, 309, 0, 365, 85, 63, 0, 0, 0, 0, + 83, 0, 530, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 480, 0, 0, 449, 244, 447, 245, + 210, 211, 212, 213, 0, 0, 0, 0, 0, 0, + 542, 540, 0, 114, 119, 0, 0, 522, 523, 131, + 0, 0, 159, 163, 164, 170, 0, 0, 189, 0, + 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 436, 0, 451, 0, 171, 0, 192, 318, 194, + 195, 196, 197, 168, 0, 187, 193, 0, 0, 0, + 0, 0, 0, 479, 478, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 224, 223, 0, 0, 0, + 0, 0, 0, 0, 0, 214, 0, 0, 332, 37, + 0, 527, 0, 0, 264, 263, 0, 0, 0, 0, + 0, 0, 0, 140, 141, 142, 0, 558, 0, 585, + 0, 0, 0, 0, 0, 96, 0, 0, 97, 533, + 0, 0, 88, 0, 0, 0, 44, 0, 0, 0, + 0, 0, 46, 0, 33, 0, 0, 126, 136, 0, 134, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 513, 514, 0, 0, 0, 0, 0, 0, - 173, 0, 325, 325, 0, 107, 108, 208, 0, 201, - 202, 287, 0, 293, 0, 0, 208, 0, 0, 0, - 0, 0, 0, 0, 0, 205, 204, 0, 0, 0, - 0, 103, 104, 557, 563, 562, 0, 139, 0, 0, - 314, 0, 92, 94, 0, 100, 0, 82, 89, 90, - 49, 0, 0, 0, 0, 478, 0, 0, 0, 0, - 0, 116, 0, 123, 0, 343, 345, 344, 346, 0, - 347, 176, 0, 0, 0, 0, 0, 0, 290, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 474, - 0, 303, 0, 0, 281, 0, 215, 0, 0, 0, - 0, 0, 0, 0, 523, 265, 0, 143, 0, 208, - 366, 0, 528, 0, 45, 0, 0, 0, 62, 47, - 0, 115, 120, 126, 0, 0, 157, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 326, 336, 0, 0, - 337, 0, 199, 0, 294, 0, 277, 0, 208, 0, - 0, 0, 0, 0, 0, 167, 105, 261, 309, 98, - 0, 0, 0, 0, 0, 0, 124, 125, 0, 0, - 0, 0, 0, 0, 188, 0, 340, 0, 341, 342, - 473, 0, 0, 283, 218, 0, 0, 0, 0, 0, - 0, 0, 0, 53, 0, 59, 0, 0, 117, 0, - 0, 0, 0, 0, 0, 0, 0, 302, 282, 278, + 0, 0, 516, 517, 0, 0, 0, 0, 0, 448, + 0, 173, 0, 325, 325, 0, 107, 108, 208, 0, + 201, 202, 287, 0, 293, 0, 0, 208, 0, 0, + 0, 0, 0, 0, 0, 0, 205, 204, 0, 0, + 0, 0, 103, 104, 562, 568, 567, 0, 139, 0, + 0, 314, 0, 92, 94, 0, 100, 0, 82, 89, + 90, 49, 0, 0, 0, 0, 481, 0, 0, 448, + 541, 0, 0, 0, 116, 0, 123, 0, 343, 345, + 344, 346, 0, 347, 176, 0, 0, 0, 0, 0, + 0, 290, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 477, 0, 303, 0, 0, 281, 0, 215, + 0, 0, 0, 0, 0, 0, 0, 526, 265, 0, + 143, 0, 208, 366, 0, 531, 0, 45, 0, 0, + 0, 62, 47, 0, 115, 120, 126, 0, 0, 157, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 326, + 336, 0, 0, 337, 0, 199, 0, 294, 0, 277, + 0, 208, 0, 0, 0, 0, 0, 0, 167, 105, + 261, 309, 98, 0, 0, 0, 0, 0, 0, 124, + 125, 0, 0, 0, 0, 0, 0, 188, 0, 340, + 0, 341, 342, 476, 0, 0, 283, 218, 0, 0, + 0, 0, 0, 0, 0, 0, 53, 0, 59, 0, + 0, 117, 0, 0, 0, 0, 0, 0, 0, 0, + 302, 282, 278, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 219, 220, 221, 222, 0, 216, 316, 50, - 0, 57, 0, 254, 0, 516, 0, 0, 0, 0, - 0, 0, 284, 0, 0, 51, 0, 0, 260, 0, - 0, 0, 0, 0, 0, 217, 0, 0, 0, 0, - 500, 501, 502, 503, 0, 0, 54, 52, 0, 55, - 0, 338, 339, 0, 0, 60, 58, 56 + 0, 0, 0, 0, 0, 219, 220, 221, 222, 0, + 216, 316, 50, 0, 57, 0, 254, 0, 519, 0, + 0, 0, 0, 0, 0, 284, 0, 0, 51, 0, + 0, 260, 0, 0, 0, 0, 0, 0, 217, 0, + 0, 0, 0, 503, 504, 505, 506, 0, 0, 54, + 52, 0, 55, 0, 338, 339, 0, 0, 60, 58, + 56 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 2, 3, 108, 1024, 109, 110, 1005, 1807, 1813, - 1285, 1493, 1953, 2094, 1286, 2059, 2118, 1287, 2096, 1288, - 1289, 1497, 404, 554, 555, 1088, 111, 732, 425, 1817, - 1963, 1818, 426, 1699, 1356, 1313, 1314, 1315, 1456, 1648, - 1649, 870, 873, 876, 879, 1544, 1534, 716, 252, 413, + -1, 2, 3, 108, 1026, 109, 110, 1007, 1825, 1831, + 1289, 1501, 1976, 2117, 1290, 2082, 2141, 1291, 2119, 1292, + 1293, 1505, 404, 555, 556, 1090, 111, 733, 425, 1837, + 1986, 1838, 426, 1716, 1362, 1319, 1320, 1321, 1464, 1661, + 1662, 872, 875, 878, 881, 1554, 1544, 717, 252, 413, 414, 114, 115, 116, 117, 118, 119, 120, 121, 253, - 1185, 1987, 2050, 907, 1181, 1182, 254, 982, 255, 125, - 1382, 1145, 868, 921, 1923, 126, 127, 128, 129, 256, - 257, 1109, 1125, 1243, 258, 737, 259, 858, 736, 428, - 586, 292, 1679, 327, 328, 261, 528, 335, 1273, 1486, - 423, 419, 1236, 964, 424, 131, 383 + 1189, 2010, 2073, 909, 1185, 1186, 254, 984, 255, 125, + 1390, 1149, 870, 923, 1946, 126, 127, 128, 129, 256, + 257, 1111, 1127, 1247, 258, 738, 259, 860, 737, 428, + 587, 292, 1692, 327, 328, 261, 528, 335, 1277, 1494, + 423, 419, 1240, 966, 424, 131, 383 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -1790 +#define YYPACT_NINF -1788 static const yytype_int16 yypact[] = { - 10160, 35, 55, 10310, -1790, -1790, -137, 71, 66, -113, - -93, 27, 181, 251, 285, 292, -8, 301, 315, 91, - 100, 18, -122, -122, -53, 120, 126, 21, 131, 136, - 33, 178, 184, 190, 223, 250, 349, 361, 385, 411, - 417, 283, 346, 514, 367, 449, 428, 5890, 437, 455, - 665, -71, 217, 293, 638, -40, 500, 630, -114, 525, - 435, 435, 534, 463, 670, -1790, -1790, -1790, -1790, -1790, - 601, 249, 750, 778, 48, 32, 786, 766, 81, 877, - 898, 905, 5182, 930, 700, 709, 716, 28, 8, -1790, - 718, 724, -1790, -1790, 967, 968, 735, -1790, 10477, 745, - 10507, 34, 37, -1790, -1790, -1790, 9990, 749, -1790, -1790, - -1790, -1790, -1790, -1790, -1790, -1790, -1790, -1790, -1790, -1790, - -1790, -1790, -1790, 248, -1790, -1790, -1790, -1790, 54, -1790, - 984, 751, 4944, 416, 753, 997, 9990, 8107, 8107, -1790, - 9990, -1790, -1790, -1790, -1790, 8107, -1790, -1790, -1790, -1790, - 759, 780, 1010, -1790, -1790, 10537, 18, 9990, 9044, 9990, - 9990, 782, 9990, 9044, 9990, 9990, 799, 9990, 9044, 9990, - 9990, 9990, 9990, 9990, 9990, 8107, 9990, 9990, 9990, 6126, - 805, -1790, 9044, 5182, 5182, 5182, 8107, -1790, -1790, -1790, - -1790, -1790, -122, -122, -122, -122, -122, -122, -122, -122, - -122, -122, -122, -122, -122, -122, -122, -122, -122, -122, - -122, -122, -122, -122, -122, -84, -122, -122, -122, -122, - -122, 807, -122, -122, 812, -1790, -1790, -1790, -122, -122, - 53, 43, 59, 63, 6126, 920, 509, 815, -122, -122, - 817, 841, 843, -1790, -1790, -1790, 9990, 6362, 9990, 9990, - 6598, 18, -1790, -1790, 829, -1790, 4307, -1790, -1790, -1790, - -1790, -1790, 177, 9990, 9044, 844, 846, 6834, 5182, 5182, - 5182, 847, 849, 850, 851, 7070, 7306, 7542, 852, 895, - 1087, 6126, 856, 28, 881, 884, 435, 435, 435, 9990, - 9990, -115, -1790, -83, 435, 9361, 274, 280, 854, 855, - 889, 891, 892, 893, 894, 9990, 5182, 5182, 5182, 900, - 9, 1130, 899, -1790, 1135, 1152, -1790, 918, 924, 926, - 5182, 5182, 927, 929, 931, -1790, 9990, -1790, 1164, 1167, - 9990, 9990, 9990, 583, 9990, 933, -1790, 1000, 9990, 9990, - 9990, -1790, -1790, 9990, -1790, -122, -122, -122, 940, 941, - 942, -122, -122, -122, -122, -122, -122, -122, -1790, -122, - -1790, -1790, -1790, -122, -122, 943, 944, -122, 945, -1790, - 946, 1178, 1181, 947, -1790, -1790, 1182, -1790, 1185, -1790, - -122, 9990, 13106, 224, 8107, 9990, -1790, -1790, 6126, 6126, - -1790, 951, 10537, 669, 1187, -1790, -1790, -1790, -1790, -1790, - -1790, 9990, 9990, 298, 6126, 1190, 383, 1713, 955, 1192, - 153, 957, -1790, 958, 8875, 9990, -1790, 2051, 95, -1790, - 68, 159, 9629, -1790, 219, -158, -147, 1113, -1790, 18, - 956, 965, 13568, 9044, 4621, -1790, 282, 13593, 13618, 9990, - 13643, 313, 13668, 13693, 9990, 13718, 333, 13743, 13768, 13793, - 13818, 13843, 13868, 963, 13893, 13918, 13943, 1206, 9990, 358, - 1208, 1209, 1211, 979, 9990, 9990, 9990, 9990, 9990, 9990, - 9990, 9990, 9990, 9990, 9990, 9990, 9990, 9990, 9990, 9990, - 9044, 9990, 9990, 9990, 9990, 9990, 9990, 9044, 9044, 977, - 9990, 9990, 8107, 9990, 8107, 6126, 8107, 8107, 8107, 9990, - 58, -1790, 1156, 9990, -1790, 1158, -1790, 1159, -1790, 1160, - 6126, 5182, 5182, 5182, 5182, 8107, 8107, 9044, 18, 10537, - 18, 989, 9044, 989, -1790, 989, 13968, -1790, 390, -122, - 9990, 9990, 9990, 9990, 9990, 9990, 9990, 9990, 9990, 9990, - 9990, 9990, 9990, 9990, 7778, 9990, 9990, 9990, 9990, 9990, - 18, 9990, 9990, 1224, -1790, 465, 13993, 429, 9990, 9990, - 9990, -1790, 1222, 1223, 1223, 9275, 9275, 9275, 9275, 9990, - 1225, 9990, 1226, 9990, 1227, 9044, 9044, 13134, 996, 1231, - -1790, 998, -1790, -1790, -177, -1790, -1790, 9862, 10411, 435, - 435, 416, 416, -145, 9361, 9361, 9990, 2059, -123, -1790, - 9990, 9990, 9990, 9990, 9990, 9990, 9990, 9990, 9990, 14018, - 1234, 1232, 1235, 9990, 1237, 9990, -1790, 9990, 4505, -1790, - -1790, 9044, 9044, 9044, 1238, 1239, 9990, 9990, 9990, 14043, - -1790, -1790, 14068, 14093, 14118, 1073, 10532, -1790, 1005, 4819, - 14143, 14168, 13217, 8107, 8107, 8107, 8107, 8107, 8107, 8107, - 8107, 8107, 9990, 8107, 8107, 8107, 8107, 15, 10537, 8107, - 8107, 8107, 18, 18, -1790, -1790, 9044, -1790, 5249, -1790, - 5485, 9990, 989, 9990, -1790, 9990, 9990, 1007, 14193, 8317, - 1013, 493, 9990, 1247, 1012, 1014, 1015, 1017, 9990, 14218, - 13244, 319, 1011, 1242, 1254, -1790, -1790, -1790, 9044, 227, - -1790, -1790, -1790, 18, 9990, 9990, 1224, 1021, -1790, 454, - 39, 47, 535, 1024, -28, 691, -1790, 12149, -1790, 145, - 9044, 18, 9990, 9990, 1259, 1258, 9044, 9990, 1260, 8107, - 1261, -1790, 18, 1262, 8107, 9990, 1026, 1030, -1790, 9990, - 10537, 1264, 9044, 1096, 9044, 1266, 1269, 14243, 1270, 1102, - 1273, 1274, 14268, 1275, 1107, 1277, 1278, 1279, 1281, 1283, - 1285, -1790, 1286, 1287, 1288, 9990, 14293, 1054, -1790, -1790, - -1790, 1291, 13190, 13190, 13190, 13190, 13190, 13190, 13190, 13190, - 13190, 13190, 13190, 10565, 13190, 13190, 13190, 13190, 1243, 371, - 13190, 13190, 13190, 10598, 10631, 10664, 4621, 1060, 1059, 164, - 9044, 10697, 10730, 371, 10763, 371, 1055, 1056, 1057, 231, - 4283, -1790, 371, 1063, 12178, 1064, 1065, 1066, -1790, -1790, - -1790, -1790, 1067, -133, 371, -92, 1062, -111, 544, 1303, - -1790, 371, 4855, 4883, 925, 888, 802, 802, 484, 484, - 484, 484, 484, 484, 604, 604, 9044, 321, -1790, 321, - 321, 989, 989, 989, 1068, 14318, 13271, -205, -1790, 9044, - -1790, 1304, 1071, 14343, 14368, 14393, 9990, 6126, 1311, 1310, - 1078, 4283, 1072, 1079, 4283, 1075, 1084, 4283, 1077, 1086, - 4283, 1080, 14418, -1790, 14443, -1790, 14468, -1790, 555, 556, - 9044, 1085, -1790, 5721, -1790, 5957, 6193, 435, 9990, 9990, - -1790, -1790, 1088, 1089, 9361, 8521, 1200, -67, 435, 6429, - 14493, 12207, 14518, 14543, 14568, 14593, 14618, 14643, 14668, 1323, - 9990, 1327, -1790, 9990, 14693, -1790, 13298, 13325, -1790, 595, - 597, 603, -1790, -1790, 13352, 13379, 10796, -1790, 1328, 1329, - 1330, 1090, 9990, 6665, 9990, 9990, -1790, -1790, 1, -119, - -70, -119, 1099, 1100, 1093, 371, 371, 1094, 10829, 371, - 371, 371, 371, 9990, 371, 1333, -1790, 1098, 1108, 481, - 205, 1111, 605, -1790, -1790, 13190, 321, 6901, 1116, 1356, - 1216, 9598, 1122, 1124, 1361, 6126, 12236, -1790, 9990, 9990, - 9990, 9990, 2089, 467, 124, 10537, 9990, 1362, 1365, 52, - -1790, 606, 1324, 1325, 6126, 87, 1128, 14718, 13406, 1131, - 9990, 9044, 9044, 9044, 9044, 9990, 1136, 1140, 1141, 1142, - -1790, -1790, -1790, -1790, 8107, 236, 1138, 14743, 13433, -1790, - -1790, -1790, 240, 10862, -1790, -1790, -1790, 16, -1790, -1790, - 4283, -1790, 1380, 13190, 371, 435, 731, 4621, -1790, 6126, - 6126, 1379, 6126, 763, 6126, 6126, 1381, 6126, 1293, 6126, - 6126, 6126, 6126, 6126, 6126, 6126, 6126, 6126, 2374, 1386, - 9044, -1790, -1790, -1790, -1790, -1790, -1790, -1790, -1790, -1790, - -1790, -1790, -1790, 9990, -1790, -1790, -1790, -1790, -1790, -1790, - -1790, -1790, -1790, 9990, 9990, 9990, -1790, -1790, -1790, 611, - 9990, 9990, -1790, 9990, -1790, 6126, 8107, 8107, -1790, 1147, - -1790, 9990, -1790, 9990, 9990, 9990, 9990, 9990, -1790, -1790, - -1790, 1259, -1790, 1259, 9990, 1157, -1790, 6126, -1790, 9990, - 9990, 612, 1259, -205, -170, -1790, 614, 6126, 9044, 1388, - 1391, 1393, 2490, -1790, -1790, 1395, -1790, 234, 9990, 234, - 9990, 234, 9990, 234, 9990, 1396, 1397, 1398, 1400, 1401, - 622, 1405, -1790, 7137, -1790, -1790, -89, 10895, 10928, -1790, - -1790, 12265, -130, 1301, 1407, 9682, 1170, 1408, 1175, 5, - 23, 476, -1790, -86, -1790, -67, 1409, 1412, 1413, 1415, - 1416, 1417, 1419, 1420, 1422, 6126, 4283, -1790, 3066, 1173, - 1424, 1426, 1427, 1305, 1428, 1430, 1431, 9990, 6126, 6126, - 6126, 1434, 10961, -1790, 7714, 1313, 1435, 1436, -1790, 9044, - -1790, -1790, -1790, -1790, 8107, -1790, -1790, 9990, 8107, -1790, - -1790, -1790, -1790, 4283, -1790, 1174, 1194, 8107, -1790, 8107, - -1790, 1259, 8107, 1195, -1790, 1196, -1790, 1202, 1203, 9913, - -1790, 3112, 1204, 6126, -1790, 1199, -1790, 12294, 12323, 12352, - 12381, -1790, -1790, 9990, 1441, 325, 9990, 1442, 1444, 3441, - -1790, 1446, 28, 1445, 1214, 371, -122, -122, 1449, -1790, - 1219, 1240, 1241, -1790, 1470, -1790, -1790, -1790, -1790, -1790, - 1259, 183, 2719, 13460, 627, 632, 642, 643, 14768, 9990, - 9990, 9990, 9990, 1471, 158, 1259, -1790, 1246, 1473, 9990, - 8014, 371, 4251, 1244, 1245, -1790, 1480, 1485, 57, 1252, - 1253, 1374, 1374, 6126, 1491, 1256, 1257, 1494, 1495, 6126, - 1331, 1263, 1500, 1502, 1503, 1504, 1506, 1507, 1508, 1509, - 1511, -1790, 1513, 645, 13190, 13190, 13190, 13190, 371, 10994, - 11027, 11060, 1280, 371, 371, 1380, 371, 11093, 11126, 11159, - 11192, 14793, 13190, 1282, 1276, 4283, -1790, 1516, 4283, 4283, - -1790, -1790, -1790, 1520, -1790, 371, 1540, 648, 6126, 6126, - 6126, 1522, 1542, -1790, 6126, 4283, 6126, 4283, 6126, 4283, - 6126, 4283, 6126, 6126, 6126, 1309, 1312, 1546, 571, -1790, - 9990, 9990, 9990, 1314, 1315, 1316, 1319, -1790, 3472, 6126, - -1790, 9990, -1790, 1554, -1790, 1555, -1790, -1790, 9361, 641, - 5418, -1790, 1320, 1321, 1322, 1326, 1332, 1335, 8250, 1559, - -1790, 9044, -1790, -1790, -1790, 1336, 9990, -1790, -1790, 13487, - 1560, 1561, 1403, -1790, 9990, 9990, 9990, -1790, 1563, 800, - 486, 1334, 7898, 1337, 9990, 36, 371, 1341, 371, 1338, - -1790, -1790, 10537, 9990, -1790, -1790, 3528, -1790, -1790, 1339, - 1564, -1790, -1790, -1790, -1790, 3613, -1790, 473, 1343, 1565, - 3644, -1790, -1790, -1790, 28, -1790, 650, -1790, 9990, 234, - 2939, 8107, -1790, 1344, 9990, 9990, 6126, 1346, -1790, 1347, - 1569, 1577, 1584, 1585, 1588, 1589, 1591, 1303, 14818, 14843, - 14868, 14893, -1790, -1790, 8107, -1790, 1594, -1790, 11225, 4683, - 4283, -1790, 1592, 6598, -1790, -1790, -1790, 1380, -1790, -1790, - -1790, 9990, 9990, 435, 1595, 1598, 1599, -1790, 9990, 9990, - -1790, -1790, 1601, 1505, 1602, 9990, -1790, -1790, -1790, -1790, - -1790, -1790, -1790, -1790, -1790, 1607, 1371, -1790, -1790, -1790, - -1790, -1790, 9990, 9990, 9990, -1790, -1790, -1790, 1245, -1790, - 9990, 9990, 9990, 9990, -1790, -1790, -1790, 1375, -1790, -205, - -1790, -1790, 1376, 1610, 1331, 1613, 9990, -1790, 1614, 1616, - 1618, 1619, 1620, 897, 1621, 9044, 9044, 9990, -1790, 9275, - 12410, 14918, 8980, 416, 416, 9990, 9990, -1790, 527, 1382, - 14943, -1790, -1790, 12439, -77, -1790, 1622, 1625, 6126, 435, - 435, 435, 435, 435, 5654, 1626, -1790, 653, 9990, 3676, - 1627, -1790, -1790, 6126, 9306, 594, 14968, -1790, -1790, 8486, - -1790, 8107, 9990, -1790, 8107, 4283, 8572, 10537, 1387, -1790, - -1790, -1790, -1790, 1404, 1389, 12468, 8317, -1790, 8317, 6126, - -1790, -1790, 10537, 9990, 1629, 1633, 52, -1790, 1634, -1790, - 28, 13514, 6126, 1636, -119, -119, 9990, 11258, 11291, 661, - -1790, 9990, 332, -1790, -1790, -1790, -1790, -1790, -1790, 1393, - 1396, 1397, 1398, 1638, -1790, 9990, -1790, -1790, 1410, 693, - 3015, 1632, -1790, 12497, 12526, 412, -1790, -1790, -1790, 12555, - 12584, -1790, 1411, -1790, 12613, 1640, 6126, 13190, 13190, 11324, - 11357, 11390, 11423, 11456, -1790, -1790, 9990, -1790, 1641, -1790, - 4283, -1790, -1790, -1790, -1790, -1790, 1423, -1790, -1790, 694, - 696, 13162, 3840, 1645, 1429, -1790, -1790, 9990, 1421, 1425, - 12642, 13541, 1648, 6126, 1639, 1433, 9990, -1790, -1790, 701, - -59, -4, 149, 156, 207, 8808, 210, -1790, 1649, 12671, - -1790, -1790, 1499, -1790, 9990, 9990, -1790, -1790, 9044, 3871, - 1660, 1437, 13190, 371, 8107, 4283, -1790, -1790, 36, -1790, - 10537, -1790, 1438, 1440, 1447, 1673, 3903, -1790, 1678, 1685, - -1790, -1790, 1448, 1688, -1790, 1689, 1690, 295, 4283, 9990, - 9990, 1455, 6126, 702, 4283, -1790, 11489, 1147, 1194, 6126, - -1790, 9990, 10537, 18, 1692, 1693, 1694, 1695, 9990, 1696, - 1698, 714, -1790, -1790, 9990, 9990, 9990, 9990, 9990, 12700, - -1790, 6126, 561, 646, 9044, -1790, -1790, 416, 9554, -1790, - -1790, -1790, 1699, -1790, 1463, 6126, -1790, 12729, 1701, 9044, - 435, 435, 435, 435, 435, -1790, -1790, 9990, 12758, 12787, - 720, -1790, -1790, -1790, -1790, -1790, 721, -1790, 1469, 1467, - -1790, 1704, -1790, -1790, 28, -1790, 1537, -1790, -1790, -1790, - -1790, 9990, 11522, 11555, 6126, -1790, 1706, 9990, 9990, 1472, - 1474, -1790, 4190, -1790, 1478, -1790, -1790, -1790, -1790, 12816, - -1790, -1790, 1476, 11588, 11621, 11654, 11687, 11720, -1790, 722, - 1479, 435, 6126, 1714, 1481, 435, 1718, 733, 1483, -1790, - 9990, -1790, 1721, 1603, 7373, 1487, -1790, 741, 229, 255, - 277, 279, 310, 3964, -1790, -1790, 1724, -1790, 1726, -1790, - -1790, 1727, -1790, 1493, 4283, 9990, 9990, 755, -1790, 4283, - 11753, -1790, -1790, 1147, 10537, 1497, -1790, 9990, 9990, 9990, - 9990, 9990, 9990, 1731, 435, 74, -1790, -1790, 435, 101, - -1790, 1732, -1790, 12845, -1790, 9990, -1790, -67, -1790, 1733, - 9044, 9044, 9044, 9044, 8808, -1790, -1790, -1790, 8317, -1790, - 9990, 14993, 11786, 40, 9990, 1498, -1790, -1790, 11819, 11852, - 11885, 11918, 11951, 11984, -1790, 312, -1790, 318, -1790, -1790, - -1790, 3999, 723, 7609, -1790, 757, 769, 770, 793, 366, - 801, 1501, 822, -1790, 9990, -1790, 6126, 12874, -1790, 9990, - 9990, 9990, 9990, 9990, 9990, 435, 435, -1790, -1790, -1790, - -67, 1734, 1736, 1737, 1739, 9044, 1740, 1742, 1743, 1510, - 15018, 823, 1745, 12903, 13190, 12017, 12050, 12083, 12116, 441, - 444, 832, -1790, -1790, -1790, -1790, 825, -1790, -1790, -1790, - 8107, -1790, 1512, -1790, 1749, -1790, 9990, 9990, 9990, 9990, - 9990, 9990, -1790, 1750, 830, -1790, 1515, 6126, -1790, 12932, - 12961, 12990, 13019, 13048, 13077, -1790, 1752, 8107, 8107, 831, - -1790, -1790, -1790, -1790, 1753, 1754, -1790, -1790, 833, -1790, - 1755, -1790, -1790, 1757, 8107, -1790, -1790, -1790 + 10315, 36, 89, 10465, -1788, -1788, -180, 86, 90, -203, + -112, 40, 220, 247, 270, 306, 2, 347, 357, 5, + 130, 26, -86, -86, 88, 151, 168, 4, 190, 230, + 33, 252, 258, 278, 321, 341, 350, 372, 386, 412, + 418, 519, 598, 662, 427, 543, 483, 6044, 501, 538, + 694, -33, 584, 441, 639, 234, 599, 706, -99, 580, + 1, 1, 594, 376, 448, -1788, -1788, -1788, -1788, -1788, + 605, 381, 747, 767, 13, 59, 775, 776, 507, 889, + 897, 908, 5336, 911, 697, 703, 705, 27, 16, -1788, + 708, 709, -1788, -1788, 943, 944, 711, -1788, 10662, 714, + 10692, 18, 20, -1788, -1788, -1788, 10145, 715, -1788, -1788, + -1788, -1788, -1788, -1788, -1788, -1788, -1788, -1788, -1788, -1788, + -1788, -1788, -1788, 107, -1788, -1788, -1788, -1788, 64, -1788, + 948, 710, 5098, 312, 716, 951, 10145, 10632, 10632, -1788, + 10145, -1788, -1788, -1788, -1788, 10632, -1788, -1788, -1788, -1788, + 713, 722, 953, -1788, -1788, 10722, 26, 10145, 8962, 10145, + 10145, 725, 10145, 8962, 10145, 10145, 726, 10145, 8962, 10145, + 10145, 10145, 10145, 10145, 10145, 10632, 10145, 10145, 10145, 6280, + 727, -1788, 8962, 5336, 5336, 5336, 10632, -1788, -1788, -1788, + -1788, -1788, -86, -86, -86, -86, -86, -86, -86, -86, + -86, -86, -86, -86, -86, -86, -86, -86, -86, -86, + -86, -86, -86, -86, -86, 307, -86, -86, -86, -86, + -86, 728, -86, -86, 729, -1788, -1788, -1788, -86, -86, + 8, 22, 31, 34, 6280, 850, 514, 731, -86, -86, + 732, 733, 737, -1788, -1788, -1788, 10145, 6516, 10145, 10145, + 6752, 26, -1788, -1788, 734, -1788, 4183, -1788, -1788, -1788, + -1788, -1788, 106, 10145, 8962, 739, 740, 6988, 5336, 5336, + 5336, 741, 742, 743, 744, 7224, 7460, 7696, 746, 9279, + 981, 6280, 749, 27, 750, 751, 1, 1, 1, 10145, + 10145, -56, -1788, 336, 1, 9515, 380, 117, 748, 756, + 757, 759, 761, 762, 766, 10145, 5336, 5336, 5336, 768, + 12, 999, 769, -1788, 1001, 1002, -1788, 772, 777, 778, + 5336, 5336, 781, 785, 786, -1788, 10145, -1788, 1011, 1012, + 10145, 10145, 10145, 392, 10145, 788, -1788, 851, 10145, 10145, + 10145, -1788, -1788, 10145, -1788, -86, -86, -86, 793, 794, + 795, -86, -86, -86, -86, -86, -86, -86, -1788, -86, + -1788, -1788, -1788, -86, -86, 796, 797, -86, 798, -1788, + 800, 1031, 1035, 803, -1788, -1788, 1036, -1788, 1040, -1788, + -86, 10145, 13163, 116, 10632, 10145, -1788, -1788, 6280, 6280, + -1788, 805, 10722, 626, 1043, -1788, -1788, -1788, -1788, -1788, + -1788, 10145, 10145, 51, 6280, 1046, 461, 1316, 813, 1051, + 49, 825, -1788, 827, 8235, 10145, -1788, 1962, -170, -1788, + 69, -123, 9471, -1788, -88, -138, -38, 984, -1788, 26, + 821, 828, 13625, 8962, 4363, -1788, 176, 13650, 13675, 10145, + 13700, 211, 13725, 13750, 10145, 13775, 217, 13800, 13825, 13850, + 13875, 13900, 13925, 835, 13950, 13975, 14000, 1069, 10145, 224, + 1071, 1072, 1073, 841, 10145, 10145, 10145, 10145, 10145, 10145, + 10145, 10145, 10145, 10145, 10145, 10145, 10145, 10145, 10145, 10145, + 8962, 10145, 10145, 10145, 10145, 10145, 10145, 8962, 8962, 839, + 10145, 10145, 10632, 10145, 10632, 6280, 10632, 10632, 10632, 10145, + 47, -1788, 1018, 10145, -1788, 1019, -1788, 1020, -1788, 1045, + 6280, 5336, 5336, 5336, 5336, 10632, 10632, 8962, 26, 10722, + 26, 870, 8962, 870, -1788, 870, 14025, -1788, 255, 867, + 52, 10145, 10145, 10145, 10145, 10145, 10145, 10145, 10145, 10145, + 10145, 10145, 10145, 10145, 10145, 7932, 10145, 10145, 10145, 10145, + 10145, 26, 10145, 10145, 1109, -1788, 536, 14050, 294, 10145, + 10145, 10145, -1788, 1116, 1117, 1117, 9193, 9193, 9193, 9193, + 10145, 1119, 10145, 1125, 10145, 1126, 8962, 8962, 13191, 894, + 1128, -1788, 899, -1788, -1788, -179, -1788, -1788, 9546, 9786, + 1, 1, 312, 312, -151, 9515, 9515, 10145, 1648, -140, + -1788, 10145, 10145, 10145, 10145, 10145, 10145, 10145, 10145, 10145, + 14075, 1136, 1138, 1139, 10145, 1141, 10145, -1788, 10145, 4405, + -1788, -1788, 8962, 8962, 8962, 1142, 1143, 10145, 10145, 10145, + 14100, -1788, -1788, 14125, 14150, 14175, 972, 9861, -1788, 909, + 4540, 14200, 14225, 13274, 10632, 10632, 10632, 10632, 10632, 10632, + 10632, 10632, 10632, 10145, 10632, 10632, 10632, 10632, 11, 10722, + 10632, 10632, 10632, 26, 26, -1788, -1788, 8962, -1788, 5403, + -1788, 5639, 10145, 870, 10145, -1788, 10145, 10145, 913, 14250, + 7999, 916, 369, 10145, 1144, 910, 915, 917, 918, 10145, + 14275, 13301, 155, 914, 1154, 1156, -1788, -1788, -1788, 8962, + 21, -1788, -1788, -1788, 26, 10145, 10145, 1109, 924, -1788, + 397, 39, 41, 424, 927, 30, 669, -1788, 3481, -1788, + 140, 8962, 26, 10145, 10145, 1162, 1164, 8962, 10145, 1165, + 10632, 1166, -1788, 26, 1167, 10632, 10145, 929, 934, -1788, + 10145, 10722, 1168, 8962, 1003, 8962, 1170, 1173, 14300, 1175, + 1007, 1177, 1178, 14325, 1179, 1013, 1180, 1181, 1183, 1184, + 1185, 1187, -1788, 1188, 1193, 1194, 10145, 14350, 960, -1788, + -1788, -1788, 1198, 13247, 13247, 13247, 13247, 13247, 13247, 13247, + 13247, 13247, 13247, 13247, 10017, 13247, 13247, 13247, 13247, 871, + -26, 13247, 13247, 13247, 10050, 10717, 10750, 4363, 966, 965, + 99, 8962, 10783, 10816, -26, 10849, -26, 961, 967, 968, + -62, 15250, -1788, -26, 971, 12235, 974, 975, 976, -1788, + -1788, -1788, -1788, 977, -111, -26, -187, 980, 520, 443, + 1200, -1788, 1162, -26, 4804, 4980, 1225, 1769, 1118, 1118, + 445, 445, 445, 445, 445, 445, 477, 477, 8962, 296, + -1788, 296, 296, 870, 870, 870, 978, 14375, 13328, -72, + 983, 8962, -1788, 1216, 985, 14400, 14425, 14450, 10145, 6280, + 1222, 1224, 989, 15250, 986, 993, 15250, 987, 996, 15250, + 990, 997, 15250, 992, 14475, -1788, 14500, -1788, 14525, -1788, + 444, 469, 8962, 998, -1788, 5875, -1788, 6111, 6347, 1, + 10145, 10145, -1788, -1788, 1004, 1005, 9515, 8439, 1113, 401, + 1, 6583, 14550, 12264, 14575, 14600, 14625, 14650, 14675, 14700, + 14725, 1237, 10145, 1239, -1788, 10145, 14750, -1788, 13355, 13382, + -1788, 479, 488, 494, -1788, -1788, 13409, 13436, 10882, -1788, + 1242, 1243, 1244, 1008, 10145, 6819, 10145, 10145, -1788, -1788, + 19, -47, -27, -47, 1014, 1016, 1009, -26, -26, 1010, + 10915, -26, -26, -26, -26, 10145, -26, 1249, -1788, 1017, + 1024, 194, 591, 1025, 526, -1788, -1788, 13247, 296, 7055, + 1000, 1258, 1120, 9599, 1026, 1028, 1261, 6280, 12293, -1788, + 10145, 10145, 10145, 10145, 2112, 162, 85, 10722, 10145, 1270, + 1275, 28, -1788, 527, 1235, 1236, 6280, 25, 1039, 14775, + 13463, 534, 10145, 8962, 8962, 8962, 8962, 10145, 1047, 1048, + 1050, 1052, -1788, -1788, -1788, -1788, 10632, -31, 1053, 14800, + 13490, -1788, 1054, -1788, 145, 10948, -1788, -1788, -1788, 98, + -1788, -1788, 15250, -1788, 1280, 13247, -26, 1, 614, 4363, + -1788, 6280, 6280, 1282, 6280, 684, 6280, 6280, 1284, 6280, + 1195, 6280, 6280, 6280, 6280, 6280, 6280, 6280, 6280, 6280, + 2398, 1288, 8962, -1788, -1788, -1788, -1788, -1788, -1788, -1788, + -1788, -1788, -1788, -1788, -1788, 10145, -1788, -1788, -1788, -1788, + -1788, -1788, -1788, -1788, -1788, 10145, 10145, 10145, -1788, -1788, + -1788, 549, 10145, 10145, -1788, 10145, -1788, 6280, 10632, 10632, + -1788, 1049, -1788, 10145, -1788, 10145, 10145, 10145, 10145, 10145, + -1788, -1788, -1788, 1162, -1788, 1162, 10145, 1059, -1788, 6280, + 1061, -1788, 10145, 10145, 554, 1162, -72, -103, -1788, 10145, + 556, 6280, 8962, 1293, 1294, 1295, 2514, -1788, -1788, 1297, + -1788, 166, 10145, 166, 10145, 166, 10145, 166, 10145, 1301, + 1303, 1304, 1305, 1307, 559, 1300, -1788, 7291, -1788, -1788, + -133, 10981, 11014, -1788, -1788, 12322, -82, 1207, 1313, 9830, + 1077, 1314, 1083, 32, 35, 328, -1788, -109, -1788, 401, + 1317, 1319, 1320, 1321, 1322, 1323, 1324, 1326, 1327, 6280, + 15250, -1788, 2550, 1093, 1330, 1347, 1352, 1263, 1363, 1365, + 1366, 10145, 6280, 6280, 6280, 1369, 11047, -1788, 5009, 1251, + 1370, 1371, -1788, 8962, -1788, -1788, -1788, -1788, 10632, -1788, + -1788, 10145, 10632, -1788, -1788, -1788, -1788, 15250, -1788, 1131, + 1130, 10632, -1788, 10632, -1788, 1162, 10632, 1140, -1788, 1133, + -1788, 1146, 1148, 9914, -1788, 2592, 1150, 6280, -1788, 1135, + -1788, 12351, 12380, 12409, 12438, -1788, -1788, 10145, 1375, 56, + 10145, 1376, 1380, 2694, -1788, 1387, 27, 1390, 1160, -26, + -86, -86, 1395, -1788, 1171, 1172, 1163, -1788, 1396, -1788, + -1788, -1788, -1788, -1788, 1162, 322, 780, 10145, 13517, 562, + 564, 565, 570, 14825, 10145, 10145, 10145, 10145, 1398, 150, + 1162, -1788, 1169, 10145, 1400, 10145, 4237, -26, 4604, 1174, + 1161, -1788, 1405, 1406, 74, 1176, 1182, 1298, 1298, 6280, + 1410, 1186, 1189, 1411, 1415, 6280, 1246, 1190, 1417, 1421, + 1424, 1428, 1429, 1431, 1432, 1433, 1434, -1788, 1454, 571, + 13247, 13247, 13247, 13247, -26, 11080, 11113, 11146, 1221, -26, + -26, 1280, -26, 11179, 11212, 11245, 11278, 14850, 13247, 1226, + 1214, 15250, -1788, 1457, 1245, 15250, 15250, -1788, 1248, -1788, + 1483, -1788, 14875, -26, 1485, 572, 6280, 6280, 6280, 1488, + 1491, -1788, 6280, 15250, 6280, 15250, 6280, 15250, 6280, 15250, + 6280, 6280, 6280, 1252, 1256, 1493, 389, -1788, 10145, 10145, + 10145, 1260, 1262, 1264, 1265, -1788, 2927, 6280, -1788, 10145, + -1788, 1497, -1788, 1501, -1788, -1788, 9515, 472, 5572, -1788, + 1266, 1267, 1268, 1269, 1273, 1274, 8168, 1511, -1788, 8962, + -1788, -1788, -1788, 1276, 10145, -1788, -1788, 13544, 1513, 1515, + 1350, -1788, 10145, 10145, 10145, -1788, 1517, 497, 214, 1277, + 5032, 1278, 10145, 29, -26, 1289, -26, 1302, -1788, -1788, + 10722, 10145, -1788, -1788, 3000, -1788, -1788, 1308, 1521, -1788, + -1788, -1788, -1788, 3039, -1788, 204, 1285, 1543, 3085, -1788, + -1788, -1788, 27, -1788, 577, -1788, 10145, 166, 1068, 10632, + -1788, 1318, 10145, 10145, 6280, 1309, -1788, 548, 1548, 1552, + 14900, 1553, 1554, 1555, 1556, 1557, 1200, 14925, 14950, 14975, + 15000, -1788, -1788, 10632, 1328, 1550, 15025, -1788, 11311, 4862, + 15250, -1788, 1558, 6752, -1788, -1788, -1788, 1280, -1788, -1788, + -1788, 10145, 10145, 1, 1561, 1563, 1564, -1788, 10145, 10145, + -1788, -1788, 1565, 1469, 1566, 10145, -1788, -1788, -1788, -1788, + -1788, -1788, -1788, -1788, -1788, 1568, 1332, -1788, -1788, -1788, + -1788, -1788, 10145, 10145, 10145, -1788, -1788, -1788, 1161, -1788, + 10145, 10145, 10145, 10145, -1788, -1788, -1788, 1336, -1788, -1788, + 10145, -72, -1788, -1788, -1788, 1334, 1571, 1246, 1572, 10145, + -1788, 1573, 1574, 1576, 1577, 1578, 858, 1579, 8962, 8962, + 10145, -1788, 9193, 12467, 15050, 8662, 312, 312, 10145, 10145, + -1788, 528, 1339, 15075, -1788, -1788, 12496, -107, -1788, 1581, + 1582, 6280, 1, 1, 1, 1, 1, 5808, 1584, -1788, + 578, 10145, 3120, 1585, -1788, -1788, 6280, 8898, 702, 15100, + -1788, -1788, 8404, -1788, 10632, 10145, -1788, 10632, 15250, 8490, + 10722, 1346, -1788, -1788, -1788, -1788, 1355, 1348, 12525, 7999, + -1788, 7999, 6280, -1788, -1788, 10722, 10145, 1590, 1593, 28, + -1788, 1594, -1788, 27, 13571, 6280, 1595, -47, -47, 10145, + 11344, 11377, 603, -1788, 10145, 10145, 330, -1788, 1357, -1788, + -1788, -1788, -1788, -1788, 1295, 1301, 1303, 1304, 1596, 10145, + -1788, -1788, 10145, -1788, -1788, 1361, 608, 3153, 1600, -1788, + 12554, 12583, 342, -1788, -1788, -1788, 12612, 12641, -1788, 1367, + -1788, 12670, 1605, 6280, 13247, 13247, 11410, 11443, 11476, 11509, + 11542, -1788, 15125, -1788, 10145, -1788, 1606, -1788, 15250, -1788, + -1788, -1788, -1788, -1788, 1372, -1788, -1788, 610, 613, 13219, + 3245, 1607, 1377, -1788, -1788, 10145, 1368, 1374, 12699, 13598, + 1614, 6280, 1617, 1379, 10145, -1788, -1788, 616, -104, -69, + -52, -25, 156, 8726, 161, -1788, 1620, 12728, -1788, -1788, + 1456, -1788, 10145, 10145, -1788, -1788, 8962, 3272, 1624, 1393, + 13247, -26, 10632, 15250, -1788, -1788, 29, -1788, 10722, -1788, + 1394, 1397, 1399, 1627, 3513, -1788, 1629, 1632, -1788, -1788, + 1401, 1633, -1788, 1635, 1638, 174, 15250, 10145, 10145, 1404, + 6280, 627, 15250, 15150, -1788, 15175, 11575, 1049, 1130, 6280, + -1788, 10145, 10722, 26, 1641, 1642, 1643, 1644, 10145, 1646, + 1647, 628, -1788, -1788, 10145, 10145, 10145, 10145, 10145, -1788, + 12757, -1788, 6280, 547, 596, 8962, -1788, -1788, 312, 9224, + -1788, -1788, -1788, 1649, -1788, 1413, 6280, -1788, 12786, 1651, + 8962, 1, 1, 1, 1, 1, -1788, -1788, 10145, 12815, + 12844, 629, -1788, -1788, -1788, -1788, -1788, 635, -1788, 1419, + 1418, -1788, 1653, -1788, -1788, 27, -1788, 1489, -1788, -1788, + -1788, -1788, 10145, 11608, 11641, 6280, -1788, 1658, 10145, 1423, + -1788, 10145, 1425, 1435, -1788, 3938, -1788, 1441, -1788, -1788, + -1788, -1788, 12873, -1788, -1788, 1439, 11674, 11707, 11740, 11773, + 11806, -1788, 637, 1442, 1, 6280, 1660, 1443, 1, 1661, + 638, 1440, -1788, 10145, -1788, 1683, 1562, 7527, 1449, -1788, + 640, 167, 173, 178, 210, 216, 3565, -1788, -1788, 1687, + -1788, 1689, -1788, -1788, 1691, -1788, 1461, 15250, 10145, 10145, + 645, -1788, 15250, 11839, -1788, -1788, 1049, 10722, 1465, -1788, + 10145, 10145, 10145, 10145, 10145, 10145, 1699, 1, 96, -1788, + -1788, 1, 131, -1788, 1700, -1788, 12902, -1788, 10145, -1788, + 401, -1788, 1701, 8962, 8962, 8962, 8962, 8726, -1788, -1788, + -1788, 7999, -1788, 10145, 15200, 11872, 53, 10145, 1466, -1788, + -1788, 11905, 11938, 11971, 12004, 12037, 12070, -1788, 222, -1788, + 239, -1788, -1788, -1788, 3899, 539, 7763, -1788, 647, 648, + 653, 656, 274, 659, 1467, 661, -1788, 10145, -1788, 6280, + 12931, -1788, 10145, 10145, 10145, 10145, 10145, 10145, 1, 1, + -1788, -1788, -1788, 401, 1702, 1705, 1706, 1707, 8962, 1708, + 1709, 1710, 1476, 15225, 664, 1713, 12960, 13247, 12103, 12136, + 12169, 12202, 279, 304, 634, -1788, -1788, -1788, -1788, 666, + -1788, -1788, -1788, 10632, -1788, 1478, -1788, 1715, -1788, 10145, + 10145, 10145, 10145, 10145, 10145, -1788, 1716, 667, -1788, 1481, + 6280, -1788, 12989, 13018, 13047, 13076, 13105, 13134, -1788, 1718, + 10632, 10632, 693, -1788, -1788, -1788, -1788, 1719, 1720, -1788, + -1788, 695, -1788, 1721, -1788, -1788, 1723, 10632, -1788, -1788, + -1788 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -1790, -1790, -1790, -1790, 460, -1790, -1790, -1790, -1790, -235, - -1790, -1790, -1790, -1790, -1790, -1790, -1790, -1790, -1790, -1790, - -1790, -1790, -684, -127, -2, 3206, -1790, 1340, -1790, -1790, - -1790, -1790, -1790, -1790, -1789, -1790, 413, 242, -51, -1790, - -18, -1790, -1790, -1790, -1790, 187, 450, 1770, 6, -589, - -260, -1790, -1790, -1790, -1790, -1790, -1790, -1790, -1790, 1771, - -1790, -1790, -1790, -1790, -1179, -1177, 1773, -1642, 1774, -1790, - -1790, -1790, 1215, -1790, -63, -1790, -1790, -1790, -1790, 1960, - -1790, -1790, 414, 323, 1780, -1790, 3, -679, -1790, -1790, - 38, -1790, -1601, 294, 103, 2582, 1027, -273, 118, -1790, - -65, 215, -1790, -1790, -497, -1790, -3 + -1788, -1788, -1788, -1788, 425, -1788, -1788, -1788, -1788, -290, + -1788, -1788, -1788, -1788, -1788, -1788, -1788, -1788, -1788, -1788, + -1788, -1788, -681, -98, 4006, 3106, -1788, 1311, -1788, -1788, + -1788, -1788, -1788, -1788, -1787, -1788, 374, 215, -85, -1788, + -48, -1788, -1788, -1788, -1788, 157, 431, 1758, 6, -588, + -273, -1788, -1788, -1788, -1788, -1788, -1788, -1788, -1788, 1759, + -1788, -1788, -1788, -1788, -1187, -1178, 1760, -1657, 1762, -1788, + -1788, -1788, 1204, -1788, -92, -1788, -1788, -1788, -1788, 1983, + -1788, -1788, 405, 309, 1778, -1788, 0, -701, -1788, -1788, + 38, -1788, -1621, 300, -102, 2317, 1155, -280, 103, -1788, + -65, -44, -1788, -1788, -497, -1788, -3 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -538 +#define YYTABLE_NINF -543 static const yytype_int16 yytable[] = { - 132, 809, 902, 903, 1417, 405, 1419, 996, 1216, 113, - 581, 1412, 337, 614, 1792, 1004, 1793, 1759, 152, 150, - 155, 156, 150, 1310, 151, 161, 266, 1009, 1899, 1414, - 399, 400, 333, 139, 282, 597, 315, 166, 316, 376, - 1646, 4, 378, 161, 262, 1030, 2035, 267, 504, 589, - 590, 166, 310, 618, 278, 5, 150, 279, 501, 283, - 387, 1174, 150, 1530, 506, 399, 400, 408, 508, 266, - 897, 314, 418, 421, 1373, 284, 285, 721, 1175, 262, - 2016, 589, 590, 730, 336, 135, 1176, 1177, 1178, 731, - 1016, 1279, 1179, 1180, 733, 372, 589, 590, 291, 293, - 731, 296, 904, 589, 590, 133, 696, 2018, 697, 134, - 453, 589, 590, 1404, 1117, 1831, 153, 668, 154, 670, - 696, 463, 697, 317, 908, 137, 679, 591, 729, 410, - 406, 1262, 311, 1123, 420, 420, 1124, 589, 590, 412, - 589, 590, 420, 589, 590, 138, 949, 1120, 951, 589, - 590, 1021, 1121, 431, 487, 262, 488, 150, 1400, 592, - 262, 1418, 703, 136, 1513, 262, 1413, 589, 590, 696, - 1756, 697, 420, 550, 2005, 320, 262, 1219, 321, 262, - 262, 262, 262, 420, 1415, 157, 550, 141, 1859, 158, - 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, - 484, 485, 486, 489, 490, 491, 492, 493, 494, 505, - 496, 497, 589, 590, 1647, 107, 499, 500, 107, 502, - 145, 262, 312, 550, 1002, 507, 516, 517, 107, 509, - 1919, 1262, 1417, 1860, 262, 1217, 338, 262, 529, 615, - 1280, 1281, 1282, 1283, 153, 134, 154, 142, 107, 162, - 963, 262, 107, 163, 262, 262, 262, 262, 107, 140, - 334, 167, 262, 262, 262, 168, 377, 162, 262, 379, - 336, 1012, 2036, 589, 590, 167, 460, 461, 462, 1013, - 313, 143, 388, 1957, 1272, 503, 389, 696, 144, 697, - 589, 590, 691, 262, 262, 262, 722, 146, 723, 1263, - 1266, 268, 724, 371, 269, 375, 270, 262, 262, 677, - 893, 147, 895, 896, 584, 585, 995, 589, 590, 1477, - 1284, 148, 593, 598, 719, 395, 396, 397, 398, 909, - 149, 260, 720, 643, 644, 645, 306, 409, 307, 649, - 650, 651, 652, 653, 654, 655, 2031, 656, 159, 399, - 400, 657, 658, 107, 160, 661, 1022, 1023, 1265, 164, - 430, 562, 563, 564, 165, 589, 590, 943, 671, 1022, - 1023, 420, 589, 590, 271, 262, 262, 272, 399, 400, - 273, 704, 274, 705, 179, -532, 1861, 706, 725, 399, - 400, 262, 551, 1862, 552, 1098, 726, 707, 553, 610, - 611, 612, 399, 400, 977, 551, 169, 552, 399, 400, - 411, 553, 170, 624, 625, -534, 738, 803, 171, 805, - 262, 807, 808, 589, 590, 2061, 589, 590, 395, 396, - 397, 1003, 1363, 180, 1364, 395, 396, 397, 398, 1241, - 822, 823, 1242, 1371, 1863, 589, 590, 1864, 728, 399, - 400, 172, 675, 1384, 676, 1386, 729, 1388, 553, 1390, - 1108, 692, 693, 457, 1262, 1304, 1990, 262, 729, 1308, - 1662, 589, 590, 744, 262, 799, 385, 744, 173, 420, - 386, 420, 262, 420, 420, 420, 2109, 812, 1478, 1479, - 589, 590, 1991, 589, 590, 589, 590, 262, 262, 262, - 262, 262, 420, 420, 262, 152, 599, 152, 600, 262, - 181, 825, 601, 827, 1992, 743, 1993, 831, 260, 744, - 395, 396, 397, 398, 1890, 530, 589, 590, 589, 590, - 183, 262, 1891, 184, 589, 590, 185, 854, 59, 60, - 61, 62, 547, 548, 399, 400, 749, 1994, 549, 2045, - 744, 561, 1459, 73, 997, 2046, 76, 399, 400, 570, - 572, 574, 262, 262, -537, 579, 754, 1598, 1599, 950, - 744, 952, 953, 954, 955, 956, 957, 174, 959, 960, - 961, 962, 589, 590, 967, 968, 969, 412, 412, 175, - 511, 767, 1775, 512, 1174, 744, 513, 683, 514, 182, - 696, 1499, 697, 2055, 818, 819, 820, 821, 262, 262, - 262, 1175, 696, 176, 697, 698, 1515, 900, 901, 1176, - 1177, 1178, 585, 830, 1163, 1179, 1180, 744, 589, 590, - 420, 420, 420, 420, 420, 420, 420, 420, 420, 177, - 420, 420, 420, 420, 965, 178, 420, 420, 420, 152, - 971, 287, 288, 262, 1035, 970, 186, 589, 590, 1039, - 589, 590, 862, 289, 297, 263, 744, 290, 395, 396, - 397, 398, 680, 681, 395, 396, 397, 398, 2090, 287, - 288, 2091, 157, 1920, 1921, 262, 1011, 264, 694, 1922, - 1006, 289, 399, 400, 696, 295, 697, 859, 399, 400, - 542, 543, 673, 545, 546, 547, 548, 262, 1026, 1416, - 696, 549, 697, 262, 281, 696, 420, 697, 1239, 1037, - 1135, 420, 275, 744, 826, 276, 984, 277, 280, 262, - 985, 262, 531, 532, 533, 534, 535, 536, 537, 538, + 132, 810, 1427, 582, 904, 905, 1011, 1425, 161, 113, + 1777, 998, 1810, 501, 1811, 150, 615, 310, 152, 1006, + 337, 151, 598, 376, 1032, 378, 1220, 504, 1004, 1283, + 150, 333, 150, 1659, 405, 137, 506, 166, 1420, 508, + 619, 1422, 4, 161, 262, 166, 139, 590, 591, 282, + 1922, 150, 1122, 150, 371, 692, 375, 1123, 704, 2058, + 1485, 429, 133, 315, 266, 316, 134, 408, 899, 720, + 387, 314, 418, 421, 283, 590, 591, 721, 722, 262, + 1540, 460, 461, 462, 336, 267, 590, 591, 409, 5, + 284, 285, 1266, 590, 591, 372, 906, 311, 291, 293, + 135, 296, 2039, 731, 669, 1316, 671, 910, 551, 732, + 453, 430, 1851, 680, 1408, 551, 726, 590, 591, 590, + 591, 463, 590, 591, 727, 551, 138, 266, 697, 410, + 698, 1130, 399, 400, 420, 420, 1119, 2041, 1426, 412, + 1774, 1380, 420, 1880, 590, 591, 1023, 951, 1018, 953, + 317, 729, 153, 431, 154, 262, 1522, 590, 591, 730, + 262, 1412, 997, 399, 400, 262, 563, 564, 565, 1266, + 590, 591, 420, 1266, 590, 591, 262, 1110, 1881, 262, + 262, 262, 262, 420, 502, 730, 592, 136, 1284, 1285, + 1286, 1287, 697, 1421, 698, 1882, 1423, 312, 505, 2028, + 730, 590, 591, 734, 611, 612, 613, 507, 1309, 732, + 509, 1675, 697, 697, 698, 698, 745, 1660, 625, 626, + 1223, 107, 1883, 107, 693, 694, 141, 287, 288, 1486, + 1487, 262, 395, 396, 397, 1005, 107, 107, 107, 289, + 145, 1942, 162, 290, 262, 148, 163, 262, 530, 1425, + 503, 529, 616, 142, 338, 313, 965, 107, 134, 107, + 377, 262, 379, 1221, 262, 262, 262, 262, 1288, 334, + 1276, 167, 262, 262, 262, 168, 143, 162, 262, 167, + 336, 1014, 140, 1015, 399, 400, 697, 705, 698, 706, + 153, -535, 154, 707, 1980, 2059, 395, 396, 397, 398, + 590, 591, 388, 262, 262, 262, 389, 723, 895, 724, + 897, 898, 144, 725, 1267, 1270, 411, 262, 262, 678, + 399, 400, 590, 591, 585, 586, 157, 911, 278, 1269, + 158, 279, 594, 599, 399, 400, 153, 552, 154, 553, + 1100, 399, 400, 554, 552, 385, 553, 260, 684, 386, + 554, 399, 400, 146, 676, 601, 677, 590, 591, 602, + 554, 1024, 1025, 147, 2054, 945, 395, 396, 397, 398, + 149, 1024, 1025, 395, 396, 397, 398, 395, 396, 397, + 398, 420, 590, 591, 1314, 262, 262, 590, 591, 159, + 399, 400, 745, 590, 591, 1611, 1612, 399, 400, 590, + 591, 262, 979, 1884, 590, 591, 160, 708, 1885, 819, + 820, 821, 822, 1911, 2013, 395, 396, 397, 398, 744, + 2014, 1912, 1369, 745, 1370, 2015, 739, 804, 164, 806, + 262, 808, 809, 697, 1378, 698, 590, 591, 2084, 399, + 400, 1243, 590, 591, 59, 60, 61, 62, 590, 591, + 823, 824, 297, 697, 750, 698, 1178, 2016, 745, 73, + 755, 745, 76, 2017, 745, 590, 591, 768, 165, 2068, + 1392, 745, 1394, 1179, 1396, 827, 1398, 262, 306, 457, + 307, 1180, 1181, 1182, 262, 800, 2069, 1183, 1184, 420, + 169, 420, 262, 420, 420, 420, 170, 813, 831, 2132, + 590, 591, 745, 1651, 1652, 590, 591, 262, 262, 262, + 262, 262, 420, 420, 262, 152, 171, 152, 826, 262, + 828, 2078, 874, 877, 880, 883, 2113, 548, 549, 1178, + 590, 591, 271, 550, 260, 272, 531, 864, 273, 298, + 274, 745, 262, 299, 1467, 487, 1179, 488, 856, 300, + 301, 2114, 302, 303, 1180, 1181, 1182, 399, 400, 172, + 1183, 1184, 590, 591, -537, 399, 400, 562, 590, 591, + 304, 1424, -542, 262, 262, 571, 573, 575, 593, 173, + 952, 580, 954, 955, 956, 957, 958, 959, 174, 961, + 962, 963, 964, 1507, 999, 969, 970, 971, 412, 412, + 1178, 320, 287, 288, 321, 511, 590, 591, 512, 1524, + 175, 513, 986, 514, 289, 968, 987, 1179, 295, 262, + 262, 262, 600, 1167, 176, 1180, 1181, 1182, 902, 903, + 179, 1183, 1184, 586, 183, 157, 636, 184, 134, 1013, + 185, 420, 420, 420, 420, 420, 420, 420, 420, 420, + 177, 420, 420, 420, 420, 967, 178, 420, 420, 420, + 152, 973, 170, 972, 262, 1037, 1016, 1178, 181, 182, + 1041, 543, 544, 674, 546, 547, 548, 549, 268, 1943, + 1944, 269, 550, 270, 1179, 1945, 1128, 1162, 681, 682, + 745, 745, 1180, 1181, 1182, 180, 262, 1046, 1183, 1184, + 697, 1008, 698, 699, 695, 674, 546, 547, 548, 549, + 1793, 1325, 1163, 1326, 550, 1628, 745, 685, 262, 1028, + 686, 186, 1206, 687, 262, 688, 745, 420, 1947, 1948, + 1039, 1207, 420, 275, 1945, 745, 276, 1208, 277, 263, + 262, 745, 262, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 684, 298, 265, 685, 549, 299, 686, 286, 687, 1174, - 1752, 300, 301, 170, 302, 303, 294, 1014, 1924, 1925, - 872, 875, 878, 881, 1922, 1017, 1175, 1126, 1018, 806, - 1019, 744, 304, 1663, 1176, 1177, 1178, 262, 1158, 1159, - 1179, 1180, 744, 744, 561, 1672, 1638, 1639, 2022, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 635, 1319, 134, - 1320, 549, 673, 545, 546, 547, 548, 1776, 1202, 305, - 1203, 549, 744, 262, 744, 1417, 1204, 308, 1245, 1275, - 744, 1174, 744, 744, 1348, 1370, 262, 1375, 744, 744, - 1325, 744, 1326, 319, 262, 1397, 1264, 1267, 1175, 744, - 1503, 2071, 309, 966, 744, 1504, 1176, 1177, 1178, 744, - 318, 322, 1179, 1180, 1615, 1505, 1506, 262, 1556, 744, - 744, 1582, 744, 1669, 1417, 744, 1768, 1670, 187, 150, - 744, 1736, 323, 1737, 1811, 188, 189, 190, 1812, 324, - 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 380, 209, 210, - 211, 212, 213, 214, 329, 1166, 1820, 1842, 330, 1843, - 1821, 744, 1172, 744, 1858, 1896, 1183, 331, 1812, 1897, - 220, 221, 222, 223, 332, 1044, 339, 1912, 224, 1303, - 1174, 1812, 340, 1946, 1947, 1973, 2048, 744, 729, 1812, - 225, 226, 227, 341, 342, 343, 1981, 1175, 228, 21, - 744, 229, 262, 373, 1989, 1176, 1177, 1178, 744, 384, - 390, 1179, 1180, 1674, 1675, 415, 1274, 391, 2003, 1485, - 2051, 262, 1812, 416, 744, 134, 1372, 1374, 262, 262, - 262, 262, 2052, 2053, 1748, 1749, 744, 744, 427, 429, - 439, 420, 536, 537, 538, 539, 540, 541, 542, 543, - 673, 545, 546, 547, 548, 1311, 2054, 444, 510, 549, - 744, 1353, 1354, 458, 2056, 495, 262, 262, 744, 262, - 498, 262, 262, 515, 262, 518, 262, 262, 262, 262, - 262, 262, 262, 262, 262, 2058, 2082, 262, 2093, 1897, - 1812, 386, 744, 2106, 2120, 2092, 2123, 2107, 1812, 519, - 2124, 520, 558, 1318, 559, 565, 237, 566, 567, 568, - 238, 578, 602, 603, 575, 240, 241, 242, 580, 243, - 244, 245, 262, 420, 420, 107, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 246, 381, 582, 262, 549, 583, 604, 248, 605, - 606, 607, 608, 326, 262, 262, 616, 576, 613, 617, - 251, 619, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 673, 545, 546, 547, 548, 620, 1451, - 621, 1143, 549, 1453, 1372, 1374, 622, 626, 623, 627, - 630, 628, 1457, 631, 1458, 637, 638, 1460, 646, 647, - 648, 659, 660, 662, 664, 436, 663, 665, 667, 666, - 441, 669, 262, 682, 688, 446, 695, 701, 702, 133, - 735, 708, 761, 739, 1656, 262, 262, 262, 1658, 459, - 1268, 1668, 740, 765, 768, 769, 262, 770, 771, 800, - 813, 420, 815, 816, 817, 420, 549, 1501, 857, 866, - 867, 883, 885, 887, 420, 891, 420, 892, 922, 420, - 894, 920, 923, 925, 932, 933, 941, 944, 978, 999, - 262, 530, 983, 987, 988, 998, 989, 990, 1928, 991, - 1000, 1010, 1015, 1029, 1031, 1041, 1034, 1036, 1038, 336, - 1042, 1045, 1046, 1049, 1490, 1491, 1050, 1052, 1053, 1255, - 1054, 1055, 1057, 1058, 1059, 1060, 1061, 1876, 1062, 420, - 1063, 557, 1064, 1065, 1066, 1067, 1070, 1071, 1278, 1096, - 1097, 1122, 1105, 1106, 1107, 1111, 1113, 1114, 1115, 262, - 1127, 1137, 1132, 1138, 1116, 1144, 1146, 1147, 1149, 1148, - 262, 1446, 1150, 1151, 1152, 1153, 262, 1154, 1173, 1161, - 1195, 1169, 1170, 1197, 1211, 1208, 1209, 1210, 1222, 1223, - 1224, 1227, 1235, 1321, 1322, 1237, 1324, 1238, 1327, 1328, - 1664, 1330, 1244, 1332, 1333, 1334, 1335, 1336, 1337, 1338, - 1339, 1340, 1247, 1248, 1249, 1252, 1253, 1254, 1270, 1271, - 1276, 1277, 1290, -535, 1299, 262, 262, 262, 1300, 1301, - 1302, 262, 1305, 262, 1312, 262, 1323, 262, 1329, 262, - 262, 262, 1331, 1342, 1355, 1378, 1366, 1801, 1379, 1352, - 1380, 1383, 1435, 1392, 1393, 1394, 262, 1395, 1396, 1398, - 1405, 1406, 1409, 1411, 1410, 1431, 1420, 262, 1421, 1454, - 1422, 1367, 1423, 1424, 1425, 262, 1426, 1427, 262, 1428, - 1432, 1376, 1433, 1434, 1461, 1436, 1437, 1438, 1443, 1448, - 1449, 1455, 1470, 1462, 1463, 1464, 1468, 1476, 1481, 1693, - 1482, 1487, 1725, 1484, 1488, 1492, 1614, 1494, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 742, 545, 546, 547, 548, 1498, 1512, 1495, 1517, - 549, 336, 696, 1496, 697, 1526, 1528, 420, 420, 1429, - 1516, 1529, 1527, 262, 1531, 1532, 1533, 1537, 1538, 1539, - 1540, 1541, 1440, 1441, 1442, 1545, 1546, 1543, 1547, 1548, - 1549, 420, 1550, 1551, 1552, 1553, 262, 1554, 1555, 1565, - 262, 1576, 1578, 1124, 1579, 1521, 1586, 1525, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 1581, 1469, 1587, 828, - 549, 1595, 1447, 1597, 1596, 1725, 1603, 1604, 1605, 1606, - 1611, 1612, 1618, 1619, 1620, 1626, 1631, 1632, 1621, 1637, - 1660, 1705, 1666, 1682, 1622, 1633, 1781, 1623, 1628, 1783, - 1651, 1641, 1676, 1683, 1644, 1242, 1659, 1665, 1681, -536, - 1684, 1685, 262, 262, 1686, 1687, 1934, 1688, 1694, 1698, - 1712, 1706, 888, 889, 1707, 1708, 1524, 1711, 1713, 412, - 412, 1951, 1715, 1716, 1724, 262, 1727, 1536, 1726, 1729, - 1731, 262, 1732, 1542, 1733, 1734, 1735, 1738, 1757, 1753, - 262, 1758, 1767, 1771, 1788, 1797, 1790, 1798, 420, 1823, - 1800, 420, 1804, 1789, 1815, 1830, 1855, 1840, 929, 930, - 931, 1846, 1819, 1828, 1853, 1865, 262, 1760, 1761, 1762, - 1763, 1764, 1766, 1274, 1849, 1841, 1872, 336, 1850, 262, - 1867, 1847, 1583, 1584, 1585, 1856, 1873, 1654, 1588, 1882, - 1589, 1879, 1590, 1880, 1591, 1884, 1592, 1593, 1594, 1998, - 1881, 1885, 1886, 972, 1887, 1888, 1889, 1894, 1905, 1906, - 1907, 1908, 1910, 1609, 1911, 1931, 1932, 1936, 1948, 1949, - 1950, 1952, 1958, 262, 1617, 1961, 1965, 1962, 1967, 700, - 1977, 1974, 1625, 1978, 1980, 1001, 1982, 1984, 2023, 1988, - 1996, 1985, 1997, 1999, 1697, 2000, 2007, 2014, 2019, 2024, - 2072, 2038, 2073, 2074, 2057, 2075, 2077, 1025, 2078, 2079, - 262, 2083, 2080, 1032, 2097, 2098, 2105, 2108, 2116, 2121, - 2122, 2125, 262, 2126, 1514, 2032, 734, 1900, 1568, 1702, - 1877, 1728, 1535, 112, 122, 262, 123, 124, 1577, 869, - 1926, 420, 1653, 130, 1799, 0, 0, 0, 0, 0, - 1680, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 262, - 0, 0, 0, 1696, 1743, 0, 262, 0, 0, 0, - 1904, 0, 0, 0, 0, 0, 0, 1099, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 262, 0, - 0, 262, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 262, 412, 1780, 0, 262, 0, 0, 0, - 0, 1786, 1787, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1131, 0, 0, 0, 1795, 0, 0, - 0, 336, 0, 0, 0, 0, 1136, 0, 0, 0, - 0, 262, 0, 0, 0, 0, 0, 0, 1938, 1939, - 1940, 1941, 1942, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1680, 0, 0, 0, 0, 1160, 0, 262, - 0, 0, 0, 0, 0, 0, 0, 1772, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 0, 1794, 0, 0, 0, 0, 0, 1975, - 0, 0, 0, 1979, 0, 0, 1803, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 262, 262, 262, - 262, 262, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1878, 0, 0, 0, 0, - 1680, 0, 2015, 0, 0, 2095, 2017, 0, 0, 0, + 549, 1138, 1178, 1019, 1125, 550, 1020, 1126, 1021, 1249, + 1279, 1770, 1297, 745, 745, 697, -538, 698, 861, 1179, + 264, 1331, 2071, 1332, 150, 344, 1695, 1180, 1181, 1182, + -539, 265, 1354, 1183, 1184, 807, 745, 1377, 262, 1383, + 281, 745, 1405, 745, 1676, 1512, 745, 1513, 1514, 745, + 562, 745, 745, 1515, 1566, 1595, 1685, 745, 745, 745, + 1682, 1786, 286, 2045, 1683, 745, 345, 346, 347, 348, + 349, 350, 351, 352, 353, 1245, 294, 280, 1246, 354, + 355, 356, 357, 305, 308, 262, 1829, 358, 359, 360, + 1830, 1840, 361, 1863, 362, 1841, 1864, 745, 262, 1879, + 745, 309, 1754, 1830, 1755, 363, 262, 1425, 364, 318, + 1917, 1935, 1969, 319, 1918, 1830, 745, 2115, 1970, 531, + 1996, 2004, 730, 2012, 1830, 745, 2094, 745, 2026, 262, + 2074, 2075, 1830, 322, 745, 745, 2076, 1268, 1271, 2077, + 745, 323, 2079, 745, 2081, 393, 745, 2105, 1918, 2116, + 2129, 1830, 324, 745, 2130, 329, 1425, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 330, 2143, 1170, 2146, 550, + 1830, 331, 2147, 332, 1176, 1794, 339, 340, 1187, 341, + 342, 343, 373, 1272, 390, 384, 391, 416, 415, 134, + 427, 1308, 429, 439, 444, 458, 495, 498, 510, 515, + 518, 519, 365, 366, 367, 520, 386, 559, 560, 566, + 567, 568, 569, 368, 262, 579, 603, 369, 576, 370, + 107, 581, 583, 584, 604, 605, 1493, 606, 1278, 607, + 608, 1687, 1688, 262, 609, 617, 614, 620, 621, 618, + 262, 262, 262, 262, 622, 399, 400, 631, 632, 623, + 624, 627, -536, 420, 1508, 628, 629, 639, 1766, 1767, + 638, 647, 648, 649, 660, 661, 663, 665, 1379, 1381, + 664, 666, 668, 1359, 1360, 667, 670, 683, 262, 262, + 689, 262, 696, 262, 262, 702, 262, 703, 262, 262, + 262, 262, 262, 262, 262, 262, 262, 133, 740, 262, + 709, 736, 150, 344, 762, 741, 766, 769, 770, 771, + 772, 801, 814, 816, 817, 1324, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 743, + 546, 547, 548, 549, 262, 420, 420, 550, 550, 818, + 697, 832, 698, 859, 345, 346, 347, 348, 349, 350, + 351, 352, 353, 868, 869, 885, 262, 354, 355, 356, + 357, 887, 889, 893, 894, 358, 359, 360, 262, 262, + 361, 896, 362, 922, 924, 943, 925, 927, 934, 935, + 989, 946, 990, 363, 980, 985, 364, 991, 1000, 992, + 993, 1001, 1002, 1459, 1012, 1017, 1031, 1461, 1043, 1147, + 1033, 1036, 1038, 1040, 1044, 1047, 1465, 1051, 1466, 1048, + 1052, 1468, 1054, 1055, 1056, 1057, 1059, 1061, 1062, 1060, + 1063, 1064, 1065, 393, 1066, 1067, 262, 1379, 1381, 1669, + 1068, 1069, 1072, 1671, 1073, 1098, 1099, 1129, 1107, 262, + 262, 262, 1681, 1113, 1108, 1109, 1115, 1116, 1117, 1124, + 262, 1139, 1135, 1141, 1118, 420, 1148, 1142, 1151, 420, + 1150, 1509, 1153, 1152, 1154, 1155, 1157, 1156, 420, 1158, + 420, 1177, 1165, 420, 1199, 1201, 1251, 1173, 1174, 1212, + 1213, 1214, 1215, 1226, 262, 1227, 1228, 1231, 1239, 1454, + 365, 366, 367, 1242, 1241, 1252, 1248, 1258, 1253, 1256, + 1257, 368, 1531, 336, 1535, 369, 1274, 370, 107, 1275, + 1951, 1280, 1281, 1294, 1318, 1304, 1305, 1259, 1306, 1329, + 1307, 1335, 1313, 420, 1337, 1348, 1361, 1310, 1372, 1374, + 1386, 1387, 1388, 1391, 1406, 1897, 1282, 697, 1400, 698, + 1401, 1402, 1403, 436, 1404, 262, 1413, 1414, 441, 1417, + 1418, 1419, 701, 446, 1428, 1429, 262, 1430, 1431, 1432, + 1433, 1434, 262, 1435, 1436, 1439, 1440, 459, 537, 538, + 539, 540, 541, 542, 543, 544, 674, 546, 547, 548, + 549, 1327, 1328, 1441, 1330, 550, 1333, 1334, 1442, 1336, + 1443, 1338, 1339, 1340, 1341, 1342, 1343, 1344, 1345, 1346, + 1444, 1445, 1446, 1451, 1456, 1457, 1462, 1463, 1478, 1469, + 1470, 1484, 1489, 262, 262, 262, 1490, 1677, 1471, 262, + 1472, 262, 1476, 262, 1492, 262, 1495, 262, 262, 262, + 1496, 1500, 1506, 1819, 1521, 1504, 1527, 1358, 1537, 1502, + 1503, 1538, 1539, 1525, 262, 1536, 1547, 1550, 1541, 558, + 1543, 1551, 1553, 1556, 1542, 262, 1667, 1557, 1548, 1373, + 1558, 1549, 1555, 262, 1559, 1560, 262, 1561, 1562, 1563, + 1564, 1384, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 1708, 1565, + 1575, 1126, 550, 1588, 1627, 1586, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 674, + 546, 547, 548, 549, 1589, 1714, 1590, 1591, 550, 336, + 1455, 1594, 1599, 1743, 1608, 420, 420, 1600, 1609, 1437, + 1610, 262, 1616, 1624, 1617, 1619, 1618, 1625, 1631, 1632, + 1633, 1634, 1448, 1449, 1450, 1635, 1636, 1639, 1641, 1644, + 420, 1645, 1646, 1650, 1654, 1657, 262, 1673, 1664, 1678, + 262, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 674, 546, 547, 548, 549, 1246, + 1679, 1694, 1696, 550, 1710, 1672, 1689, 1477, 1697, 1699, + 1700, 1701, 1702, 1703, 1729, 1715, 1709, 1723, 1761, 1724, + 1725, 1728, 1730, 1732, 1733, 1741, 1744, 1745, 1747, 1749, + 1750, 1722, 1751, 1752, 1753, 1756, 1771, 1775, 1776, 1799, + 1785, 1789, 1801, 1806, 1807, 1808, 1815, 1816, 1743, -540, + 1818, 1822, 1834, 1839, 1957, 262, 262, 1843, 1798, 1848, + 1850, 1870, 1861, 1867, 1862, 1804, 1805, 1871, 1534, 1868, + 1874, 1877, 412, 412, 1876, 1974, 1886, 1888, 262, 1546, + 1893, 1813, 1894, 1903, 262, 1552, 1905, 1900, 1906, 1908, + 1901, 1909, 1902, 262, 1910, 1907, 1915, 1928, 1929, 1930, + 1931, 420, 1933, 1934, 420, 1954, 1955, 1959, 1971, 1973, + 1972, 7, 8, 1975, 1981, -541, 2000, 2003, 1984, 262, + 1778, 1779, 1780, 1781, 1782, 1784, 1278, 829, 1985, 1988, + 336, 1990, 262, 2005, 1997, 2001, 1596, 1597, 1598, 2007, + 2008, 2011, 1601, 2019, 1602, 2020, 1603, 2022, 1604, 2021, + 1605, 1606, 1607, 2023, 2030, 2037, 2042, 2047, 2095, 2061, + 2080, 2096, 2097, 2098, 2100, 2101, 2102, 1622, 2103, 2106, + 2120, 2121, 2128, 2131, 2139, 2144, 2145, 2148, 1630, 2149, + 262, 890, 891, 2055, 1523, 1578, 1638, 735, 2046, 710, + 25, 26, 711, 28, 29, 712, 31, 713, 33, 34, + 35, 36, 1719, 1923, 1746, 38, 39, 40, 1898, 1545, + 42, 112, 122, 123, 1899, 124, 714, 48, 262, 871, + 50, 715, 1949, 53, 716, 1587, 1666, 931, 932, 933, + 262, 130, 1817, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 70, 262, 0, 0, 0, 0, 1926, 420, + 0, 0, 0, 0, 1693, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 84, 85, 86, 0, + 0, 0, 974, 0, 0, 0, 0, 262, 0, 1713, + 0, 0, 0, 0, 0, 0, 262, 0, 0, 0, + 1927, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1003, 0, 0, 0, 0, 262, + 0, 0, 262, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 262, 412, 0, 1027, 262, 0, 0, + 0, 0, 1034, 0, 0, 0, 0, 0, 0, 0, + 0, 908, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 336, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 262, 0, 0, 0, 0, 0, 0, 1961, + 1962, 1963, 1964, 1965, 0, 0, 0, 0, 0, 0, + 0, 1693, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 262, 2029, 0, 0, 1790, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1101, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 719, 0, + 0, 0, 1812, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1998, 0, 0, 1821, 2002, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 1134, 0, 0, 550, 0, 0, 0, + 262, 262, 262, 262, 262, 0, 1140, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2029, 262, 0, 0, 0, 1903, 1294, 1295, - 1296, 1297, 2117, 2119, 0, 0, 0, 1854, 0, 0, - 0, 0, 262, 0, 0, 0, 0, 718, 0, 2127, - 0, 0, 0, 0, 0, 0, 382, 0, 0, 0, - 0, 0, 7, 8, 0, 0, 0, 420, 0, 0, - 0, 0, 0, 2069, 2070, 0, 0, 0, 0, 0, - 0, 0, 407, 0, 262, 1261, 417, 1343, 0, 0, - 422, 0, 0, 0, 420, 420, 1895, 0, 0, 0, - 0, 0, 0, 1901, 0, 0, 0, 432, 434, 437, - 438, 420, 440, 434, 442, 443, 0, 445, 434, 447, - 448, 449, 450, 451, 452, 1680, 454, 455, 456, 0, - 0, 0, 434, 0, 0, 0, 0, 0, 0, 1933, - 709, 25, 26, 710, 28, 29, 711, 31, 712, 33, - 34, 35, 36, 0, 0, 1377, 38, 39, 40, 0, - 0, 42, 0, 0, 0, 0, 0, 713, 48, 2006, - 0, 50, 714, 0, 53, 715, 0, 0, 1680, 0, + 0, 0, 0, 1693, 0, 2038, 0, 0, 2118, 2040, + 0, 0, 0, 0, 0, 0, 0, 1164, 0, 0, + 0, 0, 0, 0, 0, 2052, 262, 0, 0, 0, + 0, 0, 0, 0, 0, 2140, 2142, 0, 0, 0, + 0, 1875, 0, 0, 0, 262, 0, 0, 0, 0, + 0, 0, 2150, 0, 0, 0, 0, 0, 0, 382, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 70, 0, 0, 521, 523, 525, 526, - 434, 0, 0, 0, 0, 0, 1976, 0, 0, 0, - 0, 0, 0, 556, 434, 0, 0, 84, 85, 86, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 577, - 0, 0, 0, 0, 0, 0, 1450, 0, 0, 587, - 588, 0, 0, 0, 0, 588, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 609, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 0, 629, 0, 549, 0, - 632, 633, 634, 0, 636, 0, 0, 0, 639, 640, - 641, 0, 906, 642, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 673, 545, 546, - 547, 548, 0, 0, 0, 0, 549, 0, 0, 0, - 1680, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 672, 0, 0, 0, 678, 0, 0, 0, 0, + 420, 0, 0, 0, 0, 0, 2092, 2093, 0, 0, + 0, 0, 0, 0, 0, 407, 0, 262, 1265, 417, + 0, 0, 0, 422, 0, 0, 0, 420, 420, 0, + 1916, 0, 0, 0, 0, 0, 0, 0, 0, 1924, + 432, 434, 437, 438, 420, 440, 434, 442, 443, 0, + 445, 434, 447, 448, 449, 450, 451, 452, 0, 454, + 455, 456, 1693, 0, 0, 434, 0, 0, 1299, 1300, + 1301, 1302, 0, 0, 0, 0, 1956, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 689, 690, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 717, 0, 0, 0, 0, - 1341, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1680, 0, 523, 0, 0, 0, 0, 0, 747, - 0, 0, 0, 0, 752, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 766, 0, - 0, 0, 0, 0, 772, 773, 774, 775, 776, 777, - 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, - 788, 790, 791, 792, 793, 794, 795, 796, 796, 0, - 801, 802, 0, 804, 0, 0, 0, 0, 1627, 810, - 0, 0, 0, 814, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 796, 0, 0, - 0, 0, 434, 0, 0, 0, 0, 0, 0, 0, - 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, - 842, 843, 844, 845, 847, 849, 850, 851, 852, 853, - 0, 855, 856, 0, 0, 0, 0, 0, 863, 864, - 865, 0, 0, 0, 0, 871, 874, 877, 880, 882, - 0, 884, 0, 886, 0, 434, 434, 0, 0, 0, + 0, 0, 0, 0, 0, 1693, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1349, 0, 521, + 523, 525, 526, 434, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1999, 557, 434, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 521, 672, 905, 0, 0, 0, - 910, 911, 912, 913, 914, 915, 916, 917, 918, 0, - 0, 0, 0, 924, 0, 926, 0, 927, 0, 0, - 0, 434, 434, 434, 0, 0, 934, 935, 936, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 0, 0, 0, - 0, 549, 958, 0, 0, 0, 0, 0, 1381, 0, - 0, 0, 1739, 1740, 0, 0, 434, 0, 0, 0, - 0, 975, 0, 976, 0, 855, 856, 0, 0, 0, - 0, 0, 986, 0, 0, 0, 0, 0, 992, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 434, 0, - 0, 0, 0, 0, 1007, 1008, 0, 0, 0, 0, + 0, 0, 578, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 588, 589, 0, 0, 0, 0, 589, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 610, 0, + 0, 0, 0, 0, 0, 0, 0, 1385, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 630, + 0, 0, 0, 633, 634, 635, 0, 637, 0, 0, + 0, 640, 641, 642, 0, 0, 643, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1693, + 0, 0, 0, 0, 673, 0, 0, 0, 679, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1458, 0, + 0, 0, 0, 0, 690, 691, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 718, 0, + 0, 0, 0, 0, 1347, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 523, 0, 0, 0, + 1693, 0, 748, 0, 0, 0, 0, 753, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 434, 0, 1027, 1028, 0, 0, 434, 1033, 0, 0, - 0, 0, 0, 0, 0, 1040, 0, 0, 0, 1043, - 0, 0, 847, 0, 1047, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, 673, 545, - 546, 547, 548, 150, 344, 1068, 0, 549, 0, 0, + 0, 767, 0, 0, 0, 0, 0, 773, 774, 775, + 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, + 786, 787, 788, 789, 791, 792, 793, 794, 795, 796, + 797, 797, 0, 802, 803, 435, 805, 0, 0, 0, + 435, 0, 811, 0, 0, 435, 815, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 435, + 797, 0, 0, 0, 0, 434, 0, 0, 0, 0, + 0, 0, 0, 0, 834, 835, 836, 837, 838, 839, + 840, 841, 842, 843, 844, 845, 846, 847, 849, 851, + 852, 853, 854, 855, 0, 857, 858, 0, 0, 0, + 0, 0, 865, 866, 867, 0, 0, 0, 0, 873, + 876, 879, 882, 884, 0, 886, 1438, 888, 0, 434, + 434, 0, 0, 0, 524, 0, 0, 435, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 521, 673, + 907, 435, 0, 0, 912, 913, 914, 915, 916, 917, + 918, 919, 920, 0, 1640, 0, 0, 926, 1475, 928, + 0, 929, 0, 0, 0, 434, 434, 434, 0, 0, + 936, 937, 938, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 674, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 960, 0, 0, 0, + 0, 0, 1389, 0, 0, 0, 0, 0, 0, 0, + 434, 0, 0, 0, 0, 977, 0, 978, 0, 857, + 858, 0, 0, 0, 0, 0, 988, 0, 0, 0, + 0, 0, 994, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 434, 0, 0, 0, 0, 0, 1009, 1010, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 435, 0, 0, 0, 0, 435, 0, 0, 0, 0, - 435, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 434, 0, 0, 0, 435, 345, 346, 347, 348, 349, - 350, 351, 352, 353, 0, 0, 0, 0, 354, 355, - 356, 357, 0, 0, 0, 0, 358, 359, 360, 0, - 0, 361, 0, 362, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 363, 1870, 434, 364, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 434, - 0, 0, 0, 0, 0, 0, 1142, 0, 0, 524, - 0, 0, 435, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 393, 0, 435, 0, 0, 0, - 434, 0, 0, 0, 0, 0, 0, 0, 1167, 1168, - 0, 0, 0, 0, 1171, 0, 0, 0, 0, 0, - 0, 1927, 0, 0, 0, 0, 0, 0, 0, 0, - 1196, 0, 0, 1198, 0, 0, 1937, 0, 0, 0, + 1491, 0, 0, 0, 434, 0, 1029, 1030, 0, 0, + 434, 1035, 0, 0, 0, 0, 0, 0, 0, 1042, + 0, 0, 0, 1045, 0, 0, 849, 0, 1049, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 674, 546, 547, 548, 549, 0, 0, 1070, + 524, 550, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1757, 1758, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 434, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 790, 0, 0, + 0, 0, 0, 0, 798, 799, 0, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 434, 0, 0, 825, 0, 0, 0, 0, 435, + 0, 0, 0, 0, 434, 0, 0, 0, 0, 0, + 0, 1146, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 850, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 434, 0, 0, 0, 0, + 0, 0, 0, 1171, 1172, 0, 0, 0, 0, 1175, + 0, 0, 0, 435, 435, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1200, 0, 0, 1202, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 674, 546, 547, 548, 549, 1216, 0, 1218, + 1219, 550, 0, 1620, 0, 0, 0, 0, 0, 435, + 435, 435, 0, 0, 0, 0, 0, 0, 1237, 0, + 0, 1891, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1255, 0, 0, 0, + 0, 0, 0, 1261, 1262, 1263, 1264, 0, 0, 0, + 0, 1273, 0, 0, 435, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1298, 434, 434, 434, 434, + 1303, 0, 0, 0, 0, 0, 1670, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 435, 0, 0, 0, + 1950, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1960, 0, 0, 435, 0, + 0, 0, 0, 0, 435, 1674, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 434, 0, 0, 0, 0, + 850, 0, 1050, 0, 0, 0, 0, 0, 1350, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1351, 1352, + 1353, 0, 0, 0, 0, 1355, 1356, 0, 1357, 0, + 0, 1680, 0, 0, 0, 0, 1363, 0, 1364, 1365, + 1366, 1367, 1368, 0, 0, 0, 0, 0, 0, 1371, + 0, 0, 0, 0, 0, 1375, 1376, 0, 435, 0, + 0, 0, 1382, 0, 0, 434, 1788, 0, 0, 0, + 0, 0, 0, 0, 0, 1393, 0, 1395, 0, 1397, + 0, 1399, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 674, 546, 547, 548, 549, + 1842, 531, 1416, 0, 550, 435, 0, 0, 2048, 2049, + 2050, 2051, 2053, 0, 0, 0, 0, 0, 435, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1212, 0, 1214, 1215, 0, 0, 0, 0, - 0, 365, 366, 367, 0, 0, 0, 0, 0, 0, - 0, 0, 368, 1233, 0, 0, 369, 0, 370, 107, + 0, 0, 0, 0, 1447, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 434, 0, 0, 435, + 0, 0, 0, 0, 1460, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 2099, 0, 0, 1474, 550, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1251, 0, 150, 344, 0, 0, 0, 1257, 1258, - 1259, 1260, 0, 0, 399, 400, 1269, 0, 0, 0, - 0, -533, 0, 1500, 0, 0, 0, 0, 0, 0, - 1293, 434, 434, 434, 434, 1298, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 345, 346, 347, 348, 349, - 350, 351, 352, 353, 0, 0, 0, 0, 354, 355, - 356, 357, 0, 0, 0, 0, 358, 359, 360, 0, - 0, 361, 0, 362, 0, 524, 0, 2025, 2026, 2027, - 2028, 2030, 1822, 530, 363, 0, 0, 364, 0, 0, - 434, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1344, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1345, 1346, 1347, 0, 0, 0, 0, - 1349, 1350, 789, 1351, 393, 0, 0, 0, 0, 797, - 798, 1357, 1430, 1358, 1359, 1360, 1361, 1362, 0, 0, - 0, 0, 2076, 0, 1365, 0, 0, 0, 0, 1368, - 1369, 0, 0, 0, 0, 0, 0, 0, 434, 824, - 0, 0, 0, 0, 435, 0, 0, 0, 1385, 0, - 1387, 0, 1389, 0, 1391, 0, 0, 0, 1467, 0, - 0, 0, 0, 0, 0, 0, 848, 0, 0, 0, - 0, 365, 366, 367, 0, 1408, 0, 0, 0, 0, - 0, 0, 368, 0, 0, 0, 369, 0, 370, 107, - 0, 0, 0, 0, 0, 0, 0, 435, 435, 0, - 0, 0, 0, 0, 0, 0, 0, 1439, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 696, 434, - 697, 0, 0, 0, 0, 0, 0, 1452, 0, 0, + 1483, 1866, 0, 1488, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 1892, 0, + 1510, 0, 0, 0, 0, 0, 0, 1517, 1518, 1519, + 1520, 0, 0, 0, 0, 0, 1526, 0, 1528, 1530, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, + 435, 435, 435, 435, 0, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 743, 546, 547, 548, 549, 0, 0, 0, 435, + 550, 1613, 1614, 1615, 0, 0, 0, 0, 0, 0, + 1621, 0, 1623, 0, 0, 0, 0, 0, 0, 1626, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 435, 435, 435, 0, 0, 0, 1466, + 0, 0, 434, 0, 0, 0, 0, 1642, 0, 0, + 0, 0, 0, 0, 0, 1647, 1648, 1649, 0, 0, + 0, 0, 0, 0, 0, 1658, 0, 0, 0, 0, + 0, 0, 0, 0, 1668, 0, 0, 0, 0, 435, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 1684, + 0, 0, 550, 0, 0, 1690, 1691, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 700, 0, 0, 0, 1717, 0, 0, 1904, + 0, 0, 0, 0, 1720, 1721, 0, 0, 0, 0, + 0, 1726, 1727, 0, 0, 0, 0, 0, 1731, 0, + 435, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1734, 1735, 1736, 0, 0, + 0, 0, 0, 1737, 1738, 1739, 1740, 0, 0, 0, + 0, 2018, 0, 1742, 0, 0, 0, 0, 0, 0, + 0, 0, 1748, 0, 0, 0, 0, 0, 0, 0, + 0, 434, 434, 1759, 0, 1760, 0, 0, 0, 0, + 0, 1768, 1769, 0, 0, 0, 812, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1475, 0, 0, 1480, 0, 0, 0, - 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 742, 545, 546, 547, 548, 435, 0, - 0, 0, 549, 0, 0, 0, 0, 0, 0, 1508, - 1509, 1510, 1511, 0, 0, 0, 0, 0, 0, 1518, - 1520, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 435, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 673, 545, 546, 547, 548, 0, - 0, 0, 435, 549, 0, 0, 0, 0, 435, 0, + 434, 0, 0, 0, 1787, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1797, 0, 0, 1800, 0, + 0, 0, 1803, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1814, + 0, 0, 862, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1826, 0, 0, 0, 0, 1832, 1833, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 848, 0, 1048, 531, 532, 533, + 0, 0, 1835, 0, 0, 1836, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 674, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 1022, 0, 0, 1860, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 673, 545, 546, 547, 548, 0, 0, 0, 0, 549, + 544, 674, 546, 547, 548, 549, 0, 0, 1869, 0, + 550, 0, 0, 0, 0, 0, 435, 1878, 0, 0, + 0, 0, 0, 0, 0, 0, 523, 0, 0, 0, + 0, 0, 0, 0, 0, 1889, 1890, 0, 0, 434, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, + 1913, 1914, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1925, 0, 0, 0, 0, 0, + 0, 1932, 0, 0, 0, 0, 0, 1936, 1937, 1938, + 1939, 1940, 0, 0, 0, 0, 0, 0, 434, 0, + 1718, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 434, 0, 0, 0, 0, 0, 0, + 0, 1966, 0, 0, 0, 0, 0, 0, 0, 1074, + 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, + 0, 1086, 1087, 1088, 1089, 1977, 1091, 1092, 1093, 1094, + 0, 1982, 0, 0, 1983, 2070, 0, 0, 0, 0, + 1104, 0, 1106, 0, 0, 0, 0, 0, 0, 1112, + 0, 0, 0, 0, 0, 435, 435, 0, 0, 0, + 1120, 1121, 0, 0, 0, 0, 2006, 0, 0, 1131, + 0, 0, 0, 0, 0, 1987, 0, 0, 0, 0, + 0, 0, 0, 0, 435, 0, 0, 0, 0, 0, + 0, 2024, 2025, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2031, 2032, 2033, 2034, 2035, 2036, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1600, 1601, 1602, 0, 0, 0, 0, 0, 0, 1608, - 0, 1610, 0, 0, 0, 0, 0, 0, 1613, 0, - 0, 0, 435, 0, 0, 0, 0, 0, 0, 0, - 0, 434, 0, 0, 0, 0, 1629, 0, 0, 0, - 0, 0, 0, 0, 1634, 1635, 1636, 0, 0, 0, - 0, 0, 0, 0, 1645, 0, 0, 0, 0, 0, - 0, 0, 0, 1655, 0, 0, 0, 0, 435, 0, + 0, 2044, 0, 0, 0, 0, 434, 434, 434, 434, + 434, 0, 0, 0, 0, 0, 1832, 0, 0, 0, + 2060, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 155, 156, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 435, 0, 0, 0, 0, 0, 1483, 1671, 0, - 0, 0, 0, 0, 1677, 1678, 0, 0, 0, 0, + 2083, 0, 0, 0, 0, 2086, 2087, 2088, 2089, 2090, + 2091, 0, 0, 0, 0, 0, 0, 1222, 1224, 1225, + 0, 434, 0, 1229, 1230, 0, 0, 1233, 1234, 1235, + 1236, 0, 1238, 0, 0, 0, 0, 1244, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 435, 0, 0, 0, 0, 0, 1607, 0, - 0, 0, 0, 1700, 0, 0, 0, 0, 0, 0, - 0, 1703, 1704, 0, 0, 0, 0, 0, 1709, 1710, - 0, 0, 0, 0, 0, 1714, 0, 0, 0, 0, + 0, 0, 2122, 2123, 2124, 2125, 2126, 2127, 0, 0, + 524, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 435, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 406, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1717, 1718, 1719, 0, 0, 0, 0, 0, - 1720, 1721, 1722, 1723, 1657, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1730, 0, 0, 0, - 0, 0, 0, 0, 0, 434, 434, 1741, 0, 1742, - 0, 0, 0, 0, 0, 1750, 1751, 0, 0, 0, + 0, 1322, 1323, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 674, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 0, 435, 0, 0, 0, 0, 0, 0, 0, + 0, 531, 0, 0, 0, 0, 0, 435, 464, 465, + 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, + 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, + 486, 489, 490, 491, 492, 493, 494, 0, 496, 497, + 0, 0, 0, 0, 499, 500, 0, 0, 0, 0, + 187, 150, 344, 0, 516, 517, 0, 188, 189, 190, + 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 200, 201, 202, 203, 204, 205, 206, 207, 380, + 209, 210, 211, 212, 213, 214, 0, 0, 0, 0, + 0, 0, 0, 345, 346, 347, 348, 349, 350, 351, + 352, 353, 220, 221, 222, 223, 354, 355, 356, 357, + 224, 0, 0, 0, 358, 359, 360, 0, 0, 361, + 0, 362, 225, 226, 227, 0, 0, 0, 0, 0, + 228, 21, 363, 229, 0, 364, 0, 0, 0, 0, + 435, 435, 435, 435, 435, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 434, 0, 0, 0, 1769, 0, - 0, 0, 0, 435, 435, 435, 435, 0, 0, 1779, - 0, 0, 1782, 0, 0, 0, 1785, 0, 0, 0, - 0, 0, 699, 0, 0, 0, 0, 0, 0, 1661, - 0, 0, 0, 1796, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1808, 0, 0, 0, - 0, 1814, 0, 0, 0, 0, 0, 0, 0, 0, - 1667, 0, 435, 0, 0, 1816, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 0, 0, 0, 549, 0, - 0, 0, 1770, 0, 0, 0, 1839, 531, 532, 533, + 0, 644, 645, 646, 0, 0, 0, 650, 651, 652, + 653, 654, 655, 656, 0, 657, 0, 0, 0, 658, + 659, 531, 0, 662, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1497, 672, 0, 0, 0, + 0, 0, 0, 0, 0, 435, 0, 0, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 673, 545, 546, 547, 548, 0, 811, 1848, 0, 549, - 0, 0, 0, 0, 0, 0, 1857, 0, 0, 0, - 435, 0, 0, 0, 0, 523, 0, 0, 0, 0, - 0, 0, 0, 0, 1868, 1869, 0, 0, 434, 0, - 0, 0, 0, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 860, 0, 0, 0, 549, 0, 0, 0, 1892, - 1893, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1902, 0, 0, 0, 0, 0, 0, 1909, 0, - 0, 0, 0, 0, 1913, 1914, 1915, 1916, 1917, 0, - 0, 435, 0, 0, 434, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 434, - 0, 0, 0, 0, 0, 0, 0, 1943, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 1845, 0, 0, 0, - 549, 1954, 0, 0, 0, 0, 0, 1959, 1960, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 1871, 0, 0, - 0, 549, 0, 0, 0, 0, 0, 0, 0, 0, - 1983, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 673, 545, 546, 547, 548, 1883, - 0, 0, 0, 549, 0, 2001, 2002, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2008, 2009, 2010, - 2011, 2012, 2013, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2021, 0, 0, 0, 0, - 434, 434, 434, 434, 434, 0, 0, 0, 0, 0, - 1814, 0, 0, 0, 2037, 0, 0, 0, 0, 0, - 1995, 0, 0, 0, 0, 0, 0, 0, 1072, 1073, - 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 0, - 1084, 1085, 1086, 1087, 2060, 1089, 1090, 1091, 1092, 2063, - 2064, 2065, 2066, 2067, 2068, 2047, 0, 0, 0, 1102, - 0, 1104, 0, 435, 0, 434, 0, 0, 1110, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1118, - 1119, 0, 0, 0, 0, 0, 0, 1128, 0, 0, - 0, 0, 0, 0, 0, 0, 2099, 2100, 2101, 2102, - 2103, 2104, 0, 0, 0, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, 673, 545, - 546, 547, 548, 0, 0, 0, 0, 549, 0, 0, - 0, 0, 0, 0, 0, 0, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 1701, 0, 0, 549, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1218, 1220, 1221, 0, 0, - 0, 1225, 1226, 0, 0, 1229, 1230, 1231, 1232, 0, - 1234, 0, 0, 0, 0, 1240, 0, 435, 435, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 1964, 0, 0, - 0, 549, 0, 0, 0, 0, 435, 0, 0, 0, - 0, 0, 0, 0, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 673, 545, 546, - 547, 548, 0, 0, 0, 0, 549, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1316, - 1317, 0, 0, 0, 187, 6, 344, 0, 0, 0, - 0, 188, 189, 190, 0, 0, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, - 215, 216, 217, 218, 219, 0, 0, 345, 346, 347, - 348, 349, 350, 351, 352, 353, 220, 221, 222, 223, - 354, 355, 356, 357, 224, 530, 0, 0, 358, 359, - 360, 0, 0, 361, 0, 362, 225, 226, 227, 0, - 0, 0, 0, 0, 228, 21, 363, 229, 0, 364, - 0, 0, 230, 0, 0, 231, 0, 524, 232, 0, - 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, - 435, 0, 0, 0, 0, 0, 0, 0, 0, 234, - 0, 49, 0, 0, 235, 0, 236, 0, 0, 0, - 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, - 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, - 0, 76, 0, 0, 0, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, 673, 545, - 546, 547, 548, 0, 0, 0, 435, 549, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 435, 237, 365, 366, 367, 238, 239, 0, 0, - 0, 240, 241, 242, 368, 243, 244, 245, 369, 0, - 370, 107, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 246, 247, 0, - 0, 1489, 0, 0, 248, 0, 0, 0, 0, 326, - 0, 0, 0, 1523, 0, 0, 251, 0, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 1522, 7, 8, - 549, 0, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, - 0, 0, 0, 0, 549, 0, 0, 0, 0, 0, - 1557, 1558, 1559, 1560, 1561, 0, 0, 0, 0, 1566, - 1567, 0, 1569, 0, 0, 0, 0, 0, 1575, 0, - 0, 0, 435, 435, 435, 435, 435, 0, 0, 0, - 0, 1580, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 709, 25, 26, 710, - 28, 29, 711, 31, 712, 33, 34, 35, 36, 0, + 544, 545, 546, 547, 548, 549, 0, 0, 7, 8, + 550, 0, 0, 1532, 0, 0, 0, 0, 237, 365, + 366, 367, 238, 0, 0, 0, 0, 240, 241, 242, + 368, 243, 244, 245, 369, 0, 370, 107, 0, 0, + 0, 0, 0, 0, 0, 0, 1567, 1568, 1569, 1570, + 1571, 0, 0, 246, 381, 1576, 1577, 0, 1579, 0, + 248, 0, 0, 0, 1585, 326, 0, 0, 0, 1529, + 0, 0, 251, 0, 0, 0, 0, 0, 0, 1593, + 0, 0, 0, 0, 0, 0, 710, 25, 26, 711, + 28, 29, 712, 31, 713, 33, 34, 35, 36, 0, 0, 0, 38, 39, 40, 0, 0, 42, 0, 0, - 0, 0, 0, 713, 48, 0, 0, 50, 714, 530, - 53, 715, 0, 0, 0, 0, 0, 435, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 70, - 0, 0, 0, 0, 0, 0, 1640, 0, 1643, 0, - 0, 0, 1650, 0, 1652, 0, 0, 0, 0, 0, - 0, 0, 0, 84, 85, 86, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 187, 6, 344, 0, - 0, 0, 0, 188, 189, 190, 1673, 0, 191, 192, - 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, - 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 215, 216, 217, 218, 219, 0, 0, 345, - 346, 347, 348, 349, 350, 351, 352, 353, 220, 221, - 222, 223, 354, 355, 356, 357, 224, 0, 928, 0, - 358, 359, 360, 0, 0, 361, 0, 362, 225, 226, - 227, 0, 0, 0, 0, 0, 228, 21, 363, 229, - 0, 364, 0, 0, 230, 0, 0, 231, 0, 0, - 232, 0, 233, 0, 0, 0, 0, 0, 0, 37, + 0, 0, 0, 714, 48, 0, 0, 50, 715, 0, + 53, 716, 0, 0, 0, 0, 833, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 947, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 234, 0, 49, 0, 0, 235, 0, 236, 0, - 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, - 0, 0, 65, 66, 67, 68, 69, 945, 0, 0, - 73, 0, 0, 76, 0, 0, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 742, - 545, 546, 547, 548, 0, 0, 0, 0, 549, 0, - 0, 0, 0, 1129, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 237, 365, 366, 367, 238, 239, - 1805, 1806, 0, 240, 241, 242, 368, 243, 244, 245, - 369, 1130, 370, 107, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, - 247, 0, 0, 0, 0, 0, 248, 0, 0, 0, - 0, 326, 0, 1832, 1833, 250, 0, 0, 251, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 187, 150, 344, - 0, 392, 0, 0, 188, 189, 190, 0, 0, 191, + 0, 0, 0, 0, 1653, 0, 1656, 0, 0, 0, + 1663, 0, 1665, 84, 85, 86, 0, 0, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 743, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 1686, 0, 0, 187, 6, 344, + 0, 0, 0, 0, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 380, 209, 210, 211, - 212, 213, 214, 0, 0, 0, 0, 0, 1874, 1875, + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, 218, 219, 930, 0, 345, 346, 347, 348, 349, 350, 351, 352, 353, 220, 221, 222, 223, 354, 355, 356, 357, 224, 0, 0, 0, 358, 359, 360, 0, 0, 361, 0, 362, 225, 226, 227, 0, 0, 0, 0, 0, 228, 21, 363, - 229, 0, 364, 0, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 673, 545, 546, - 547, 548, 0, 0, 0, 0, 549, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 393, - 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 673, 545, 546, 547, 548, 0, 0, - 0, 0, 549, 0, 0, 0, 0, 0, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 0, 0, 0, 0, 0, 0, 394, 0, - 0, 0, 0, 0, 0, 237, 365, 366, 367, 238, - 0, 0, 0, 0, 240, 241, 242, 368, 243, 244, - 245, 369, 0, 370, 107, 395, 396, 397, 398, 0, + 229, 0, 364, 0, 0, 230, 0, 0, 231, 0, + 0, 232, 0, 233, 0, 0, 0, 0, 0, 0, + 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 234, 0, 49, 0, 0, 235, 0, 236, + 0, 0, 0, 0, 0, 0, 59, 60, 61, 62, + 63, 0, 0, 65, 66, 67, 68, 69, 0, 0, + 0, 73, 0, 0, 76, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1823, 1824, 237, 365, 366, 367, 238, + 239, 0, 0, 0, 240, 241, 242, 368, 243, 244, + 245, 369, 1132, 370, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 246, 381, 0, 0, 0, 0, 0, 248, 0, 399, - 400, 0, 401, 0, 402, 187, 6, 325, 403, 251, + 246, 247, 0, 0, 0, 0, 0, 248, 0, 0, + 1852, 1853, 326, 0, 0, 0, 1533, 0, 0, 251, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 187, 6, 344, 0, 0, 0, 0, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + 214, 215, 216, 217, 218, 219, 1895, 1896, 345, 346, + 347, 348, 349, 350, 351, 352, 353, 220, 221, 222, + 223, 354, 355, 356, 357, 224, 0, 0, 0, 358, + 359, 360, 0, 0, 361, 0, 362, 225, 226, 227, + 0, 0, 0, 0, 0, 228, 21, 363, 229, 0, + 364, 0, 0, 230, 0, 0, 231, 0, 0, 232, + 0, 233, 0, 0, 0, 0, 0, 0, 37, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 234, 0, 49, 0, 0, 235, 0, 236, 1133, 0, + 0, 0, 0, 0, 59, 60, 61, 62, 63, 0, + 0, 65, 66, 67, 68, 69, 0, 0, 0, 73, + 0, 0, 76, 0, 0, 0, 0, 1453, 0, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 674, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 1317, 0, 0, 0, 0, + 0, 0, 0, 237, 365, 366, 367, 238, 239, 0, + 0, 0, 240, 241, 242, 368, 243, 244, 245, 369, + 0, 370, 107, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 246, 247, + 0, 0, 0, 0, 0, 248, 0, 0, 0, 0, + 326, 187, 150, 344, 250, 392, 0, 251, 188, 189, + 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, + 380, 209, 210, 211, 212, 213, 214, 0, 0, 0, + 0, 0, 0, 0, 345, 346, 347, 348, 349, 350, + 351, 352, 353, 220, 221, 222, 223, 354, 355, 356, + 357, 224, 0, 0, 0, 358, 359, 360, 0, 0, + 361, 0, 362, 225, 226, 227, 0, 0, 0, 0, + 0, 228, 21, 363, 229, 0, 364, 0, 0, 0, + 0, 0, 0, 2108, 0, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 393, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 697, 0, 698, 0, 0, 0, 0, 0, 1655, + 0, 0, 394, 0, 0, 0, 1498, 1499, 0, 237, + 365, 366, 367, 238, 0, 0, 0, 0, 240, 241, + 242, 368, 243, 244, 245, 369, 0, 370, 107, 395, + 396, 397, 398, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 246, 381, 0, 0, 0, 0, + 0, 248, 0, 399, 400, 0, 401, 0, 402, 187, + 6, 325, 403, 251, 0, 0, 188, 189, 190, 0, + 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, + 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 225, 226, 227, 0, 0, 7, 8, 0, 228, + 21, 0, 229, 0, 0, 0, 0, 230, 0, 0, + 231, 0, 0, 232, 0, 233, 0, 0, 0, 0, + 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 234, 0, 49, 0, 0, 235, + 0, 236, 0, 0, 0, 0, 0, 0, 59, 60, + 61, 62, 63, 0, 0, 65, 66, 67, 68, 69, + 0, 0, 0, 73, 0, 0, 76, 0, 0, 0, + 0, 0, 0, 0, 710, 25, 26, 711, 28, 29, + 712, 31, 713, 33, 34, 35, 36, 0, 0, 0, + 38, 39, 40, 0, 0, 42, 0, 0, 0, 0, + 0, 714, 48, 0, 0, 50, 715, 237, 53, 716, + 0, 238, 239, 0, 0, 0, 240, 241, 242, 0, + 243, 244, 245, 0, 0, 0, 107, 70, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 246, 247, 0, 0, 0, 0, 0, 248, + 0, 84, 85, 86, 326, 187, 6, 1629, 250, 0, + 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, + 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 225, 226, 227, + 0, 0, 0, 0, 0, 0, 975, 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, 0, 229, 0, - 2085, 0, 0, 230, 0, 0, 231, 0, 0, 232, + 0, 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 234, 0, 49, 0, 0, 235, 0, 236, 0, 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, 0, 76, 0, 0, 0, 0, 0, 0, 0, - 709, 25, 26, 710, 28, 29, 711, 31, 712, 33, + 710, 25, 26, 711, 28, 29, 712, 31, 713, 33, 34, 35, 36, 0, 0, 0, 38, 39, 40, 0, - 0, 42, 0, 0, 0, 0, 0, 713, 48, 0, - 0, 50, 714, 237, 53, 715, 0, 238, 239, 0, + 0, 42, 0, 0, 0, 0, 0, 714, 48, 0, + 0, 50, 715, 237, 53, 716, 0, 238, 239, 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, 247, 0, 0, 0, 0, 0, 248, 0, 84, 85, 86, - 326, 187, 6, 1616, 250, 0, 0, 251, 188, 189, + 326, 187, 6, 0, 250, 0, 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 973, 225, 226, 227, 0, 0, 7, 8, + 0, 0, 976, 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, 0, 229, 0, 0, 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, @@ -2744,22 +2799,22 @@ static const yytype_int16 yytable[] = 0, 235, 0, 236, 0, 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, 0, 76, 0, - 0, 0, 0, 0, 0, 0, 709, 25, 26, 710, - 28, 29, 711, 31, 712, 33, 34, 35, 36, 0, + 0, 0, 0, 0, 0, 0, 710, 25, 26, 711, + 28, 29, 712, 31, 713, 33, 34, 35, 36, 0, 0, 0, 38, 39, 40, 0, 0, 42, 0, 0, - 0, 0, 0, 713, 48, 0, 0, 50, 714, 237, - 53, 715, 0, 238, 239, 0, 0, 0, 240, 241, + 0, 0, 0, 714, 48, 0, 0, 50, 715, 237, + 53, 716, 0, 238, 239, 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 246, 247, 0, 0, 0, 0, - 0, 248, 0, 84, 85, 86, 326, 187, 6, 0, - 250, 0, 0, 251, 188, 189, 190, 0, 0, 191, + 0, 0, 0, 0, 595, 1783, 0, 0, 0, 0, + 0, 248, 0, 84, 85, 86, 597, 187, 6, 0, + 290, 527, 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 974, 225, + 0, 0, 0, 0, 0, 0, 0, 0, 1166, 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, 0, 229, 0, 0, 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, 0, 0, 0, @@ -2768,22 +2823,22 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, 0, 76, 0, 0, 0, 0, 0, - 0, 0, 709, 25, 26, 710, 28, 29, 711, 31, - 712, 33, 34, 35, 36, 0, 0, 0, 38, 39, - 40, 0, 0, 42, 0, 0, 0, 0, 0, 713, - 48, 0, 0, 50, 714, 237, 53, 715, 0, 238, + 0, 0, 710, 25, 26, 711, 28, 29, 712, 31, + 713, 33, 34, 35, 36, 0, 0, 0, 38, 39, + 40, 0, 0, 42, 0, 0, 0, 0, 0, 714, + 48, 0, 0, 50, 715, 237, 53, 716, 0, 238, 239, 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 594, 1765, 0, 0, 0, 0, 0, 248, 0, 84, - 85, 86, 596, 187, 6, 0, 290, 527, 0, 251, + 246, 247, 0, 0, 0, 0, 0, 248, 0, 84, + 85, 86, 249, 187, 6, 0, 250, 0, 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1162, 225, 226, 227, 0, 0, + 0, 0, 0, 0, 1168, 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, 0, 229, 0, 0, 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, @@ -2791,15 +2846,15 @@ static const yytype_int16 yytable[] = 49, 0, 0, 235, 0, 236, 0, 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, 0, - 76, 0, 0, 0, 0, 0, 0, 0, 709, 25, - 26, 710, 28, 29, 711, 31, 712, 33, 34, 35, + 76, 0, 0, 0, 0, 0, 0, 0, 710, 25, + 26, 711, 28, 29, 712, 31, 713, 33, 34, 35, 36, 0, 0, 0, 38, 39, 40, 0, 0, 42, - 0, 0, 0, 0, 0, 713, 48, 0, 0, 50, - 714, 237, 53, 715, 0, 238, 239, 0, 0, 0, + 0, 0, 0, 0, 0, 714, 48, 0, 0, 50, + 715, 237, 53, 716, 0, 238, 239, 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, 247, 0, 0, - 0, 0, 0, 248, 0, 84, 85, 86, 249, 187, + 0, 0, 0, 248, 0, 84, 85, 86, 326, 187, 6, 0, 250, 0, 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, @@ -2807,7 +2862,7 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1164, 225, 226, 227, 0, 0, 7, 8, 0, 228, + 1169, 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, 0, 229, 0, 0, 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, @@ -2815,22 +2870,22 @@ static const yytype_int16 yytable[] = 0, 236, 0, 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, 0, 76, 0, 0, 0, - 0, 0, 0, 0, 709, 25, 26, 710, 28, 29, - 711, 31, 712, 33, 34, 35, 36, 0, 0, 0, + 0, 0, 0, 0, 710, 25, 26, 711, 28, 29, + 712, 31, 713, 33, 34, 35, 36, 0, 0, 0, 38, 39, 40, 0, 0, 42, 0, 0, 0, 0, - 0, 713, 48, 0, 0, 50, 714, 237, 53, 715, + 0, 714, 48, 0, 0, 50, 715, 237, 53, 716, 0, 238, 239, 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 246, 247, 0, 0, 0, 0, 0, 248, - 0, 84, 85, 86, 326, 187, 6, 0, 250, 0, + 0, 0, 246, 433, 0, 0, 0, 0, 0, 248, + 0, 84, 85, 86, 326, 187, 6, 0, 522, 0, 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1165, 225, 226, 227, + 0, 0, 0, 0, 0, 0, 1188, 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, 0, 229, 0, 0, 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, 0, 0, 0, 37, 0, @@ -2839,22 +2894,22 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, 0, 76, 0, 0, 0, 0, 0, 0, 0, - 709, 25, 26, 710, 28, 29, 711, 31, 712, 33, + 710, 25, 26, 711, 28, 29, 712, 31, 713, 33, 34, 35, 36, 0, 0, 0, 38, 39, 40, 0, - 0, 42, 0, 0, 0, 0, 0, 713, 48, 0, - 0, 50, 714, 237, 53, 715, 0, 238, 239, 0, + 0, 42, 0, 0, 0, 0, 0, 714, 48, 0, + 0, 50, 715, 237, 53, 716, 0, 238, 239, 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, 433, 0, 0, 0, 0, 0, 248, 0, 84, 85, 86, - 326, 187, 6, 0, 522, 0, 0, 251, 188, 189, + 326, 187, 6, 0, 0, 527, 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1184, 225, 226, 227, 0, 0, 7, 8, + 0, 0, 1217, 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, 0, 229, 0, 0, 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, @@ -2862,22 +2917,22 @@ static const yytype_int16 yytable[] = 0, 235, 0, 236, 0, 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, 0, 76, 0, - 0, 0, 0, 0, 0, 0, 709, 25, 26, 710, - 28, 29, 711, 31, 712, 33, 34, 35, 36, 0, + 0, 0, 0, 0, 0, 0, 710, 25, 26, 711, + 28, 29, 712, 31, 713, 33, 34, 35, 36, 0, 0, 0, 38, 39, 40, 0, 0, 42, 0, 0, - 0, 0, 0, 713, 48, 0, 0, 50, 714, 237, - 53, 715, 0, 238, 239, 0, 0, 0, 240, 241, + 0, 0, 0, 714, 48, 0, 0, 50, 715, 237, + 53, 716, 0, 238, 239, 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 246, 433, 0, 0, 0, 0, - 0, 248, 0, 84, 85, 86, 326, 187, 6, 0, - 0, 527, 0, 251, 188, 189, 190, 0, 0, 191, + 0, 0, 0, 0, 246, 247, 0, 0, 0, 0, + 0, 248, 0, 84, 85, 86, 561, 187, 6, 0, + 250, 0, 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1213, 225, + 0, 0, 0, 0, 0, 0, 0, 0, 1250, 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, 0, 229, 0, 0, 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, 0, 0, 0, @@ -2886,22 +2941,22 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, 0, 76, 0, 0, 0, 0, 0, - 0, 0, 709, 25, 26, 710, 28, 29, 711, 31, - 712, 33, 34, 35, 36, 0, 0, 0, 38, 39, - 40, 0, 0, 42, 0, 0, 0, 0, 0, 713, - 48, 0, 0, 50, 714, 237, 53, 715, 0, 238, + 0, 0, 710, 25, 26, 711, 28, 29, 712, 31, + 713, 33, 34, 35, 36, 0, 0, 0, 38, 39, + 40, 0, 0, 42, 0, 0, 0, 0, 0, 714, + 48, 0, 0, 50, 715, 237, 53, 716, 0, 238, 239, 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, 247, 0, 0, 0, 0, 0, 248, 0, 84, - 85, 86, 560, 187, 6, 0, 250, 0, 0, 251, + 85, 86, 570, 187, 6, 0, 250, 0, 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1246, 225, 226, 227, 0, 0, + 0, 0, 0, 0, 1407, 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, 0, 229, 0, 0, 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, @@ -2909,15 +2964,15 @@ static const yytype_int16 yytable[] = 49, 0, 0, 235, 0, 236, 0, 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, 0, - 76, 0, 0, 0, 0, 0, 0, 0, 709, 25, - 26, 710, 28, 29, 711, 31, 712, 33, 34, 35, + 76, 0, 0, 0, 0, 0, 0, 0, 710, 25, + 26, 711, 28, 29, 712, 31, 713, 33, 34, 35, 36, 0, 0, 0, 38, 39, 40, 0, 0, 42, - 0, 0, 0, 0, 0, 713, 48, 0, 0, 50, - 714, 237, 53, 715, 0, 238, 239, 0, 0, 0, + 0, 0, 0, 0, 0, 714, 48, 0, 0, 50, + 715, 237, 53, 716, 0, 238, 239, 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, 247, 0, 0, - 0, 0, 0, 248, 0, 84, 85, 86, 569, 187, + 0, 0, 0, 248, 0, 84, 85, 86, 572, 187, 6, 0, 250, 0, 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, @@ -2925,7 +2980,7 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1399, 225, 226, 227, 0, 0, 7, 8, 0, 228, + 2009, 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, 0, 229, 0, 0, 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, @@ -2933,22 +2988,22 @@ static const yytype_int16 yytable[] = 0, 236, 0, 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, 0, 76, 0, 0, 0, - 0, 0, 0, 0, 709, 25, 26, 710, 28, 29, - 711, 31, 712, 33, 34, 35, 36, 0, 0, 0, + 0, 0, 0, 0, 710, 25, 26, 711, 28, 29, + 712, 31, 713, 33, 34, 35, 36, 0, 0, 0, 38, 39, 40, 0, 0, 42, 0, 0, 0, 0, - 0, 713, 48, 0, 0, 50, 714, 237, 53, 715, + 0, 714, 48, 0, 0, 50, 715, 237, 53, 716, 0, 238, 239, 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, 247, 0, 0, 0, 0, 0, 248, - 0, 84, 85, 86, 571, 187, 6, 0, 250, 0, + 0, 84, 85, 86, 574, 187, 6, 0, 250, 0, 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1986, 225, 226, 227, + 0, 0, 0, 0, 0, 0, 2072, 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, 0, 229, 0, 0, 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, 0, 0, 0, 37, 0, @@ -2957,39 +3012,39 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, 67, 68, 69, 0, 0, 0, 73, 0, 0, 76, 0, 0, 0, 0, 0, 0, 0, - 709, 25, 26, 710, 28, 29, 711, 31, 712, 33, + 710, 25, 26, 711, 28, 29, 712, 31, 713, 33, 34, 35, 36, 0, 0, 0, 38, 39, 40, 0, - 0, 42, 1445, 0, 0, 0, 0, 713, 48, 0, - 0, 50, 714, 237, 53, 715, 0, 238, 239, 0, - 0, 0, 240, 241, 242, 0, 243, 244, 245, 0, - 0, 0, 107, 70, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 246, 247, + 0, 42, 0, 0, 0, 0, 0, 714, 48, 0, + 0, 50, 715, 237, 53, 716, 0, 238, 239, 0, + 982, 0, 240, 241, 242, 0, 243, 244, 245, 0, + 0, 0, 107, 70, 0, 0, 0, 983, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 246, 433, 0, 0, 0, 0, 0, 248, 0, 84, 85, 86, - 573, 187, 6, 0, 250, 0, 0, 251, 188, 189, + 326, 187, 6, 0, 848, 0, 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2049, 225, 226, 227, 0, 0, 0, 0, + 0, 0, 0, 225, 226, 227, 0, 0, 7, 8, 0, 228, 21, 0, 229, 0, 0, 0, 0, 230, 0, 0, 231, 0, 0, 232, 0, 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 234, 0, 49, 0, 0, 235, 0, 236, 0, 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, 0, 0, 65, 66, 67, - 68, 69, 0, 0, 0, 73, 0, 0, 76, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 0, 0, 0, - 0, 549, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 237, - 0, 0, 0, 238, 239, 0, 0, 0, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 107, 0, + 68, 69, 0, 0, 0, 73, 0, 0, 76, 0, + 0, 0, 0, 0, 0, 0, 710, 25, 26, 711, + 28, 29, 712, 31, 713, 33, 34, 35, 36, 0, + 0, 0, 38, 39, 40, 0, 0, 42, 0, 0, + 0, 0, 0, 714, 48, 0, 0, 50, 715, 237, + 53, 716, 0, 238, 239, 0, 0, 0, 240, 241, + 242, 0, 243, 244, 245, 0, 0, 0, 107, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 246, 433, 0, 0, 0, 0, - 0, 248, 0, 0, 0, 0, 326, 187, 150, 344, - 846, 0, 0, 251, 188, 189, 190, 0, 0, 191, + 0, 0, 0, 0, 246, 247, 0, 0, 0, 0, + 0, 248, 0, 84, 85, 86, 326, 187, 150, 344, + 1637, 0, 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 380, 209, 210, 211, 212, 213, 214, 0, 0, 0, 0, 0, 0, 0, @@ -2997,1254 +3052,1277 @@ static const yytype_int16 yytable[] = 221, 222, 223, 354, 355, 356, 357, 224, 0, 0, 0, 358, 359, 360, 0, 0, 361, 0, 362, 225, 226, 227, 0, 0, 0, 0, 0, 228, 21, 363, - 229, 0, 364, 0, 0, 0, 0, 0, 0, 0, - 0, 150, 344, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 696, 0, 697, - 0, 0, 0, 0, 0, 1642, 0, 0, 0, 0, - 0, 0, 0, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 0, 0, 0, 0, 354, 355, 356, 357, - 0, 0, 0, 0, 358, 359, 360, 0, 0, 361, - 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 363, 0, 0, 364, 0, 0, 0, 0, + 229, 0, 364, 187, 150, 344, 0, 0, 0, 0, + 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, + 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, + 206, 207, 380, 209, 210, 211, 212, 213, 214, 0, + 0, 0, 0, 0, 0, 0, 345, 346, 347, 348, + 349, 350, 351, 352, 353, 220, 221, 222, 223, 354, + 355, 356, 357, 224, 0, 0, 0, 358, 359, 360, + 0, 0, 361, 0, 362, 225, 226, 227, 0, 0, + 0, 0, 0, 228, 21, 363, 229, 0, 364, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 237, 365, 366, 367, 238, 0, 0, 0, 0, 240, 241, 242, 368, 243, 244, 245, 369, 0, 370, 107, 0, 0, 0, 0, 0, - 0, 0, 393, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, 381, 0, 0, 0, 0, 0, 248, 0, 0, - 0, 0, 326, 187, 6, 0, 1519, 0, 0, 251, - 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, - 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, - 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, - 216, 217, 218, 219, 0, 0, 0, 0, 0, 365, - 366, 367, 0, 0, 0, 220, 221, 222, 223, 0, - 368, 0, 0, 224, 369, 0, 370, 107, 0, 0, - 0, 0, 0, 0, 0, 225, 226, 227, 0, 0, - 7, 8, 0, 228, 21, 0, 229, 0, 0, 0, - 0, 230, 0, 0, 231, 0, 0, 232, 0, 233, - 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 234, 0, - 49, 0, 0, 235, 0, 236, 0, 0, 0, 0, - 0, 0, 59, 60, 61, 62, 63, 0, 0, 65, - 66, 67, 68, 69, 0, 0, 0, 73, 0, 0, - 76, 0, 0, 0, 0, 0, 0, 0, 709, 25, - 26, 710, 28, 29, 711, 31, 712, 33, 34, 35, - 36, 0, 0, 0, 38, 39, 40, 0, 0, 42, - 0, 0, 0, 0, 0, 713, 48, 0, 0, 50, - 714, 237, 53, 715, 0, 238, 239, 0, 980, 0, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 107, 70, 0, 0, 0, 981, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 246, 247, 0, 0, - 0, 0, 0, 248, 0, 84, 85, 86, 326, 187, - 150, 344, 1624, 0, 0, 251, 188, 189, 190, 0, + 0, 0, 326, 0, 0, 0, 1796, 0, 0, 251, + 0, 0, 0, 0, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 939, 0, + 0, 237, 365, 366, 367, 238, 900, 0, 0, 0, + 240, 241, 242, 368, 243, 244, 245, 369, 0, 370, + 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 246, 381, 0, 0, + 0, 0, 0, 248, 0, 0, 0, 0, 326, 187, + 6, 0, 1802, 0, 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 202, 203, 204, 205, 206, 207, 380, 209, - 210, 211, 212, 213, 214, 0, 0, 0, 0, 0, - 0, 0, 345, 346, 347, 348, 349, 350, 351, 352, - 353, 220, 221, 222, 223, 354, 355, 356, 357, 224, - 0, 0, 0, 358, 359, 360, 0, 0, 361, 0, - 362, 225, 226, 227, 0, 0, 0, 0, 0, 228, - 21, 363, 229, 0, 364, 187, 150, 344, 0, 0, - 0, 0, 188, 189, 190, 0, 0, 191, 192, 193, - 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 380, 209, 210, 211, 212, 213, - 214, 0, 0, 0, 0, 0, 0, 0, 345, 346, - 347, 348, 349, 350, 351, 352, 353, 220, 221, 222, - 223, 354, 355, 356, 357, 224, 0, 0, 0, 358, - 359, 360, 0, 0, 361, 0, 362, 225, 226, 227, - 0, 0, 0, 0, 0, 228, 21, 363, 229, 0, - 364, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 237, 365, 366, - 367, 238, 0, 0, 0, 0, 240, 241, 242, 368, - 243, 244, 245, 369, 0, 370, 107, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 246, 381, 0, 0, 0, 0, 0, 248, - 0, 0, 0, 0, 326, 0, 0, 0, 1778, 0, - 0, 251, 0, 0, 0, 0, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 0, 0, 0, 549, 0, - 937, 0, 0, 237, 365, 366, 367, 238, 898, 0, - 0, 0, 240, 241, 242, 368, 243, 244, 245, 369, - 0, 370, 107, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 246, 381, - 0, 0, 0, 0, 0, 248, 0, 0, 0, 0, - 326, 187, 6, 0, 1784, 0, 0, 251, 188, 189, - 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, - 218, 219, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, - 0, 224, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 225, 226, 227, 0, 0, 7, 8, - 0, 228, 21, 0, 229, 0, 0, 0, 0, 230, - 0, 0, 231, 0, 0, 232, 0, 233, 0, 0, - 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 234, 0, 49, 0, - 0, 235, 0, 236, 0, 0, 0, 0, 0, 0, - 59, 60, 61, 62, 63, 0, 0, 65, 66, 67, - 68, 69, 0, 0, 0, 73, 0, 0, 76, 0, - 0, 0, 0, 0, 0, 0, 709, 25, 26, 710, - 28, 29, 711, 31, 712, 33, 34, 35, 36, 0, - 0, 0, 38, 39, 40, 0, 0, 42, 0, 0, - 0, 0, 0, 713, 48, 0, 0, 50, 714, 237, - 53, 715, 0, 238, 239, 0, 0, 0, 240, 241, - 242, 0, 243, 244, 245, 0, 0, 0, 107, 70, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 594, 1765, 0, 0, 0, 0, - 0, 248, 0, 84, 85, 86, 596, 187, 6, 0, - 290, 0, 0, 251, 188, 189, 190, 0, 0, 191, - 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, - 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 225, - 226, 227, 0, 0, 0, 0, 0, 228, 21, 0, - 229, 0, 0, 0, 0, 230, 0, 0, 231, 0, - 0, 232, 0, 233, 0, 0, 0, 0, 0, 0, - 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 234, 0, 49, 0, 0, 235, 0, 236, - 0, 0, 0, 0, 0, 0, 59, 60, 61, 62, - 63, 0, 0, 65, 66, 67, 68, 69, 0, 0, - 0, 73, 0, 0, 76, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, 673, 545, - 546, 547, 548, 0, 0, 0, 0, 549, 0, 0, - 0, 0, 0, 1746, 0, 0, 0, 1747, 0, 0, - 0, 0, 0, 0, 0, 237, 0, 0, 0, 238, - 239, 0, 0, 0, 240, 241, 242, 0, 243, 244, - 245, 0, 0, 0, 107, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 246, 433, 0, 0, 0, 0, 0, 248, 187, 150, - 344, 0, 326, 0, 0, 188, 189, 190, 0, 251, - 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, - 201, 202, 203, 204, 205, 206, 207, 380, 209, 210, - 211, 212, 213, 214, 0, 0, 0, 0, 0, 0, - 0, 345, 346, 347, 348, 349, 350, 351, 352, 353, - 220, 221, 222, 223, 354, 355, 356, 357, 224, 0, - 0, 0, 358, 359, 360, 0, 0, 361, 0, 362, - 225, 226, 227, 0, 0, 0, 0, 0, 228, 21, - 363, 229, 0, 364, 187, 150, 0, 0, 0, 0, - 0, 188, 189, 190, 0, 0, 191, 192, 193, 194, - 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 380, 209, 210, 211, 212, 213, 214, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, - 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 225, 226, 227, 0, - 0, 0, 0, 0, 228, 21, 0, 229, 0, 0, + 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 237, 365, 366, 367, - 238, 0, 0, 0, 0, 240, 241, 242, 368, 243, - 244, 245, 369, 0, 370, 107, 0, 0, 0, 0, + 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 246, 381, 0, 0, 0, 0, 0, 248, 0, - 0, 0, 0, 326, 0, 0, 0, 0, 0, 0, - 251, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 673, 545, 546, 547, 548, 0, - 0, 0, 0, 549, 0, 0, 0, 0, 0, 1773, - 0, 0, 237, 1774, 0, 0, 238, 0, 0, 0, - 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, - 0, 107, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 594, 595, 0, - 0, 0, 0, 0, 248, 0, 0, 0, 0, 596, - 0, 187, 150, 290, 1250, 0, 251, 0, 188, 189, - 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, - 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, - 380, 209, 210, 211, 212, 213, 214, 0, 0, 0, + 0, 225, 226, 227, 0, 0, 0, 0, 0, 228, + 21, 0, 229, 0, 0, 0, 0, 230, 0, 0, + 231, 0, 0, 232, 0, 233, 0, 0, 0, 0, + 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 234, 0, 49, 0, 0, 235, + 0, 236, 0, 0, 0, 0, 0, 0, 59, 60, + 61, 62, 63, 0, 0, 65, 66, 67, 68, 69, + 0, 0, 0, 73, 0, 0, 76, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 1764, 0, 0, 0, 1765, + 0, 0, 0, 0, 0, 0, 0, 237, 0, 0, + 0, 238, 239, 0, 0, 0, 240, 241, 242, 0, + 243, 244, 245, 0, 0, 0, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, - 0, 224, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 225, 226, 227, 0, 0, 0, 0, - 0, 228, 21, 0, 229, 187, 150, 0, 1407, 0, - 0, 0, 188, 189, 190, 0, 0, 191, 192, 193, + 0, 0, 595, 1783, 0, 0, 0, 0, 0, 248, + 0, 0, 0, 0, 597, 187, 6, 0, 290, 0, + 0, 251, 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 380, 209, 210, 211, 212, 213, - 214, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + 214, 215, 216, 217, 218, 219, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 225, 226, 227, - 0, 0, 0, 0, 0, 228, 21, 0, 229, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 0, 0, 237, - 0, 549, 0, 238, 0, 0, 0, 1929, 240, 241, - 242, 1930, 243, 244, 245, 0, 0, 0, 107, 0, + 0, 0, 0, 0, 0, 228, 21, 0, 229, 0, + 0, 0, 0, 230, 0, 0, 231, 0, 0, 232, + 0, 233, 0, 0, 0, 0, 0, 0, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 246, 381, 0, 0, 0, 0, - 0, 248, 0, 0, 0, 0, 326, 0, 0, 0, - 0, 0, 0, 251, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 673, 545, 546, - 547, 548, 0, 0, 0, 0, 549, 0, 0, 0, - 0, 0, 0, 237, 0, 0, 727, 238, 0, 0, + 234, 0, 49, 0, 0, 235, 0, 236, 0, 0, + 0, 0, 0, 0, 59, 60, 61, 62, 63, 0, + 0, 65, 66, 67, 68, 69, 0, 0, 0, 73, + 0, 0, 76, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 674, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 1791, 0, 0, 0, 1792, 0, 0, 0, 0, + 0, 0, 0, 237, 0, 0, 0, 238, 239, 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 246, 381, - 0, 0, 0, 0, 0, 248, 187, 150, 0, 1465, + 0, 0, 0, 0, 0, 0, 0, 0, 246, 433, + 0, 0, 0, 0, 0, 248, 187, 150, 344, 0, 326, 0, 0, 188, 189, 190, 0, 251, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 380, 209, 210, 211, 212, - 213, 214, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, - 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 225, 226, - 227, 0, 0, 187, 150, 0, 228, 21, 0, 229, - 188, 189, 190, 0, 0, 191, 192, 193, 194, 195, + 213, 214, 0, 0, 0, 0, 0, 0, 0, 345, + 346, 347, 348, 349, 350, 351, 352, 353, 220, 221, + 222, 223, 354, 355, 356, 357, 224, 0, 0, 0, + 358, 359, 360, 0, 0, 361, 0, 362, 225, 226, + 227, 0, 0, 0, 0, 0, 228, 21, 363, 229, + 0, 364, 187, 150, 0, 0, 0, 0, 0, 188, + 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 380, 209, 210, 211, 212, 213, 214, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, + 0, 0, 224, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 225, 226, 227, 0, 0, 0, + 0, 0, 228, 21, 0, 229, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 237, 365, 366, 367, 238, 0, + 0, 0, 0, 240, 241, 242, 368, 243, 244, 245, + 369, 0, 370, 107, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, + 381, 0, 0, 0, 0, 0, 248, 0, 0, 0, + 0, 326, 0, 0, 0, 0, 0, 0, 251, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 674, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 1952, 0, 0, + 237, 1953, 0, 0, 238, 0, 0, 0, 0, 240, + 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 246, 381, 0, 0, 0, + 0, 0, 248, 0, 0, 0, 0, 326, 187, 150, + 0, 577, 0, 0, 251, 188, 189, 190, 0, 0, + 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, + 201, 202, 203, 204, 205, 206, 207, 380, 209, 210, + 211, 212, 213, 214, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 225, 226, 227, 0, 0, 0, 0, 0, 228, 21, + 0, 229, 187, 150, 0, 1254, 0, 0, 0, 188, + 189, 190, 0, 0, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 380, 209, 210, 211, 212, 213, 214, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, + 0, 0, 224, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 225, 226, 227, 0, 0, 0, + 0, 0, 228, 21, 0, 229, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 674, + 546, 547, 548, 549, 0, 0, 237, 0, 550, 0, + 238, 0, 0, 0, 0, 240, 241, 242, 728, 243, + 244, 245, 0, 0, 0, 107, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 595, 596, 0, 0, 0, 0, 0, 248, 0, + 0, 0, 0, 597, 0, 0, 0, 290, 0, 0, + 251, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 674, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 0, + 237, 0, 0, 900, 238, 0, 0, 0, 0, 240, + 241, 242, 0, 243, 244, 245, 0, 0, 0, 107, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 246, 381, 0, 0, 0, + 0, 0, 248, 187, 150, 0, 1415, 326, 0, 0, + 188, 189, 190, 0, 251, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 380, 209, 210, 211, 212, 213, 214, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 225, 226, 227, 0, 0, - 0, 0, 0, 228, 21, 0, 229, 531, 532, 533, - 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 673, 545, 546, 547, 548, 0, 0, 0, 0, 549, - 0, 0, 0, 0, 237, 0, 0, 0, 238, 898, - 0, 0, 0, 240, 241, 242, 0, 243, 244, 245, - 0, 0, 0, 107, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, - 381, 0, 0, 0, 0, 0, 248, 0, 0, 0, - 0, 326, 0, 0, 0, 0, 0, 0, 251, 0, - -4, 1, 0, 0, -4, 0, 0, 0, 0, 0, - 0, 0, 0, -4, -4, 0, 0, 0, 0, 0, - 0, 237, 0, 0, 0, 238, 0, 0, 0, 0, - 240, 241, 242, 0, 243, 244, 245, 0, 0, 0, - 107, 0, 0, 0, -4, -4, 0, 0, 0, 0, + 0, 0, 0, 228, 21, 0, 229, 187, 150, 0, + 1473, 0, 0, 0, 188, 189, 190, 0, 0, 191, + 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, + 202, 203, 204, 205, 206, 207, 380, 209, 210, 211, + 212, 213, 214, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 220, + 221, 222, 223, 0, 0, 0, 0, 224, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 225, + 226, 227, 0, 0, 0, 0, 0, 228, 21, 0, + 229, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 674, 546, 547, 548, 549, 0, + 0, 237, 0, 550, 0, 238, 0, 0, 0, 0, + 240, 241, 242, 901, 243, 244, 245, 0, 0, 0, + 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 246, 381, 0, 0, - 0, 0, 0, 248, -4, -4, -4, 0, 326, 0, - -4, -4, 0, -4, 0, 251, 0, 0, -4, -4, - 0, -4, -4, 0, -4, 0, 0, 0, 0, -4, - -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, - -4, -4, -4, -4, 0, 0, -4, -4, -4, -4, - -4, 0, -4, 0, -4, -4, -4, -4, -4, -4, - -4, 0, -4, -4, -4, -4, -4, -4, 0, -4, - -4, -4, -4, -4, -4, -4, -4, -4, 0, -4, - -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, - -4, -4, -4, 0, 6, 0, -4, -4, -4, 0, - 0, 0, -4, 7, 8, 0, 0, -4, -4, -4, - -4, 0, 0, -4, 0, -4, 0, -4, -4, -4, - -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, - -4, 0, 0, 0, 9, 10, 0, -4, -4, -4, - 0, 0, 0, 0, 0, 0, 0, 0, -4, 0, - -4, 0, 0, 0, 11, 12, 13, 0, 0, 0, - 14, 15, 0, 16, 0, 0, 0, 0, 17, 18, - 0, 19, 20, 0, 21, 0, 0, 0, 0, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 0, 0, 37, 38, 39, 40, - 41, 0, 42, 0, 43, 44, 45, 46, 47, 48, - 49, 0, 50, 51, 52, 53, 54, 55, 0, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 0, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 0, 0, 0, 79, 80, 81, 0, - 0, 0, 82, 0, 0, 0, 0, 83, 84, 85, - 86, 150, 344, 87, 0, 88, 0, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 0, 0, 0, 0, 0, 0, 103, 104, 105, - 0, 374, 344, 0, 0, 0, 0, 0, 106, 0, - 107, 0, 0, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 0, 0, 0, 0, 354, 355, 356, 357, - 0, 0, 344, 0, 358, 359, 360, 0, 0, 361, - 0, 362, 0, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 363, 0, 0, 364, 354, 355, 356, 357, - 0, 0, 0, 0, 358, 359, 360, 0, 0, 361, - 0, 362, 0, 345, 346, 347, 348, 349, 350, 351, - 352, 353, 363, 0, 0, 364, 354, 355, 356, 357, - 0, 0, 0, 0, 358, 359, 360, 0, 0, 361, - 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 363, 0, 0, 364, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 0, 0, 0, 549, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 899, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 365, - 366, 367, 0, 0, 0, 0, 0, 0, 0, 0, - 368, 0, 0, 0, 369, 0, 370, 107, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 365, - 366, 367, 0, 0, 0, 0, 0, 0, 0, 0, - 368, 0, 0, 0, 369, 0, 370, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 365, - 366, 367, 0, 0, 0, 0, 0, 0, 0, 0, - 368, 0, 0, 0, 369, 0, 370, 531, 532, 533, + 0, 0, 0, 248, 0, 0, 0, 0, 326, 0, + 0, 0, 0, 0, 0, 251, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 674, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 0, 237, 0, 0, 944, 238, + 0, 0, 0, 0, 240, 241, 242, 0, 243, 244, + 245, 0, 0, 0, 107, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 246, 381, 0, 0, 0, 0, 0, 248, 187, 150, + 0, 0, 326, 0, 0, 188, 189, 190, 0, 251, + 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, + 201, 202, 203, 204, 205, 206, 207, 380, 209, 210, + 211, 212, 213, 214, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 220, 221, 222, 223, 0, 0, 0, 0, 224, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 225, 226, 227, 0, 0, 0, 0, 0, 228, 21, + 0, 229, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 674, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1085, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1095, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -4, 1, 0, 0, -4, + 0, 0, 0, 0, 0, 0, 0, 0, -4, -4, + 0, 0, 0, 0, 0, 0, 237, 0, 0, 0, + 238, 0, 0, 0, 0, 240, 241, 242, 0, 243, + 244, 245, 0, 0, 0, 107, 0, 0, 0, -4, + -4, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 246, 381, 0, 0, 0, 0, 0, 248, -4, + -4, -4, 0, 326, 0, -4, -4, 0, -4, 0, + 251, 0, 0, -4, -4, 0, -4, -4, 0, -4, + 0, 0, 0, 0, -4, -4, -4, -4, -4, -4, + -4, -4, -4, -4, -4, -4, -4, -4, -4, 0, + 0, -4, -4, -4, -4, -4, 0, -4, 0, -4, + -4, -4, -4, -4, -4, -4, 0, -4, -4, -4, + -4, -4, -4, 0, -4, -4, -4, -4, -4, -4, + -4, -4, -4, 0, -4, -4, -4, -4, -4, -4, + -4, -4, -4, -4, -4, -4, -4, -4, 0, 6, + 0, -4, -4, -4, 0, 0, 0, -4, 7, 8, + 0, 0, -4, -4, -4, -4, 0, 0, -4, 0, + -4, 0, -4, -4, -4, -4, -4, -4, -4, -4, + -4, -4, -4, -4, -4, -4, 0, 0, 0, 9, + 10, 0, -4, -4, -4, 0, 0, 0, 0, 0, + 0, 0, 0, -4, 0, -4, 0, 0, 0, 11, + 12, 13, 0, 0, 0, 14, 15, 0, 16, 0, + 0, 0, 0, 17, 18, 0, 19, 20, 0, 21, + 0, 0, 0, 0, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, 35, 36, 0, + 0, 37, 38, 39, 40, 41, 0, 42, 0, 43, + 44, 45, 46, 47, 48, 49, 0, 50, 51, 52, + 53, 54, 55, 0, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 0, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 75, 76, 77, 78, 0, 0, + 0, 79, 80, 81, 0, 0, 0, 82, 0, 0, + 0, 0, 83, 84, 85, 86, 150, 344, 87, 0, + 88, 0, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 0, 0, 0, 0, + 0, 0, 103, 104, 105, 0, 150, 344, 0, 0, + 0, 0, 0, 106, 0, 107, 0, 0, 345, 346, + 347, 348, 349, 350, 351, 352, 353, 0, 0, 0, + 0, 354, 355, 356, 357, 0, 374, 344, 0, 358, + 359, 360, 0, 0, 361, 0, 362, 0, 345, 346, + 347, 348, 349, 350, 351, 352, 353, 363, 0, 0, + 364, 354, 355, 356, 357, 0, 0, 344, 0, 358, + 359, 360, 0, 0, 361, 0, 362, 0, 345, 346, + 347, 348, 349, 350, 351, 352, 353, 363, 0, 0, + 364, 354, 355, 356, 357, 0, 0, 393, 0, 358, + 359, 360, 0, 0, 361, 0, 362, 0, 345, 346, + 347, 348, 349, 350, 351, 352, 353, 363, 0, 0, + 364, 354, 355, 356, 357, 0, 0, 0, 0, 358, + 359, 360, 0, 0, 361, 0, 362, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 363, 0, 0, + 364, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 365, 366, 367, 0, 0, 0, + 0, 0, 0, 0, 0, 368, 0, 0, 0, 369, + 0, 370, 107, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 365, 366, 367, 0, 0, 0, + 0, 0, 0, 0, 0, 368, 0, 0, 0, 369, + 0, 370, 107, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 365, 366, 367, 0, 0, 0, + 0, 0, 0, 0, 0, 368, 0, 0, 0, 369, + 0, 370, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 365, 366, 367, 0, 0, 0, + 0, 0, 0, 0, 0, 368, 0, 0, 0, 369, + 0, 370, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 674, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1096, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1097, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 673, 545, 546, 547, 548, 0, 0, 0, 0, 549, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 942, - 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 673, 545, 546, 547, 548, 0, 0, - 0, 0, 549, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1083, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1093, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 0, 0, 0, 549, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1094, 531, + 544, 674, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1102, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 674, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1103, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1105, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1211, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 0, 0, 0, - 0, 549, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1095, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 673, 545, 546, 547, 548, - 0, 0, 0, 0, 549, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1100, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, 673, 545, - 546, 547, 548, 0, 0, 0, 0, 549, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1101, 531, 532, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1232, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 674, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1315, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 674, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1409, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1103, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 673, 545, 546, 547, 548, 0, - 0, 0, 0, 549, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1207, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 673, 545, 546, - 547, 548, 0, 0, 0, 0, 549, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1228, 531, 532, 533, + 543, 544, 674, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1410, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 674, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1452, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1572, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 673, 545, 546, 547, 548, 0, 0, 0, 0, 549, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1309, - 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 673, 545, 546, 547, 548, 0, 0, - 0, 0, 549, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1401, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1402, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 0, 0, 0, 549, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1444, 531, + 544, 674, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1573, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 674, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1574, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1580, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1581, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 0, 0, 0, - 0, 549, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1562, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 673, 545, 546, 547, 548, - 0, 0, 0, 0, 549, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1563, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, 673, 545, - 546, 547, 548, 0, 0, 0, 0, 549, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1564, 531, 532, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1582, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 674, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1583, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 674, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1712, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1570, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 673, 545, 546, 547, 548, 0, - 0, 0, 0, 549, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1571, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 673, 545, 546, - 547, 548, 0, 0, 0, 0, 549, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1572, 531, 532, 533, + 543, 544, 674, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1827, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 674, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1828, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1854, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 673, 545, 546, 547, 548, 0, 0, 0, 0, 549, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1573, - 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 673, 545, 546, 547, 548, 0, 0, - 0, 0, 549, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1695, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1809, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 0, 0, 0, 549, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1810, 531, + 544, 674, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1855, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 674, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1856, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 1857, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 1858, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 0, 0, 0, - 0, 549, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1834, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 673, 545, 546, 547, 548, - 0, 0, 0, 0, 549, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1835, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, 673, 545, - 546, 547, 548, 0, 0, 0, 0, 549, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1836, 531, 532, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1921, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 674, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1978, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 674, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1979, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 1837, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 673, 545, 546, 547, 548, 0, - 0, 0, 0, 549, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 1838, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 673, 545, 546, - 547, 548, 0, 0, 0, 0, 549, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1898, 531, 532, 533, + 543, 544, 674, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1991, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 674, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 1992, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 1993, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 673, 545, 546, 547, 548, 0, 0, 0, 0, 549, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1955, - 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 673, 545, 546, 547, 548, 0, 0, - 0, 0, 549, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 1956, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 1968, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 0, 0, 0, 549, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1969, 531, + 544, 674, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 1994, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 674, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 1995, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2027, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2057, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 0, 0, 0, - 0, 549, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 1970, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 673, 545, 546, 547, 548, - 0, 0, 0, 0, 549, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 1971, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, 673, 545, - 546, 547, 548, 0, 0, 0, 0, 549, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 1972, 531, 532, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2062, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 674, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 2063, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 674, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 2064, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2004, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 673, 545, 546, 547, 548, 0, - 0, 0, 0, 549, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2034, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 673, 545, 546, - 547, 548, 0, 0, 0, 0, 549, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 2039, 531, 532, 533, + 543, 544, 674, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2065, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 674, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 2066, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2067, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 673, 545, 546, 547, 548, 0, 0, 0, 0, 549, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 2040, - 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 673, 545, 546, 547, 548, 0, 0, - 0, 0, 549, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2041, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 2042, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 0, 0, 0, 549, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 2043, 531, + 544, 674, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 2109, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 674, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 2110, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 2111, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2112, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 0, 0, 0, - 0, 549, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2044, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 673, 545, 546, 547, 548, - 0, 0, 0, 0, 549, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2086, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, 673, 545, - 546, 547, 548, 0, 0, 0, 0, 549, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 2087, 531, 532, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 1114, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 2088, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 673, 545, 546, 547, 548, 0, - 0, 0, 0, 549, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2089, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 673, 545, 546, - 547, 548, 0, 0, 0, 0, 549, 0, 0, 0, - 0, 0, 1020, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 0, 0, 0, - 0, 1112, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 673, 545, 546, 547, 548, - 0, 0, 0, 0, 549, 0, 0, 0, 0, 0, - 1187, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 673, 545, 546, 547, 548, 0, - 0, 0, 0, 549, 0, 0, 0, 0, 0, 1256, - 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 673, 545, 546, 547, 548, 0, 0, - 0, 0, 549, 0, 0, 0, 0, 0, 1403, 531, + 543, 544, 674, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 1191, 532, 533, + 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, + 544, 674, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 1260, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 1411, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 674, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 1479, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 1480, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 1481, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 674, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 1482, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 674, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 1762, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 674, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 1773, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 0, 0, 0, - 0, 549, 0, 0, 0, 0, 0, 1471, 531, 532, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 1809, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 0, 0, 0, 0, 1472, 531, 532, 533, + 543, 544, 674, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 1844, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 673, 545, 546, 547, 548, 0, 0, 0, 0, 549, - 0, 0, 0, 0, 0, 1473, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 0, 0, 0, 549, 0, - 0, 0, 0, 0, 1474, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, 673, 545, - 546, 547, 548, 0, 0, 0, 0, 549, 0, 0, - 0, 0, 0, 1744, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 673, 545, 546, - 547, 548, 0, 0, 0, 0, 549, 0, 0, 0, - 0, 0, 1755, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 0, 0, 0, - 0, 1791, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 673, 545, 546, 547, 548, - 0, 0, 0, 0, 549, 0, 0, 0, 0, 0, - 1824, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 673, 545, 546, 547, 548, 0, - 0, 0, 0, 549, 0, 0, 0, 0, 0, 1825, - 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 673, 545, 546, 547, 548, 0, 0, - 0, 0, 549, 0, 0, 0, 0, 0, 1826, 531, + 544, 674, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 1845, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 1846, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 674, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 1847, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 1849, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 1872, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 674, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 1887, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 674, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 1941, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 674, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 1958, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 0, 0, 0, - 0, 549, 0, 0, 0, 0, 0, 1827, 531, 532, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 1967, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 0, 0, 0, 0, 1829, 531, 532, 533, + 543, 544, 674, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 1968, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 673, 545, 546, 547, 548, 0, 0, 0, 0, 549, - 0, 0, 0, 0, 0, 1851, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 0, 0, 0, 549, 0, - 0, 0, 0, 0, 1866, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, 673, 545, - 546, 547, 548, 0, 0, 0, 0, 549, 0, 0, - 0, 0, 0, 1918, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 673, 545, 546, - 547, 548, 0, 0, 0, 0, 549, 0, 0, 0, - 0, 0, 1935, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 0, 0, 0, - 0, 1944, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 673, 545, 546, 547, 548, - 0, 0, 0, 0, 549, 0, 0, 0, 0, 0, - 1945, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 673, 545, 546, 547, 548, 0, - 0, 0, 0, 549, 0, 0, 0, 0, 0, 1966, - 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 673, 545, 546, 547, 548, 0, 0, - 0, 0, 549, 0, 0, 0, 0, 0, 2020, 531, + 544, 674, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 0, 1989, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 0, 0, 2043, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 674, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 0, 2085, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 0, 0, 2107, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 0, 2133, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 674, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 0, + 0, 2134, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 674, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 0, 0, + 2135, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 674, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 0, 0, 2136, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 0, 0, 0, - 0, 549, 0, 0, 0, 0, 0, 2062, 531, 532, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 0, 0, 2137, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 0, 0, 0, 0, 2084, 531, 532, 533, + 543, 544, 674, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 0, 0, 2138, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 673, 545, 546, 547, 548, 0, 0, 0, 0, 549, - 0, 0, 0, 0, 0, 2110, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 0, 0, 0, 549, 0, - 0, 0, 0, 0, 2111, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, 673, 545, - 546, 547, 548, 0, 0, 0, 0, 549, 0, 0, - 0, 0, 0, 2112, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 673, 545, 546, - 547, 548, 0, 0, 0, 0, 549, 0, 0, 0, - 0, 0, 2113, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 0, 0, 0, - 0, 2114, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 673, 545, 546, 547, 548, - 0, 0, 0, 0, 549, 0, 0, 0, 0, 0, - 2115, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 673, 545, 546, 547, 548, 0, - 0, 0, 0, 549, 0, 0, 0, 0, 674, 531, - 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 0, 0, 0, - 0, 549, 0, 0, 0, 0, 890, 531, 532, 533, - 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 673, 545, 546, 547, 548, 0, 0, 0, 0, 549, - 0, 0, 0, 0, 1844, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, 673, 545, - 546, 547, 548, 0, 0, 0, 0, 549, 0, 696, - 0, 697, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 673, 545, 546, 547, 548, - 0, 0, 0, 0, 549, 0, 0, 0, 948, 531, + 544, 674, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 0, 675, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 674, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 0, 892, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 0, 1865, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 674, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 697, 0, 698, 532, + 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, + 543, 544, 674, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 950, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 674, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 996, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 674, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 1137, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 0, 0, 0, - 0, 549, 0, 0, 0, 994, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 0, 0, 0, 549, 0, - 0, 0, 1134, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 0, 0, 1200, - 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, - 541, 542, 543, 673, 545, 546, 547, 548, 0, 0, - 0, 0, 549, 0, 0, 0, 1201, 531, 532, 533, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 0, 0, 1204, 532, 533, 534, + 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, + 674, 546, 547, 548, 549, 0, 0, 0, 0, 550, + 0, 0, 0, 1205, 532, 533, 534, 535, 536, 537, + 538, 539, 540, 541, 542, 543, 544, 674, 546, 547, + 548, 549, 0, 0, 0, 0, 550, 0, 0, 0, + 1209, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 674, 546, 547, 548, 549, 0, + 0, 0, 0, 550, 0, 0, 0, 1210, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, - 673, 545, 546, 547, 548, 0, 0, 0, 0, 549, - 0, 0, 0, 1205, 531, 532, 533, 534, 535, 536, - 537, 538, 539, 540, 541, 542, 543, 673, 545, 546, - 547, 548, 0, 0, 0, 0, 549, 0, 0, 0, - 1206, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 673, 545, 546, 547, 548, 0, - 0, 0, 0, 549, 0, 0, 0, 1292, 531, 532, + 544, 674, 546, 547, 548, 549, 0, 0, 0, 0, + 550, 0, 0, 0, 1296, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 0, + 0, 1312, 532, 533, 534, 535, 536, 537, 538, 539, + 540, 541, 542, 543, 544, 674, 546, 547, 548, 549, + 0, 0, 0, 0, 550, 0, 0, 0, 1511, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 0, 0, 1307, 531, 532, 533, 534, 535, - 536, 537, 538, 539, 540, 541, 542, 543, 673, 545, - 546, 547, 548, 0, 0, 0, 0, 549, 0, 0, - 0, 1502, 531, 532, 533, 534, 535, 536, 537, 538, - 539, 540, 541, 542, 543, 673, 545, 546, 547, 548, - 0, 0, 0, 0, 549, 0, 0, 0, 1630, 531, + 543, 544, 674, 546, 547, 548, 549, 0, 0, 0, + 0, 550, 0, 0, 0, 1643, 532, 533, 534, 535, + 536, 537, 538, 539, 540, 541, 542, 543, 544, 674, + 546, 547, 548, 549, 0, 0, 0, 0, 550, 0, + 0, 0, 1820, 532, 533, 534, 535, 536, 537, 538, + 539, 540, 541, 542, 543, 544, 674, 546, 547, 548, + 549, 0, 0, 0, 0, 550, 0, 0, 0, 1873, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, - 542, 543, 673, 545, 546, 547, 548, 0, 0, 0, - 0, 549, 0, 0, 0, 1802, 531, 532, 533, 534, - 535, 536, 537, 538, 539, 540, 541, 542, 543, 673, - 545, 546, 547, 548, 0, 0, 0, 0, 549, 0, - 0, 0, 1852, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 741, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 745, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 746, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 748, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 750, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 751, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 753, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 755, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 756, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 757, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 758, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 759, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 760, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 762, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 763, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 764, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 829, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 861, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 919, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 937, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 938, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 939, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 940, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 946, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 947, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 979, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 993, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1051, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1056, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1069, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1133, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1139, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1140, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1141, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1155, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1156, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1157, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1186, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1188, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1189, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1190, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1191, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1192, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1193, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1194, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1199, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1291, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1306, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1507, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1574, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1689, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1690, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1691, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1692, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1745, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 1754, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 1777, 531, 532, - 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, - 543, 673, 545, 546, 547, 548, 0, 0, 0, 0, - 549, 0, 2033, 531, 532, 533, 534, 535, 536, 537, - 538, 539, 540, 541, 542, 543, 673, 545, 546, 547, - 548, 0, 0, 0, 0, 549, 0, 2081 + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 742, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 746, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 747, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 749, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 751, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 752, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 754, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 756, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 757, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 758, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 759, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 760, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 761, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 763, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 764, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 765, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 830, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 863, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 921, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 939, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 940, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 941, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 942, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 948, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 949, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 981, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 995, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1053, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1058, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1071, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1136, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1143, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1144, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1145, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1159, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1160, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1161, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1190, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1192, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1193, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1194, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1195, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1196, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1197, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1198, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1203, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1295, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1311, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1516, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1584, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1592, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1698, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1704, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1705, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1706, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1707, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1711, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1763, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1772, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1795, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1859, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 1919, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 1920, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550, 0, 2056, + 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, + 542, 543, 544, 674, 546, 547, 548, 549, 0, 0, + 0, 0, 550, 0, 2104, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 674, 546, + 547, 548, 549, 0, 0, 0, 0, 550 }; static const yytype_int16 yycheck[] = { - 3, 498, 591, 592, 1181, 132, 1185, 691, 7, 3, - 283, 6, 4, 4, 1656, 699, 1658, 1618, 21, 4, - 22, 23, 4, 7, 21, 4, 97, 706, 1817, 6, - 235, 236, 4, 6, 148, 295, 4, 4, 6, 5, - 4, 6, 5, 4, 47, 724, 6, 118, 5, 226, - 227, 4, 4, 313, 94, 0, 4, 97, 5, 173, - 6, 128, 4, 6, 5, 235, 236, 132, 5, 97, - 247, 74, 137, 138, 244, 189, 190, 9, 145, 82, - 6, 226, 227, 241, 87, 14, 153, 154, 155, 247, - 118, 4, 159, 160, 241, 98, 226, 227, 60, 61, - 247, 63, 247, 226, 227, 242, 239, 6, 241, 246, - 175, 226, 227, 243, 247, 1716, 238, 377, 240, 379, - 239, 186, 241, 91, 247, 238, 386, 242, 247, 132, - 132, 7, 84, 244, 137, 138, 247, 226, 227, 133, - 226, 227, 145, 226, 227, 238, 643, 239, 645, 226, - 227, 6, 244, 156, 238, 158, 240, 4, 247, 242, - 163, 247, 9, 97, 6, 168, 161, 226, 227, 239, - 247, 241, 175, 9, 1963, 94, 179, 247, 97, 182, - 183, 184, 185, 186, 161, 238, 9, 6, 247, 242, - 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, - 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, - 212, 213, 214, 215, 216, 217, 218, 219, 220, 176, - 222, 223, 226, 227, 188, 210, 228, 229, 210, 176, - 238, 234, 184, 9, 7, 176, 238, 239, 210, 176, - 1841, 7, 1419, 247, 247, 244, 238, 250, 251, 240, - 163, 164, 165, 166, 238, 246, 240, 6, 210, 238, - 245, 264, 210, 242, 267, 268, 269, 270, 210, 242, - 242, 238, 275, 276, 277, 242, 242, 238, 281, 242, - 283, 242, 242, 226, 227, 238, 183, 184, 185, 242, - 242, 6, 238, 1894, 242, 242, 242, 239, 6, 241, - 226, 227, 4, 306, 307, 308, 238, 6, 240, 993, - 994, 94, 244, 98, 97, 100, 99, 320, 321, 384, - 580, 6, 582, 583, 286, 287, 7, 226, 227, 4, - 243, 240, 294, 295, 239, 211, 212, 213, 214, 599, - 240, 47, 247, 345, 346, 347, 97, 132, 99, 351, - 352, 353, 354, 355, 356, 357, 1998, 359, 238, 235, - 236, 363, 364, 210, 238, 367, 221, 222, 244, 238, - 155, 268, 269, 270, 238, 226, 227, 637, 380, 221, - 222, 384, 226, 227, 91, 388, 389, 94, 235, 236, - 97, 238, 99, 240, 111, 242, 247, 244, 239, 235, - 236, 404, 238, 247, 240, 241, 247, 410, 244, 306, - 307, 308, 235, 236, 674, 238, 238, 240, 235, 236, - 4, 244, 238, 320, 321, 242, 429, 492, 238, 494, - 433, 496, 497, 226, 227, 2036, 226, 227, 211, 212, - 213, 214, 1121, 97, 1123, 211, 212, 213, 214, 244, - 515, 516, 247, 1132, 247, 226, 227, 247, 239, 235, - 236, 238, 238, 1147, 240, 1149, 247, 1151, 244, 1153, - 239, 173, 174, 179, 7, 239, 247, 480, 247, 239, - 7, 226, 227, 247, 487, 488, 238, 247, 238, 492, - 242, 494, 495, 496, 497, 498, 2097, 500, 173, 174, - 226, 227, 247, 226, 227, 226, 227, 510, 511, 512, - 513, 514, 515, 516, 517, 518, 242, 520, 238, 522, - 6, 518, 242, 520, 247, 243, 247, 529, 234, 247, - 211, 212, 213, 214, 239, 8, 226, 227, 226, 227, - 91, 544, 247, 94, 226, 227, 97, 550, 132, 133, - 134, 135, 231, 232, 235, 236, 243, 247, 237, 247, - 247, 267, 1241, 147, 691, 247, 150, 235, 236, 275, - 276, 277, 575, 576, 242, 281, 243, 6, 7, 644, - 247, 646, 647, 648, 649, 650, 651, 238, 653, 654, - 655, 656, 226, 227, 659, 660, 661, 591, 592, 238, - 91, 243, 8, 94, 128, 247, 97, 392, 99, 242, - 239, 1290, 241, 247, 511, 512, 513, 514, 621, 622, - 623, 145, 239, 238, 241, 242, 1305, 589, 590, 153, - 154, 155, 594, 243, 894, 159, 160, 247, 226, 227, - 643, 644, 645, 646, 647, 648, 649, 650, 651, 238, - 653, 654, 655, 656, 657, 238, 659, 660, 661, 662, - 663, 226, 227, 666, 729, 662, 238, 226, 227, 734, - 226, 227, 243, 238, 4, 238, 247, 242, 211, 212, - 213, 214, 388, 389, 211, 212, 213, 214, 247, 226, - 227, 247, 238, 132, 133, 698, 242, 242, 404, 138, - 703, 238, 235, 236, 239, 242, 241, 242, 235, 236, - 226, 227, 228, 229, 230, 231, 232, 720, 721, 243, - 239, 237, 241, 726, 94, 239, 729, 241, 247, 732, - 857, 734, 94, 247, 519, 97, 243, 99, 238, 742, - 247, 744, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - 91, 91, 97, 94, 237, 95, 97, 242, 99, 128, - 243, 101, 102, 238, 104, 105, 242, 242, 132, 133, - 565, 566, 567, 568, 138, 94, 145, 243, 97, 495, - 99, 247, 122, 1477, 153, 154, 155, 800, 243, 243, - 159, 160, 247, 247, 510, 1489, 6, 7, 1987, 215, - 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 244, 97, 246, - 99, 237, 228, 229, 230, 231, 232, 243, 243, 238, - 243, 237, 247, 846, 247, 2022, 243, 97, 243, 243, - 247, 128, 247, 247, 243, 243, 859, 243, 247, 247, - 97, 247, 99, 97, 867, 243, 993, 994, 145, 247, - 243, 2050, 94, 658, 247, 243, 153, 154, 155, 247, - 94, 4, 159, 160, 243, 243, 243, 890, 243, 247, - 247, 243, 247, 243, 2071, 247, 243, 247, 3, 4, - 247, 4, 4, 6, 243, 10, 11, 12, 247, 4, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 4, 897, 243, 243, 238, 243, - 247, 247, 904, 247, 243, 243, 908, 238, 247, 247, - 55, 56, 57, 58, 238, 740, 238, 243, 63, 1024, - 128, 247, 238, 243, 243, 243, 243, 247, 247, 247, - 75, 76, 77, 6, 6, 240, 243, 145, 83, 84, - 247, 86, 985, 238, 243, 153, 154, 155, 247, 240, - 6, 159, 160, 1490, 1491, 242, 999, 246, 243, 1272, - 243, 1004, 247, 6, 247, 246, 1133, 1134, 1011, 1012, - 1013, 1014, 243, 243, 1603, 1604, 247, 247, 238, 9, - 238, 1024, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 229, 230, 231, 232, 1037, 243, 238, 118, 237, - 247, 1106, 1107, 238, 243, 238, 1049, 1050, 247, 1052, - 238, 1054, 1055, 238, 1057, 238, 1059, 1060, 1061, 1062, - 1063, 1064, 1065, 1066, 1067, 243, 243, 1070, 243, 247, - 247, 242, 247, 243, 243, 243, 243, 247, 247, 238, - 247, 238, 238, 1045, 238, 238, 191, 238, 238, 238, - 195, 4, 238, 238, 242, 200, 201, 202, 242, 204, - 205, 206, 1105, 1106, 1107, 210, 218, 219, 220, 221, + 3, 498, 1189, 283, 592, 593, 707, 1185, 4, 3, + 1631, 692, 1669, 5, 1671, 4, 4, 4, 21, 700, + 4, 21, 295, 5, 725, 5, 7, 5, 7, 4, + 4, 4, 4, 4, 132, 238, 5, 4, 6, 5, + 313, 6, 6, 4, 47, 4, 6, 226, 227, 148, + 1837, 4, 239, 4, 98, 4, 100, 244, 9, 6, + 4, 9, 242, 4, 97, 6, 246, 132, 247, 239, + 6, 74, 137, 138, 173, 226, 227, 247, 9, 82, + 6, 183, 184, 185, 87, 118, 226, 227, 132, 0, + 189, 190, 7, 226, 227, 98, 247, 84, 60, 61, + 14, 63, 6, 241, 377, 7, 379, 247, 9, 247, + 175, 155, 1733, 386, 247, 9, 239, 226, 227, 226, + 227, 186, 226, 227, 247, 9, 238, 97, 239, 132, + 241, 832, 235, 236, 137, 138, 247, 6, 247, 133, + 247, 244, 145, 247, 226, 227, 6, 644, 118, 646, + 91, 239, 238, 156, 240, 158, 6, 226, 227, 247, + 163, 243, 7, 235, 236, 168, 268, 269, 270, 7, + 226, 227, 175, 7, 226, 227, 179, 239, 247, 182, + 183, 184, 185, 186, 176, 247, 242, 97, 163, 164, + 165, 166, 239, 161, 241, 247, 161, 184, 176, 1986, + 247, 226, 227, 241, 306, 307, 308, 176, 239, 247, + 176, 7, 239, 239, 241, 241, 247, 188, 320, 321, + 247, 210, 247, 210, 173, 174, 6, 226, 227, 173, + 174, 234, 211, 212, 213, 214, 210, 210, 210, 238, + 238, 1862, 238, 242, 247, 240, 242, 250, 251, 1427, + 242, 251, 240, 6, 238, 242, 245, 210, 246, 210, + 242, 264, 242, 244, 267, 268, 269, 270, 243, 242, + 242, 238, 275, 276, 277, 242, 6, 238, 281, 238, + 283, 242, 242, 242, 235, 236, 239, 238, 241, 240, + 238, 242, 240, 244, 1915, 242, 211, 212, 213, 214, + 226, 227, 238, 306, 307, 308, 242, 238, 581, 240, + 583, 584, 6, 244, 995, 996, 4, 320, 321, 384, + 235, 236, 226, 227, 286, 287, 238, 600, 94, 244, + 242, 97, 294, 295, 235, 236, 238, 238, 240, 240, + 241, 235, 236, 244, 238, 238, 240, 47, 392, 242, + 244, 235, 236, 6, 238, 238, 240, 226, 227, 242, + 244, 221, 222, 6, 2021, 638, 211, 212, 213, 214, + 240, 221, 222, 211, 212, 213, 214, 211, 212, 213, + 214, 384, 226, 227, 239, 388, 389, 226, 227, 238, + 235, 236, 247, 226, 227, 6, 7, 235, 236, 226, + 227, 404, 675, 247, 226, 227, 238, 410, 247, 511, + 512, 513, 514, 239, 247, 211, 212, 213, 214, 243, + 247, 247, 1123, 247, 1125, 247, 429, 492, 238, 494, + 433, 496, 497, 239, 1135, 241, 226, 227, 2059, 235, + 236, 247, 226, 227, 132, 133, 134, 135, 226, 227, + 515, 516, 4, 239, 243, 241, 128, 247, 247, 147, + 243, 247, 150, 247, 247, 226, 227, 243, 238, 247, + 1151, 247, 1153, 145, 1155, 519, 1157, 480, 97, 179, + 99, 153, 154, 155, 487, 488, 247, 159, 160, 492, + 238, 494, 495, 496, 497, 498, 238, 500, 243, 2120, + 226, 227, 247, 6, 7, 226, 227, 510, 511, 512, + 513, 514, 515, 516, 517, 518, 238, 520, 518, 522, + 520, 247, 566, 567, 568, 569, 247, 231, 232, 128, + 226, 227, 91, 237, 234, 94, 8, 243, 97, 91, + 99, 247, 545, 95, 1245, 238, 145, 240, 551, 101, + 102, 247, 104, 105, 153, 154, 155, 235, 236, 238, + 159, 160, 226, 227, 242, 235, 236, 267, 226, 227, + 122, 243, 242, 576, 577, 275, 276, 277, 242, 238, + 645, 281, 647, 648, 649, 650, 651, 652, 238, 654, + 655, 656, 657, 1294, 692, 660, 661, 662, 592, 593, + 128, 94, 226, 227, 97, 91, 226, 227, 94, 1310, + 238, 97, 243, 99, 238, 659, 247, 145, 242, 622, + 623, 624, 242, 896, 238, 153, 154, 155, 590, 591, + 111, 159, 160, 595, 91, 238, 244, 94, 246, 242, + 97, 644, 645, 646, 647, 648, 649, 650, 651, 652, + 238, 654, 655, 656, 657, 658, 238, 660, 661, 662, + 663, 664, 238, 663, 667, 730, 242, 128, 6, 242, + 735, 226, 227, 228, 229, 230, 231, 232, 94, 132, + 133, 97, 237, 99, 145, 138, 243, 243, 388, 389, + 247, 247, 153, 154, 155, 97, 699, 741, 159, 160, + 239, 704, 241, 242, 404, 228, 229, 230, 231, 232, + 8, 97, 243, 99, 237, 243, 247, 91, 721, 722, + 94, 238, 243, 97, 727, 99, 247, 730, 132, 133, + 733, 243, 735, 94, 138, 247, 97, 243, 99, 238, + 743, 247, 745, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 226, 227, 242, 1127, 237, 242, 238, 233, 238, - 238, 238, 238, 238, 1137, 1138, 6, 242, 238, 240, - 245, 6, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 6, 1224, - 242, 867, 237, 1228, 1291, 1292, 242, 240, 242, 240, - 6, 240, 1237, 6, 1239, 242, 176, 1242, 238, 238, - 238, 238, 238, 238, 6, 158, 240, 6, 6, 242, - 163, 6, 1195, 242, 7, 168, 6, 242, 6, 242, - 87, 243, 239, 247, 1464, 1208, 1209, 1210, 1468, 182, - 995, 1484, 247, 7, 6, 6, 1219, 6, 239, 242, - 64, 1224, 64, 64, 64, 1228, 237, 1292, 4, 7, - 7, 6, 6, 6, 1237, 239, 1239, 6, 6, 1242, - 242, 7, 7, 6, 6, 6, 173, 242, 241, 7, - 1253, 8, 239, 6, 242, 244, 242, 242, 1847, 242, - 6, 240, 238, 4, 6, 239, 6, 6, 6, 1272, - 240, 7, 176, 7, 1276, 1277, 7, 7, 176, 985, - 7, 7, 7, 176, 7, 7, 7, 1784, 7, 1292, - 7, 264, 7, 7, 7, 7, 242, 6, 1004, 239, - 241, 239, 247, 247, 247, 242, 242, 242, 242, 1312, - 7, 7, 244, 242, 247, 4, 6, 239, 239, 247, - 1323, 8, 247, 239, 247, 239, 1329, 247, 128, 244, - 7, 243, 243, 6, 244, 7, 7, 7, 239, 239, - 247, 247, 9, 1049, 1050, 247, 1052, 239, 1054, 1055, - 1477, 1057, 241, 1059, 1060, 1061, 1062, 1063, 1064, 1065, - 1066, 1067, 246, 7, 148, 243, 242, 6, 6, 4, - 46, 46, 244, 242, 238, 1378, 1379, 1380, 238, 238, - 238, 1384, 244, 1386, 4, 1388, 7, 1390, 7, 1392, - 1393, 1394, 99, 7, 247, 7, 239, 1670, 7, 1105, - 7, 6, 97, 7, 7, 7, 1409, 7, 7, 4, - 109, 4, 242, 238, 6, 242, 7, 1420, 6, 245, - 7, 1127, 7, 7, 7, 1428, 7, 7, 1431, 7, - 6, 1137, 6, 6, 239, 7, 6, 6, 4, 4, - 4, 247, 243, 247, 242, 242, 242, 6, 6, 1514, - 6, 6, 1579, 7, 240, 6, 1418, 238, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 6, 6, 238, 6, - 237, 1484, 239, 242, 241, 241, 6, 1490, 1491, 1195, - 244, 6, 247, 1496, 242, 242, 122, 6, 242, 242, - 6, 6, 1208, 1209, 1210, 242, 6, 176, 6, 6, - 6, 1514, 6, 6, 6, 6, 1519, 6, 5, 239, - 1523, 239, 6, 247, 4, 1310, 4, 1312, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 6, 1253, 6, 522, - 237, 242, 239, 7, 242, 1682, 242, 242, 242, 240, - 6, 6, 242, 242, 242, 6, 6, 6, 242, 6, - 6, 1533, 7, 4, 242, 172, 1641, 242, 242, 1644, - 239, 247, 238, 6, 247, 247, 247, 244, 242, 242, - 6, 6, 1595, 1596, 6, 6, 1856, 6, 4, 7, - 95, 6, 575, 576, 6, 6, 1312, 6, 6, 1603, - 1604, 1884, 5, 242, 239, 1618, 6, 1323, 242, 6, - 6, 1624, 6, 1329, 6, 6, 6, 6, 6, 247, - 1633, 6, 6, 6, 247, 6, 247, 4, 1641, 7, - 6, 1644, 6, 239, 6, 5, 7, 6, 621, 622, - 623, 6, 242, 242, 6, 6, 1659, 1619, 1620, 1621, - 1622, 1623, 1624, 1666, 243, 242, 6, 1670, 243, 1672, - 171, 242, 1378, 1379, 1380, 242, 239, 1462, 1384, 6, - 1386, 243, 1388, 243, 1390, 7, 1392, 1393, 1394, 1949, - 243, 6, 244, 666, 6, 6, 6, 242, 6, 6, - 6, 6, 6, 1409, 6, 6, 243, 6, 239, 242, - 6, 174, 6, 1716, 1420, 243, 238, 243, 242, 6, - 6, 242, 1428, 242, 6, 698, 243, 6, 1988, 242, - 6, 128, 6, 6, 1519, 242, 239, 6, 6, 6, - 6, 243, 6, 6, 243, 6, 6, 720, 6, 6, - 1753, 6, 242, 726, 242, 6, 6, 242, 6, 6, - 6, 6, 1765, 6, 1304, 2000, 426, 1818, 1355, 1527, - 1788, 1584, 1322, 3, 3, 1778, 3, 3, 1364, 564, - 1843, 1784, 1459, 3, 1666, -1, -1, -1, -1, -1, - 1496, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1812, - -1, -1, -1, 1519, 1599, -1, 1819, -1, -1, -1, - 1823, -1, -1, -1, -1, -1, -1, 800, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 1841, -1, - -1, 1844, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1855, 1847, 1639, -1, 1859, -1, -1, -1, - -1, 1646, 1647, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 846, -1, -1, -1, 1662, -1, -1, - -1, 1884, -1, -1, -1, -1, 859, -1, -1, -1, - -1, 1894, -1, -1, -1, -1, -1, -1, 1860, 1861, - 1862, 1863, 1864, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1618, -1, -1, -1, -1, 890, -1, 1922, - -1, -1, -1, -1, -1, -1, -1, 1633, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, -1, 1659, -1, -1, -1, -1, -1, 1921, - -1, -1, -1, 1925, -1, -1, 1672, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1990, 1991, 1992, - 1993, 1994, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1790, -1, -1, -1, -1, - 1716, -1, 1974, -1, -1, 2080, 1978, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1994, 2036, -1, -1, -1, 1822, 1011, 1012, - 1013, 1014, 2107, 2108, -1, -1, -1, 1753, -1, -1, - -1, -1, 2055, -1, -1, -1, -1, 6, -1, 2124, - -1, -1, -1, -1, -1, -1, 106, -1, -1, -1, - -1, -1, 13, 14, -1, -1, -1, 2080, -1, -1, - -1, -1, -1, 2045, 2046, -1, -1, -1, -1, -1, - -1, -1, 132, -1, 2097, 6, 136, 1070, -1, -1, - 140, -1, -1, -1, 2107, 2108, 1812, -1, -1, -1, - -1, -1, -1, 1819, -1, -1, -1, 157, 158, 159, - 160, 2124, 162, 163, 164, 165, -1, 167, 168, 169, - 170, 171, 172, 173, 174, 1841, 176, 177, 178, -1, - -1, -1, 182, -1, -1, -1, -1, -1, -1, 1855, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, -1, -1, 1138, 107, 108, 109, -1, - -1, 112, -1, -1, -1, -1, -1, 118, 119, 1964, - -1, 122, 123, -1, 125, 126, -1, -1, 1894, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 144, -1, -1, 246, 247, 248, 249, - 250, -1, -1, -1, -1, -1, 1922, -1, -1, -1, - -1, -1, -1, 263, 264, -1, -1, 168, 169, 170, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 279, - -1, -1, -1, -1, -1, -1, 1219, -1, -1, 289, - 290, -1, -1, -1, -1, 295, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 305, 215, 216, 217, 218, + 232, 859, 128, 94, 244, 237, 97, 247, 99, 243, + 243, 243, 238, 247, 247, 239, 242, 241, 242, 145, + 242, 97, 243, 99, 4, 5, 238, 153, 154, 155, + 242, 97, 243, 159, 160, 495, 247, 243, 801, 243, + 94, 247, 243, 247, 1485, 243, 247, 243, 243, 247, + 510, 247, 247, 243, 243, 243, 1497, 247, 247, 247, + 243, 243, 242, 2010, 247, 247, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 244, 242, 238, 247, 59, + 60, 61, 62, 238, 97, 848, 243, 67, 68, 69, + 247, 243, 72, 243, 74, 247, 243, 247, 861, 243, + 247, 94, 4, 247, 6, 85, 869, 2045, 88, 94, + 243, 243, 243, 97, 247, 247, 247, 243, 243, 8, + 243, 243, 247, 243, 247, 247, 2073, 247, 243, 892, + 243, 243, 247, 4, 247, 247, 243, 995, 996, 243, + 247, 4, 243, 247, 243, 125, 247, 243, 247, 243, + 243, 247, 4, 247, 247, 4, 2094, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 238, 243, 899, 243, 237, + 247, 238, 247, 238, 906, 243, 238, 238, 910, 6, + 6, 240, 238, 997, 6, 240, 246, 6, 242, 246, + 238, 1026, 9, 238, 238, 238, 238, 238, 118, 238, + 238, 238, 192, 193, 194, 238, 242, 238, 238, 238, + 238, 238, 238, 203, 987, 4, 238, 207, 242, 209, + 210, 242, 242, 242, 238, 238, 1276, 238, 1001, 238, + 238, 1498, 1499, 1006, 238, 6, 238, 6, 6, 240, + 1013, 1014, 1015, 1016, 242, 235, 236, 6, 6, 242, + 242, 240, 242, 1026, 244, 240, 240, 176, 1616, 1617, + 242, 238, 238, 238, 238, 238, 238, 6, 1136, 1137, + 240, 6, 6, 1108, 1109, 242, 6, 242, 1051, 1052, + 7, 1054, 6, 1056, 1057, 242, 1059, 6, 1061, 1062, + 1063, 1064, 1065, 1066, 1067, 1068, 1069, 242, 247, 1072, + 243, 87, 4, 5, 239, 247, 7, 6, 6, 6, + 239, 242, 64, 64, 64, 1047, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, 232, -1, -1, 326, -1, 237, -1, - 330, 331, 332, -1, 334, -1, -1, -1, 338, 339, - 340, -1, 243, 343, 215, 216, 217, 218, 219, 220, + 229, 230, 231, 232, 1107, 1108, 1109, 237, 237, 64, + 239, 244, 241, 4, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 7, 7, 6, 1129, 59, 60, 61, + 62, 6, 6, 239, 6, 67, 68, 69, 1141, 1142, + 72, 242, 74, 7, 6, 173, 7, 6, 6, 6, + 6, 242, 242, 85, 241, 239, 88, 242, 244, 242, + 242, 7, 6, 1228, 240, 238, 4, 1232, 239, 869, + 6, 6, 6, 6, 240, 7, 1241, 7, 1243, 176, + 7, 1246, 7, 176, 7, 7, 7, 7, 7, 176, + 7, 7, 7, 125, 7, 7, 1199, 1295, 1296, 1472, + 7, 7, 242, 1476, 6, 239, 241, 7, 247, 1212, + 1213, 1214, 1492, 242, 247, 247, 242, 242, 242, 239, + 1223, 238, 244, 7, 247, 1228, 4, 242, 239, 1232, + 6, 1296, 239, 247, 247, 239, 239, 247, 1241, 247, + 1243, 128, 244, 1246, 7, 6, 246, 243, 243, 7, + 7, 7, 244, 239, 1257, 239, 247, 247, 9, 8, + 192, 193, 194, 239, 247, 7, 241, 6, 148, 243, + 242, 203, 1316, 1276, 1318, 207, 6, 209, 210, 4, + 1868, 46, 46, 244, 4, 238, 238, 987, 238, 7, + 238, 7, 238, 1296, 99, 7, 247, 244, 239, 238, + 7, 7, 7, 6, 4, 1802, 1006, 239, 7, 241, + 7, 7, 7, 158, 7, 1318, 109, 4, 163, 242, + 6, 238, 6, 168, 7, 6, 1329, 7, 7, 7, + 7, 7, 1335, 7, 7, 242, 6, 182, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 1051, 1052, 6, 1054, 237, 1056, 1057, 6, 1059, + 97, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, + 7, 6, 6, 4, 4, 4, 245, 247, 243, 239, + 247, 6, 6, 1386, 1387, 1388, 6, 1485, 242, 1392, + 242, 1394, 242, 1396, 7, 1398, 6, 1400, 1401, 1402, + 240, 6, 6, 1683, 6, 242, 6, 1107, 247, 238, + 238, 6, 6, 244, 1417, 241, 6, 6, 242, 264, + 122, 6, 176, 6, 242, 1428, 1470, 6, 242, 1129, + 6, 242, 242, 1436, 6, 6, 1439, 6, 6, 6, + 6, 1141, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, 1523, 5, + 239, 247, 237, 6, 1426, 239, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, 239, 1529, 238, 4, 237, 1492, + 239, 6, 4, 1591, 242, 1498, 1499, 6, 242, 1199, + 7, 1504, 242, 6, 242, 240, 242, 6, 242, 242, + 242, 242, 1212, 1213, 1214, 242, 242, 6, 242, 6, + 1523, 6, 172, 6, 247, 247, 1529, 6, 239, 244, + 1533, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, 247, + 7, 242, 4, 237, 4, 247, 238, 1257, 6, 6, + 6, 6, 6, 6, 95, 7, 238, 6, 1612, 6, + 6, 6, 6, 5, 242, 239, 242, 6, 6, 6, + 6, 1543, 6, 6, 6, 6, 247, 6, 6, 1654, + 6, 6, 1657, 247, 239, 247, 6, 4, 1696, 242, + 6, 6, 6, 242, 1877, 1608, 1609, 7, 1652, 242, + 5, 243, 6, 6, 242, 1659, 1660, 243, 1318, 242, + 6, 242, 1616, 1617, 7, 1905, 6, 171, 1631, 1329, + 6, 1675, 239, 6, 1637, 1335, 7, 243, 6, 6, + 243, 6, 243, 1646, 6, 244, 242, 6, 6, 6, + 6, 1654, 6, 6, 1657, 6, 243, 6, 239, 6, + 242, 13, 14, 174, 6, 242, 6, 6, 243, 1672, + 1632, 1633, 1634, 1635, 1636, 1637, 1679, 522, 243, 238, + 1683, 242, 1685, 243, 242, 242, 1386, 1387, 1388, 6, + 128, 242, 1392, 6, 1394, 6, 1396, 6, 1398, 1972, + 1400, 1401, 1402, 242, 239, 6, 6, 6, 6, 243, + 243, 6, 6, 6, 6, 6, 6, 1417, 242, 6, + 242, 6, 6, 242, 6, 6, 6, 6, 1428, 6, + 1733, 576, 577, 2023, 1309, 1361, 1436, 426, 2011, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 1537, 1838, 1597, 107, 108, 109, 1806, 1328, + 112, 3, 3, 3, 1808, 3, 118, 119, 1771, 565, + 122, 123, 1864, 125, 126, 1370, 1467, 622, 623, 624, + 1783, 3, 1679, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 144, 1796, -1, -1, -1, -1, 1842, 1802, + -1, -1, -1, -1, 1504, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 168, 169, 170, -1, + -1, -1, 667, -1, -1, -1, -1, 1830, -1, 1529, + -1, -1, -1, -1, -1, -1, 1839, -1, -1, -1, + 1843, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 699, -1, -1, -1, -1, 1862, + -1, -1, 1865, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 1876, 1868, -1, 721, 1880, -1, -1, + -1, -1, 727, -1, -1, -1, -1, -1, -1, -1, + -1, 243, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1905, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1915, -1, -1, -1, -1, -1, -1, 1881, + 1882, 1883, 1884, 1885, -1, -1, -1, -1, -1, -1, + -1, 1631, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1945, 1987, -1, -1, 1646, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 801, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 6, -1, + -1, -1, 1672, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1944, -1, -1, 1685, 1948, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, - 2036, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 381, -1, -1, -1, 385, -1, -1, -1, -1, + 231, 232, -1, 848, -1, -1, 237, -1, -1, -1, + 2013, 2014, 2015, 2016, 2017, -1, 861, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 401, 402, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 415, -1, -1, -1, -1, - 6, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 2097, -1, 433, -1, -1, -1, -1, -1, 439, - -1, -1, -1, -1, 444, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 458, -1, - -1, -1, -1, -1, 464, 465, 466, 467, 468, 469, - 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, - 480, 481, 482, 483, 484, 485, 486, 487, 488, -1, - 490, 491, -1, 493, -1, -1, -1, -1, 1431, 499, - -1, -1, -1, 503, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 517, -1, -1, - -1, -1, 522, -1, -1, -1, -1, -1, -1, -1, - 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, - 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, - -1, 551, 552, -1, -1, -1, -1, -1, 558, 559, - 560, -1, -1, -1, -1, 565, 566, 567, 568, 569, - -1, 571, -1, 573, -1, 575, 576, -1, -1, -1, + -1, -1, -1, 1733, -1, 1997, -1, -1, 2103, 2001, + -1, -1, -1, -1, -1, -1, -1, 892, -1, -1, + -1, -1, -1, -1, -1, 2017, 2059, -1, -1, -1, + -1, -1, -1, -1, -1, 2130, 2131, -1, -1, -1, + -1, 1771, -1, -1, -1, 2078, -1, -1, -1, -1, + -1, -1, 2147, -1, -1, -1, -1, -1, -1, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 594, 595, 596, -1, -1, -1, - 600, 601, 602, 603, 604, 605, 606, 607, 608, -1, - -1, -1, -1, 613, -1, 615, -1, 617, -1, -1, - -1, 621, 622, 623, -1, -1, 626, 627, 628, 215, - 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, - -1, 237, 652, -1, -1, -1, -1, -1, 128, -1, - -1, -1, 1595, 1596, -1, -1, 666, -1, -1, -1, - -1, 671, -1, 673, -1, 675, 676, -1, -1, -1, - -1, -1, 682, -1, -1, -1, -1, -1, 688, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 698, -1, - -1, -1, -1, -1, 704, 705, -1, -1, -1, -1, + 2103, -1, -1, -1, -1, -1, 2068, 2069, -1, -1, + -1, -1, -1, -1, -1, 132, -1, 2120, 6, 136, + -1, -1, -1, 140, -1, -1, -1, 2130, 2131, -1, + 1830, -1, -1, -1, -1, -1, -1, -1, -1, 1839, + 157, 158, 159, 160, 2147, 162, 163, 164, 165, -1, + 167, 168, 169, 170, 171, 172, 173, 174, -1, 176, + 177, 178, 1862, -1, -1, 182, -1, -1, 1013, 1014, + 1015, 1016, -1, -1, -1, -1, 1876, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 720, -1, 722, 723, -1, -1, 726, 727, -1, -1, - -1, -1, -1, -1, -1, 735, -1, -1, -1, 739, - -1, -1, 742, -1, 744, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 230, 231, 232, 4, 5, 765, -1, 237, -1, -1, + -1, -1, -1, -1, -1, 1915, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 1072, -1, 246, + 247, 248, 249, 250, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1945, 263, 264, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 158, -1, -1, -1, -1, 163, -1, -1, -1, -1, - 168, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 800, -1, -1, -1, 182, 46, 47, 48, 49, 50, - 51, 52, 53, 54, -1, -1, -1, -1, 59, 60, - 61, 62, -1, -1, -1, -1, 67, 68, 69, -1, - -1, 72, -1, 74, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 85, 1778, 846, 88, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 859, - -1, -1, -1, -1, -1, -1, 866, -1, -1, 247, - -1, -1, 250, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 125, -1, 264, -1, -1, -1, - 890, -1, -1, -1, -1, -1, -1, -1, 898, 899, - -1, -1, -1, -1, 904, -1, -1, -1, -1, -1, - -1, 1844, -1, -1, -1, -1, -1, -1, -1, -1, - 920, -1, -1, 923, -1, -1, 1859, -1, -1, -1, + -1, -1, 279, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 289, 290, -1, -1, -1, -1, 295, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 305, -1, + -1, -1, -1, -1, -1, -1, -1, 1142, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 326, + -1, -1, -1, 330, 331, 332, -1, 334, -1, -1, + -1, 338, 339, 340, -1, -1, 343, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 2059, + -1, -1, -1, -1, 381, -1, -1, -1, 385, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1223, -1, + -1, -1, -1, -1, 401, 402, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 415, -1, + -1, -1, -1, -1, 6, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 433, -1, -1, -1, + 2120, -1, 439, -1, -1, -1, -1, 444, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 942, -1, 944, 945, -1, -1, -1, -1, - -1, 192, 193, 194, -1, -1, -1, -1, -1, -1, - -1, -1, 203, 963, -1, -1, 207, -1, 209, 210, + -1, 458, -1, -1, -1, -1, -1, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, + 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, + 487, 488, -1, 490, 491, 158, 493, -1, -1, -1, + 163, -1, 499, -1, -1, 168, 503, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 182, + 517, -1, -1, -1, -1, 522, -1, -1, -1, -1, + -1, -1, -1, -1, 531, 532, 533, 534, 535, 536, + 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, + 547, 548, 549, 550, -1, 552, 553, -1, -1, -1, + -1, -1, 559, 560, 561, -1, -1, -1, -1, 566, + 567, 568, 569, 570, -1, 572, 6, 574, -1, 576, + 577, -1, -1, -1, 247, -1, -1, 250, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 595, 596, + 597, 264, -1, -1, 601, 602, 603, 604, 605, 606, + 607, 608, 609, -1, 1439, -1, -1, 614, 6, 616, + -1, 618, -1, -1, -1, 622, 623, 624, -1, -1, + 627, 628, 629, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, 653, -1, -1, -1, + -1, -1, 128, -1, -1, -1, -1, -1, -1, -1, + 667, -1, -1, -1, -1, 672, -1, 674, -1, 676, + 677, -1, -1, -1, -1, -1, 683, -1, -1, -1, + -1, -1, 689, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 699, -1, -1, -1, -1, -1, 705, 706, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 981, -1, 4, 5, -1, -1, -1, 988, 989, - 990, 991, -1, -1, 235, 236, 996, -1, -1, -1, - -1, 242, -1, 244, -1, -1, -1, -1, -1, -1, - 1010, 1011, 1012, 1013, 1014, 1015, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 46, 47, 48, 49, 50, - 51, 52, 53, 54, -1, -1, -1, -1, 59, 60, - 61, 62, -1, -1, -1, -1, 67, 68, 69, -1, - -1, 72, -1, 74, -1, 433, -1, 1990, 1991, 1992, - 1993, 1994, 7, 8, 85, -1, -1, 88, -1, -1, - 1070, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 1083, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 1093, 1094, 1095, -1, -1, -1, -1, - 1100, 1101, 480, 1103, 125, -1, -1, -1, -1, 487, - 488, 1111, 6, 1113, 1114, 1115, 1116, 1117, -1, -1, - -1, -1, 2055, -1, 1124, -1, -1, -1, -1, 1129, - 1130, -1, -1, -1, -1, -1, -1, -1, 1138, 517, - -1, -1, -1, -1, 522, -1, -1, -1, 1148, -1, - 1150, -1, 1152, -1, 1154, -1, -1, -1, 6, -1, - -1, -1, -1, -1, -1, -1, 544, -1, -1, -1, - -1, 192, 193, 194, -1, 1175, -1, -1, -1, -1, - -1, -1, 203, -1, -1, -1, 207, -1, 209, 210, - -1, -1, -1, -1, -1, -1, -1, 575, 576, -1, - -1, -1, -1, -1, -1, -1, -1, 1207, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 239, 1219, - 241, -1, -1, -1, -1, -1, -1, 1227, -1, -1, + 6, -1, -1, -1, 721, -1, 723, 724, -1, -1, + 727, 728, -1, -1, -1, -1, -1, -1, -1, 736, + -1, -1, -1, 740, -1, -1, 743, -1, 745, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, 766, + 433, 237, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 1608, 1609, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, 801, -1, -1, 237, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 480, -1, -1, + -1, -1, -1, -1, 487, 488, -1, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, 848, -1, -1, 517, -1, -1, -1, -1, 522, + -1, -1, -1, -1, 861, -1, -1, -1, -1, -1, + -1, 868, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 545, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 892, -1, -1, -1, -1, + -1, -1, -1, 900, 901, -1, -1, -1, -1, 906, + -1, -1, -1, 576, 577, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 922, -1, -1, 925, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 944, -1, 946, + 947, 237, -1, 6, -1, -1, -1, -1, -1, 622, + 623, 624, -1, -1, -1, -1, -1, -1, 965, -1, + -1, 1796, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 983, -1, -1, -1, + -1, -1, -1, 990, 991, 992, 993, -1, -1, -1, + -1, 998, -1, -1, 667, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1012, 1013, 1014, 1015, 1016, + 1017, -1, -1, -1, -1, -1, 6, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 699, -1, -1, -1, + 1865, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1880, -1, -1, 721, -1, + -1, -1, -1, -1, 727, 6, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1072, -1, -1, -1, -1, + 743, -1, 745, -1, -1, -1, -1, -1, 1085, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 1095, 1096, + 1097, -1, -1, -1, -1, 1102, 1103, -1, 1105, -1, + -1, 6, -1, -1, -1, -1, 1113, -1, 1115, 1116, + 1117, 1118, 1119, -1, -1, -1, -1, -1, -1, 1126, + -1, -1, -1, -1, -1, 1132, 1133, -1, 801, -1, + -1, -1, 1139, -1, -1, 1142, 6, -1, -1, -1, + -1, -1, -1, -1, -1, 1152, -1, 1154, -1, 1156, + -1, 1158, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + 7, 8, 1179, -1, 237, 848, -1, -1, 2013, 2014, + 2015, 2016, 2017, -1, -1, -1, -1, -1, 861, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 621, 622, 623, -1, -1, -1, 1249, + -1, -1, -1, -1, 1211, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 1223, -1, -1, 892, + -1, -1, -1, -1, 1231, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 2078, -1, -1, 1253, 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 1263, -1, -1, 1266, -1, -1, -1, + 1267, 6, -1, 1270, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 6, -1, + 1297, -1, -1, -1, -1, -1, -1, 1304, 1305, 1306, + 1307, -1, -1, -1, -1, -1, 1313, -1, 1315, 1316, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, 666, -1, - -1, -1, 237, -1, -1, -1, -1, -1, -1, 1299, - 1300, 1301, 1302, -1, -1, -1, -1, -1, -1, 1309, - 1310, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 698, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, - -1, -1, 720, 237, -1, -1, -1, -1, 726, -1, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, + 1013, 1014, 1015, 1016, -1, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, 1072, + 237, 1408, 1409, 1410, -1, -1, -1, -1, -1, -1, + 1417, -1, 1419, -1, -1, -1, -1, -1, -1, 1426, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 742, -1, 744, 215, 216, 217, + -1, -1, 1439, -1, -1, -1, -1, 1444, -1, -1, + -1, -1, -1, -1, -1, 1452, 1453, 1454, -1, -1, + -1, -1, -1, -1, -1, 1462, -1, -1, -1, -1, + -1, -1, -1, -1, 1471, -1, -1, -1, -1, 1142, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, 1496, + -1, -1, 237, -1, -1, 1502, 1503, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, 406, -1, -1, -1, 1533, -1, -1, 6, + -1, -1, -1, -1, 1541, 1542, -1, -1, -1, -1, + -1, 1548, 1549, -1, -1, -1, -1, -1, 1555, -1, + 1223, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1572, 1573, 1574, -1, -1, + -1, -1, -1, 1580, 1581, 1582, 1583, -1, -1, -1, + -1, 6, -1, 1590, -1, -1, -1, -1, -1, -1, + -1, -1, 1599, -1, -1, -1, -1, -1, -1, -1, + -1, 1608, 1609, 1610, -1, 1612, -1, -1, -1, -1, + -1, 1618, 1619, -1, -1, -1, 500, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1400, 1401, 1402, -1, -1, -1, -1, -1, -1, 1409, - -1, 1411, -1, -1, -1, -1, -1, -1, 1418, -1, - -1, -1, 800, -1, -1, -1, -1, -1, -1, -1, - -1, 1431, -1, -1, -1, -1, 1436, -1, -1, -1, - -1, -1, -1, -1, 1444, 1445, 1446, -1, -1, -1, - -1, -1, -1, -1, 1454, -1, -1, -1, -1, -1, - -1, -1, -1, 1463, -1, -1, -1, -1, 846, -1, + 1637, -1, -1, -1, 1641, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1652, -1, -1, 1655, -1, + -1, -1, 1659, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 1676, + -1, -1, 556, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1689, -1, -1, -1, -1, 1694, 1695, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 859, -1, -1, -1, -1, -1, 6, 1488, -1, - -1, -1, -1, -1, 1494, 1495, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 890, -1, -1, -1, -1, -1, 6, -1, - -1, -1, -1, 1523, -1, -1, -1, -1, -1, -1, - -1, 1531, 1532, -1, -1, -1, -1, -1, 1538, 1539, - -1, -1, -1, -1, -1, 1545, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1562, 1563, 1564, -1, -1, -1, -1, -1, - 1570, 1571, 1572, 1573, 6, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 1586, -1, -1, -1, - -1, -1, -1, -1, -1, 1595, 1596, 1597, -1, 1599, - -1, -1, -1, -1, -1, 1605, 1606, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 1624, -1, -1, -1, 1628, -1, - -1, -1, -1, 1011, 1012, 1013, 1014, -1, -1, 1639, - -1, -1, 1642, -1, -1, -1, 1646, -1, -1, -1, - -1, -1, 406, -1, -1, -1, -1, -1, -1, 6, - -1, -1, -1, 1663, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 1676, -1, -1, -1, - -1, 1681, -1, -1, -1, -1, -1, -1, -1, -1, - 6, -1, 1070, -1, -1, 1695, 215, 216, 217, 218, + -1, -1, 1709, -1, -1, 1712, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, - -1, -1, 6, -1, -1, -1, 1726, 215, 216, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 229, 230, 231, 232, -1, 500, 1747, -1, 237, - -1, -1, -1, -1, -1, -1, 1756, -1, -1, -1, - 1138, -1, -1, -1, -1, 1765, -1, -1, -1, -1, - -1, -1, -1, -1, 1774, 1775, -1, -1, 1778, -1, - -1, -1, -1, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 555, -1, -1, -1, 237, -1, -1, -1, 1809, - 1810, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 1821, -1, -1, -1, -1, -1, -1, 1828, -1, - -1, -1, -1, -1, 1834, 1835, 1836, 1837, 1838, -1, - -1, 1219, -1, -1, 1844, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1859, - -1, -1, -1, -1, -1, -1, -1, 1867, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, 6, -1, -1, -1, - 237, 1891, -1, -1, -1, -1, -1, 1897, 1898, 215, - 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 6, -1, -1, - -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, - 1930, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 6, - -1, -1, -1, 237, -1, 1955, 1956, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 1967, 1968, 1969, - 1970, 1971, 1972, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 1985, -1, -1, -1, -1, - 1990, 1991, 1992, 1993, 1994, -1, -1, -1, -1, -1, - 2000, -1, -1, -1, 2004, -1, -1, -1, -1, -1, - 6, -1, -1, -1, -1, -1, -1, -1, 772, 773, - 774, 775, 776, 777, 778, 779, 780, 781, 782, -1, - 784, 785, 786, 787, 2034, 789, 790, 791, 792, 2039, - 2040, 2041, 2042, 2043, 2044, 6, -1, -1, -1, 803, - -1, 805, -1, 1431, -1, 2055, -1, -1, 812, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 823, - 824, -1, -1, -1, -1, -1, -1, 831, -1, -1, - -1, -1, -1, -1, -1, -1, 2086, 2087, 2088, 2089, - 2090, 2091, -1, -1, -1, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, - -1, -1, -1, -1, -1, -1, 215, 216, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, 232, -1, 1523, -1, -1, 237, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 215, 216, + -1, -1, -1, -1, 243, -1, -1, 1744, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 949, 950, 951, -1, -1, - -1, 955, 956, -1, -1, 959, 960, 961, 962, -1, - 964, -1, -1, -1, -1, 969, -1, 1595, 1596, 215, - 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, 7, -1, -1, - -1, 237, -1, -1, -1, -1, 1624, -1, -1, -1, - -1, -1, -1, -1, 215, 216, 217, 218, 219, 220, + 227, 228, 229, 230, 231, 232, -1, -1, 1765, -1, + 237, -1, -1, -1, -1, -1, 1439, 1774, -1, -1, + -1, -1, -1, -1, -1, -1, 1783, -1, -1, -1, + -1, -1, -1, -1, -1, 1792, 1793, -1, -1, 1796, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, + 1827, 1828, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1841, -1, -1, -1, -1, -1, + -1, 1848, -1, -1, -1, -1, -1, 1854, 1855, 1856, + 1857, 1858, -1, -1, -1, -1, -1, -1, 1865, -1, + 1533, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 1880, -1, -1, -1, -1, -1, -1, + -1, 1888, -1, -1, -1, -1, -1, -1, -1, 773, + 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, + -1, 785, 786, 787, 788, 1912, 790, 791, 792, 793, + -1, 1918, -1, -1, 1921, 6, -1, -1, -1, -1, + 804, -1, 806, -1, -1, -1, -1, -1, -1, 813, + -1, -1, -1, -1, -1, 1608, 1609, -1, -1, -1, + 824, 825, -1, -1, -1, -1, 1953, -1, -1, 833, + -1, -1, -1, -1, -1, 7, -1, -1, -1, -1, + -1, -1, -1, -1, 1637, -1, -1, -1, -1, -1, + -1, 1978, 1979, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 1990, 1991, 1992, 1993, 1994, 1995, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 2008, -1, -1, -1, -1, 2013, 2014, 2015, 2016, + 2017, -1, -1, -1, -1, -1, 2023, -1, -1, -1, + 2027, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 22, 23, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 2057, -1, -1, -1, -1, 2062, 2063, 2064, 2065, 2066, + 2067, -1, -1, -1, -1, -1, -1, 951, 952, 953, + -1, 2078, -1, 957, 958, -1, -1, 961, 962, 963, + 964, -1, 966, -1, -1, -1, -1, 971, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 2109, 2110, 2111, 2112, 2113, 2114, -1, -1, + 1783, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 1796, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 1043, - 1044, -1, -1, -1, 3, 4, 5, -1, -1, -1, - -1, 10, 11, 12, -1, -1, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, -1, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 8, -1, -1, 67, 68, - 69, -1, -1, 72, -1, 74, 75, 76, 77, -1, - -1, -1, -1, -1, 83, 84, 85, 86, -1, 88, - -1, -1, 91, -1, -1, 94, -1, 1765, 97, -1, - 99, -1, -1, -1, -1, -1, -1, 106, -1, -1, - 1778, -1, -1, -1, -1, -1, -1, -1, -1, 118, - -1, 120, -1, -1, 123, -1, 125, -1, -1, -1, - -1, -1, -1, 132, 133, 134, 135, 136, -1, -1, - 139, 140, 141, 142, 143, -1, -1, -1, 147, -1, - -1, 150, -1, -1, -1, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 230, 231, 232, -1, -1, -1, 1844, 237, -1, -1, + 231, 232, -1, -1, -1, -1, 237, -1, 132, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 1045, 1046, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, -1, 1865, -1, -1, -1, -1, -1, -1, -1, + -1, 8, -1, -1, -1, -1, -1, 1880, 192, 193, + 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + 214, 215, 216, 217, 218, 219, 220, -1, 222, 223, + -1, -1, -1, -1, 228, 229, -1, -1, -1, -1, + 3, 4, 5, -1, 238, 239, -1, 10, 11, 12, + -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, -1, -1, -1, -1, + -1, -1, -1, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, + 63, -1, -1, -1, 67, 68, 69, -1, -1, 72, + -1, 74, 75, 76, 77, -1, -1, -1, -1, -1, + 83, 84, 85, 86, -1, 88, -1, -1, -1, -1, + 2013, 2014, 2015, 2016, 2017, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 1859, 191, 192, 193, 194, 195, 196, -1, -1, - -1, 200, 201, 202, 203, 204, 205, 206, 207, -1, - 209, 210, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, - -1, 1275, -1, -1, 233, -1, -1, -1, -1, 238, - -1, -1, -1, 242, -1, -1, 245, -1, 215, 216, + -1, 345, 346, 347, -1, -1, -1, 351, 352, 353, + 354, 355, 356, 357, -1, 359, -1, -1, -1, 363, + 364, 8, -1, 367, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 1279, 380, -1, -1, -1, + -1, -1, -1, -1, -1, 2078, -1, -1, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, 1311, 13, 14, - 237, -1, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, - 1344, 1345, 1346, 1347, 1348, -1, -1, -1, -1, 1353, - 1354, -1, 1356, -1, -1, -1, -1, -1, 1362, -1, - -1, -1, 1990, 1991, 1992, 1993, 1994, -1, -1, -1, - -1, 1375, -1, -1, -1, -1, -1, -1, -1, -1, + 227, 228, 229, 230, 231, 232, -1, -1, 13, 14, + 237, -1, -1, 1317, -1, -1, -1, -1, 191, 192, + 193, 194, 195, -1, -1, -1, -1, 200, 201, 202, + 203, 204, 205, 206, 207, -1, 209, 210, -1, -1, + -1, -1, -1, -1, -1, -1, 1350, 1351, 1352, 1353, + 1354, -1, -1, 226, 227, 1359, 1360, -1, 1362, -1, + 233, -1, -1, -1, 1368, 238, -1, -1, -1, 242, + -1, -1, 245, -1, -1, -1, -1, -1, -1, 1383, -1, -1, -1, -1, -1, -1, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, 107, 108, 109, -1, -1, 112, -1, -1, - -1, -1, -1, 118, 119, -1, -1, 122, 123, 8, - 125, 126, -1, -1, -1, -1, -1, 2055, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 144, - -1, -1, -1, -1, -1, -1, 1450, -1, 1452, -1, - -1, -1, 1456, -1, 1458, -1, -1, -1, -1, -1, - -1, -1, -1, 168, 169, 170, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 3, 4, 5, -1, - -1, -1, -1, 10, 11, 12, 1490, -1, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, -1, -1, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, -1, 243, -1, - 67, 68, 69, -1, -1, 72, -1, 74, 75, 76, - 77, -1, -1, -1, -1, -1, 83, 84, 85, 86, - -1, 88, -1, -1, 91, -1, -1, 94, -1, -1, - 97, -1, 99, -1, -1, -1, -1, -1, -1, 106, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 118, -1, 120, -1, -1, 123, -1, 125, -1, - -1, -1, -1, -1, -1, 132, 133, 134, 135, 136, - -1, -1, 139, 140, 141, 142, 143, 8, -1, -1, - 147, -1, -1, 150, -1, -1, 215, 216, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, - -1, -1, -1, 8, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 191, 192, 193, 194, 195, 196, - 1674, 1675, -1, 200, 201, 202, 203, 204, 205, 206, - 207, 8, 209, 210, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, - 227, -1, -1, -1, -1, -1, 233, -1, -1, -1, - -1, 238, -1, 1717, 1718, 242, -1, -1, 245, -1, + -1, -1, -1, 118, 119, -1, -1, 122, 123, -1, + 125, 126, -1, -1, -1, -1, 530, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 8, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 3, 4, 5, - -1, 7, -1, -1, 10, 11, 12, -1, -1, 15, + -1, -1, -1, -1, 1458, -1, 1460, -1, -1, -1, + 1464, -1, 1466, 168, 169, 170, -1, -1, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, 1498, -1, -1, 3, 4, 5, + -1, -1, -1, -1, 10, 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, -1, -1, -1, -1, -1, 1782, 1783, + 36, 37, 38, 39, 40, 41, 42, 43, 243, -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, -1, -1, -1, 67, 68, 69, -1, -1, 72, -1, 74, 75, 76, 77, -1, -1, -1, -1, -1, 83, 84, 85, - 86, -1, 88, -1, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 125, - 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, - -1, -1, 237, -1, -1, -1, -1, -1, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, -1, -1, -1, -1, -1, -1, 184, -1, - -1, -1, -1, -1, -1, 191, 192, 193, 194, 195, - -1, -1, -1, -1, 200, 201, 202, 203, 204, 205, - 206, 207, -1, 209, 210, 211, 212, 213, 214, -1, + 86, -1, 88, -1, -1, 91, -1, -1, 94, -1, + -1, 97, -1, 99, -1, -1, -1, -1, -1, -1, + 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, + -1, -1, -1, -1, -1, -1, 132, 133, 134, 135, + 136, -1, -1, 139, 140, 141, 142, 143, -1, -1, + -1, 147, -1, -1, 150, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 1687, 1688, 191, 192, 193, 194, 195, + 196, -1, -1, -1, 200, 201, 202, 203, 204, 205, + 206, 207, 8, 209, 210, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 226, 227, -1, -1, -1, -1, -1, 233, -1, -1, + 1734, 1735, 238, -1, -1, -1, 242, -1, -1, 245, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 226, 227, -1, -1, -1, -1, -1, 233, -1, 235, - 236, -1, 238, -1, 240, 3, 4, 5, 244, 245, + -1, -1, -1, -1, -1, 3, 4, 5, -1, -1, -1, -1, 10, 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 1800, 1801, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, 59, 60, 61, 62, 63, -1, -1, -1, 67, + 68, 69, -1, -1, 72, -1, 74, 75, 76, 77, + -1, -1, -1, -1, -1, 83, 84, 85, 86, -1, + 88, -1, -1, 91, -1, -1, 94, -1, -1, 97, + -1, 99, -1, -1, -1, -1, -1, -1, 106, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 118, -1, 120, -1, -1, 123, -1, 125, 8, -1, + -1, -1, -1, -1, 132, 133, 134, 135, 136, -1, + -1, 139, 140, 141, 142, 143, -1, -1, -1, 147, + -1, -1, 150, -1, -1, -1, -1, 8, -1, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, 1039, -1, -1, -1, -1, + -1, -1, -1, 191, 192, 193, 194, 195, 196, -1, + -1, -1, 200, 201, 202, 203, 204, 205, 206, 207, + -1, 209, 210, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 226, 227, + -1, -1, -1, -1, -1, 233, -1, -1, -1, -1, + 238, 3, 4, 5, 242, 7, -1, 245, 10, 11, + 12, -1, -1, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, -1, -1, -1, + -1, -1, -1, -1, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, -1, -1, -1, 67, 68, 69, -1, -1, + 72, -1, 74, 75, 76, 77, -1, -1, -1, -1, + -1, 83, 84, 85, 86, -1, 88, -1, -1, -1, + -1, -1, -1, 2087, -1, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, 125, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, 239, -1, 241, -1, -1, -1, -1, -1, 247, + -1, -1, 184, -1, -1, -1, 1280, 1281, -1, 191, + 192, 193, 194, 195, -1, -1, -1, -1, 200, 201, + 202, 203, 204, 205, 206, 207, -1, 209, 210, 211, + 212, 213, 214, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 226, 227, -1, -1, -1, -1, + -1, 233, -1, 235, 236, -1, 238, -1, 240, 3, + 4, 5, 244, 245, -1, -1, 10, 11, 12, -1, + -1, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 55, 56, 57, 58, -1, -1, -1, -1, 63, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 75, 76, 77, -1, -1, 13, 14, -1, 83, + 84, -1, 86, -1, -1, -1, -1, 91, -1, -1, + 94, -1, -1, 97, -1, 99, -1, -1, -1, -1, + -1, -1, 106, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, + -1, 125, -1, -1, -1, -1, -1, -1, 132, 133, + 134, 135, 136, -1, -1, 139, 140, 141, 142, 143, + -1, -1, -1, 147, -1, -1, 150, -1, -1, -1, + -1, -1, -1, -1, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, + 107, 108, 109, -1, -1, 112, -1, -1, -1, -1, + -1, 118, 119, -1, -1, 122, 123, 191, 125, 126, + -1, 195, 196, -1, -1, -1, 200, 201, 202, -1, + 204, 205, 206, -1, -1, -1, 210, 144, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 226, 227, -1, -1, -1, -1, -1, 233, + -1, 168, 169, 170, 238, 3, 4, 5, 242, -1, + -1, 245, 10, 11, 12, -1, -1, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 55, 56, 57, 58, -1, -1, -1, -1, 63, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 75, 76, 77, + -1, -1, -1, -1, -1, -1, 243, 75, 76, 77, -1, -1, 13, 14, -1, 83, 84, -1, 86, -1, - 2064, -1, -1, 91, -1, -1, 94, -1, -1, 97, + -1, -1, -1, 91, -1, -1, 94, -1, -1, 97, -1, 99, -1, -1, -1, -1, -1, -1, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, -1, -1, @@ -4259,7 +4337,7 @@ static const yytype_int16 yycheck[] = -1, -1, 210, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, -1, -1, 233, -1, 168, 169, 170, - 238, 3, 4, 5, 242, -1, -1, 245, 10, 11, + 238, 3, 4, -1, 242, -1, -1, 245, 10, 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, @@ -4283,7 +4361,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, -1, -1, 233, -1, 168, 169, 170, 238, 3, 4, -1, - 242, -1, -1, 245, 10, 11, 12, -1, -1, 15, + 242, 243, -1, 245, 10, 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, -1, -1, @@ -4306,7 +4384,7 @@ static const yytype_int16 yycheck[] = 206, -1, -1, -1, 210, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, -1, -1, 233, -1, 168, - 169, 170, 238, 3, 4, -1, 242, 243, -1, 245, + 169, 170, 238, 3, 4, -1, 242, -1, -1, 245, 10, 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, @@ -4377,7 +4455,7 @@ static const yytype_int16 yycheck[] = -1, -1, 210, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, -1, -1, 233, -1, 168, 169, 170, - 238, 3, 4, -1, 242, -1, -1, 245, 10, 11, + 238, 3, 4, -1, -1, 243, -1, 245, 10, 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, @@ -4401,7 +4479,7 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, -1, -1, 233, -1, 168, 169, 170, 238, 3, 4, -1, - -1, 243, -1, 245, 10, 11, 12, -1, -1, 15, + 242, -1, -1, 245, 10, 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, -1, -1, @@ -4489,10 +4567,10 @@ static const yytype_int16 yycheck[] = -1, -1, 150, -1, -1, -1, -1, -1, -1, -1, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, -1, -1, -1, 107, 108, 109, -1, - -1, 112, 8, -1, -1, -1, -1, 118, 119, -1, + -1, 112, -1, -1, -1, -1, -1, 118, 119, -1, -1, 122, 123, 191, 125, 126, -1, 195, 196, -1, - -1, -1, 200, 201, 202, -1, 204, 205, 206, -1, - -1, -1, 210, 144, -1, -1, -1, -1, -1, -1, + 131, -1, 200, 201, 202, -1, 204, 205, 206, -1, + -1, -1, 210, 144, -1, -1, -1, 148, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, -1, -1, 233, -1, 168, 169, 170, 238, 3, 4, -1, 242, -1, -1, 245, 10, 11, @@ -4502,23 +4580,23 @@ static const yytype_int16 yycheck[] = 42, 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 55, 56, 57, 58, -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 243, 75, 76, 77, -1, -1, -1, -1, + -1, -1, -1, 75, 76, 77, -1, -1, 13, 14, -1, 83, 84, -1, 86, -1, -1, -1, -1, 91, -1, -1, 94, -1, -1, 97, -1, 99, -1, -1, -1, -1, -1, -1, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, -1, -1, -1, -1, -1, -1, 132, 133, 134, 135, 136, -1, -1, 139, 140, 141, - 142, 143, -1, -1, -1, 147, -1, -1, 150, 215, - 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, - -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 191, - -1, -1, -1, 195, 196, -1, -1, -1, 200, 201, - 202, -1, 204, 205, 206, -1, -1, -1, 210, -1, + 142, 143, -1, -1, -1, 147, -1, -1, 150, -1, + -1, -1, -1, -1, -1, -1, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, -1, + -1, -1, 107, 108, 109, -1, -1, 112, -1, -1, + -1, -1, -1, 118, 119, -1, -1, 122, 123, 191, + 125, 126, -1, 195, 196, -1, -1, -1, 200, 201, + 202, -1, 204, 205, 206, -1, -1, -1, 210, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, -1, - -1, 233, -1, -1, -1, -1, 238, 3, 4, 5, + -1, 233, -1, 168, 169, 170, 238, 3, 4, 5, 242, -1, -1, 245, 10, 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, @@ -4527,288 +4605,251 @@ static const yytype_int16 yycheck[] = 56, 57, 58, 59, 60, 61, 62, 63, -1, -1, -1, 67, 68, 69, -1, -1, 72, -1, 74, 75, 76, 77, -1, -1, -1, -1, -1, 83, 84, 85, - 86, -1, 88, -1, -1, -1, -1, -1, -1, -1, - -1, 4, 5, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, -1, 241, - -1, -1, -1, -1, -1, 247, -1, -1, -1, -1, - -1, -1, -1, 46, 47, 48, 49, 50, 51, 52, - 53, 54, -1, -1, -1, -1, 59, 60, 61, 62, - -1, -1, -1, -1, 67, 68, 69, -1, -1, 72, - -1, 74, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 85, -1, -1, 88, -1, -1, -1, -1, + 86, -1, 88, 3, 4, 5, -1, -1, -1, -1, + 10, 11, 12, -1, -1, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, 36, 37, 38, -1, + -1, -1, -1, -1, -1, -1, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 62, 63, -1, -1, -1, 67, 68, 69, + -1, -1, 72, -1, 74, 75, 76, 77, -1, -1, + -1, -1, -1, 83, 84, 85, 86, -1, 88, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 191, 192, 193, 194, 195, -1, -1, -1, -1, 200, 201, 202, 203, 204, 205, 206, 207, -1, 209, 210, -1, -1, -1, -1, -1, - -1, -1, 125, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, -1, -1, 233, -1, -1, - -1, -1, 238, 3, 4, -1, 242, -1, -1, 245, - 10, 11, 12, -1, -1, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, -1, -1, -1, -1, -1, 192, - 193, 194, -1, -1, -1, 55, 56, 57, 58, -1, - 203, -1, -1, 63, 207, -1, 209, 210, -1, -1, - -1, -1, -1, -1, -1, 75, 76, 77, -1, -1, - 13, 14, -1, 83, 84, -1, 86, -1, -1, -1, - -1, 91, -1, -1, 94, -1, -1, 97, -1, 99, - -1, -1, -1, -1, -1, -1, 106, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, - 120, -1, -1, 123, -1, 125, -1, -1, -1, -1, - -1, -1, 132, 133, 134, 135, 136, -1, -1, 139, - 140, 141, 142, 143, -1, -1, -1, 147, -1, -1, - 150, -1, -1, -1, -1, -1, -1, -1, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 103, -1, -1, -1, 107, 108, 109, -1, -1, 112, - -1, -1, -1, -1, -1, 118, 119, -1, -1, 122, - 123, 191, 125, 126, -1, 195, 196, -1, 131, -1, - 200, 201, 202, -1, 204, 205, 206, -1, -1, -1, - 210, 144, -1, -1, -1, 148, -1, -1, -1, -1, + -1, -1, 238, -1, -1, -1, 242, -1, -1, 245, + -1, -1, -1, -1, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, 239, -1, + -1, 191, 192, 193, 194, 195, 247, -1, -1, -1, + 200, 201, 202, 203, 204, 205, 206, 207, -1, 209, + 210, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, -1, - -1, -1, -1, 233, -1, 168, 169, 170, 238, 3, - 4, 5, 242, -1, -1, 245, 10, 11, 12, -1, + -1, -1, -1, 233, -1, -1, -1, -1, 238, 3, + 4, -1, 242, -1, -1, 245, 10, 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, -1, -1, -1, -1, -1, - -1, -1, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - -1, -1, -1, 67, 68, 69, -1, -1, 72, -1, - 74, 75, 76, 77, -1, -1, -1, -1, -1, 83, - 84, 85, 86, -1, 88, 3, 4, 5, -1, -1, - -1, -1, 10, 11, 12, -1, -1, 15, 16, 17, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 55, 56, 57, 58, -1, -1, -1, -1, 63, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 75, 76, 77, -1, -1, -1, -1, -1, 83, + 84, -1, 86, -1, -1, -1, -1, 91, -1, -1, + 94, -1, -1, 97, -1, 99, -1, -1, -1, -1, + -1, -1, 106, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, + -1, 125, -1, -1, -1, -1, -1, -1, 132, 133, + 134, 135, 136, -1, -1, 139, 140, 141, 142, 143, + -1, -1, -1, 147, -1, -1, 150, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, 243, -1, -1, -1, 247, + -1, -1, -1, -1, -1, -1, -1, 191, -1, -1, + -1, 195, 196, -1, -1, -1, 200, 201, 202, -1, + 204, 205, 206, -1, -1, -1, 210, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 226, 227, -1, -1, -1, -1, -1, 233, + -1, -1, -1, -1, 238, 3, 4, -1, 242, -1, + -1, 245, 10, 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, -1, -1, -1, -1, -1, -1, -1, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, -1, -1, -1, 67, - 68, 69, -1, -1, 72, -1, 74, 75, 76, 77, - -1, -1, -1, -1, -1, 83, 84, 85, 86, -1, - 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 191, 192, 193, - 194, 195, -1, -1, -1, -1, 200, 201, 202, 203, - 204, 205, 206, 207, -1, 209, 210, -1, -1, -1, + 38, 39, 40, 41, 42, 43, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 55, 56, 57, + 58, -1, -1, -1, -1, 63, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 75, 76, 77, + -1, -1, -1, -1, -1, 83, 84, -1, 86, -1, + -1, -1, -1, 91, -1, -1, 94, -1, -1, 97, + -1, 99, -1, -1, -1, -1, -1, -1, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 226, 227, -1, -1, -1, -1, -1, 233, - -1, -1, -1, -1, 238, -1, -1, -1, 242, -1, - -1, 245, -1, -1, -1, -1, 215, 216, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, - 239, -1, -1, 191, 192, 193, 194, 195, 247, -1, - -1, -1, 200, 201, 202, 203, 204, 205, 206, 207, - -1, 209, 210, -1, -1, -1, -1, -1, -1, -1, + 118, -1, 120, -1, -1, 123, -1, 125, -1, -1, + -1, -1, -1, -1, 132, 133, 134, 135, 136, -1, + -1, 139, 140, 141, 142, 143, -1, -1, -1, 147, + -1, -1, 150, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, 243, -1, -1, -1, 247, -1, -1, -1, -1, + -1, -1, -1, 191, -1, -1, -1, 195, 196, -1, + -1, -1, 200, 201, 202, -1, 204, 205, 206, -1, + -1, -1, 210, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, 227, - -1, -1, -1, -1, -1, 233, -1, -1, -1, -1, - 238, 3, 4, -1, 242, -1, -1, 245, 10, 11, - 12, -1, -1, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 55, 56, 57, 58, -1, -1, -1, - -1, 63, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 75, 76, 77, -1, -1, 13, 14, - -1, 83, 84, -1, 86, -1, -1, -1, -1, 91, - -1, -1, 94, -1, -1, 97, -1, 99, -1, -1, - -1, -1, -1, -1, 106, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, - -1, 123, -1, 125, -1, -1, -1, -1, -1, -1, - 132, 133, 134, 135, 136, -1, -1, 139, 140, 141, - 142, 143, -1, -1, -1, 147, -1, -1, 150, -1, - -1, -1, -1, -1, -1, -1, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, -1, - -1, -1, 107, 108, 109, -1, -1, 112, -1, -1, - -1, -1, -1, 118, 119, -1, -1, 122, 123, 191, - 125, 126, -1, 195, 196, -1, -1, -1, 200, 201, - 202, -1, 204, 205, 206, -1, -1, -1, 210, 144, + -1, -1, -1, -1, -1, 233, 3, 4, 5, -1, + 238, -1, -1, 10, 11, 12, -1, 245, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, -1, -1, -1, -1, -1, -1, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, 63, -1, -1, -1, + 67, 68, 69, -1, -1, 72, -1, 74, 75, 76, + 77, -1, -1, -1, -1, -1, 83, 84, 85, 86, + -1, 88, 3, 4, -1, -1, -1, -1, -1, 10, + 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 226, 227, -1, -1, -1, -1, - -1, 233, -1, 168, 169, 170, 238, 3, 4, -1, - 242, -1, -1, 245, 10, 11, 12, -1, -1, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 55, - 56, 57, 58, -1, -1, -1, -1, 63, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 75, - 76, 77, -1, -1, -1, -1, -1, 83, 84, -1, - 86, -1, -1, -1, -1, 91, -1, -1, 94, -1, - -1, 97, -1, 99, -1, -1, -1, -1, -1, -1, - 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, - -1, -1, -1, -1, -1, -1, 132, 133, 134, 135, - 136, -1, -1, 139, 140, 141, 142, 143, -1, -1, - -1, 147, -1, -1, 150, 215, 216, 217, 218, 219, - 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, - -1, -1, -1, 243, -1, -1, -1, 247, -1, -1, - -1, -1, -1, -1, -1, 191, -1, -1, -1, 195, - 196, -1, -1, -1, 200, 201, 202, -1, 204, 205, - 206, -1, -1, -1, 210, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 55, 56, 57, 58, -1, -1, + -1, -1, 63, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 75, 76, 77, -1, -1, -1, + -1, -1, 83, 84, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 226, 227, -1, -1, -1, -1, -1, 233, 3, 4, - 5, -1, 238, -1, -1, 10, 11, 12, -1, 245, + -1, -1, -1, -1, 191, 192, 193, 194, 195, -1, + -1, -1, -1, 200, 201, 202, 203, 204, 205, 206, + 207, -1, 209, 210, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, + 227, -1, -1, -1, -1, -1, 233, -1, -1, -1, + -1, 238, -1, -1, -1, -1, -1, -1, 245, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, -1, -1, 243, -1, -1, + 191, 247, -1, -1, 195, -1, -1, -1, -1, 200, + 201, 202, -1, 204, 205, 206, -1, -1, -1, 210, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, + -1, -1, 233, -1, -1, -1, -1, 238, 3, 4, + -1, 242, -1, -1, 245, 10, 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, -1, -1, -1, -1, -1, -1, - -1, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, -1, - -1, -1, 67, 68, 69, -1, -1, 72, -1, 74, - 75, 76, 77, -1, -1, -1, -1, -1, 83, 84, - 85, 86, -1, 88, 3, 4, -1, -1, -1, -1, - -1, 10, 11, 12, -1, -1, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 55, 56, 57, 58, - -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 75, 76, 77, -1, - -1, -1, -1, -1, 83, 84, -1, 86, -1, -1, + 55, 56, 57, 58, -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 191, 192, 193, 194, - 195, -1, -1, -1, -1, 200, 201, 202, 203, 204, - 205, 206, 207, -1, 209, 210, -1, -1, -1, -1, + 75, 76, 77, -1, -1, -1, -1, -1, 83, 84, + -1, 86, 3, 4, -1, 6, -1, -1, -1, 10, + 11, 12, -1, -1, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 55, 56, 57, 58, -1, -1, + -1, -1, 63, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 75, 76, 77, -1, -1, -1, + -1, -1, 83, 84, -1, 86, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, 191, -1, 237, -1, + 195, -1, -1, -1, -1, 200, 201, 202, 247, 204, + 205, 206, -1, -1, -1, 210, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, -1, -1, 233, -1, - -1, -1, -1, 238, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 238, -1, -1, -1, 242, -1, -1, 245, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, - -1, -1, -1, 237, -1, -1, -1, -1, -1, 243, - -1, -1, 191, 247, -1, -1, 195, -1, -1, -1, - -1, 200, 201, 202, -1, 204, 205, 206, -1, -1, - -1, 210, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, - -1, -1, -1, -1, 233, -1, -1, -1, -1, 238, - -1, 3, 4, 242, 6, -1, 245, -1, 10, 11, - 12, -1, -1, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 55, 56, 57, 58, -1, -1, -1, - -1, 63, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 75, 76, 77, -1, -1, -1, -1, - -1, 83, 84, -1, 86, 3, 4, -1, 6, -1, - -1, -1, 10, 11, 12, -1, -1, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 55, 56, 57, - 58, -1, -1, -1, -1, 63, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 75, 76, 77, - -1, -1, -1, -1, -1, 83, 84, -1, 86, 215, - 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, -1, -1, 191, - -1, 237, -1, 195, -1, -1, -1, 243, 200, 201, - 202, 247, 204, 205, 206, -1, -1, -1, 210, -1, + -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, + 191, -1, -1, 247, 195, -1, -1, -1, -1, 200, + 201, 202, -1, 204, 205, 206, -1, -1, -1, 210, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 226, 227, -1, -1, -1, -1, - -1, 233, -1, -1, -1, -1, 238, -1, -1, -1, - -1, -1, -1, 245, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, - -1, -1, -1, 191, -1, -1, 247, 195, -1, -1, - -1, -1, 200, 201, 202, -1, 204, 205, 206, -1, - -1, -1, 210, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 226, 227, - -1, -1, -1, -1, -1, 233, 3, 4, -1, 6, - 238, -1, -1, 10, 11, 12, -1, 245, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 55, 56, - 57, 58, -1, -1, -1, -1, 63, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 75, 76, - 77, -1, -1, 3, 4, -1, 83, 84, -1, 86, - 10, 11, 12, -1, -1, 15, 16, 17, 18, 19, + -1, -1, -1, -1, -1, 226, 227, -1, -1, -1, + -1, -1, 233, 3, 4, -1, 6, 238, -1, -1, + 10, 11, 12, -1, 245, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 55, 56, 57, 58, -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 75, 76, 77, -1, -1, - -1, -1, -1, 83, 84, -1, 86, 215, 216, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, - -1, -1, -1, -1, 191, -1, -1, -1, 195, 247, - -1, -1, -1, 200, 201, 202, -1, 204, 205, 206, - -1, -1, -1, 210, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, - 227, -1, -1, -1, -1, -1, 233, -1, -1, -1, - -1, 238, -1, -1, -1, -1, -1, -1, 245, -1, - 0, 1, -1, -1, 4, -1, -1, -1, -1, -1, - -1, -1, -1, 13, 14, -1, -1, -1, -1, -1, - -1, 191, -1, -1, -1, 195, -1, -1, -1, -1, - 200, 201, 202, -1, 204, 205, 206, -1, -1, -1, - 210, -1, -1, -1, 44, 45, -1, -1, -1, -1, + -1, -1, -1, 83, 84, -1, 86, 3, 4, -1, + 6, -1, -1, -1, 10, 11, 12, -1, -1, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 55, + 56, 57, 58, -1, -1, -1, -1, 63, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 75, + 76, 77, -1, -1, -1, -1, -1, 83, 84, -1, + 86, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, + -1, 191, -1, 237, -1, 195, -1, -1, -1, -1, + 200, 201, 202, 247, 204, 205, 206, -1, -1, -1, + 210, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 226, 227, -1, -1, - -1, -1, -1, 233, 64, 65, 66, -1, 238, -1, - 70, 71, -1, 73, -1, 245, -1, -1, 78, 79, - -1, 81, 82, -1, 84, -1, -1, -1, -1, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, -1, -1, 106, 107, 108, 109, - 110, -1, 112, -1, 114, 115, 116, 117, 118, 119, - 120, -1, 122, 123, 124, 125, 126, 127, -1, 129, - 130, 131, 132, 133, 134, 135, 136, 137, -1, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, -1, 4, -1, 156, 157, 158, -1, - -1, -1, 162, 13, 14, -1, -1, 167, 168, 169, - 170, -1, -1, 173, -1, 175, -1, 177, 178, 179, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, -1, -1, -1, 44, 45, -1, 197, 198, 199, - -1, -1, -1, -1, -1, -1, -1, -1, 208, -1, - 210, -1, -1, -1, 64, 65, 66, -1, -1, -1, - 70, 71, -1, 73, -1, -1, -1, -1, 78, 79, - -1, 81, 82, -1, 84, -1, -1, -1, -1, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, -1, -1, 106, 107, 108, 109, - 110, -1, 112, -1, 114, 115, 116, 117, 118, 119, - 120, -1, 122, 123, 124, 125, 126, 127, -1, 129, - 130, 131, 132, 133, 134, 135, 136, 137, -1, 139, - 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, -1, -1, -1, 156, 157, 158, -1, - -1, -1, 162, -1, -1, -1, -1, 167, 168, 169, - 170, 4, 5, 173, -1, 175, -1, 177, 178, 179, - 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, - 190, -1, -1, -1, -1, -1, -1, 197, 198, 199, - -1, 4, 5, -1, -1, -1, -1, -1, 208, -1, - 210, -1, -1, 46, 47, 48, 49, 50, 51, 52, - 53, 54, -1, -1, -1, -1, 59, 60, 61, 62, - -1, -1, 5, -1, 67, 68, 69, -1, -1, 72, - -1, 74, -1, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 85, -1, -1, 88, 59, 60, 61, 62, - -1, -1, -1, -1, 67, 68, 69, -1, -1, 72, - -1, 74, -1, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 85, -1, -1, 88, 59, 60, 61, 62, - -1, -1, -1, -1, 67, 68, 69, -1, -1, 72, - -1, 74, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 85, -1, -1, 88, 215, 216, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 247, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 192, - 193, 194, -1, -1, -1, -1, -1, -1, -1, -1, - 203, -1, -1, -1, 207, -1, 209, 210, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 192, - 193, 194, -1, -1, -1, -1, -1, -1, -1, -1, - 203, -1, -1, -1, 207, -1, 209, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 192, - 193, 194, -1, -1, -1, -1, -1, -1, -1, -1, - 203, -1, -1, -1, 207, -1, 209, 215, 216, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 247, - 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, - 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, - -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 247, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 247, 215, 216, 217, 218, + -1, -1, -1, 233, -1, -1, -1, -1, 238, -1, + -1, -1, -1, -1, -1, 245, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 247, 215, - 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, - -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 247, 215, 216, 217, 218, 219, 220, 221, 222, + -1, -1, -1, -1, -1, 191, -1, -1, 247, 195, + -1, -1, -1, -1, 200, 201, 202, -1, 204, 205, + 206, -1, -1, -1, 210, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 226, 227, -1, -1, -1, -1, -1, 233, 3, 4, + -1, -1, 238, -1, -1, 10, 11, 12, -1, 245, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 55, 56, 57, 58, -1, -1, -1, -1, 63, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 75, 76, 77, -1, -1, -1, -1, -1, 83, 84, + -1, 86, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 247, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 247, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 0, 1, -1, -1, 4, + -1, -1, -1, -1, -1, -1, -1, -1, 13, 14, + -1, -1, -1, -1, -1, -1, 191, -1, -1, -1, + 195, -1, -1, -1, -1, 200, 201, 202, -1, 204, + 205, 206, -1, -1, -1, 210, -1, -1, -1, 44, + 45, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 226, 227, -1, -1, -1, -1, -1, 233, 64, + 65, 66, -1, 238, -1, 70, 71, -1, 73, -1, + 245, -1, -1, 78, 79, -1, 81, 82, -1, 84, + -1, -1, -1, -1, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, -1, + -1, 106, 107, 108, 109, 110, -1, 112, -1, 114, + 115, 116, 117, 118, 119, 120, -1, 122, 123, 124, + 125, 126, 127, -1, 129, 130, 131, 132, 133, 134, + 135, 136, 137, -1, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 152, -1, 4, + -1, 156, 157, 158, -1, -1, -1, 162, 13, 14, + -1, -1, 167, 168, 169, 170, -1, -1, 173, -1, + 175, -1, 177, 178, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, -1, -1, -1, 44, + 45, -1, 197, 198, 199, -1, -1, -1, -1, -1, + -1, -1, -1, 208, -1, 210, -1, -1, -1, 64, + 65, 66, -1, -1, -1, 70, 71, -1, 73, -1, + -1, -1, -1, 78, 79, -1, 81, 82, -1, 84, + -1, -1, -1, -1, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, -1, + -1, 106, 107, 108, 109, 110, -1, 112, -1, 114, + 115, 116, 117, 118, 119, 120, -1, 122, 123, 124, + 125, 126, 127, -1, 129, 130, 131, 132, 133, 134, + 135, 136, 137, -1, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 152, -1, -1, + -1, 156, 157, 158, -1, -1, -1, 162, -1, -1, + -1, -1, 167, 168, 169, 170, 4, 5, 173, -1, + 175, -1, 177, 178, 179, 180, 181, 182, 183, 184, + 185, 186, 187, 188, 189, 190, -1, -1, -1, -1, + -1, -1, 197, 198, 199, -1, 4, 5, -1, -1, + -1, -1, -1, 208, -1, 210, -1, -1, 46, 47, + 48, 49, 50, 51, 52, 53, 54, -1, -1, -1, + -1, 59, 60, 61, 62, -1, 4, 5, -1, 67, + 68, 69, -1, -1, 72, -1, 74, -1, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 85, -1, -1, + 88, 59, 60, 61, 62, -1, -1, 5, -1, 67, + 68, 69, -1, -1, 72, -1, 74, -1, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 85, -1, -1, + 88, 59, 60, 61, 62, -1, -1, 125, -1, 67, + 68, 69, -1, -1, 72, -1, 74, -1, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 85, -1, -1, + 88, 59, 60, 61, 62, -1, -1, -1, -1, 67, + 68, 69, -1, -1, 72, -1, 74, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 85, -1, -1, + 88, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 192, 193, 194, -1, -1, -1, + -1, -1, -1, -1, -1, 203, -1, -1, -1, 207, + -1, 209, 210, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 192, 193, 194, -1, -1, -1, + -1, -1, -1, -1, -1, 203, -1, -1, -1, 207, + -1, 209, 210, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 192, 193, 194, -1, -1, -1, + -1, -1, -1, -1, -1, 203, -1, -1, -1, 207, + -1, 209, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 192, 193, 194, -1, -1, -1, + -1, -1, -1, -1, -1, 203, -1, -1, -1, 207, + -1, 209, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, 247, 215, 216, 217, 218, 219, @@ -4955,6 +4996,59 @@ static const yytype_int16 yycheck[] = -1, -1, -1, 237, -1, -1, -1, -1, -1, -1, -1, -1, -1, 247, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 247, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 247, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, 243, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, -1, -1, 243, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, -1, -1, 243, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, 243, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, -1, -1, 243, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, 243, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + -1, -1, 243, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, 243, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + 243, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, + -1, -1, -1, 237, -1, -1, -1, -1, -1, 243, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, 243, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, -1, -1, 243, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, -1, -1, 243, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, -1, -1, 243, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, -1, -1, 243, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, 243, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, 243, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, @@ -4981,268 +5075,236 @@ static const yytype_int16 yycheck[] = 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, 243, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, - -1, -1, -1, 243, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, - -1, -1, 243, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, - -1, 243, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, - 243, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, - -1, -1, -1, 237, -1, -1, -1, -1, -1, 243, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, -1, -1, 243, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + -1, -1, 243, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, + -1, 243, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, + 243, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, + -1, -1, -1, 237, -1, -1, -1, -1, -1, 243, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, -1, -1, 243, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, -1, -1, 243, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, -1, 242, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, -1, 242, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + -1, 242, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, 239, -1, 241, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, 241, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, 241, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, 241, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, -1, -1, 241, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, + -1, -1, -1, 241, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, + 241, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, + -1, -1, -1, 237, -1, -1, -1, 241, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, + 237, -1, -1, -1, 241, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, + -1, 241, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + -1, -1, -1, -1, 237, -1, -1, -1, 241, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, + -1, 237, -1, -1, -1, 241, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, + -1, -1, 241, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, -1, -1, -1, -1, 237, -1, -1, -1, 241, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, - -1, -1, 237, -1, -1, -1, -1, -1, 243, 215, - 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, - -1, 237, -1, -1, -1, -1, -1, 243, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, -1, -1, -1, -1, 243, 215, 216, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, - -1, -1, -1, -1, -1, 243, 215, 216, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, - -1, -1, -1, -1, 243, 215, 216, 217, 218, 219, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, - -1, -1, -1, 243, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, - -1, -1, 243, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, - -1, 243, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, - 243, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, - -1, -1, -1, 237, -1, -1, -1, -1, -1, 243, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, - -1, -1, 237, -1, -1, -1, -1, -1, 243, 215, - 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, - -1, 237, -1, -1, -1, -1, -1, 243, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, -1, -1, -1, -1, 243, 215, 216, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, - -1, -1, -1, -1, -1, 243, 215, 216, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, - -1, -1, -1, -1, 243, 215, 216, 217, 218, 219, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, - -1, -1, -1, 243, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, - -1, -1, 243, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, -1, -1, -1, - -1, 243, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - -1, -1, -1, -1, 237, -1, -1, -1, -1, -1, - 243, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, - -1, -1, -1, 237, -1, -1, -1, -1, 242, 215, - 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, - -1, 237, -1, -1, -1, -1, 242, 215, 216, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, - -1, -1, -1, -1, 242, 215, 216, 217, 218, 219, + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, - -1, 241, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - -1, -1, -1, -1, 237, -1, -1, -1, 241, 215, - 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, - -1, 237, -1, -1, -1, 241, 215, 216, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, - -1, -1, 241, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, -1, -1, 241, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, - -1, -1, 237, -1, -1, -1, 241, 215, 216, 217, - 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, - 228, 229, 230, 231, 232, -1, -1, -1, -1, 237, - -1, -1, -1, 241, 215, 216, 217, 218, 219, 220, - 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, - 231, 232, -1, -1, -1, -1, 237, -1, -1, -1, - 241, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, -1, - -1, -1, -1, 237, -1, -1, -1, 241, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, -1, -1, 241, 215, 216, 217, 218, 219, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, - 230, 231, 232, -1, -1, -1, -1, 237, -1, -1, - -1, 241, 215, 216, 217, 218, 219, 220, 221, 222, - 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, - -1, -1, -1, -1, 237, -1, -1, -1, 241, 215, - 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, - 226, 227, 228, 229, 230, 231, 232, -1, -1, -1, - -1, 237, -1, -1, -1, 241, 215, 216, 217, 218, - 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, - 229, 230, 231, 232, -1, -1, -1, -1, 237, -1, - -1, -1, 241, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239, 215, 216, - 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, - 227, 228, 229, 230, 231, 232, -1, -1, -1, -1, - 237, -1, 239, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, -1, -1, -1, -1, 237, -1, 239 + 230, 231, 232, -1, -1, -1, -1, 237, -1, 239, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, -1, -1, + -1, -1, 237, -1, 239, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, -1, -1, -1, -1, 237 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -5301,167 +5363,170 @@ static const yytype_uint16 yystos[] = 272, 272, 272, 272, 272, 238, 272, 272, 238, 272, 272, 5, 176, 242, 5, 176, 5, 176, 5, 176, 118, 91, 94, 97, 99, 238, 272, 272, 238, 238, - 238, 327, 242, 327, 343, 327, 327, 243, 344, 354, - 8, 215, 216, 217, 218, 219, 220, 221, 222, 223, - 224, 225, 226, 227, 228, 229, 230, 231, 232, 237, - 9, 238, 240, 244, 271, 272, 327, 344, 238, 238, - 238, 341, 342, 342, 342, 238, 238, 238, 238, 238, - 341, 238, 341, 238, 341, 242, 242, 327, 4, 341, - 242, 345, 242, 242, 338, 338, 338, 327, 327, 226, - 227, 242, 242, 338, 226, 227, 238, 298, 338, 242, - 238, 242, 238, 238, 238, 238, 238, 238, 238, 327, - 342, 342, 342, 238, 4, 240, 6, 240, 298, 6, - 6, 242, 242, 242, 342, 342, 240, 240, 240, 327, - 6, 6, 327, 327, 327, 244, 327, 242, 176, 327, - 327, 327, 327, 272, 272, 272, 238, 238, 238, 272, - 272, 272, 272, 272, 272, 272, 272, 272, 272, 238, - 238, 272, 238, 240, 6, 6, 242, 6, 298, 6, - 298, 272, 327, 228, 242, 238, 240, 348, 327, 298, - 341, 341, 242, 349, 91, 94, 97, 99, 7, 327, - 327, 4, 173, 174, 341, 6, 239, 241, 242, 273, - 6, 242, 6, 9, 238, 240, 244, 354, 243, 91, - 94, 97, 99, 118, 123, 126, 295, 327, 6, 239, - 247, 9, 238, 240, 244, 239, 247, 247, 239, 247, - 241, 247, 275, 241, 275, 87, 336, 333, 354, 247, - 247, 239, 228, 243, 247, 239, 239, 327, 239, 243, - 239, 239, 327, 239, 243, 239, 239, 239, 239, 239, - 239, 239, 239, 239, 239, 7, 327, 243, 6, 6, - 6, 239, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 343, - 327, 327, 327, 327, 327, 327, 327, 343, 343, 354, - 242, 327, 327, 348, 327, 348, 341, 348, 348, 352, - 327, 273, 354, 64, 327, 64, 64, 64, 342, 342, - 342, 342, 348, 348, 343, 334, 349, 334, 344, 239, - 243, 272, 327, 327, 327, 327, 327, 327, 327, 327, - 327, 327, 327, 327, 327, 327, 242, 327, 343, 327, - 327, 327, 327, 327, 354, 327, 327, 4, 335, 242, - 273, 239, 243, 327, 327, 327, 7, 7, 320, 320, - 289, 327, 349, 290, 327, 349, 291, 327, 349, 292, - 327, 349, 327, 6, 327, 6, 327, 6, 344, 344, - 242, 239, 6, 298, 242, 298, 298, 247, 247, 247, - 338, 338, 297, 297, 247, 327, 243, 311, 247, 298, - 327, 327, 327, 327, 327, 327, 327, 327, 327, 239, - 7, 321, 6, 7, 327, 6, 327, 327, 243, 344, - 344, 344, 6, 6, 327, 327, 327, 239, 239, 239, - 239, 173, 247, 298, 242, 8, 239, 239, 241, 352, - 348, 352, 348, 348, 348, 348, 348, 348, 327, 348, - 348, 348, 348, 245, 351, 354, 349, 348, 348, 348, - 334, 354, 344, 243, 243, 327, 327, 298, 241, 239, - 131, 148, 315, 239, 243, 247, 327, 6, 242, 242, - 242, 242, 327, 239, 241, 7, 270, 271, 244, 7, - 6, 344, 7, 214, 270, 255, 354, 327, 327, 335, - 240, 242, 242, 242, 242, 238, 118, 94, 97, 99, - 243, 6, 221, 222, 252, 344, 354, 327, 327, 4, - 335, 6, 344, 327, 6, 348, 6, 354, 6, 348, - 327, 239, 240, 327, 349, 7, 176, 327, 343, 7, - 7, 239, 7, 176, 7, 7, 239, 7, 176, 7, - 7, 7, 7, 7, 7, 7, 7, 7, 327, 239, - 242, 6, 273, 273, 273, 273, 273, 273, 273, 273, - 273, 273, 273, 247, 273, 273, 273, 273, 273, 273, - 273, 273, 273, 247, 247, 247, 239, 241, 241, 344, - 247, 247, 273, 247, 273, 247, 247, 247, 239, 329, - 273, 242, 243, 242, 242, 242, 247, 247, 273, 273, - 239, 244, 239, 244, 247, 330, 243, 7, 273, 8, - 8, 344, 244, 239, 241, 271, 344, 7, 242, 239, - 239, 239, 327, 341, 4, 319, 6, 239, 247, 239, - 247, 239, 247, 239, 247, 239, 239, 239, 243, 243, - 344, 244, 243, 298, 243, 243, 338, 327, 327, 243, - 243, 327, 338, 128, 128, 145, 153, 154, 155, 159, - 160, 312, 313, 338, 243, 308, 239, 243, 239, 239, - 239, 239, 239, 239, 239, 7, 327, 6, 327, 239, - 241, 241, 243, 243, 243, 241, 241, 247, 7, 7, - 7, 244, 327, 243, 327, 327, 7, 244, 273, 247, - 273, 273, 239, 239, 247, 273, 273, 247, 247, 273, - 273, 273, 273, 327, 273, 9, 350, 247, 239, 247, - 273, 244, 247, 331, 241, 243, 243, 246, 7, 148, - 6, 327, 243, 242, 6, 341, 243, 327, 327, 327, - 327, 6, 7, 270, 271, 244, 270, 271, 349, 327, - 6, 4, 242, 346, 354, 243, 46, 46, 341, 4, - 163, 164, 165, 166, 243, 258, 262, 265, 267, 268, - 244, 239, 241, 327, 344, 344, 344, 344, 327, 238, - 238, 238, 238, 348, 239, 244, 239, 241, 239, 247, - 7, 272, 4, 283, 284, 285, 273, 273, 338, 97, - 99, 341, 341, 7, 341, 97, 99, 341, 341, 7, - 341, 99, 341, 341, 341, 341, 341, 341, 341, 341, - 341, 6, 7, 344, 327, 327, 327, 327, 243, 327, - 327, 327, 341, 348, 348, 247, 282, 327, 327, 327, - 327, 327, 327, 335, 335, 327, 239, 341, 327, 327, - 243, 335, 271, 244, 271, 243, 341, 344, 7, 7, - 7, 128, 318, 6, 270, 327, 270, 327, 270, 327, - 270, 327, 7, 7, 7, 7, 7, 243, 4, 243, - 247, 247, 247, 243, 243, 109, 4, 6, 327, 242, - 6, 238, 6, 161, 6, 161, 243, 313, 247, 312, - 7, 6, 7, 7, 7, 7, 7, 7, 7, 341, - 6, 242, 6, 6, 6, 97, 7, 6, 6, 327, - 341, 341, 341, 4, 247, 8, 8, 239, 4, 4, - 344, 348, 327, 348, 245, 247, 286, 348, 348, 335, - 348, 239, 247, 242, 242, 6, 327, 6, 242, 341, - 243, 243, 243, 243, 243, 327, 6, 4, 173, 174, - 327, 6, 6, 6, 7, 345, 347, 6, 240, 273, - 272, 272, 6, 259, 238, 238, 242, 269, 6, 335, - 244, 348, 241, 243, 243, 243, 243, 239, 327, 327, - 327, 327, 6, 6, 252, 335, 244, 6, 327, 242, + 238, 327, 242, 327, 343, 327, 327, 243, 344, 334, + 354, 8, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + 237, 9, 238, 240, 244, 271, 272, 327, 344, 238, + 238, 238, 341, 342, 342, 342, 238, 238, 238, 238, + 238, 341, 238, 341, 238, 341, 242, 242, 327, 4, + 341, 242, 345, 242, 242, 338, 338, 338, 327, 327, + 226, 227, 242, 242, 338, 226, 227, 238, 298, 338, + 242, 238, 242, 238, 238, 238, 238, 238, 238, 238, + 327, 342, 342, 342, 238, 4, 240, 6, 240, 298, + 6, 6, 242, 242, 242, 342, 342, 240, 240, 240, + 327, 6, 6, 327, 327, 327, 244, 327, 242, 176, + 327, 327, 327, 327, 272, 272, 272, 238, 238, 238, + 272, 272, 272, 272, 272, 272, 272, 272, 272, 272, + 238, 238, 272, 238, 240, 6, 6, 242, 6, 298, + 6, 298, 272, 327, 228, 242, 238, 240, 348, 327, + 298, 341, 341, 242, 349, 91, 94, 97, 99, 7, + 327, 327, 4, 173, 174, 341, 6, 239, 241, 242, + 273, 6, 242, 6, 9, 238, 240, 244, 354, 243, + 91, 94, 97, 99, 118, 123, 126, 295, 327, 6, + 239, 247, 9, 238, 240, 244, 239, 247, 247, 239, + 247, 241, 247, 275, 241, 275, 87, 336, 333, 354, + 247, 247, 239, 228, 243, 247, 239, 239, 327, 239, + 243, 239, 239, 327, 239, 243, 239, 239, 239, 239, + 239, 239, 239, 239, 239, 239, 7, 327, 243, 6, + 6, 6, 239, 327, 327, 327, 327, 327, 327, 327, + 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, + 343, 327, 327, 327, 327, 327, 327, 327, 343, 343, + 354, 242, 327, 327, 348, 327, 348, 341, 348, 348, + 352, 327, 273, 354, 64, 327, 64, 64, 64, 342, + 342, 342, 342, 348, 348, 343, 334, 349, 334, 344, + 239, 243, 244, 272, 327, 327, 327, 327, 327, 327, + 327, 327, 327, 327, 327, 327, 327, 327, 242, 327, + 343, 327, 327, 327, 327, 327, 354, 327, 327, 4, + 335, 242, 273, 239, 243, 327, 327, 327, 7, 7, + 320, 320, 289, 327, 349, 290, 327, 349, 291, 327, + 349, 292, 327, 349, 327, 6, 327, 6, 327, 6, + 344, 344, 242, 239, 6, 298, 242, 298, 298, 247, + 247, 247, 338, 338, 297, 297, 247, 327, 243, 311, + 247, 298, 327, 327, 327, 327, 327, 327, 327, 327, + 327, 239, 7, 321, 6, 7, 327, 6, 327, 327, + 243, 344, 344, 344, 6, 6, 327, 327, 327, 239, + 239, 239, 239, 173, 247, 298, 242, 8, 239, 239, + 241, 352, 348, 352, 348, 348, 348, 348, 348, 348, + 327, 348, 348, 348, 348, 245, 351, 354, 349, 348, + 348, 348, 334, 354, 344, 243, 243, 327, 327, 298, + 241, 239, 131, 148, 315, 239, 243, 247, 327, 6, + 242, 242, 242, 242, 327, 239, 241, 7, 270, 271, + 244, 7, 6, 344, 7, 214, 270, 255, 354, 327, + 327, 335, 240, 242, 242, 242, 242, 238, 118, 94, + 97, 99, 243, 6, 221, 222, 252, 344, 354, 327, + 327, 4, 335, 6, 344, 327, 6, 348, 6, 354, + 6, 348, 327, 239, 240, 327, 349, 7, 176, 327, + 343, 7, 7, 239, 7, 176, 7, 7, 239, 7, + 176, 7, 7, 7, 7, 7, 7, 7, 7, 7, + 327, 239, 242, 6, 273, 273, 273, 273, 273, 273, + 273, 273, 273, 273, 273, 247, 273, 273, 273, 273, + 273, 273, 273, 273, 273, 247, 247, 247, 239, 241, + 241, 344, 247, 247, 273, 247, 273, 247, 247, 247, + 239, 329, 273, 242, 243, 242, 242, 242, 247, 247, + 273, 273, 239, 244, 239, 244, 247, 330, 243, 7, + 335, 273, 8, 8, 344, 244, 239, 241, 271, 238, + 344, 7, 242, 239, 239, 239, 327, 341, 4, 319, + 6, 239, 247, 239, 247, 239, 247, 239, 247, 239, + 239, 239, 243, 243, 344, 244, 243, 298, 243, 243, + 338, 327, 327, 243, 243, 327, 338, 128, 128, 145, + 153, 154, 155, 159, 160, 312, 313, 338, 243, 308, + 239, 243, 239, 239, 239, 239, 239, 239, 239, 7, + 327, 6, 327, 239, 241, 241, 243, 243, 243, 241, + 241, 247, 7, 7, 7, 244, 327, 243, 327, 327, + 7, 244, 273, 247, 273, 273, 239, 239, 247, 273, + 273, 247, 247, 273, 273, 273, 273, 327, 273, 9, + 350, 247, 239, 247, 273, 244, 247, 331, 241, 243, + 243, 246, 7, 148, 6, 327, 243, 242, 6, 341, + 243, 327, 327, 327, 327, 6, 7, 270, 271, 244, + 270, 271, 349, 327, 6, 4, 242, 346, 354, 243, + 46, 46, 341, 4, 163, 164, 165, 166, 243, 258, + 262, 265, 267, 268, 244, 239, 241, 238, 327, 344, + 344, 344, 344, 327, 238, 238, 238, 238, 348, 239, + 244, 239, 241, 238, 239, 247, 7, 272, 4, 283, + 284, 285, 273, 273, 338, 97, 99, 341, 341, 7, + 341, 97, 99, 341, 341, 7, 341, 99, 341, 341, + 341, 341, 341, 341, 341, 341, 341, 6, 7, 344, + 327, 327, 327, 327, 243, 327, 327, 327, 341, 348, + 348, 247, 282, 327, 327, 327, 327, 327, 327, 335, + 335, 327, 239, 341, 238, 327, 327, 243, 335, 271, + 244, 271, 327, 243, 341, 344, 7, 7, 7, 128, + 318, 6, 270, 327, 270, 327, 270, 327, 270, 327, + 7, 7, 7, 7, 7, 243, 4, 243, 247, 247, + 247, 243, 243, 109, 4, 6, 327, 242, 6, 238, + 6, 161, 6, 161, 243, 313, 247, 312, 7, 6, + 7, 7, 7, 7, 7, 7, 7, 341, 6, 242, + 6, 6, 6, 97, 7, 6, 6, 327, 341, 341, + 341, 4, 247, 8, 8, 239, 4, 4, 344, 348, + 327, 348, 245, 247, 286, 348, 348, 335, 348, 239, + 247, 242, 242, 6, 327, 6, 242, 341, 243, 243, + 243, 243, 243, 327, 6, 4, 173, 174, 327, 6, + 6, 6, 7, 345, 347, 6, 240, 273, 272, 272, + 6, 259, 238, 238, 242, 269, 6, 335, 244, 348, + 327, 241, 243, 243, 243, 243, 239, 327, 327, 327, + 327, 6, 6, 252, 335, 244, 327, 6, 327, 242, 327, 349, 273, 242, 341, 349, 241, 247, 6, 6, 6, 242, 242, 122, 294, 294, 341, 6, 242, 242, 6, 6, 341, 176, 293, 242, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 243, 273, 273, 273, 273, 273, 247, 247, 247, 239, 273, 273, 284, 273, - 247, 247, 247, 247, 239, 273, 239, 330, 6, 4, - 273, 6, 243, 341, 341, 341, 4, 6, 341, 341, - 341, 341, 341, 341, 341, 242, 242, 7, 6, 7, - 327, 327, 327, 242, 242, 242, 240, 6, 327, 341, - 327, 6, 6, 327, 338, 243, 5, 341, 242, 242, - 242, 242, 242, 242, 242, 341, 6, 344, 242, 327, - 241, 6, 6, 172, 327, 327, 327, 6, 6, 7, - 273, 247, 247, 273, 247, 327, 4, 188, 287, 288, - 273, 239, 273, 331, 349, 327, 298, 6, 298, 247, - 6, 6, 7, 270, 271, 244, 7, 6, 345, 243, - 247, 327, 270, 273, 352, 352, 238, 327, 327, 340, - 341, 242, 4, 6, 6, 6, 6, 6, 6, 239, - 239, 239, 239, 348, 4, 247, 341, 349, 7, 281, - 327, 343, 285, 327, 327, 338, 6, 6, 6, 327, - 327, 6, 95, 6, 327, 5, 242, 327, 327, 327, - 327, 327, 327, 327, 239, 271, 242, 6, 293, 6, - 327, 6, 6, 6, 6, 6, 4, 6, 6, 344, - 344, 327, 327, 349, 243, 239, 243, 247, 297, 297, - 327, 327, 243, 247, 239, 243, 247, 6, 6, 340, - 338, 338, 338, 338, 338, 227, 338, 6, 243, 327, - 6, 6, 341, 243, 247, 8, 243, 239, 242, 327, - 349, 348, 327, 348, 242, 327, 349, 349, 247, 239, - 247, 243, 315, 315, 341, 349, 327, 6, 4, 346, - 6, 345, 241, 341, 6, 273, 273, 256, 327, 247, - 247, 243, 247, 257, 327, 6, 327, 277, 279, 242, + 247, 247, 247, 247, 239, 273, 239, 330, 6, 239, + 238, 4, 239, 273, 6, 243, 341, 341, 341, 4, + 6, 341, 341, 341, 341, 341, 341, 341, 242, 242, + 7, 6, 7, 327, 327, 327, 242, 242, 242, 240, + 6, 327, 341, 327, 6, 6, 327, 338, 243, 5, + 341, 242, 242, 242, 242, 242, 242, 242, 341, 6, + 344, 242, 327, 241, 6, 6, 172, 327, 327, 327, + 6, 6, 7, 273, 247, 247, 273, 247, 327, 4, + 188, 287, 288, 273, 239, 273, 331, 349, 327, 298, + 6, 298, 247, 6, 6, 7, 270, 271, 244, 7, + 6, 345, 243, 247, 327, 270, 273, 352, 352, 238, + 327, 327, 340, 341, 242, 238, 4, 6, 239, 6, + 6, 6, 6, 6, 239, 239, 239, 239, 348, 238, + 4, 239, 247, 341, 349, 7, 281, 327, 343, 285, + 327, 327, 338, 6, 6, 6, 327, 327, 6, 95, + 6, 327, 5, 242, 327, 327, 327, 327, 327, 327, + 327, 239, 327, 271, 242, 6, 293, 6, 327, 6, + 6, 6, 6, 6, 4, 6, 6, 344, 344, 327, + 327, 349, 243, 239, 243, 247, 297, 297, 327, 327, + 243, 247, 239, 243, 247, 6, 6, 340, 338, 338, + 338, 338, 338, 227, 338, 6, 243, 327, 6, 6, + 341, 243, 247, 8, 243, 239, 242, 327, 349, 348, + 327, 348, 242, 327, 349, 349, 247, 239, 247, 243, + 315, 315, 341, 349, 327, 6, 4, 346, 6, 345, + 241, 341, 6, 273, 273, 256, 327, 247, 247, 243, + 247, 257, 327, 327, 6, 327, 327, 277, 279, 242, 243, 247, 7, 7, 243, 243, 243, 243, 242, 243, - 5, 340, 273, 273, 247, 247, 247, 247, 247, 327, - 6, 242, 243, 243, 242, 6, 6, 242, 327, 243, - 243, 243, 241, 6, 341, 7, 242, 327, 243, 247, - 247, 247, 247, 247, 247, 6, 243, 171, 327, 327, - 344, 6, 6, 239, 273, 273, 352, 288, 349, 243, - 243, 243, 6, 6, 7, 6, 244, 6, 6, 6, - 239, 247, 327, 327, 242, 341, 243, 247, 247, 282, - 286, 341, 327, 349, 354, 6, 6, 6, 6, 327, - 6, 6, 243, 327, 327, 327, 327, 327, 243, 340, - 132, 133, 138, 322, 132, 133, 322, 344, 297, 243, - 247, 6, 243, 341, 298, 243, 6, 344, 338, 338, - 338, 338, 338, 327, 243, 243, 243, 243, 239, 242, - 6, 345, 174, 260, 327, 247, 247, 340, 6, 327, - 327, 243, 243, 278, 7, 238, 243, 242, 247, 247, - 247, 247, 247, 243, 242, 338, 341, 6, 242, 338, - 6, 243, 243, 327, 6, 128, 243, 309, 242, 243, - 247, 247, 247, 247, 247, 6, 6, 6, 298, 6, - 242, 327, 327, 243, 247, 282, 349, 239, 327, 327, - 327, 327, 327, 327, 6, 338, 6, 338, 6, 6, - 243, 327, 312, 298, 6, 344, 344, 344, 344, 338, - 344, 315, 257, 239, 247, 6, 242, 327, 243, 247, - 247, 247, 247, 247, 247, 247, 247, 6, 243, 243, - 310, 243, 243, 243, 243, 247, 243, 243, 243, 263, - 327, 340, 243, 327, 327, 327, 327, 327, 327, 338, - 338, 312, 6, 6, 6, 6, 344, 6, 6, 6, - 242, 239, 243, 6, 243, 273, 247, 247, 247, 247, - 247, 247, 243, 243, 261, 348, 266, 242, 6, 327, - 327, 327, 327, 327, 327, 6, 243, 247, 242, 340, - 243, 243, 243, 243, 243, 243, 6, 348, 264, 348, - 243, 6, 6, 243, 247, 6, 6, 348 + 5, 340, 273, 273, 247, 247, 247, 247, 247, 239, + 327, 6, 242, 243, 243, 242, 6, 6, 242, 327, + 243, 243, 243, 241, 6, 341, 7, 242, 327, 243, + 247, 247, 247, 247, 247, 247, 6, 243, 171, 327, + 327, 344, 6, 6, 239, 273, 273, 352, 288, 349, + 243, 243, 243, 6, 6, 7, 6, 244, 6, 6, + 6, 239, 247, 327, 327, 242, 341, 243, 247, 239, + 239, 247, 282, 286, 341, 327, 349, 354, 6, 6, + 6, 6, 327, 6, 6, 243, 327, 327, 327, 327, + 327, 243, 340, 132, 133, 138, 322, 132, 133, 322, + 344, 297, 243, 247, 6, 243, 341, 298, 243, 6, + 344, 338, 338, 338, 338, 338, 327, 243, 243, 243, + 243, 239, 242, 6, 345, 174, 260, 327, 247, 247, + 340, 6, 327, 327, 243, 243, 278, 7, 238, 243, + 242, 247, 247, 247, 247, 247, 243, 242, 338, 341, + 6, 242, 338, 6, 243, 243, 327, 6, 128, 243, + 309, 242, 243, 247, 247, 247, 247, 247, 6, 6, + 6, 298, 6, 242, 327, 327, 243, 247, 282, 349, + 239, 327, 327, 327, 327, 327, 327, 6, 338, 6, + 338, 6, 6, 243, 327, 312, 298, 6, 344, 344, + 344, 344, 338, 344, 315, 257, 239, 247, 6, 242, + 327, 243, 247, 247, 247, 247, 247, 247, 247, 247, + 6, 243, 243, 310, 243, 243, 243, 243, 247, 243, + 243, 243, 263, 327, 340, 243, 327, 327, 327, 327, + 327, 327, 338, 338, 312, 6, 6, 6, 6, 344, + 6, 6, 6, 242, 239, 243, 6, 243, 273, 247, + 247, 247, 247, 247, 247, 243, 243, 261, 348, 266, + 242, 6, 327, 327, 327, 327, 327, 327, 6, 243, + 247, 242, 340, 243, 243, 243, 243, 243, 243, 6, + 348, 264, 348, 243, 6, 6, 243, 247, 6, 6, + 348 }; #define yyerrok (yyerrstatus = 0) @@ -6276,27 +6341,27 @@ yyreduce: switch (yyn) { case 3: -#line 254 "Gmsh.y" +#line 260 "Gmsh.y" { yyerrok; return 1; ;} break; case 6: -#line 265 "Gmsh.y" +#line 271 "Gmsh.y" { return 1; ;} break; case 7: -#line 266 "Gmsh.y" +#line 272 "Gmsh.y" { return 1; ;} break; case 8: -#line 267 "Gmsh.y" +#line 273 "Gmsh.y" { return 1; ;} break; case 9: -#line 269 "Gmsh.y" +#line 275 "Gmsh.y" { factory = (yyvsp[(3) - (5)].c); if(factory == "OpenCASCADE"){ @@ -6318,101 +6383,101 @@ yyreduce: break; case 10: -#line 287 "Gmsh.y" +#line 293 "Gmsh.y" { return 1; ;} break; case 11: -#line 288 "Gmsh.y" +#line 294 "Gmsh.y" { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} break; case 12: -#line 289 "Gmsh.y" +#line 295 "Gmsh.y" { return 1; ;} break; case 13: -#line 290 "Gmsh.y" +#line 296 "Gmsh.y" { return 1; ;} break; case 14: -#line 291 "Gmsh.y" +#line 297 "Gmsh.y" { return 1; ;} break; case 15: -#line 292 "Gmsh.y" +#line 298 "Gmsh.y" { return 1; ;} break; case 16: -#line 293 "Gmsh.y" +#line 299 "Gmsh.y" { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} break; case 17: -#line 294 "Gmsh.y" +#line 300 "Gmsh.y" { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} break; case 18: -#line 295 "Gmsh.y" +#line 301 "Gmsh.y" { return 1; ;} break; case 19: -#line 296 "Gmsh.y" +#line 302 "Gmsh.y" { return 1; ;} break; case 20: -#line 297 "Gmsh.y" +#line 303 "Gmsh.y" { return 1; ;} break; case 21: -#line 298 "Gmsh.y" +#line 304 "Gmsh.y" { return 1; ;} break; case 22: -#line 299 "Gmsh.y" +#line 305 "Gmsh.y" { return 1; ;} break; case 23: -#line 300 "Gmsh.y" +#line 306 "Gmsh.y" { return 1; ;} break; case 24: -#line 301 "Gmsh.y" +#line 307 "Gmsh.y" { return 1; ;} break; case 25: -#line 302 "Gmsh.y" +#line 308 "Gmsh.y" { return 1; ;} break; case 26: -#line 307 "Gmsh.y" +#line 313 "Gmsh.y" { (yyval.c) = (char*)"w"; ;} break; case 27: -#line 311 "Gmsh.y" +#line 317 "Gmsh.y" { (yyval.c) = (char*)"a"; ;} break; case 28: -#line 318 "Gmsh.y" +#line 324 "Gmsh.y" { Msg::Direct((yyvsp[(3) - (5)].c)); Free((yyvsp[(3) - (5)].c)); @@ -6420,7 +6485,7 @@ yyreduce: break; case 29: -#line 323 "Gmsh.y" +#line 329 "Gmsh.y" { Msg::Error((yyvsp[(3) - (5)].c)); Free((yyvsp[(3) - (5)].c)); @@ -6428,7 +6493,7 @@ yyreduce: break; case 30: -#line 328 "Gmsh.y" +#line 334 "Gmsh.y" { std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(6) - (7)].c)); FILE *fp = Fopen(tmp.c_str(), (yyvsp[(5) - (7)].c)); @@ -6445,7 +6510,7 @@ yyreduce: break; case 31: -#line 342 "Gmsh.y" +#line 348 "Gmsh.y" { char tmpstring[5000]; int i = printListOfDouble((yyvsp[(3) - (7)].c), (yyvsp[(5) - (7)].l), tmpstring); @@ -6461,7 +6526,7 @@ yyreduce: break; case 32: -#line 355 "Gmsh.y" +#line 361 "Gmsh.y" { char tmpstring[5000]; int i = printListOfDouble((yyvsp[(3) - (7)].c), (yyvsp[(5) - (7)].l), tmpstring); @@ -6477,7 +6542,7 @@ yyreduce: break; case 33: -#line 368 "Gmsh.y" +#line 374 "Gmsh.y" { char tmpstring[5000]; int i = printListOfDouble((yyvsp[(3) - (9)].c), (yyvsp[(5) - (9)].l), tmpstring); @@ -6503,7 +6568,7 @@ yyreduce: break; case 34: -#line 396 "Gmsh.y" +#line 402 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(1) - (6)].c), "View") && ViewData->finalize()){ @@ -6520,7 +6585,7 @@ yyreduce: break; case 35: -#line 410 "Gmsh.y" +#line 416 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -6536,7 +6601,7 @@ yyreduce: break; case 36: -#line 423 "Gmsh.y" +#line 429 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -6552,7 +6617,7 @@ yyreduce: break; case 37: -#line 436 "Gmsh.y" +#line 442 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (8)].c), "View")){ @@ -6570,7 +6635,7 @@ yyreduce: break; case 38: -#line 454 "Gmsh.y" +#line 460 "Gmsh.y" { #if defined(HAVE_POST) ViewData = new PViewDataList(); @@ -6579,27 +6644,27 @@ yyreduce: break; case 44: -#line 468 "Gmsh.y" +#line 474 "Gmsh.y" { ViewCoord.push_back((yyvsp[(1) - (1)].d)); ;} break; case 45: -#line 470 "Gmsh.y" +#line 476 "Gmsh.y" { ViewCoord.push_back((yyvsp[(3) - (3)].d)); ;} break; case 46: -#line 475 "Gmsh.y" +#line 481 "Gmsh.y" { if(ViewValueList) ViewValueList->push_back((yyvsp[(1) - (1)].d)); ;} break; case 47: -#line 477 "Gmsh.y" +#line 483 "Gmsh.y" { if(ViewValueList) ViewValueList->push_back((yyvsp[(3) - (3)].d)); ;} break; case 48: -#line 482 "Gmsh.y" +#line 488 "Gmsh.y" { #if defined(HAVE_POST) if(!strncmp((yyvsp[(1) - (1)].c), "SP", 2)){ @@ -6706,7 +6771,7 @@ yyreduce: break; case 49: -#line 586 "Gmsh.y" +#line 592 "Gmsh.y" { #if defined(HAVE_POST) if(ViewValueList){ @@ -6719,7 +6784,7 @@ yyreduce: break; case 50: -#line 596 "Gmsh.y" +#line 602 "Gmsh.y" { #if defined(HAVE_POST) if(ViewValueList) (*ViewNumList)++; @@ -6728,7 +6793,7 @@ yyreduce: break; case 51: -#line 605 "Gmsh.y" +#line 611 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c)) + 1; i++) ViewData->T2C.push_back((yyvsp[(1) - (1)].c)[i]); @@ -6738,7 +6803,7 @@ yyreduce: break; case 52: -#line 612 "Gmsh.y" +#line 618 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c)) + 1; i++) ViewData->T2C.push_back((yyvsp[(3) - (3)].c)[i]); @@ -6748,7 +6813,7 @@ yyreduce: break; case 53: -#line 622 "Gmsh.y" +#line 628 "Gmsh.y" { #if defined(HAVE_POST) ViewData->T2D.push_back((yyvsp[(3) - (8)].d)); @@ -6760,7 +6825,7 @@ yyreduce: break; case 54: -#line 631 "Gmsh.y" +#line 637 "Gmsh.y" { #if defined(HAVE_POST) ViewData->NbT2++; @@ -6769,7 +6834,7 @@ yyreduce: break; case 55: -#line 640 "Gmsh.y" +#line 646 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c)) + 1; i++) ViewData->T3C.push_back((yyvsp[(1) - (1)].c)[i]); @@ -6779,7 +6844,7 @@ yyreduce: break; case 56: -#line 647 "Gmsh.y" +#line 653 "Gmsh.y" { #if defined(HAVE_POST) for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c)) + 1; i++) ViewData->T3C.push_back((yyvsp[(3) - (3)].c)[i]); @@ -6789,7 +6854,7 @@ yyreduce: break; case 57: -#line 657 "Gmsh.y" +#line 663 "Gmsh.y" { #if defined(HAVE_POST) ViewData->T3D.push_back((yyvsp[(3) - (10)].d)); ViewData->T3D.push_back((yyvsp[(5) - (10)].d)); @@ -6800,7 +6865,7 @@ yyreduce: break; case 58: -#line 665 "Gmsh.y" +#line 671 "Gmsh.y" { #if defined(HAVE_POST) ViewData->NbT3++; @@ -6809,7 +6874,7 @@ yyreduce: break; case 59: -#line 675 "Gmsh.y" +#line 681 "Gmsh.y" { #if defined(HAVE_POST) int type = @@ -6828,7 +6893,7 @@ yyreduce: break; case 60: -#line 694 "Gmsh.y" +#line 700 "Gmsh.y" { #if defined(HAVE_POST) int type = @@ -6847,7 +6912,7 @@ yyreduce: break; case 61: -#line 713 "Gmsh.y" +#line 719 "Gmsh.y" { #if defined(HAVE_POST) ViewValueList = &ViewData->Time; @@ -6856,68 +6921,68 @@ yyreduce: break; case 62: -#line 719 "Gmsh.y" +#line 725 "Gmsh.y" { ;} break; case 63: -#line 726 "Gmsh.y" +#line 732 "Gmsh.y" { (yyval.i) = 0; ;} break; case 64: -#line 727 "Gmsh.y" +#line 733 "Gmsh.y" { (yyval.i) = 1; ;} break; case 65: -#line 728 "Gmsh.y" +#line 734 "Gmsh.y" { (yyval.i) = 2; ;} break; case 66: -#line 729 "Gmsh.y" +#line 735 "Gmsh.y" { (yyval.i) = 3; ;} break; case 67: -#line 730 "Gmsh.y" +#line 736 "Gmsh.y" { (yyval.i) = 4; ;} break; case 68: -#line 734 "Gmsh.y" +#line 740 "Gmsh.y" { (yyval.i) = 1; ;} break; case 69: -#line 735 "Gmsh.y" +#line 741 "Gmsh.y" { (yyval.i) = -1; ;} break; case 70: -#line 741 "Gmsh.y" +#line 747 "Gmsh.y" { (yyval.c) = (char*)"("; ;} break; case 71: -#line 741 "Gmsh.y" +#line 747 "Gmsh.y" { (yyval.c) = (char*)"["; ;} break; case 72: -#line 742 "Gmsh.y" +#line 748 "Gmsh.y" { (yyval.c) = (char*)")"; ;} break; case 73: -#line 742 "Gmsh.y" +#line 748 "Gmsh.y" { (yyval.c) = (char*)"]"; ;} break; case 77: -#line 752 "Gmsh.y" +#line 758 "Gmsh.y" { Msg::SetOnelabNumber((yyvsp[(3) - (7)].c), (yyvsp[(5) - (7)].d)); Free((yyvsp[(3) - (7)].c)); @@ -6925,7 +6990,7 @@ yyreduce: break; case 78: -#line 757 "Gmsh.y" +#line 763 "Gmsh.y" { Msg::SetOnelabString((yyvsp[(3) - (7)].c), (yyvsp[(5) - (7)].c)); Free((yyvsp[(3) - (7)].c)); @@ -6934,7 +6999,7 @@ yyreduce: break; case 79: -#line 763 "Gmsh.y" +#line 769 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c)) && (yyvsp[(2) - (4)].i) && List_Nbr((yyvsp[(3) - (4)].l)) == 1){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (4)].c)); @@ -6999,7 +7064,7 @@ yyreduce: break; case 80: -#line 825 "Gmsh.y" +#line 831 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (3)].c)); @@ -7017,7 +7082,7 @@ yyreduce: break; case 81: -#line 840 "Gmsh.y" +#line 846 "Gmsh.y" { gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(1) - (6)].c)]); s.list = true; @@ -7049,7 +7114,7 @@ yyreduce: break; case 82: -#line 869 "Gmsh.y" +#line 875 "Gmsh.y" { assignVariables((yyvsp[(1) - (9)].c), (yyvsp[(4) - (9)].l), (yyvsp[(7) - (9)].i), (yyvsp[(8) - (9)].l)); Free((yyvsp[(1) - (9)].c)); @@ -7059,7 +7124,7 @@ yyreduce: break; case 83: -#line 879 "Gmsh.y" +#line 885 "Gmsh.y" { assignVariable((yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(5) - (7)].i), (yyvsp[(6) - (7)].d)); Free((yyvsp[(1) - (7)].c)); @@ -7067,7 +7132,7 @@ yyreduce: break; case 84: -#line 884 "Gmsh.y" +#line 890 "Gmsh.y" { incrementVariable((yyvsp[(1) - (6)].c), (yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].i)); Free((yyvsp[(1) - (6)].c)); @@ -7075,7 +7140,7 @@ yyreduce: break; case 85: -#line 892 "Gmsh.y" +#line 898 "Gmsh.y" { assignVariable((yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(5) - (7)].i), (yyvsp[(6) - (7)].d)); Free((yyvsp[(1) - (7)].c)); @@ -7083,7 +7148,7 @@ yyreduce: break; case 86: -#line 897 "Gmsh.y" +#line 903 "Gmsh.y" { incrementVariable((yyvsp[(1) - (6)].c), (yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].i)); Free((yyvsp[(1) - (6)].c)); @@ -7091,7 +7156,7 @@ yyreduce: break; case 87: -#line 905 "Gmsh.y" +#line 911 "Gmsh.y" { gmsh_yystringsymbols[(yyvsp[(1) - (4)].c)] = std::vector<std::string>(1, (yyvsp[(3) - (4)].c)); Free((yyvsp[(1) - (4)].c)); @@ -7100,7 +7165,7 @@ yyreduce: break; case 88: -#line 914 "Gmsh.y" +#line 920 "Gmsh.y" { gmsh_yystringsymbols[(yyvsp[(1) - (8)].c)] = std::vector<std::string>(); Free((yyvsp[(1) - (8)].c)); @@ -7108,7 +7173,7 @@ yyreduce: break; case 89: -#line 919 "Gmsh.y" +#line 925 "Gmsh.y" { std::vector<std::string> s; for(int i = 0; i < List_Nbr((yyvsp[(7) - (9)].l)); i++){ @@ -7123,7 +7188,7 @@ yyreduce: break; case 90: -#line 931 "Gmsh.y" +#line 937 "Gmsh.y" { if(gmsh_yystringsymbols.count((yyvsp[(1) - (9)].c))){ for(int i = 0; i < List_Nbr((yyvsp[(7) - (9)].l)); i++){ @@ -7140,7 +7205,7 @@ yyreduce: break; case 91: -#line 948 "Gmsh.y" +#line 954 "Gmsh.y" { std::string tmp((yyvsp[(5) - (6)].c)); StringOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), tmp); @@ -7149,7 +7214,7 @@ yyreduce: break; case 92: -#line 954 "Gmsh.y" +#line 960 "Gmsh.y" { std::string tmp((yyvsp[(8) - (9)].c)); StringOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), tmp); @@ -7158,7 +7223,7 @@ yyreduce: break; case 93: -#line 963 "Gmsh.y" +#line 969 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), d)){ @@ -7179,7 +7244,7 @@ yyreduce: break; case 94: -#line 981 "Gmsh.y" +#line 987 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), d)){ @@ -7200,7 +7265,7 @@ yyreduce: break; case 95: -#line 999 "Gmsh.y" +#line 1005 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(3) - (5)].c), d)){ @@ -7212,7 +7277,7 @@ yyreduce: break; case 96: -#line 1008 "Gmsh.y" +#line 1014 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (8)].c), (int)(yyvsp[(3) - (8)].d), (yyvsp[(6) - (8)].c), d)){ @@ -7224,7 +7289,7 @@ yyreduce: break; case 97: -#line 1020 "Gmsh.y" +#line 1026 "Gmsh.y" { ColorOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (8)].c), 0, (yyvsp[(5) - (8)].c), (yyvsp[(7) - (8)].u)); Free((yyvsp[(1) - (8)].c)); Free((yyvsp[(5) - (8)].c)); @@ -7232,7 +7297,7 @@ yyreduce: break; case 98: -#line 1025 "Gmsh.y" +#line 1031 "Gmsh.y" { ColorOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (11)].c), (int)(yyvsp[(3) - (11)].d), (yyvsp[(8) - (11)].c), (yyvsp[(10) - (11)].u)); Free((yyvsp[(1) - (11)].c)); Free((yyvsp[(8) - (11)].c)); @@ -7240,7 +7305,7 @@ yyreduce: break; case 99: -#line 1033 "Gmsh.y" +#line 1039 "Gmsh.y" { GmshColorTable *ct = GetColorTable(0); if(!ct) @@ -7263,7 +7328,7 @@ yyreduce: break; case 100: -#line 1053 "Gmsh.y" +#line 1059 "Gmsh.y" { GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (9)].d)); if(!ct) @@ -7286,7 +7351,7 @@ yyreduce: break; case 101: -#line 1076 "Gmsh.y" +#line 1082 "Gmsh.y" { #if defined(HAVE_MESH) if(!strcmp((yyvsp[(1) - (5)].c),"Background")) @@ -7300,7 +7365,7 @@ yyreduce: break; case 102: -#line 1087 "Gmsh.y" +#line 1093 "Gmsh.y" { #if defined(HAVE_MESH) if(!GModel::current()->getFields()->newField((int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c))) @@ -7311,7 +7376,7 @@ yyreduce: break; case 103: -#line 1095 "Gmsh.y" +#line 1101 "Gmsh.y" { #if defined(HAVE_MESH) Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (9)].d)); @@ -7336,7 +7401,7 @@ yyreduce: break; case 104: -#line 1117 "Gmsh.y" +#line 1123 "Gmsh.y" { #if defined(HAVE_MESH) Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (9)].d)); @@ -7362,7 +7427,7 @@ yyreduce: break; case 105: -#line 1140 "Gmsh.y" +#line 1146 "Gmsh.y" { #if defined(HAVE_MESH) Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (11)].d)); @@ -7403,7 +7468,7 @@ yyreduce: break; case 106: -#line 1178 "Gmsh.y" +#line 1184 "Gmsh.y" { #if defined(HAVE_MESH) Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (7)].d)); @@ -7424,7 +7489,7 @@ yyreduce: break; case 107: -#line 1199 "Gmsh.y" +#line 1205 "Gmsh.y" { #if defined(HAVE_PLUGINS) try { @@ -7439,7 +7504,7 @@ yyreduce: break; case 108: -#line 1211 "Gmsh.y" +#line 1217 "Gmsh.y" { #if defined(HAVE_PLUGINS) try { @@ -7454,7 +7519,7 @@ yyreduce: break; case 112: -#line 1229 "Gmsh.y" +#line 1235 "Gmsh.y" { std::string key((yyvsp[(3) - (3)].c)); std::vector<double> val(1, 0.); @@ -7466,7 +7531,7 @@ yyreduce: break; case 113: -#line 1238 "Gmsh.y" +#line 1244 "Gmsh.y" { std::string key((yyvsp[(3) - (5)].c)); std::vector<double> val(1, (yyvsp[(5) - (5)].d)); @@ -7478,12 +7543,12 @@ yyreduce: break; case 114: -#line 1247 "Gmsh.y" +#line 1253 "Gmsh.y" { init_options(); ;} break; case 115: -#line 1249 "Gmsh.y" +#line 1255 "Gmsh.y" { if(List_Nbr((yyvsp[(6) - (9)].l)) != 1) yymsg(1, "List notation should be used to define list '%s[]'", (yyvsp[(3) - (9)].c)); @@ -7504,12 +7569,12 @@ yyreduce: break; case 116: -#line 1267 "Gmsh.y" +#line 1273 "Gmsh.y" { init_options(); ;} break; case 117: -#line 1269 "Gmsh.y" +#line 1275 "Gmsh.y" { std::string key((yyvsp[(3) - (11)].c)); std::vector<double> val; @@ -7528,7 +7593,7 @@ yyreduce: break; case 118: -#line 1285 "Gmsh.y" +#line 1291 "Gmsh.y" { std::string key((yyvsp[(3) - (5)].c)), val((yyvsp[(5) - (5)].c)); if(!gmsh_yystringsymbols.count(key)){ @@ -7540,12 +7605,12 @@ yyreduce: break; case 119: -#line 1294 "Gmsh.y" +#line 1300 "Gmsh.y" { init_options(); ;} break; case 120: -#line 1296 "Gmsh.y" +#line 1302 "Gmsh.y" { std::string key((yyvsp[(3) - (9)].c)), val((yyvsp[(6) - (9)].c)); if(!gmsh_yysymbols.count(key)){ @@ -7558,7 +7623,7 @@ yyreduce: break; case 122: -#line 1310 "Gmsh.y" +#line 1316 "Gmsh.y" { std::string name((yyvsp[(3) - (3)].c)); Msg::UndefineOnelabParameter(name); @@ -7567,7 +7632,7 @@ yyreduce: break; case 123: -#line 1318 "Gmsh.y" +#line 1324 "Gmsh.y" { (yyval.l) = List_Create(20,20,sizeof(doubleXstring)); doubleXstring v = {(yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].c)}; @@ -7576,7 +7641,7 @@ yyreduce: break; case 124: -#line 1324 "Gmsh.y" +#line 1330 "Gmsh.y" { doubleXstring v = {(yyvsp[(3) - (5)].d), (yyvsp[(5) - (5)].c)}; List_Add((yyval.l), &v); @@ -7584,7 +7649,7 @@ yyreduce: break; case 125: -#line 1329 "Gmsh.y" +#line 1335 "Gmsh.y" { (yyval.l) = List_Create(20,20,sizeof(doubleXstring)); int n = List_Nbr((yyvsp[(1) - (5)].l)); @@ -7611,7 +7676,7 @@ yyreduce: break; case 132: -#line 1371 "Gmsh.y" +#line 1377 "Gmsh.y" { std::string key((yyvsp[(1) - (2)].c)); for(int i = 0; i < List_Nbr((yyvsp[(2) - (2)].l)); i++){ @@ -7626,7 +7691,7 @@ yyreduce: break; case 133: -#line 1383 "Gmsh.y" +#line 1389 "Gmsh.y" { std::string key((yyvsp[(1) - (1)].c)); double v; @@ -7642,7 +7707,7 @@ yyreduce: break; case 134: -#line 1396 "Gmsh.y" +#line 1402 "Gmsh.y" { std::string key((yyvsp[(1) - (4)].c)); for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ @@ -7659,7 +7724,7 @@ yyreduce: break; case 135: -#line 1411 "Gmsh.y" +#line 1417 "Gmsh.y" { std::string key((yyvsp[(1) - (2)].c)); std::string val((yyvsp[(2) - (2)].c)); @@ -7670,7 +7735,7 @@ yyreduce: break; case 140: -#line 1433 "Gmsh.y" +#line 1439 "Gmsh.y" { std::string key((yyvsp[(1) - (2)].c)); double val = (yyvsp[(2) - (2)].d); @@ -7680,7 +7745,7 @@ yyreduce: break; case 141: -#line 1441 "Gmsh.y" +#line 1447 "Gmsh.y" { std::string key((yyvsp[(1) - (2)].c)); std::string val((yyvsp[(2) - (2)].c)); @@ -7691,7 +7756,7 @@ yyreduce: break; case 142: -#line 1450 "Gmsh.y" +#line 1456 "Gmsh.y" { std::string key("Macro"); std::string val((yyvsp[(2) - (2)].c)); @@ -7701,7 +7766,7 @@ yyreduce: break; case 143: -#line 1458 "Gmsh.y" +#line 1464 "Gmsh.y" { std::string key((yyvsp[(1) - (4)].c)); for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ @@ -7717,14 +7782,14 @@ yyreduce: break; case 144: -#line 1476 "Gmsh.y" +#line 1482 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(1) - (1)].d); ;} break; case 145: -#line 1480 "Gmsh.y" +#line 1486 "Gmsh.y" { int t = GModel::current()->getGEOInternals()->getMaxPhysicalTag(); GModel::current()->getGEOInternals()->setMaxPhysicalTag(t + 1); @@ -7734,7 +7799,7 @@ yyreduce: break; case 146: -#line 1487 "Gmsh.y" +#line 1493 "Gmsh.y" { (yyval.i) = GModel::current()->setPhysicalName(std::string((yyvsp[(1) - (3)].c)), 0, (yyvsp[(3) - (3)].d)); Free((yyvsp[(1) - (3)].c)); @@ -7742,14 +7807,14 @@ yyreduce: break; case 147: -#line 1495 "Gmsh.y" +#line 1501 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(1) - (1)].d); ;} break; case 148: -#line 1499 "Gmsh.y" +#line 1505 "Gmsh.y" { int t = GModel::current()->getGEOInternals()->getMaxPhysicalTag(); GModel::current()->getGEOInternals()->setMaxPhysicalTag(t + 1); @@ -7759,7 +7824,7 @@ yyreduce: break; case 149: -#line 1506 "Gmsh.y" +#line 1512 "Gmsh.y" { (yyval.i) = GModel::current()->setPhysicalName(std::string((yyvsp[(1) - (3)].c)), 1, (yyvsp[(3) - (3)].d)); Free((yyvsp[(1) - (3)].c)); @@ -7767,14 +7832,14 @@ yyreduce: break; case 150: -#line 1514 "Gmsh.y" +#line 1520 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(1) - (1)].d); ;} break; case 151: -#line 1518 "Gmsh.y" +#line 1524 "Gmsh.y" { int t = GModel::current()->getGEOInternals()->getMaxPhysicalTag(); GModel::current()->getGEOInternals()->setMaxPhysicalTag(t + 1); @@ -7784,7 +7849,7 @@ yyreduce: break; case 152: -#line 1525 "Gmsh.y" +#line 1531 "Gmsh.y" { (yyval.i) = GModel::current()->setPhysicalName(std::string((yyvsp[(1) - (3)].c)), 2, (yyvsp[(3) - (3)].d)); Free((yyvsp[(1) - (3)].c)); @@ -7792,14 +7857,14 @@ yyreduce: break; case 153: -#line 1533 "Gmsh.y" +#line 1539 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(1) - (1)].d); ;} break; case 154: -#line 1537 "Gmsh.y" +#line 1543 "Gmsh.y" { int t = GModel::current()->getGEOInternals()->getMaxPhysicalTag(); GModel::current()->getGEOInternals()->setMaxPhysicalTag(t + 1); @@ -7809,7 +7874,7 @@ yyreduce: break; case 155: -#line 1544 "Gmsh.y" +#line 1550 "Gmsh.y" { (yyval.i) = GModel::current()->setPhysicalName(std::string((yyvsp[(1) - (3)].c)), 3, (yyvsp[(3) - (3)].d)); Free((yyvsp[(1) - (3)].c)); @@ -7817,35 +7882,35 @@ yyreduce: break; case 156: -#line 1552 "Gmsh.y" +#line 1558 "Gmsh.y" { (yyval.i) = -1; ;} break; case 157: -#line 1556 "Gmsh.y" +#line 1562 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(4) - (5)].d); ;} break; case 158: -#line 1562 "Gmsh.y" +#line 1568 "Gmsh.y" { for(int i = 0; i < 4; i++) (yyval.v)[i] = 0.; ;} break; case 159: -#line 1566 "Gmsh.y" +#line 1572 "Gmsh.y" { for(int i = 0; i < 4; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; ;} break; case 160: -#line 1573 "Gmsh.y" +#line 1579 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); double x = CTX::instance()->geom.scalingFactor * (yyvsp[(6) - (7)].v)[0]; @@ -7872,7 +7937,7 @@ yyreduce: break; case 161: -#line 1597 "Gmsh.y" +#line 1603 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); @@ -7891,7 +7956,7 @@ yyreduce: break; case 162: -#line 1613 "Gmsh.y" +#line 1619 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); @@ -7910,7 +7975,7 @@ yyreduce: break; case 163: -#line 1629 "Gmsh.y" +#line 1635 "Gmsh.y" { int num = (int)(yyvsp[(3) - (8)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (8)].l), tags); @@ -7950,7 +8015,7 @@ yyreduce: break; case 164: -#line 1666 "Gmsh.y" +#line 1672 "Gmsh.y" { int num = (int)(yyvsp[(3) - (8)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (8)].l), tags); @@ -7993,7 +8058,7 @@ yyreduce: break; case 165: -#line 1706 "Gmsh.y" +#line 1712 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); @@ -8012,7 +8077,7 @@ yyreduce: break; case 166: -#line 1722 "Gmsh.y" +#line 1728 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); @@ -8031,7 +8096,7 @@ yyreduce: break; case 167: -#line 1739 "Gmsh.y" +#line 1745 "Gmsh.y" { int num = (int)(yyvsp[(3) - (11)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (11)].l), tags); @@ -8055,7 +8120,7 @@ yyreduce: break; case 168: -#line 1760 "Gmsh.y" +#line 1766 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); @@ -8068,7 +8133,7 @@ yyreduce: break; case 169: -#line 1770 "Gmsh.y" +#line 1776 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); @@ -8087,7 +8152,7 @@ yyreduce: break; case 170: -#line 1786 "Gmsh.y" +#line 1792 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); @@ -8107,7 +8172,7 @@ yyreduce: break; case 171: -#line 1803 "Gmsh.y" +#line 1809 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); @@ -8126,7 +8191,7 @@ yyreduce: break; case 172: -#line 1819 "Gmsh.y" +#line 1825 "Gmsh.y" { int num = (int)(yyvsp[(3) - (8)].d); std::vector<int> wires; ListOfDouble2Vector((yyvsp[(6) - (8)].l), wires); @@ -8150,7 +8215,7 @@ yyreduce: break; case 173: -#line 1840 "Gmsh.y" +#line 1846 "Gmsh.y" { yymsg(2, "'Ruled Surface' command is deprecated: use 'Surface' instead"); int num = (int)(yyvsp[(4) - (9)].d); @@ -8164,7 +8229,7 @@ yyreduce: break; case 174: -#line 1851 "Gmsh.y" +#line 1857 "Gmsh.y" { myGmshSurface = 0; (yyval.s).Type = 0; @@ -8173,7 +8238,7 @@ yyreduce: break; case 175: -#line 1857 "Gmsh.y" +#line 1863 "Gmsh.y" { myGmshSurface = gmshSurface::getSurface((int)(yyvsp[(3) - (4)].d)); (yyval.s).Type = 0; @@ -8182,7 +8247,7 @@ yyreduce: break; case 176: -#line 1863 "Gmsh.y" +#line 1869 "Gmsh.y" { int num = (int)(yyvsp[(4) - (10)].d); myGmshSurface = gmshParametricSurface::NewParametricSurface(num, (yyvsp[(7) - (10)].c), (yyvsp[(8) - (10)].c), (yyvsp[(9) - (10)].c)); @@ -8192,7 +8257,7 @@ yyreduce: break; case 177: -#line 1870 "Gmsh.y" +#line 1876 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); @@ -8226,7 +8291,7 @@ yyreduce: break; case 178: -#line 1901 "Gmsh.y" +#line 1907 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); @@ -8244,7 +8309,7 @@ yyreduce: break; case 179: -#line 1916 "Gmsh.y" +#line 1922 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); @@ -8269,7 +8334,7 @@ yyreduce: break; case 180: -#line 1938 "Gmsh.y" +#line 1944 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); @@ -8295,7 +8360,7 @@ yyreduce: break; case 181: -#line 1961 "Gmsh.y" +#line 1967 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); @@ -8321,7 +8386,7 @@ yyreduce: break; case 182: -#line 1984 "Gmsh.y" +#line 1990 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); @@ -8347,7 +8412,7 @@ yyreduce: break; case 183: -#line 2007 "Gmsh.y" +#line 2013 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); @@ -8374,7 +8439,7 @@ yyreduce: break; case 184: -#line 2031 "Gmsh.y" +#line 2037 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); @@ -8401,7 +8466,7 @@ yyreduce: break; case 185: -#line 2055 "Gmsh.y" +#line 2061 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); @@ -8427,7 +8492,7 @@ yyreduce: break; case 186: -#line 2078 "Gmsh.y" +#line 2084 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<double> param; ListOfDouble2Vector((yyvsp[(6) - (7)].l), param); @@ -8455,7 +8520,7 @@ yyreduce: break; case 187: -#line 2103 "Gmsh.y" +#line 2109 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); @@ -8468,7 +8533,7 @@ yyreduce: break; case 188: -#line 2114 "Gmsh.y" +#line 2120 "Gmsh.y" { int num = (int)(yyvsp[(4) - (12)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (12)].l), tags); @@ -8493,7 +8558,7 @@ yyreduce: break; case 189: -#line 2136 "Gmsh.y" +#line 2142 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); @@ -8513,7 +8578,7 @@ yyreduce: break; case 190: -#line 2153 "Gmsh.y" +#line 2159 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (7)].l), tags); @@ -8532,7 +8597,7 @@ yyreduce: break; case 191: -#line 2169 "Gmsh.y" +#line 2175 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); std::vector<int> wires; ListOfDouble2Vector((yyvsp[(6) - (7)].l), wires); @@ -8553,7 +8618,7 @@ yyreduce: break; case 192: -#line 2187 "Gmsh.y" +#line 2193 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); std::vector<int> wires; ListOfDouble2Vector((yyvsp[(7) - (8)].l), wires); @@ -8574,7 +8639,7 @@ yyreduce: break; case 193: -#line 2205 "Gmsh.y" +#line 2211 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); std::vector<int> tags; ListOfDouble2Vector((yyvsp[(7) - (8)].l), tags); @@ -8587,7 +8652,7 @@ yyreduce: break; case 194: -#line 2215 "Gmsh.y" +#line 2221 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].i); int op = (yyvsp[(6) - (8)].i); @@ -8602,7 +8667,7 @@ yyreduce: break; case 195: -#line 2227 "Gmsh.y" +#line 2233 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].i); int op = (yyvsp[(6) - (8)].i); @@ -8617,7 +8682,7 @@ yyreduce: break; case 196: -#line 2239 "Gmsh.y" +#line 2245 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].i); int op = (yyvsp[(6) - (8)].i); @@ -8632,7 +8697,7 @@ yyreduce: break; case 197: -#line 2251 "Gmsh.y" +#line 2257 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].i); int op = (yyvsp[(6) - (8)].i); @@ -8647,7 +8712,7 @@ yyreduce: break; case 198: -#line 2268 "Gmsh.y" +#line 2274 "Gmsh.y" { std::vector<std::pair<int, int> > dimTags; ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), dimTags); @@ -8666,7 +8731,7 @@ yyreduce: break; case 199: -#line 2284 "Gmsh.y" +#line 2290 "Gmsh.y" { std::vector<std::pair<int, int> > dimTags; ListOfShapes2VectorOfPairs((yyvsp[(10) - (11)].l), dimTags); @@ -8685,7 +8750,7 @@ yyreduce: break; case 200: -#line 2300 "Gmsh.y" +#line 2306 "Gmsh.y" { std::vector<std::pair<int, int> > dimTags; ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), dimTags); @@ -8703,7 +8768,7 @@ yyreduce: break; case 201: -#line 2315 "Gmsh.y" +#line 2321 "Gmsh.y" { std::vector<std::pair<int, int> > dimTags; ListOfShapes2VectorOfPairs((yyvsp[(8) - (9)].l), dimTags); @@ -8723,7 +8788,7 @@ yyreduce: break; case 202: -#line 2332 "Gmsh.y" +#line 2338 "Gmsh.y" { std::vector<std::pair<int, int> > dimTags; ListOfShapes2VectorOfPairs((yyvsp[(8) - (9)].l), dimTags); @@ -8743,7 +8808,7 @@ yyreduce: break; case 203: -#line 2349 "Gmsh.y" +#line 2355 "Gmsh.y" { std::vector<std::pair<int, int> > inDimTags, outDimTags; ListOfShapes2VectorOfPairs((yyvsp[(3) - (4)].l), inDimTags); @@ -8781,7 +8846,7 @@ yyreduce: break; case 204: -#line 2384 "Gmsh.y" +#line 2390 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); bool r = true; @@ -8805,7 +8870,7 @@ yyreduce: break; case 205: -#line 2406 "Gmsh.y" +#line 2412 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); bool r = true; @@ -8829,31 +8894,31 @@ yyreduce: break; case 206: -#line 2429 "Gmsh.y" +#line 2435 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 207: -#line 2430 "Gmsh.y" +#line 2436 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 208: -#line 2435 "Gmsh.y" +#line 2441 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); ;} break; case 209: -#line 2439 "Gmsh.y" +#line 2445 "Gmsh.y" { List_Add((yyval.l), &(yyvsp[(2) - (2)].s)); ;} break; case 210: -#line 2443 "Gmsh.y" +#line 2449 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -8867,7 +8932,7 @@ yyreduce: break; case 211: -#line 2454 "Gmsh.y" +#line 2460 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -8881,7 +8946,7 @@ yyreduce: break; case 212: -#line 2465 "Gmsh.y" +#line 2471 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -8895,7 +8960,7 @@ yyreduce: break; case 213: -#line 2476 "Gmsh.y" +#line 2482 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -8909,7 +8974,7 @@ yyreduce: break; case 214: -#line 2492 "Gmsh.y" +#line 2498 "Gmsh.y" { if(List_Nbr((yyvsp[(7) - (8)].l)) == 4){ int t = (int)(yyvsp[(4) - (8)].d); @@ -8931,7 +8996,7 @@ yyreduce: break; case 215: -#line 2511 "Gmsh.y" +#line 2517 "Gmsh.y" { int t = (int)(yyvsp[(4) - (10)].d); if(gLevelset::find(t)){ @@ -8955,7 +9020,7 @@ yyreduce: break; case 216: -#line 2533 "Gmsh.y" +#line 2539 "Gmsh.y" { int t = (int)(yyvsp[(4) - (14)].d); if(gLevelset::find(t)){ @@ -8972,7 +9037,7 @@ yyreduce: break; case 217: -#line 2548 "Gmsh.y" +#line 2554 "Gmsh.y" { int t = (int)(yyvsp[(4) - (16)].d); if(gLevelset::find(t)){ @@ -8990,7 +9055,7 @@ yyreduce: break; case 218: -#line 2563 "Gmsh.y" +#line 2569 "Gmsh.y" { if(List_Nbr((yyvsp[(10) - (12)].l)) == 1){ int t = (int)(yyvsp[(4) - (12)].d); @@ -9011,7 +9076,7 @@ yyreduce: break; case 219: -#line 2582 "Gmsh.y" +#line 2588 "Gmsh.y" { if(List_Nbr((yyvsp[(12) - (14)].l)) == 1){ int t = (int)(yyvsp[(4) - (14)].d); @@ -9064,7 +9129,7 @@ yyreduce: break; case 220: -#line 2633 "Gmsh.y" +#line 2639 "Gmsh.y" { if(List_Nbr((yyvsp[(12) - (14)].l)) == 1){ int t = (int)(yyvsp[(4) - (14)].d); @@ -9087,7 +9152,7 @@ yyreduce: break; case 221: -#line 2654 "Gmsh.y" +#line 2660 "Gmsh.y" { if(List_Nbr((yyvsp[(12) - (14)].l)) == 3){ int t = (int)(yyvsp[(4) - (14)].d); @@ -9111,7 +9176,7 @@ yyreduce: break; case 222: -#line 2676 "Gmsh.y" +#line 2682 "Gmsh.y" { if(List_Nbr((yyvsp[(12) - (14)].l)) == 5){ int t = (int)(yyvsp[(4) - (14)].d); @@ -9136,7 +9201,7 @@ yyreduce: break; case 223: -#line 2698 "Gmsh.y" +#line 2704 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (8)].c), "Union")){ int t = (int)(yyvsp[(4) - (8)].d); @@ -9244,7 +9309,7 @@ yyreduce: break; case 224: -#line 2803 "Gmsh.y" +#line 2809 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (8)].c), "MathEval")){ int t = (int)(yyvsp[(4) - (8)].d); @@ -9263,7 +9328,7 @@ yyreduce: break; case 225: -#line 2819 "Gmsh.y" +#line 2825 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (6)].c), "CutMesh")){ int t = (int)(yyvsp[(4) - (6)].d); @@ -9296,7 +9361,7 @@ yyreduce: break; case 226: -#line 2854 "Gmsh.y" +#line 2860 "Gmsh.y" { std::vector<std::pair<int, int> > dimTags; ListOfShapes2VectorOfPairs((yyvsp[(3) - (4)].l), dimTags); @@ -9310,7 +9375,7 @@ yyreduce: break; case 227: -#line 2865 "Gmsh.y" +#line 2871 "Gmsh.y" { std::vector<std::pair<int, int> > dimTags; ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), dimTags); @@ -9324,7 +9389,7 @@ yyreduce: break; case 228: -#line 2876 "Gmsh.y" +#line 2882 "Gmsh.y" { #if defined(HAVE_MESH) GModel::current()->getFields()->deleteField((int)(yyvsp[(4) - (6)].d)); @@ -9333,7 +9398,7 @@ yyreduce: break; case 229: -#line 2882 "Gmsh.y" +#line 2888 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -9351,7 +9416,7 @@ yyreduce: break; case 230: -#line 2897 "Gmsh.y" +#line 2903 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Meshes") || !strcmp((yyvsp[(2) - (3)].c), "All")){ ClearProject(); @@ -9382,7 +9447,7 @@ yyreduce: break; case 231: -#line 2925 "Gmsh.y" +#line 2931 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (4)].c), "Empty") && !strcmp((yyvsp[(3) - (4)].c), "Views")){ @@ -9397,14 +9462,14 @@ yyreduce: break; case 232: -#line 2937 "Gmsh.y" +#line 2943 "Gmsh.y" { nameSpaces.clear(); ;} break; case 233: -#line 2946 "Gmsh.y" +#line 2952 "Gmsh.y" { std::vector<std::pair<int, int> > dimTags; ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), dimTags); @@ -9414,7 +9479,7 @@ yyreduce: break; case 234: -#line 2953 "Gmsh.y" +#line 2959 "Gmsh.y" { std::vector<std::pair<int, int> > dimTags; ListOfShapes2VectorOfPairs((yyvsp[(5) - (6)].l), dimTags); @@ -9424,7 +9489,7 @@ yyreduce: break; case 235: -#line 2965 "Gmsh.y" +#line 2971 "Gmsh.y" { std::vector<std::pair<int, int> > dimTags; ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), dimTags); @@ -9441,7 +9506,7 @@ yyreduce: break; case 236: -#line 2984 "Gmsh.y" +#line 2990 "Gmsh.y" { std::string what = (yyvsp[(2) - (3)].c); setVisibility(-1, 1, false); @@ -9450,7 +9515,7 @@ yyreduce: break; case 237: -#line 2990 "Gmsh.y" +#line 2996 "Gmsh.y" { std::string what = (yyvsp[(2) - (3)].c); setVisibility(-1, 0, false); @@ -9459,7 +9524,7 @@ yyreduce: break; case 238: -#line 2996 "Gmsh.y" +#line 3002 "Gmsh.y" { std::vector<std::pair<int, int> > dimTags; ListOfShapes2VectorOfPairs((yyvsp[(3) - (4)].l), dimTags); @@ -9469,7 +9534,7 @@ yyreduce: break; case 239: -#line 3003 "Gmsh.y" +#line 3009 "Gmsh.y" { std::vector<std::pair<int, int> > dimTags; ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), dimTags); @@ -9479,7 +9544,7 @@ yyreduce: break; case 240: -#line 3010 "Gmsh.y" +#line 3016 "Gmsh.y" { std::vector<std::pair<int, int> > dimTags; ListOfShapes2VectorOfPairs((yyvsp[(3) - (4)].l), dimTags); @@ -9489,7 +9554,7 @@ yyreduce: break; case 241: -#line 3017 "Gmsh.y" +#line 3023 "Gmsh.y" { std::vector<std::pair<int, int> > dimTags; ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), dimTags); @@ -9499,7 +9564,7 @@ yyreduce: break; case 242: -#line 3029 "Gmsh.y" +#line 3035 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Include")){ std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(2) - (3)].c)); @@ -9575,7 +9640,7 @@ yyreduce: break; case 243: -#line 3102 "Gmsh.y" +#line 3108 "Gmsh.y" { int n = List_Nbr((yyvsp[(3) - (5)].l)); if(n == 1){ @@ -9596,7 +9661,7 @@ yyreduce: break; case 244: -#line 3120 "Gmsh.y" +#line 3126 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(1) - (7)].c), "Save") && !strcmp((yyvsp[(2) - (7)].c), "View")){ @@ -9616,7 +9681,7 @@ yyreduce: break; case 245: -#line 3137 "Gmsh.y" +#line 3143 "Gmsh.y" { #if defined(HAVE_POST) && defined(HAVE_MESH) if(!strcmp((yyvsp[(1) - (7)].c), "Background") && !strcmp((yyvsp[(2) - (7)].c), "Mesh") && !strcmp((yyvsp[(3) - (7)].c), "View")){ @@ -9634,7 +9699,7 @@ yyreduce: break; case 246: -#line 3152 "Gmsh.y" +#line 3158 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Sleep")){ SleepInSeconds((yyvsp[(2) - (3)].d)); @@ -9670,7 +9735,7 @@ yyreduce: break; case 247: -#line 3185 "Gmsh.y" +#line 3191 "Gmsh.y" { #if defined(HAVE_PLUGINS) try { @@ -9685,7 +9750,7 @@ yyreduce: break; case 248: -#line 3197 "Gmsh.y" +#line 3203 "Gmsh.y" { #if defined(HAVE_POST) if(!strcmp((yyvsp[(2) - (3)].c), "ElementsFromAllViews")) @@ -9712,14 +9777,14 @@ yyreduce: break; case 249: -#line 3221 "Gmsh.y" +#line 3227 "Gmsh.y" { Msg::Exit(0); ;} break; case 250: -#line 3225 "Gmsh.y" +#line 3231 "Gmsh.y" { gmsh_yyerrorstate = 999; // this will be checked when yyparse returns YYABORT; @@ -9727,7 +9792,7 @@ yyreduce: break; case 251: -#line 3230 "Gmsh.y" +#line 3236 "Gmsh.y" { // force sync if(GModel::current()->getOCCInternals()) @@ -9737,7 +9802,7 @@ yyreduce: break; case 252: -#line 3237 "Gmsh.y" +#line 3243 "Gmsh.y" { new GModel(); GModel::current(GModel::list.size() - 1); @@ -9745,7 +9810,7 @@ yyreduce: break; case 253: -#line 3242 "Gmsh.y" +#line 3248 "Gmsh.y" { CTX::instance()->forcedBBox = 0; if(GModel::current()->getOCCInternals() && @@ -9758,7 +9823,7 @@ yyreduce: break; case 254: -#line 3252 "Gmsh.y" +#line 3258 "Gmsh.y" { CTX::instance()->forcedBBox = 1; SetBoundingBox((yyvsp[(3) - (15)].d), (yyvsp[(5) - (15)].d), (yyvsp[(7) - (15)].d), (yyvsp[(9) - (15)].d), (yyvsp[(11) - (15)].d), (yyvsp[(13) - (15)].d)); @@ -9766,7 +9831,7 @@ yyreduce: break; case 255: -#line 3257 "Gmsh.y" +#line 3263 "Gmsh.y" { #if defined(HAVE_OPENGL) drawContext::global()->draw(); @@ -9775,7 +9840,7 @@ yyreduce: break; case 256: -#line 3263 "Gmsh.y" +#line 3269 "Gmsh.y" { #if defined(HAVE_OPENGL) CTX::instance()->mesh.changed = ENT_ALL; @@ -9786,21 +9851,21 @@ yyreduce: break; case 257: -#line 3271 "Gmsh.y" +#line 3277 "Gmsh.y" { GModel::current()->createTopologyFromMesh(); ;} break; case 258: -#line 3275 "Gmsh.y" +#line 3281 "Gmsh.y" { GModel::current()->createTopologyFromMesh(1); ;} break; case 259: -#line 3279 "Gmsh.y" +#line 3285 "Gmsh.y" { if(GModel::current()->getOCCInternals() && GModel::current()->getOCCInternals()->getChanged()) @@ -9812,7 +9877,7 @@ yyreduce: break; case 260: -#line 3289 "Gmsh.y" +#line 3295 "Gmsh.y" { int lock = CTX::instance()->lock; CTX::instance()->lock = 0; @@ -9873,7 +9938,7 @@ yyreduce: break; case 261: -#line 3352 "Gmsh.y" +#line 3358 "Gmsh.y" { #if defined(HAVE_POPPLER) std::vector<int> is; @@ -9888,7 +9953,7 @@ yyreduce: break; case 262: -#line 3368 "Gmsh.y" +#line 3374 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (6)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (6)].d); @@ -9908,7 +9973,7 @@ yyreduce: break; case 263: -#line 3385 "Gmsh.y" +#line 3391 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (8)].d); @@ -9928,7 +9993,7 @@ yyreduce: break; case 264: -#line 3402 "Gmsh.y" +#line 3408 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (8)].d); @@ -9953,7 +10018,7 @@ yyreduce: break; case 265: -#line 3424 "Gmsh.y" +#line 3430 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (10)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (10)].d); @@ -9978,7 +10043,7 @@ yyreduce: break; case 266: -#line 3446 "Gmsh.y" +#line 3452 "Gmsh.y" { if(ImbricatedLoop <= 0){ yymsg(0, "Invalid For/EndFor loop"); @@ -10016,7 +10081,7 @@ yyreduce: break; case 267: -#line 3481 "Gmsh.y" +#line 3487 "Gmsh.y" { if(!FunctionManager::Instance()->createFunction (std::string((yyvsp[(2) - (2)].c)), gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -10027,7 +10092,7 @@ yyreduce: break; case 268: -#line 3489 "Gmsh.y" +#line 3495 "Gmsh.y" { if(!FunctionManager::Instance()->createFunction (std::string((yyvsp[(2) - (2)].c)), gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -10038,7 +10103,7 @@ yyreduce: break; case 269: -#line 3497 "Gmsh.y" +#line 3503 "Gmsh.y" { if(!FunctionManager::Instance()->leaveFunction (&gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -10047,7 +10112,7 @@ yyreduce: break; case 270: -#line 3503 "Gmsh.y" +#line 3509 "Gmsh.y" { if(!FunctionManager::Instance()->enterFunction (std::string((yyvsp[(2) - (3)].c)), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -10057,7 +10122,7 @@ yyreduce: break; case 271: -#line 3510 "Gmsh.y" +#line 3516 "Gmsh.y" { if(!FunctionManager::Instance()->enterFunction (std::string((yyvsp[(2) - (3)].c)), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -10067,7 +10132,7 @@ yyreduce: break; case 272: -#line 3517 "Gmsh.y" +#line 3523 "Gmsh.y" { ImbricatedTest++; if(ImbricatedTest > MAX_RECUR_TESTS-1){ @@ -10090,7 +10155,7 @@ yyreduce: break; case 273: -#line 3537 "Gmsh.y" +#line 3543 "Gmsh.y" { if(ImbricatedTest > 0){ if (statusImbricatedTests[ImbricatedTest]){ @@ -10119,7 +10184,7 @@ yyreduce: break; case 274: -#line 3563 "Gmsh.y" +#line 3569 "Gmsh.y" { if(ImbricatedTest > 0){ if(statusImbricatedTests[ImbricatedTest]){ @@ -10134,7 +10199,7 @@ yyreduce: break; case 275: -#line 3575 "Gmsh.y" +#line 3581 "Gmsh.y" { ImbricatedTest--; if(ImbricatedTest < 0) @@ -10143,7 +10208,7 @@ yyreduce: break; case 276: -#line 3587 "Gmsh.y" +#line 3593 "Gmsh.y" { std::vector<std::pair<int, int> > inDimTags, outDimTags; ListOfShapes2VectorOfPairs((yyvsp[(4) - (5)].l), inDimTags); @@ -10164,7 +10229,7 @@ yyreduce: break; case 277: -#line 3605 "Gmsh.y" +#line 3611 "Gmsh.y" { std::vector<std::pair<int, int> > inDimTags, outDimTags; ListOfShapes2VectorOfPairs((yyvsp[(10) - (11)].l), inDimTags); @@ -10185,7 +10250,7 @@ yyreduce: break; case 278: -#line 3623 "Gmsh.y" +#line 3629 "Gmsh.y" { std::vector<std::pair<int, int> > inDimTags, outDimTags; ListOfShapes2VectorOfPairs((yyvsp[(12) - (13)].l), inDimTags); @@ -10206,7 +10271,7 @@ yyreduce: break; case 279: -#line 3641 "Gmsh.y" +#line 3647 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -10215,7 +10280,7 @@ yyreduce: break; case 280: -#line 3647 "Gmsh.y" +#line 3653 "Gmsh.y" { std::vector<std::pair<int, int> > inDimTags, outDimTags; ListOfShapes2VectorOfPairs((yyvsp[(4) - (7)].l), inDimTags); @@ -10236,7 +10301,7 @@ yyreduce: break; case 281: -#line 3665 "Gmsh.y" +#line 3671 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -10245,7 +10310,7 @@ yyreduce: break; case 282: -#line 3671 "Gmsh.y" +#line 3677 "Gmsh.y" { std::vector<std::pair<int, int> > inDimTags, outDimTags; ListOfShapes2VectorOfPairs((yyvsp[(10) - (13)].l), inDimTags); @@ -10268,7 +10333,7 @@ yyreduce: break; case 283: -#line 3691 "Gmsh.y" +#line 3697 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -10277,7 +10342,7 @@ yyreduce: break; case 284: -#line 3697 "Gmsh.y" +#line 3703 "Gmsh.y" { std::vector<std::pair<int, int> > inDimTags, outDimTags; ListOfShapes2VectorOfPairs((yyvsp[(12) - (15)].l), inDimTags); @@ -10298,7 +10363,7 @@ yyreduce: break; case 285: -#line 3715 "Gmsh.y" +#line 3721 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; extr.mesh.QuadToTri = NO_QUADTRI; @@ -10307,7 +10372,7 @@ yyreduce: break; case 286: -#line 3721 "Gmsh.y" +#line 3727 "Gmsh.y" { std::vector<std::pair<int, int> > inDimTags, outDimTags; ListOfShapes2VectorOfPairs((yyvsp[(3) - (6)].l), inDimTags); @@ -10327,7 +10392,7 @@ yyreduce: break; case 287: -#line 3738 "Gmsh.y" +#line 3744 "Gmsh.y" { std::vector<std::pair<int, int> > inDimTags, outDimTags; ListOfShapes2VectorOfPairs((yyvsp[(3) - (9)].l), inDimTags); @@ -10346,7 +10411,7 @@ yyreduce: break; case 288: -#line 3754 "Gmsh.y" +#line 3760 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); bool r = true; @@ -10366,7 +10431,7 @@ yyreduce: break; case 289: -#line 3771 "Gmsh.y" +#line 3777 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); bool r = true; @@ -10386,7 +10451,7 @@ yyreduce: break; case 290: -#line 3788 "Gmsh.y" +#line 3794 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); bool r = true; @@ -10409,19 +10474,19 @@ yyreduce: break; case 291: -#line 3811 "Gmsh.y" +#line 3817 "Gmsh.y" { ;} break; case 292: -#line 3814 "Gmsh.y" +#line 3820 "Gmsh.y" { ;} break; case 293: -#line 3820 "Gmsh.y" +#line 3826 "Gmsh.y" { int n = (int)fabs((yyvsp[(3) - (5)].d)); if(n){ // we accept n==0 to easily disable layers @@ -10436,7 +10501,7 @@ yyreduce: break; case 294: -#line 3832 "Gmsh.y" +#line 3838 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = List_Nbr((yyvsp[(3) - (7)].l)); @@ -10459,56 +10524,56 @@ yyreduce: break; case 295: -#line 3852 "Gmsh.y" +#line 3858 "Gmsh.y" { extr.mesh.ScaleLast = true; ;} break; case 296: -#line 3856 "Gmsh.y" +#line 3862 "Gmsh.y" { extr.mesh.Recombine = true; ;} break; case 297: -#line 3860 "Gmsh.y" +#line 3866 "Gmsh.y" { extr.mesh.Recombine = (yyvsp[(2) - (3)].d) ? true : false; ;} break; case 298: -#line 3864 "Gmsh.y" +#line 3870 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_ADDVERTS_1; ;} break; case 299: -#line 3868 "Gmsh.y" +#line 3874 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_ADDVERTS_1_RECOMB; ;} break; case 300: -#line 3872 "Gmsh.y" +#line 3878 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_NOVERTS_1; ;} break; case 301: -#line 3876 "Gmsh.y" +#line 3882 "Gmsh.y" { extr.mesh.QuadToTri = QUADTRI_NOVERTS_1_RECOMB; ;} break; case 302: -#line 3880 "Gmsh.y" +#line 3886 "Gmsh.y" { std::vector<int> tags; ListOfDouble2Vector((yyvsp[(6) - (9)].l), tags); int num = (int)(yyvsp[(3) - (9)].d); @@ -10520,7 +10585,7 @@ yyreduce: break; case 303: -#line 3889 "Gmsh.y" +#line 3895 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (6)].c), "Index")) extr.mesh.BoundaryLayerIndex = (yyvsp[(4) - (6)].d); @@ -10531,57 +10596,57 @@ yyreduce: break; case 304: -#line 3901 "Gmsh.y" +#line 3907 "Gmsh.y" { (yyval.i) = OCC_Internals::Union; ;} break; case 305: -#line 3902 "Gmsh.y" +#line 3908 "Gmsh.y" { (yyval.i) = OCC_Internals::Intersection; ;} break; case 306: -#line 3903 "Gmsh.y" +#line 3909 "Gmsh.y" { (yyval.i) = OCC_Internals::Difference; ;} break; case 307: -#line 3904 "Gmsh.y" +#line 3910 "Gmsh.y" { (yyval.i) = OCC_Internals::Section; ;} break; case 308: -#line 3905 "Gmsh.y" +#line 3911 "Gmsh.y" { (yyval.i) = OCC_Internals::Fragments; ;} break; case 309: -#line 3909 "Gmsh.y" +#line 3915 "Gmsh.y" { (yyval.i) = 0; ;} break; case 310: -#line 3910 "Gmsh.y" +#line 3916 "Gmsh.y" { (yyval.i) = 1; ;} break; case 311: -#line 3911 "Gmsh.y" +#line 3917 "Gmsh.y" { (yyval.i) = 2; ;} break; case 312: -#line 3912 "Gmsh.y" +#line 3918 "Gmsh.y" { (yyval.i) = (yyvsp[(2) - (3)].d) ? 1 : 0; ;} break; case 313: -#line 3913 "Gmsh.y" +#line 3919 "Gmsh.y" { (yyval.i) = (yyvsp[(3) - (4)].d) ? 2 : 0; ;} break; case 314: -#line 3918 "Gmsh.y" +#line 3924 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); bool r = true; @@ -10606,7 +10671,7 @@ yyreduce: break; case 315: -#line 3940 "Gmsh.y" +#line 3946 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); bool r = true; @@ -10625,7 +10690,7 @@ yyreduce: break; case 316: -#line 3960 "Gmsh.y" +#line 3966 "Gmsh.y" { bool r = true; if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ @@ -10645,14 +10710,14 @@ yyreduce: break; case 317: -#line 3980 "Gmsh.y" +#line 3986 "Gmsh.y" { (yyval.v)[0] = (yyval.v)[1] = 1.; ;} break; case 318: -#line 3984 "Gmsh.y" +#line 3990 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Progression") || !strcmp((yyvsp[(2) - (3)].c), "Power")) (yyval.v)[0] = 1.; @@ -10668,14 +10733,14 @@ yyreduce: break; case 319: -#line 3999 "Gmsh.y" +#line 4005 "Gmsh.y" { (yyval.i) = -1; // left ;} break; case 320: -#line 4003 "Gmsh.y" +#line 4009 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (1)].c), "Right")) (yyval.i) = 1; @@ -10692,49 +10757,49 @@ yyreduce: break; case 321: -#line 4019 "Gmsh.y" +#line 4025 "Gmsh.y" { (yyval.l) = List_Create(1, 1, sizeof(double)); ;} break; case 322: -#line 4023 "Gmsh.y" +#line 4029 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); ;} break; case 323: -#line 4028 "Gmsh.y" +#line 4034 "Gmsh.y" { (yyval.i) = 45; ;} break; case 324: -#line 4032 "Gmsh.y" +#line 4038 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(2) - (2)].d); ;} break; case 325: -#line 4038 "Gmsh.y" +#line 4044 "Gmsh.y" { (yyval.l) = List_Create(1, 1, sizeof(double)); ;} break; case 326: -#line 4042 "Gmsh.y" +#line 4048 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); ;} break; case 327: -#line 4049 "Gmsh.y" +#line 4055 "Gmsh.y" { // mesh sizes at vertices are stored in internal CAD data, as they can be // specified during vertex creation and copied around during CAD @@ -10754,7 +10819,7 @@ yyreduce: break; case 328: -#line 4066 "Gmsh.y" +#line 4072 "Gmsh.y" { // transfinite constraints are stored in GEO internals in addition to // GModel, as they can be copied around during GEO operations @@ -10798,7 +10863,7 @@ yyreduce: break; case 329: -#line 4107 "Gmsh.y" +#line 4113 "Gmsh.y" { // transfinite constraints are stored in GEO internals in addition to // GModel, as they can be copied around during GEO operations @@ -10845,7 +10910,7 @@ yyreduce: break; case 330: -#line 4151 "Gmsh.y" +#line 4157 "Gmsh.y" { // transfinite constraints are stored in GEO internals in addition to // GModel, as they can be copied around during GEO operations @@ -10887,7 +10952,7 @@ yyreduce: break; case 331: -#line 4190 "Gmsh.y" +#line 4196 "Gmsh.y" { // transfinite constraints are stored in GEO internals in addition to // GModel, as they can be copied around during GEO operations @@ -10915,7 +10980,7 @@ yyreduce: break; case 332: -#line 4215 "Gmsh.y" +#line 4221 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (8)].l)); i++){ double d; @@ -10927,7 +10992,7 @@ yyreduce: break; case 333: -#line 4224 "Gmsh.y" +#line 4230 "Gmsh.y" { // recombine constraints are stored in GEO internals in addition to // GModel, as they can be copied around during GEO operations @@ -10960,7 +11025,7 @@ yyreduce: break; case 334: -#line 4254 "Gmsh.y" +#line 4260 "Gmsh.y" { // recombine constraints are stored in GEO internals in addition to // GModel, as they can be copied around during GEO operations @@ -10989,7 +11054,7 @@ yyreduce: break; case 335: -#line 4280 "Gmsh.y" +#line 4286 "Gmsh.y" { // smoothing constraints are stored in GEO internals in addition to // GModel, as they can be copied around during GEO operations @@ -11018,7 +11083,7 @@ yyreduce: break; case 336: -#line 4307 "Gmsh.y" +#line 4313 "Gmsh.y" { if (List_Nbr((yyvsp[(4) - (11)].l)) != List_Nbr((yyvsp[(8) - (11)].l))){ yymsg(0, "Number of master lines (%d) different from number of " @@ -11052,7 +11117,7 @@ yyreduce: break; case 337: -#line 4339 "Gmsh.y" +#line 4345 "Gmsh.y" { if (List_Nbr((yyvsp[(4) - (11)].l)) != List_Nbr((yyvsp[(8) - (11)].l))){ yymsg(0, "Number of master faces (%d) different from number of " @@ -11081,7 +11146,7 @@ yyreduce: break; case 338: -#line 4366 "Gmsh.y" +#line 4372 "Gmsh.y" { if (List_Nbr((yyvsp[(4) - (18)].l)) != List_Nbr((yyvsp[(8) - (18)].l))){ yymsg(0, "Number of master edges (%d) different from number of " @@ -11109,7 +11174,7 @@ yyreduce: break; case 339: -#line 4392 "Gmsh.y" +#line 4398 "Gmsh.y" { if (List_Nbr((yyvsp[(4) - (18)].l)) != List_Nbr((yyvsp[(8) - (18)].l))){ yymsg(0, "Number of master faces (%d) different from number of " @@ -11137,7 +11202,7 @@ yyreduce: break; case 340: -#line 4418 "Gmsh.y" +#line 4424 "Gmsh.y" { if (List_Nbr((yyvsp[(4) - (12)].l)) != List_Nbr((yyvsp[(8) - (12)].l))){ yymsg(0, "Number of master edges (%d) different from number of " @@ -11165,7 +11230,7 @@ yyreduce: break; case 341: -#line 4444 "Gmsh.y" +#line 4450 "Gmsh.y" { if (List_Nbr((yyvsp[(4) - (12)].l)) != List_Nbr((yyvsp[(8) - (12)].l))){ yymsg(0, "Number of master faces (%d) different from number of " @@ -11193,7 +11258,7 @@ yyreduce: break; case 342: -#line 4470 "Gmsh.y" +#line 4476 "Gmsh.y" { if (List_Nbr((yyvsp[(5) - (12)].l)) != List_Nbr((yyvsp[(10) - (12)].l))){ yymsg(0, "Number of master surface edges (%d) different from number of " @@ -11217,7 +11282,7 @@ yyreduce: break; case 343: -#line 4491 "Gmsh.y" +#line 4497 "Gmsh.y" { std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); addEmbedded(0, tags, 2, (int)(yyvsp[(8) - (10)].d)); @@ -11226,7 +11291,7 @@ yyreduce: break; case 344: -#line 4497 "Gmsh.y" +#line 4503 "Gmsh.y" { std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); addEmbedded(1, tags, 2, (int)(yyvsp[(8) - (10)].d)); @@ -11235,7 +11300,7 @@ yyreduce: break; case 345: -#line 4503 "Gmsh.y" +#line 4509 "Gmsh.y" { std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); addEmbedded(0, tags, 3, (int)(yyvsp[(8) - (10)].d)); @@ -11244,7 +11309,7 @@ yyreduce: break; case 346: -#line 4509 "Gmsh.y" +#line 4515 "Gmsh.y" { std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); addEmbedded(1, tags, 3, (int)(yyvsp[(8) - (10)].d)); @@ -11253,7 +11318,7 @@ yyreduce: break; case 347: -#line 4515 "Gmsh.y" +#line 4521 "Gmsh.y" { std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (10)].l), tags); addEmbedded(2, tags, 3, (int)(yyvsp[(8) - (10)].d)); @@ -11262,7 +11327,7 @@ yyreduce: break; case 348: -#line 4521 "Gmsh.y" +#line 4527 "Gmsh.y" { // reverse mesh constraints are stored in GEO internals in addition to // GModel, as they can be copied around during GEO operations @@ -11291,7 +11356,7 @@ yyreduce: break; case 349: -#line 4547 "Gmsh.y" +#line 4553 "Gmsh.y" { // reverse mesh constraints are stored in GEO internals in addition to // GModel, as they can be copied around during GEO operations @@ -11320,7 +11385,7 @@ yyreduce: break; case 350: -#line 4573 "Gmsh.y" +#line 4579 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ for(GModel::viter it = GModel::current()->firstVertex(); @@ -11340,7 +11405,7 @@ yyreduce: break; case 351: -#line 4590 "Gmsh.y" +#line 4596 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ for(GModel::eiter it = GModel::current()->firstEdge(); @@ -11360,7 +11425,7 @@ yyreduce: break; case 352: -#line 4607 "Gmsh.y" +#line 4613 "Gmsh.y" { if(!(yyvsp[(3) - (4)].l)){ for(GModel::fiter it = GModel::current()->firstFace(); @@ -11380,7 +11445,7 @@ yyreduce: break; case 353: -#line 4624 "Gmsh.y" +#line 4630 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ double dnum; @@ -11395,7 +11460,7 @@ yyreduce: break; case 354: -#line 4636 "Gmsh.y" +#line 4642 "Gmsh.y" { std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (4)].l), tags); GModel::current()->getGEOInternals()->setCompoundMesh(1, tags); @@ -11404,7 +11469,7 @@ yyreduce: break; case 355: -#line 4642 "Gmsh.y" +#line 4648 "Gmsh.y" { std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (4)].l), tags); GModel::current()->getGEOInternals()->setCompoundMesh(2, tags); @@ -11413,7 +11478,7 @@ yyreduce: break; case 356: -#line 4648 "Gmsh.y" +#line 4654 "Gmsh.y" { std::vector<int> tags; ListOfDouble2Vector((yyvsp[(3) - (4)].l), tags); GModel::current()->getGEOInternals()->setCompoundMesh(3, tags); @@ -11422,14 +11487,14 @@ yyreduce: break; case 357: -#line 4660 "Gmsh.y" +#line 4666 "Gmsh.y" { GModel::current()->getGEOInternals()->removeAllDuplicates(); ;} break; case 358: -#line 4664 "Gmsh.y" +#line 4670 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Geometry")) GModel::current()->getGEOInternals()->removeAllDuplicates(); @@ -11442,7 +11507,7 @@ yyreduce: break; case 359: -#line 4674 "Gmsh.y" +#line 4680 "Gmsh.y" { std::vector<int> tags; ListOfDouble2Vector((yyvsp[(4) - (6)].l), tags); GModel::current()->getGEOInternals()->mergeVertices(tags); @@ -11451,22 +11516,22 @@ yyreduce: break; case 360: -#line 4684 "Gmsh.y" +#line 4690 "Gmsh.y" { (yyval.c) = (char*)"Homology"; ;} break; case 361: -#line 4685 "Gmsh.y" +#line 4691 "Gmsh.y" { (yyval.c) = (char*)"Cohomology"; ;} break; case 362: -#line 4686 "Gmsh.y" +#line 4692 "Gmsh.y" { (yyval.c) = (char*)"Betti"; ;} break; case 363: -#line 4691 "Gmsh.y" +#line 4697 "Gmsh.y" { std::vector<int> domain, subdomain, dim; for(int i = 0; i < 4; i++) dim.push_back(i); @@ -11475,7 +11540,7 @@ yyreduce: break; case 364: -#line 4697 "Gmsh.y" +#line 4703 "Gmsh.y" { std::vector<int> domain, subdomain, dim; for(int i = 0; i < List_Nbr((yyvsp[(3) - (5)].l)); i++){ @@ -11490,7 +11555,7 @@ yyreduce: break; case 365: -#line 4709 "Gmsh.y" +#line 4715 "Gmsh.y" { std::vector<int> domain, subdomain, dim; for(int i = 0; i < List_Nbr((yyvsp[(3) - (7)].l)); i++){ @@ -11511,7 +11576,7 @@ yyreduce: break; case 366: -#line 4727 "Gmsh.y" +#line 4733 "Gmsh.y" { std::vector<int> domain, subdomain, dim; for(int i = 0; i < List_Nbr((yyvsp[(6) - (10)].l)); i++){ @@ -11537,47 +11602,47 @@ yyreduce: break; case 367: -#line 4754 "Gmsh.y" +#line 4760 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; case 368: -#line 4755 "Gmsh.y" +#line 4761 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (3)].d); ;} break; case 369: -#line 4756 "Gmsh.y" +#line 4762 "Gmsh.y" { (yyval.d) = -(yyvsp[(2) - (2)].d); ;} break; case 370: -#line 4757 "Gmsh.y" +#line 4763 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (2)].d); ;} break; case 371: -#line 4758 "Gmsh.y" +#line 4764 "Gmsh.y" { (yyval.d) = !(yyvsp[(2) - (2)].d); ;} break; case 372: -#line 4759 "Gmsh.y" +#line 4765 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;} break; case 373: -#line 4760 "Gmsh.y" +#line 4766 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;} break; case 374: -#line 4761 "Gmsh.y" +#line 4767 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;} break; case 375: -#line 4763 "Gmsh.y" +#line 4769 "Gmsh.y" { if(!(yyvsp[(3) - (3)].d)) yymsg(0, "Division by zero in '%g / %g'", (yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); @@ -11587,257 +11652,257 @@ yyreduce: break; case 376: -#line 4769 "Gmsh.y" +#line 4775 "Gmsh.y" { (yyval.d) = (int)(yyvsp[(1) - (3)].d) | (int)(yyvsp[(3) - (3)].d); ;} break; case 377: -#line 4770 "Gmsh.y" +#line 4776 "Gmsh.y" { (yyval.d) = (int)(yyvsp[(1) - (3)].d) & (int)(yyvsp[(3) - (3)].d); ;} break; case 378: -#line 4771 "Gmsh.y" +#line 4777 "Gmsh.y" { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;} break; case 379: -#line 4772 "Gmsh.y" +#line 4778 "Gmsh.y" { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;} break; case 380: -#line 4773 "Gmsh.y" +#line 4779 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;} break; case 381: -#line 4774 "Gmsh.y" +#line 4780 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;} break; case 382: -#line 4775 "Gmsh.y" +#line 4781 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;} break; case 383: -#line 4776 "Gmsh.y" +#line 4782 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;} break; case 384: -#line 4777 "Gmsh.y" +#line 4783 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;} break; case 385: -#line 4778 "Gmsh.y" +#line 4784 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;} break; case 386: -#line 4779 "Gmsh.y" +#line 4785 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;} break; case 387: -#line 4780 "Gmsh.y" +#line 4786 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;} break; case 388: -#line 4781 "Gmsh.y" +#line 4787 "Gmsh.y" { (yyval.d) = ((int)(yyvsp[(1) - (3)].d) >> (int)(yyvsp[(3) - (3)].d)); ;} break; case 389: -#line 4782 "Gmsh.y" +#line 4788 "Gmsh.y" { (yyval.d) = ((int)(yyvsp[(1) - (3)].d) << (int)(yyvsp[(3) - (3)].d)); ;} break; case 390: -#line 4783 "Gmsh.y" +#line 4789 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;} break; case 391: -#line 4784 "Gmsh.y" +#line 4790 "Gmsh.y" { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; case 392: -#line 4785 "Gmsh.y" +#line 4791 "Gmsh.y" { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; case 393: -#line 4786 "Gmsh.y" +#line 4792 "Gmsh.y" { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; case 394: -#line 4787 "Gmsh.y" +#line 4793 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; case 395: -#line 4788 "Gmsh.y" +#line 4794 "Gmsh.y" { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; case 396: -#line 4789 "Gmsh.y" +#line 4795 "Gmsh.y" { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; case 397: -#line 4790 "Gmsh.y" +#line 4796 "Gmsh.y" { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; case 398: -#line 4791 "Gmsh.y" +#line 4797 "Gmsh.y" { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; case 399: -#line 4792 "Gmsh.y" +#line 4798 "Gmsh.y" { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; case 400: -#line 4793 "Gmsh.y" +#line 4799 "Gmsh.y" { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; case 401: -#line 4794 "Gmsh.y" +#line 4800 "Gmsh.y" { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; case 402: -#line 4795 "Gmsh.y" +#line 4801 "Gmsh.y" { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; case 403: -#line 4796 "Gmsh.y" +#line 4802 "Gmsh.y" { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; case 404: -#line 4797 "Gmsh.y" +#line 4803 "Gmsh.y" { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; case 405: -#line 4798 "Gmsh.y" +#line 4804 "Gmsh.y" { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; case 406: -#line 4799 "Gmsh.y" +#line 4805 "Gmsh.y" { (yyval.d) = std::abs((yyvsp[(3) - (4)].d)); ;} break; case 407: -#line 4800 "Gmsh.y" +#line 4806 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; case 408: -#line 4801 "Gmsh.y" +#line 4807 "Gmsh.y" { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; case 409: -#line 4802 "Gmsh.y" +#line 4808 "Gmsh.y" { (yyval.d) = floor((yyvsp[(3) - (4)].d) + 0.5); ;} break; case 410: -#line 4803 "Gmsh.y" +#line 4809 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 411: -#line 4804 "Gmsh.y" +#line 4810 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 412: -#line 4805 "Gmsh.y" +#line 4811 "Gmsh.y" { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; case 413: -#line 4806 "Gmsh.y" +#line 4812 "Gmsh.y" { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; case 414: -#line 4815 "Gmsh.y" +#line 4821 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; case 415: -#line 4816 "Gmsh.y" +#line 4822 "Gmsh.y" { (yyval.d) = 3.141592653589793; ;} break; case 416: -#line 4817 "Gmsh.y" +#line 4823 "Gmsh.y" { (yyval.d) = (double)ImbricatedTest; ;} break; case 417: -#line 4818 "Gmsh.y" +#line 4824 "Gmsh.y" { (yyval.d) = Msg::GetCommRank(); ;} break; case 418: -#line 4819 "Gmsh.y" +#line 4825 "Gmsh.y" { (yyval.d) = Msg::GetCommSize(); ;} break; case 419: -#line 4820 "Gmsh.y" +#line 4826 "Gmsh.y" { (yyval.d) = GetGmshMajorVersion(); ;} break; case 420: -#line 4821 "Gmsh.y" +#line 4827 "Gmsh.y" { (yyval.d) = GetGmshMinorVersion(); ;} break; case 421: -#line 4822 "Gmsh.y" +#line 4828 "Gmsh.y" { (yyval.d) = GetGmshPatchVersion(); ;} break; case 422: -#line 4823 "Gmsh.y" +#line 4829 "Gmsh.y" { (yyval.d) = Cpu(); ;} break; case 423: -#line 4824 "Gmsh.y" +#line 4830 "Gmsh.y" { (yyval.d) = GetMemoryUsage()/1024./1024.; ;} break; case 424: -#line 4825 "Gmsh.y" +#line 4831 "Gmsh.y" { (yyval.d) = TotalRam(); ;} break; case 425: -#line 4830 "Gmsh.y" +#line 4836 "Gmsh.y" { init_options(); ;} break; case 426: -#line 4832 "Gmsh.y" +#line 4838 "Gmsh.y" { std::vector<double> val(1, (yyvsp[(3) - (6)].d)); Msg::ExchangeOnelabParameter("", val, floatOptions, charOptions); @@ -11846,12 +11911,12 @@ yyreduce: break; case 427: -#line 4838 "Gmsh.y" +#line 4844 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; case 428: -#line 4840 "Gmsh.y" +#line 4846 "Gmsh.y" { (yyval.d) = Msg::GetOnelabNumber((yyvsp[(3) - (4)].c)); Free((yyvsp[(3) - (4)].c)); @@ -11859,7 +11924,7 @@ yyreduce: break; case 429: -#line 4845 "Gmsh.y" +#line 4851 "Gmsh.y" { (yyval.d) = Msg::GetOnelabNumber((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); Free((yyvsp[(3) - (6)].c)); @@ -11867,84 +11932,56 @@ yyreduce: break; case 430: -#line 4850 "Gmsh.y" +#line 4856 "Gmsh.y" { (yyval.d) = treat_Struct_FullName_Float((yyvsp[(1) - (1)].c2).char1, (yyvsp[(1) - (1)].c2).char2); ;} break; case 431: -#line 4854 "Gmsh.y" +#line 4861 "Gmsh.y" { - int index = (int)(yyvsp[(3) - (4)].d); - if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ - yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (4)].c)); - (yyval.d) = 0.; - } - else{ - gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(1) - (4)].c)]); - if((int)s.value.size() < index + 1){ - yymsg(0, "Uninitialized variable '%s[%d]'", (yyvsp[(1) - (4)].c), index); - (yyval.d) = 0.; - } - else - (yyval.d) = s.value[index]; - } - Free((yyvsp[(1) - (4)].c)); + (yyval.d) = treat_Struct_FullName_Float(NULL, (yyvsp[(1) - (4)].c), 2, (int)(yyvsp[(3) - (4)].d)); ;} break; case 432: -#line 4872 "Gmsh.y" +#line 4866 "Gmsh.y" { - int index = (int)(yyvsp[(3) - (4)].d); - if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ - yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (4)].c)); - (yyval.d) = 0.; - } - else{ - gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(1) - (4)].c)]); - if((int)s.value.size() < index + 1){ - yymsg(0, "Uninitialized variable '%s[%d]'", (yyvsp[(1) - (4)].c), index); - (yyval.d) = 0.; - } - else - (yyval.d) = s.value[index]; - } - Free((yyvsp[(1) - (4)].c)); + (yyval.d) = treat_Struct_FullName_Float(NULL, (yyvsp[(1) - (4)].c), 2, (int)(yyvsp[(3) - (4)].d)); ;} break; case 433: -#line 4890 "Gmsh.y" +#line 4870 "Gmsh.y" { - (yyval.d) = treat_Struct_FullName_Float((yyvsp[(3) - (4)].c2).char1, (yyvsp[(3) - (4)].c2).char2, 0., 1); + (yyval.d) = treat_Struct_FullName_Float((yyvsp[(3) - (4)].c2).char1, (yyvsp[(3) - (4)].c2).char2, 1, 0, 0., 1); ;} break; case 434: -#line 4894 "Gmsh.y" +#line 4874 "Gmsh.y" { - (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float((yyvsp[(3) - (6)].c2).char1, (yyvsp[(3) - (6)].c2).char2, (yyvsp[(5) - (6)].c), 0., 1); + (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float((yyvsp[(3) - (6)].c2).char1, (yyvsp[(3) - (6)].c2).char2, (yyvsp[(5) - (6)].c), 0, 0., 1); ;} break; case 435: -#line 4898 "Gmsh.y" +#line 4878 "Gmsh.y" { - (yyval.d) = treat_Struct_FullName_Float((yyvsp[(3) - (5)].c2).char1, (yyvsp[(3) - (5)].c2).char2, (yyvsp[(4) - (5)].d), 2); + (yyval.d) = treat_Struct_FullName_Float((yyvsp[(3) - (5)].c2).char1, (yyvsp[(3) - (5)].c2).char2, 1, 0, (yyvsp[(4) - (5)].d), 2); ;} break; case 436: -#line 4902 "Gmsh.y" +#line 4882 "Gmsh.y" { - (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float((yyvsp[(3) - (7)].c2).char1, (yyvsp[(3) - (7)].c2).char2, (yyvsp[(5) - (7)].c), (yyvsp[(6) - (7)].d), 2); + (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float((yyvsp[(3) - (7)].c2).char1, (yyvsp[(3) - (7)].c2).char2, (yyvsp[(5) - (7)].c), 0, (yyvsp[(6) - (7)].d), 2); ;} break; case 437: -#line 4906 "Gmsh.y" +#line 4886 "Gmsh.y" { std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(3) - (4)].c)); (yyval.d) = !StatFile(tmp); @@ -11953,7 +11990,7 @@ yyreduce: break; case 438: -#line 4912 "Gmsh.y" +#line 4892 "Gmsh.y" { if(gmsh_yysymbols.count((yyvsp[(2) - (4)].c))){ gmsh_yysymbol &s(gmsh_yysymbols[(yyvsp[(2) - (4)].c)]); @@ -11971,7 +12008,14 @@ yyreduce: break; case 439: -#line 4928 "Gmsh.y" +#line 4908 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float_getDim((yyvsp[(2) - (6)].c2).char1, (yyvsp[(2) - (6)].c2).char2, (yyvsp[(4) - (6)].c)); + ;} + break; + + case 440: +#line 4913 "Gmsh.y" { std::string struct_namespace((yyvsp[(3) - (4)].c)); (yyval.d) = (double)nameSpaces[struct_namespace].size(); @@ -11979,16 +12023,16 @@ yyreduce: ;} break; - case 440: -#line 4934 "Gmsh.y" + case 441: +#line 4919 "Gmsh.y" { std::string struct_namespace(std::string("")); (yyval.d) = (double)nameSpaces[struct_namespace].size(); ;} break; - case 441: -#line 4940 "Gmsh.y" + case 442: +#line 4925 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (2)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (2)].c)); @@ -12009,8 +12053,8 @@ yyreduce: ;} break; - case 442: -#line 4959 "Gmsh.y" + case 443: +#line 4944 "Gmsh.y" { int index = (int)(yyvsp[(3) - (5)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ @@ -12032,8 +12076,8 @@ yyreduce: ;} break; - case 443: -#line 4980 "Gmsh.y" + case 444: +#line 4965 "Gmsh.y" { int index = (int)(yyvsp[(3) - (5)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ @@ -12055,30 +12099,44 @@ yyreduce: ;} break; - case 444: -#line 5013 "Gmsh.y" + case 445: +#line 4998 "Gmsh.y" { (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float(NULL, (yyvsp[(1) - (3)].c), (yyvsp[(3) - (3)].c)); ;} break; - case 445: -#line 5017 "Gmsh.y" + case 446: +#line 5002 "Gmsh.y" { (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float((yyvsp[(1) - (5)].c), (yyvsp[(3) - (5)].c), (yyvsp[(5) - (5)].c)); ;} break; - case 446: -#line 5022 "Gmsh.y" + case 447: +#line 5007 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float(NULL, (yyvsp[(1) - (6)].c), (yyvsp[(3) - (6)].c), (int)(yyvsp[(5) - (6)].d)); + ;} + break; + + case 448: +#line 5011 "Gmsh.y" + { + (yyval.d) = treat_Struct_FullName_dot_tSTRING_Float((yyvsp[(1) - (8)].c), (yyvsp[(3) - (8)].c), (yyvsp[(5) - (8)].c), (int)(yyvsp[(7) - (8)].d)); + ;} + break; + + case 449: +#line 5016 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), (yyval.d)); Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); ;} break; - case 447: -#line 5027 "Gmsh.y" + case 450: +#line 5021 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (4)].c), 0, (yyvsp[(3) - (4)].c), d)){ @@ -12090,8 +12148,8 @@ yyreduce: ;} break; - case 448: -#line 5037 "Gmsh.y" + case 451: +#line 5031 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c), d)){ @@ -12103,16 +12161,16 @@ yyreduce: ;} break; - case 449: -#line 5047 "Gmsh.y" + case 452: +#line 5041 "Gmsh.y" { (yyval.d) = Msg::GetValue((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); Free((yyvsp[(3) - (6)].c)); ;} break; - case 450: -#line 5052 "Gmsh.y" + case 453: +#line 5046 "Gmsh.y" { int matches = 0; for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ @@ -12125,8 +12183,8 @@ yyreduce: ;} break; - case 451: -#line 5063 "Gmsh.y" + case 454: +#line 5057 "Gmsh.y" { std::string s((yyvsp[(3) - (6)].c)), substr((yyvsp[(5) - (6)].c)); if(s.find(substr) != std::string::npos) @@ -12137,24 +12195,24 @@ yyreduce: ;} break; - case 452: -#line 5072 "Gmsh.y" + case 455: +#line 5066 "Gmsh.y" { (yyval.d) = strlen((yyvsp[(3) - (4)].c)); Free((yyvsp[(3) - (4)].c)); ;} break; - case 453: -#line 5077 "Gmsh.y" + case 456: +#line 5071 "Gmsh.y" { (yyval.d) = strcmp((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); Free((yyvsp[(3) - (6)].c)); Free((yyvsp[(5) - (6)].c)); ;} break; - case 454: -#line 5082 "Gmsh.y" + case 457: +#line 5076 "Gmsh.y" { int align = 0, font = 0, fontsize = CTX::instance()->glFontSize; if(List_Nbr((yyvsp[(3) - (4)].l)) % 2){ @@ -12180,28 +12238,28 @@ yyreduce: ;} break; - case 455: -#line 5109 "Gmsh.y" + case 458: +#line 5103 "Gmsh.y" { (yyval.d) = 0.; ;} break; - case 456: -#line 5111 "Gmsh.y" + case 459: +#line 5105 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (2)].d);;} break; - case 457: -#line 5116 "Gmsh.y" + case 460: +#line 5110 "Gmsh.y" { (yyval.c) = NULL; ;} break; - case 458: -#line 5118 "Gmsh.y" + case 461: +#line 5112 "Gmsh.y" { (yyval.c) = (yyvsp[(2) - (2)].c);;} break; - case 459: -#line 5123 "Gmsh.y" + case 462: +#line 5117 "Gmsh.y" { std::string struct_namespace((yyvsp[(2) - (3)].c2).char1? (yyvsp[(2) - (3)].c2).char1 : std::string("")), struct_name((yyvsp[(2) - (3)].c2).char2); @@ -12210,8 +12268,8 @@ yyreduce: ;} break; - case 460: -#line 5130 "Gmsh.y" + case 463: +#line 5124 "Gmsh.y" { std::string struct_namespace((yyvsp[(2) - (7)].c2).char1? (yyvsp[(2) - (7)].c2).char1 : std::string("")), struct_name((yyvsp[(2) - (7)].c2).char2); @@ -12226,151 +12284,151 @@ yyreduce: ;} break; - case 461: -#line 5146 "Gmsh.y" + case 464: +#line 5140 "Gmsh.y" { (yyval.c2).char1 = NULL; (yyval.c2).char2 = (yyvsp[(1) - (1)].c); ;} break; - case 462: -#line 5148 "Gmsh.y" + case 465: +#line 5142 "Gmsh.y" { (yyval.c2).char1 = (yyvsp[(1) - (3)].c); (yyval.c2).char2 = (yyvsp[(3) - (3)].c); ;} break; - case 463: -#line 5153 "Gmsh.y" + case 466: +#line 5147 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); flag_tSTRING_alloc = 1; ;} break; - case 464: -#line 5162 "Gmsh.y" + case 467: +#line 5156 "Gmsh.y" { (yyval.i) = 99; ;} break; - case 465: -#line 5164 "Gmsh.y" + case 468: +#line 5158 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(2) - (2)].d); ;} break; - case 466: -#line 5169 "Gmsh.y" + case 469: +#line 5163 "Gmsh.y" { (yyval.i) = 0; ;} break; - case 467: -#line 5171 "Gmsh.y" + case 470: +#line 5165 "Gmsh.y" { (yyval.i) = (yyvsp[(2) - (3)].i); ;} break; - case 468: -#line 5177 "Gmsh.y" + case 471: +#line 5171 "Gmsh.y" { memcpy((yyval.v), (yyvsp[(1) - (1)].v), 5*sizeof(double)); ;} break; - case 469: -#line 5181 "Gmsh.y" + case 472: +#line 5175 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = -(yyvsp[(2) - (2)].v)[i]; ;} break; - case 470: -#line 5185 "Gmsh.y" + case 473: +#line 5179 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; ;} break; - case 471: -#line 5189 "Gmsh.y" + case 474: +#line 5183 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] - (yyvsp[(3) - (3)].v)[i]; ;} break; - case 472: -#line 5193 "Gmsh.y" + case 475: +#line 5187 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] + (yyvsp[(3) - (3)].v)[i]; ;} break; - case 473: -#line 5200 "Gmsh.y" + case 476: +#line 5194 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (11)].d); (yyval.v)[1] = (yyvsp[(4) - (11)].d); (yyval.v)[2] = (yyvsp[(6) - (11)].d); (yyval.v)[3] = (yyvsp[(8) - (11)].d); (yyval.v)[4] = (yyvsp[(10) - (11)].d); ;} break; - case 474: -#line 5204 "Gmsh.y" + case 477: +#line 5198 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (9)].d); (yyval.v)[1] = (yyvsp[(4) - (9)].d); (yyval.v)[2] = (yyvsp[(6) - (9)].d); (yyval.v)[3] = (yyvsp[(8) - (9)].d); (yyval.v)[4] = 1.0; ;} break; - case 475: -#line 5208 "Gmsh.y" + case 478: +#line 5202 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; ;} break; - case 476: -#line 5212 "Gmsh.y" + case 479: +#line 5206 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; ;} break; - case 477: -#line 5219 "Gmsh.y" + case 480: +#line 5213 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(List_T*)); List_Add((yyval.l), &((yyvsp[(1) - (1)].l))); ;} break; - case 478: -#line 5224 "Gmsh.y" + case 481: +#line 5218 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].l))); ;} break; - case 479: -#line 5231 "Gmsh.y" + case 482: +#line 5225 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); ;} break; - case 480: -#line 5236 "Gmsh.y" + case 483: +#line 5230 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 481: -#line 5240 "Gmsh.y" + case 484: +#line 5234 "Gmsh.y" { // creates an empty list (yyval.l) = List_Create(2, 1, sizeof(double)); ;} break; - case 482: -#line 5245 "Gmsh.y" + case 485: +#line 5239 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} break; - case 483: -#line 5249 "Gmsh.y" + case 486: +#line 5243 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (4)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -12380,8 +12438,8 @@ yyreduce: ;} break; - case 484: -#line 5257 "Gmsh.y" + case 487: +#line 5251 "Gmsh.y" { (yyval.l) = (yyvsp[(4) - (5)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -12391,15 +12449,15 @@ yyreduce: ;} break; - case 485: -#line 5268 "Gmsh.y" + case 488: +#line 5262 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 486: -#line 5272 "Gmsh.y" + case 489: +#line 5266 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (1)].c), "*") || !strcmp((yyvsp[(1) - (1)].c), "all")) (yyval.l) = 0; @@ -12410,8 +12468,8 @@ yyreduce: ;} break; - case 487: -#line 5284 "Gmsh.y" + case 490: +#line 5278 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -12421,8 +12479,8 @@ yyreduce: ;} break; - case 488: -#line 5292 "Gmsh.y" + case 491: +#line 5286 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (3)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -12432,8 +12490,8 @@ yyreduce: ;} break; - case 489: -#line 5300 "Gmsh.y" + case 492: +#line 5294 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); for(double d = (yyvsp[(1) - (3)].d); ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d <= (yyvsp[(3) - (3)].d)) : (d >= (yyvsp[(3) - (3)].d)); @@ -12442,8 +12500,8 @@ yyreduce: ;} break; - case 490: -#line 5307 "Gmsh.y" + case 493: +#line 5301 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!(yyvsp[(5) - (5)].d)){ //|| ($1 < $3 && $5 < 0) || ($1 > $3 && $5 > 0) @@ -12455,8 +12513,8 @@ yyreduce: ;} break; - case 491: -#line 5317 "Gmsh.y" + case 494: +#line 5311 "Gmsh.y" { (yyval.l) = List_Create(3, 1, sizeof(double)); int tag = (int)(yyvsp[(3) - (4)].d); @@ -12481,8 +12539,8 @@ yyreduce: ;} break; - case 492: -#line 5340 "Gmsh.y" + case 495: +#line 5334 "Gmsh.y" { (yyval.l) = List_Create(10, 10, sizeof(double)); getAllElementaryTags(0, (yyval.l)); @@ -12490,8 +12548,8 @@ yyreduce: ;} break; - case 493: -#line 5346 "Gmsh.y" + case 496: +#line 5340 "Gmsh.y" { (yyval.l) = List_Create(10, 10, sizeof(double)); getAllElementaryTags(1, (yyval.l)); @@ -12499,8 +12557,8 @@ yyreduce: ;} break; - case 494: -#line 5352 "Gmsh.y" + case 497: +#line 5346 "Gmsh.y" { (yyval.l) = List_Create(10, 10, sizeof(double)); getAllElementaryTags(2, (yyval.l)); @@ -12508,8 +12566,8 @@ yyreduce: ;} break; - case 495: -#line 5358 "Gmsh.y" + case 498: +#line 5352 "Gmsh.y" { (yyval.l) = List_Create(10, 10, sizeof(double)); getAllElementaryTags(3, (yyval.l)); @@ -12517,8 +12575,8 @@ yyreduce: ;} break; - case 496: -#line 5364 "Gmsh.y" + case 499: +#line 5358 "Gmsh.y" { (yyval.l) = List_Create(10, 10, sizeof(double)); if(!(yyvsp[(3) - (3)].l)){ @@ -12531,8 +12589,8 @@ yyreduce: ;} break; - case 497: -#line 5375 "Gmsh.y" + case 500: +#line 5369 "Gmsh.y" { (yyval.l) = List_Create(10, 10, sizeof(double)); if(!(yyvsp[(3) - (3)].l)){ @@ -12545,8 +12603,8 @@ yyreduce: ;} break; - case 498: -#line 5386 "Gmsh.y" + case 501: +#line 5380 "Gmsh.y" { (yyval.l) = List_Create(10, 10, sizeof(double)); if(!(yyvsp[(3) - (3)].l)){ @@ -12559,8 +12617,8 @@ yyreduce: ;} break; - case 499: -#line 5397 "Gmsh.y" + case 502: +#line 5391 "Gmsh.y" { (yyval.l) = List_Create(10, 10, sizeof(double)); if(!(yyvsp[(3) - (3)].l)){ @@ -12573,40 +12631,40 @@ yyreduce: ;} break; - case 500: -#line 5409 "Gmsh.y" + case 503: +#line 5403 "Gmsh.y" { (yyval.l) = List_Create(10, 10, sizeof(double)); getElementaryTagsInBoundingBox(0, (yyvsp[(5) - (16)].d), (yyvsp[(7) - (16)].d), (yyvsp[(9) - (16)].d), (yyvsp[(11) - (16)].d), (yyvsp[(13) - (16)].d), (yyvsp[(15) - (16)].d), (yyval.l)); ;} break; - case 501: -#line 5415 "Gmsh.y" + case 504: +#line 5409 "Gmsh.y" { (yyval.l) = List_Create(10, 10, sizeof(double)); getElementaryTagsInBoundingBox(1, (yyvsp[(5) - (16)].d), (yyvsp[(7) - (16)].d), (yyvsp[(9) - (16)].d), (yyvsp[(11) - (16)].d), (yyvsp[(13) - (16)].d), (yyvsp[(15) - (16)].d), (yyval.l)); ;} break; - case 502: -#line 5421 "Gmsh.y" + case 505: +#line 5415 "Gmsh.y" { (yyval.l) = List_Create(10, 10, sizeof(double)); getElementaryTagsInBoundingBox(2, (yyvsp[(5) - (16)].d), (yyvsp[(7) - (16)].d), (yyvsp[(9) - (16)].d), (yyvsp[(11) - (16)].d), (yyvsp[(13) - (16)].d), (yyvsp[(15) - (16)].d), (yyval.l)); ;} break; - case 503: -#line 5427 "Gmsh.y" + case 506: +#line 5421 "Gmsh.y" { (yyval.l) = List_Create(10, 10, sizeof(double)); getElementaryTagsInBoundingBox(3, (yyvsp[(5) - (16)].d), (yyvsp[(7) - (16)].d), (yyvsp[(9) - (16)].d), (yyvsp[(11) - (16)].d), (yyvsp[(13) - (16)].d), (yyvsp[(15) - (16)].d), (yyval.l)); ;} break; - case 504: -#line 5432 "Gmsh.y" + case 507: +#line 5426 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -12618,8 +12676,8 @@ yyreduce: ;} break; - case 505: -#line 5442 "Gmsh.y" + case 508: +#line 5436 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -12631,8 +12689,8 @@ yyreduce: ;} break; - case 506: -#line 5452 "Gmsh.y" + case 509: +#line 5446 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -12644,8 +12702,8 @@ yyreduce: ;} break; - case 507: -#line 5462 "Gmsh.y" + case 510: +#line 5456 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) @@ -12659,8 +12717,8 @@ yyreduce: ;} break; - case 508: -#line 5475 "Gmsh.y" + case 511: +#line 5469 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(3) - (4)].c))) @@ -12674,29 +12732,29 @@ yyreduce: ;} break; - case 509: -#line 5487 "Gmsh.y" + case 512: +#line 5481 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (4)].l); ;} break; - case 510: -#line 5491 "Gmsh.y" + case 513: +#line 5485 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (4)].l); ;} break; - case 511: -#line 5495 "Gmsh.y" + case 514: +#line 5489 "Gmsh.y" { (yyval.l) = (yyvsp[(4) - (6)].l); ;} break; - case 512: -#line 5499 "Gmsh.y" + case 515: +#line 5493 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) @@ -12716,8 +12774,8 @@ yyreduce: ;} break; - case 513: -#line 5517 "Gmsh.y" + case 516: +#line 5511 "Gmsh.y" { (yyval.l) = List_Create(20,20,sizeof(double)); for(int i = 0; i < (int)(yyvsp[(7) - (8)].d); i++) { @@ -12727,8 +12785,8 @@ yyreduce: ;} break; - case 514: -#line 5525 "Gmsh.y" + case 517: +#line 5519 "Gmsh.y" { (yyval.l) = List_Create(20,20,sizeof(double)); for(int i = 0; i < (int)(yyvsp[(7) - (8)].d); i++) { @@ -12738,8 +12796,8 @@ yyreduce: ;} break; - case 515: -#line 5533 "Gmsh.y" + case 518: +#line 5527 "Gmsh.y" { Msg::Barrier(); FILE *File; @@ -12770,8 +12828,8 @@ yyreduce: ;} break; - case 516: -#line 5562 "Gmsh.y" + case 519: +#line 5556 "Gmsh.y" { double x0 = (yyvsp[(3) - (14)].d), x1 = (yyvsp[(5) - (14)].d), y0 = (yyvsp[(7) - (14)].d), y1 = (yyvsp[(9) - (14)].d), ys = (yyvsp[(11) - (14)].d); int N = (int)(yyvsp[(13) - (14)].d); @@ -12783,8 +12841,8 @@ yyreduce: ;} break; - case 517: -#line 5572 "Gmsh.y" + case 520: +#line 5566 "Gmsh.y" { std::vector<double> tmp; for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ @@ -12802,8 +12860,8 @@ yyreduce: ;} break; - case 518: -#line 5588 "Gmsh.y" + case 521: +#line 5582 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ double *d = (double*)List_Pointer((yyvsp[(3) - (4)].l), i); @@ -12813,30 +12871,30 @@ yyreduce: ;} break; - case 519: -#line 5599 "Gmsh.y" + case 522: +#line 5593 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); ;} break; - case 520: -#line 5604 "Gmsh.y" + case 523: +#line 5598 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 521: -#line 5608 "Gmsh.y" + case 524: +#line 5602 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].d))); ;} break; - case 522: -#line 5612 "Gmsh.y" + case 525: +#line 5606 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ double d; @@ -12847,22 +12905,22 @@ yyreduce: ;} break; - case 523: -#line 5624 "Gmsh.y" + case 526: +#line 5618 "Gmsh.y" { (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (9)].d), (int)(yyvsp[(4) - (9)].d), (int)(yyvsp[(6) - (9)].d), (int)(yyvsp[(8) - (9)].d)); ;} break; - case 524: -#line 5628 "Gmsh.y" + case 527: +#line 5622 "Gmsh.y" { (yyval.u) = CTX::instance()->packColor((int)(yyvsp[(2) - (7)].d), (int)(yyvsp[(4) - (7)].d), (int)(yyvsp[(6) - (7)].d), 255); ;} break; - case 525: -#line 5640 "Gmsh.y" + case 528: +#line 5634 "Gmsh.y" { int flag = 0; if(gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c))){ @@ -12881,8 +12939,8 @@ yyreduce: ;} break; - case 526: -#line 5657 "Gmsh.y" + case 529: +#line 5651 "Gmsh.y" { unsigned int val = 0; ColorOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(5) - (5)].c), val); @@ -12891,15 +12949,15 @@ yyreduce: ;} break; - case 527: -#line 5667 "Gmsh.y" + case 530: +#line 5661 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} break; - case 528: -#line 5671 "Gmsh.y" + case 531: +#line 5665 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); GmshColorTable *ct = GetColorTable((int)(yyvsp[(3) - (6)].d)); @@ -12913,38 +12971,38 @@ yyreduce: ;} break; - case 529: -#line 5686 "Gmsh.y" + case 532: +#line 5680 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); List_Add((yyval.l), &((yyvsp[(1) - (1)].u))); ;} break; - case 530: -#line 5691 "Gmsh.y" + case 533: +#line 5685 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].u))); ;} break; - case 531: -#line 5698 "Gmsh.y" + case 534: +#line 5692 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 532: -#line 5702 "Gmsh.y" + case 535: +#line 5696 "Gmsh.y" { // No need to extend to Struct_FullName (a Tag is not a String) (yyval.c) = treat_Struct_FullName_String(NULL, (yyvsp[(1) - (1)].c)); ;} break; - case 533: -#line 5707 "Gmsh.y" + case 536: +#line 5701 "Gmsh.y" { std::string val; int j = (int)(yyvsp[(3) - (4)].d); @@ -12960,8 +13018,8 @@ yyreduce: ;} break; - case 534: -#line 5721 "Gmsh.y" + case 537: +#line 5715 "Gmsh.y" { std::string val; int j = (int)(yyvsp[(3) - (4)].d); @@ -12977,22 +13035,36 @@ yyreduce: ;} break; - case 535: -#line 5738 "Gmsh.y" + case 538: +#line 5732 "Gmsh.y" { (yyval.c) = treat_Struct_FullName_dot_tSTRING_String(NULL, (yyvsp[(1) - (3)].c), (yyvsp[(3) - (3)].c)); ;} break; - case 536: -#line 5742 "Gmsh.y" + case 539: +#line 5736 "Gmsh.y" { (yyval.c) = treat_Struct_FullName_dot_tSTRING_String((yyvsp[(1) - (5)].c), (yyvsp[(3) - (5)].c), (yyvsp[(5) - (5)].c)); ;} break; - case 537: -#line 5747 "Gmsh.y" + case 540: +#line 5741 "Gmsh.y" + { + (yyval.c) = treat_Struct_FullName_dot_tSTRING_String(NULL, (yyvsp[(1) - (6)].c), (yyvsp[(3) - (6)].c), (int)(yyvsp[(5) - (6)].d)); + ;} + break; + + case 541: +#line 5745 "Gmsh.y" + { + (yyval.c) = treat_Struct_FullName_dot_tSTRING_String((yyvsp[(1) - (8)].c), (yyvsp[(3) - (8)].c), (yyvsp[(5) - (8)].c), (int)(yyvsp[(7) - (8)].d)); + ;} + break; + + case 542: +#line 5750 "Gmsh.y" { std::string out; StringOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), out); @@ -13002,8 +13074,8 @@ yyreduce: ;} break; - case 538: -#line 5755 "Gmsh.y" + case 543: +#line 5758 "Gmsh.y" { std::string name = GModel::current()->getPhysicalName(0, (int)(yyvsp[(4) - (5)].d)); (yyval.c) = (char*)Malloc((name.size() + 1) * sizeof(char)); @@ -13011,8 +13083,8 @@ yyreduce: ;} break; - case 539: -#line 5761 "Gmsh.y" + case 544: +#line 5764 "Gmsh.y" { std::string name = GModel::current()->getPhysicalName(1, (int)(yyvsp[(4) - (5)].d)); (yyval.c) = (char*)Malloc((name.size() + 1) * sizeof(char)); @@ -13020,8 +13092,8 @@ yyreduce: ;} break; - case 540: -#line 5767 "Gmsh.y" + case 545: +#line 5770 "Gmsh.y" { std::string name = GModel::current()->getPhysicalName(2, (int)(yyvsp[(4) - (5)].d)); (yyval.c) = (char*)Malloc((name.size() + 1) * sizeof(char)); @@ -13029,8 +13101,8 @@ yyreduce: ;} break; - case 541: -#line 5773 "Gmsh.y" + case 546: +#line 5776 "Gmsh.y" { std::string name = GModel::current()->getPhysicalName(3, (int)(yyvsp[(4) - (5)].d)); (yyval.c) = (char*)Malloc((name.size() + 1) * sizeof(char)); @@ -13038,22 +13110,22 @@ yyreduce: ;} break; - case 542: -#line 5782 "Gmsh.y" + case 547: +#line 5785 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 543: -#line 5786 "Gmsh.y" + case 548: +#line 5789 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); ;} break; - case 544: -#line 5790 "Gmsh.y" + case 549: +#line 5793 "Gmsh.y" { (yyval.c) = (char *)Malloc(32 * sizeof(char)); time_t now; @@ -13063,8 +13135,8 @@ yyreduce: ;} break; - case 545: -#line 5798 "Gmsh.y" + case 550: +#line 5801 "Gmsh.y" { std::string exe = Msg::GetExecutableName(); (yyval.c) = (char *)Malloc(exe.size() + 1); @@ -13072,8 +13144,8 @@ yyreduce: ;} break; - case 546: -#line 5804 "Gmsh.y" + case 551: +#line 5807 "Gmsh.y" { std::string action = Msg::GetOnelabAction(); (yyval.c) = (char *)Malloc(action.size() + 1); @@ -13081,15 +13153,15 @@ yyreduce: ;} break; - case 547: -#line 5810 "Gmsh.y" + case 552: +#line 5813 "Gmsh.y" { (yyval.c) = strsave((char*)"Gmsh"); ;} break; - case 548: -#line 5814 "Gmsh.y" + case 553: +#line 5817 "Gmsh.y" { const char *env = GetEnvironmentVar((yyvsp[(3) - (4)].c)); if(!env) env = ""; @@ -13099,8 +13171,8 @@ yyreduce: ;} break; - case 549: -#line 5822 "Gmsh.y" + case 554: +#line 5825 "Gmsh.y" { std::string s = Msg::GetString((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); @@ -13110,8 +13182,8 @@ yyreduce: ;} break; - case 550: -#line 5830 "Gmsh.y" + case 555: +#line 5833 "Gmsh.y" { std::string s = Msg::GetOnelabString((yyvsp[(3) - (4)].c)); (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); @@ -13120,8 +13192,8 @@ yyreduce: ;} break; - case 551: -#line 5837 "Gmsh.y" + case 556: +#line 5840 "Gmsh.y" { std::string s = Msg::GetOnelabString((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); (yyval.c) = (char *)Malloc((s.size() + 1) * sizeof(char)); @@ -13131,22 +13203,22 @@ yyreduce: ;} break; - case 552: -#line 5847 "Gmsh.y" + case 557: +#line 5850 "Gmsh.y" { - (yyval.c) = treat_Struct_FullName_String(NULL, (yyvsp[(3) - (5)].c2).char2, (yyvsp[(4) - (5)].c), 2); + (yyval.c) = treat_Struct_FullName_String(NULL, (yyvsp[(3) - (5)].c2).char2, 1, 0, (yyvsp[(4) - (5)].c), 2); ;} break; - case 553: -#line 5852 "Gmsh.y" + case 558: +#line 5855 "Gmsh.y" { - (yyval.c) = treat_Struct_FullName_dot_tSTRING_String((yyvsp[(3) - (7)].c2).char1, (yyvsp[(3) - (7)].c2).char2, (yyvsp[(5) - (7)].c), (yyvsp[(6) - (7)].c), 2); + (yyval.c) = treat_Struct_FullName_dot_tSTRING_String((yyvsp[(3) - (7)].c2).char1, (yyvsp[(3) - (7)].c2).char2, (yyvsp[(5) - (7)].c), 0, (yyvsp[(6) - (7)].c), 2); ;} break; - case 554: -#line 5857 "Gmsh.y" + case 559: +#line 5860 "Gmsh.y" { int size = 1; for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++) @@ -13163,8 +13235,8 @@ yyreduce: ;} break; - case 555: -#line 5872 "Gmsh.y" + case 560: +#line 5875 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; @@ -13180,8 +13252,8 @@ yyreduce: ;} break; - case 556: -#line 5886 "Gmsh.y" + case 561: +#line 5889 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; @@ -13197,8 +13269,8 @@ yyreduce: ;} break; - case 557: -#line 5900 "Gmsh.y" + case 562: +#line 5903 "Gmsh.y" { std::string input = (yyvsp[(3) - (8)].c); std::string substr_old = (yyvsp[(5) - (8)].c); @@ -13212,8 +13284,8 @@ yyreduce: ;} break; - case 558: -#line 5912 "Gmsh.y" + case 563: +#line 5915 "Gmsh.y" { int size = 1; for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++) @@ -13231,8 +13303,8 @@ yyreduce: ;} break; - case 559: -#line 5928 "Gmsh.y" + case 564: +#line 5931 "Gmsh.y" { int i = 0; while ((yyvsp[(3) - (4)].c)[i]) { @@ -13243,8 +13315,8 @@ yyreduce: ;} break; - case 560: -#line 5937 "Gmsh.y" + case 565: +#line 5940 "Gmsh.y" { int i = 0; while ((yyvsp[(3) - (4)].c)[i]) { @@ -13255,8 +13327,8 @@ yyreduce: ;} break; - case 561: -#line 5946 "Gmsh.y" + case 566: +#line 5949 "Gmsh.y" { int i = 0; while ((yyvsp[(3) - (4)].c)[i]) { @@ -13268,8 +13340,8 @@ yyreduce: ;} break; - case 562: -#line 5956 "Gmsh.y" + case 567: +#line 5959 "Gmsh.y" { if((yyvsp[(3) - (8)].d)){ (yyval.c) = (yyvsp[(5) - (8)].c); @@ -13282,8 +13354,8 @@ yyreduce: ;} break; - case 563: -#line 5967 "Gmsh.y" + case 568: +#line 5970 "Gmsh.y" { std::string in = (yyvsp[(3) - (8)].c); std::string out = in.substr((int)(yyvsp[(5) - (8)].d), (int)(yyvsp[(7) - (8)].d)); @@ -13293,8 +13365,8 @@ yyreduce: ;} break; - case 564: -#line 5975 "Gmsh.y" + case 569: +#line 5978 "Gmsh.y" { std::string in = (yyvsp[(3) - (6)].c); std::string out = in.substr((int)(yyvsp[(5) - (6)].d), std::string::npos); @@ -13304,15 +13376,15 @@ yyreduce: ;} break; - case 565: -#line 5983 "Gmsh.y" + case 570: +#line 5986 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); ;} break; - case 566: -#line 5987 "Gmsh.y" + case 571: +#line 5990 "Gmsh.y" { char tmpstring[5000]; int i = printListOfDouble((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].l), tmpstring); @@ -13333,8 +13405,8 @@ yyreduce: ;} break; - case 567: -#line 6006 "Gmsh.y" + case 572: +#line 6009 "Gmsh.y" { std::string tmp = FixRelativePath(gmsh_yyname, (yyvsp[(3) - (4)].c)); (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); @@ -13343,8 +13415,8 @@ yyreduce: ;} break; - case 568: -#line 6013 "Gmsh.y" + case 573: +#line 6016 "Gmsh.y" { std::string tmp = SplitFileName(GetAbsolutePath(gmsh_yyname))[0]; (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); @@ -13352,8 +13424,8 @@ yyreduce: ;} break; - case 569: -#line 6019 "Gmsh.y" + case 574: +#line 6022 "Gmsh.y" { std::string tmp = SplitFileName((yyvsp[(3) - (4)].c))[0]; (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); @@ -13362,8 +13434,8 @@ yyreduce: ;} break; - case 570: -#line 6026 "Gmsh.y" + case 575: +#line 6029 "Gmsh.y" { std::string tmp = GetAbsolutePath((yyvsp[(3) - (4)].c)); (yyval.c) = (char*)Malloc((tmp.size() + 1) * sizeof(char)); @@ -13372,13 +13444,13 @@ yyreduce: ;} break; - case 571: -#line 6033 "Gmsh.y" + case 576: +#line 6036 "Gmsh.y" { init_options(); ;} break; - case 572: -#line 6035 "Gmsh.y" + case 577: +#line 6038 "Gmsh.y" { std::string val((yyvsp[(3) - (6)].c)); Msg::ExchangeOnelabParameter("", val, floatOptions, charOptions); @@ -13388,8 +13460,8 @@ yyreduce: ;} break; - case 573: -#line 6043 "Gmsh.y" + case 578: +#line 6046 "Gmsh.y" { std::string out; const std::string * key_struct = NULL; @@ -13412,33 +13484,33 @@ yyreduce: ;} break; - case 574: -#line 6067 "Gmsh.y" + case 579: +#line 6070 "Gmsh.y" { struct_namespace = std::string(""); (yyval.d) = (yyvsp[(2) - (2)].d); ;} break; - case 575: -#line 6069 "Gmsh.y" + case 580: +#line 6072 "Gmsh.y" { struct_namespace = (yyvsp[(1) - (4)].c); Free((yyvsp[(1) - (4)].c)); (yyval.d) = (yyvsp[(4) - (4)].d); ;} break; - case 576: -#line 6075 "Gmsh.y" + case 581: +#line 6078 "Gmsh.y" { (yyval.l) = List_Create(20,20,sizeof(char*)); List_Add((yyval.l), &((yyvsp[(1) - (1)].c))); ;} break; - case 577: -#line 6080 "Gmsh.y" + case 582: +#line 6083 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].c))); ;} break; - case 578: -#line 6088 "Gmsh.y" + case 583: +#line 6091 "Gmsh.y" { char tmpstr[256]; sprintf(tmpstr, "_%d", (int)(yyvsp[(4) - (5)].d)); @@ -13448,8 +13520,8 @@ yyreduce: ;} break; - case 579: -#line 6097 "Gmsh.y" + case 584: +#line 6100 "Gmsh.y" { char tmpstr[256]; sprintf(tmpstr, "_%d", (int)(yyvsp[(4) - (5)].d)); @@ -13459,8 +13531,8 @@ yyreduce: ;} break; - case 580: -#line 6106 "Gmsh.y" + case 585: +#line 6109 "Gmsh.y" { char tmpstr[256]; sprintf(tmpstr, "_%d", (int)(yyvsp[(7) - (8)].d)); @@ -13470,24 +13542,24 @@ yyreduce: ;} break; - case 581: -#line 6118 "Gmsh.y" + case 586: +#line 6121 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 582: -#line 6121 "Gmsh.y" + case 587: +#line 6124 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 583: -#line 6125 "Gmsh.y" + case 588: +#line 6128 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); ;} break; /* Line 1267 of yacc.c. */ -#line 13491 "Gmsh.tab.cpp" +#line 13563 "Gmsh.tab.cpp" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -13701,7 +13773,7 @@ yyreturn: } -#line 6128 "Gmsh.y" +#line 6131 "Gmsh.y" void assignVariable(const std::string &name, int index, int assignType, @@ -14388,29 +14460,49 @@ int NEWPHYSICAL() double treat_Struct_FullName_Float -(char* c1, char* c2, double val_default, int type_treat) +(char* c1, char* c2, int type_var, int index, double val_default, int type_treat) { double out; if(!c1 && gmsh_yysymbols.count(c2)){ if (type_treat == 1) out = 1.; // Exists (type_treat == 1) else { // Get (0) or GetForced (2) - gmsh_yysymbol &s(gmsh_yysymbols[c2]); - if(s.value.empty()){ + if (type_var == 1) { + gmsh_yysymbol &s(gmsh_yysymbols[c2]); + if(s.value.empty()){ + out = val_default; + if (type_treat == 0) yymsg(0, "Uninitialized variable '%s'", c2); + } + else + out = s.value[0]; + } + else if (type_var == 2) { + gmsh_yysymbol &s(gmsh_yysymbols[c2]); + if((int)s.value.size() < index + 1){ + out = val_default; + if (type_treat == 0) yymsg(0, "Uninitialized variable '%s[%d]'", c2, index); + } + else + out = s.value[index]; + } + else { out = val_default; - if (type_treat == 0) yymsg(0, "Uninitialized variable '%s'", c2); } - else - out = s.value[0]; } } else if(!c1 && type_treat == 1 && gmsh_yystringsymbols.count(c2)) { out = 1.; } else{ - std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); - if(nameSpaces.getTag(struct_namespace, struct_name, out)) { + if (type_var == 1) { + std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); + if(nameSpaces.getTag(struct_namespace, struct_name, out)) { + out = val_default; + if (type_treat == 0) yymsg(0, "Unknown variable '%s'", struct_name.c_str()); + } + } + else { out = val_default; - if (type_treat == 0) yymsg(0, "Unknown variable '%s'", struct_name.c_str()); + if (type_treat == 0) yymsg(0, "Unknown variable '%s(.)'", c2); } } Free(c1); Free(c2); @@ -14418,13 +14510,13 @@ double treat_Struct_FullName_Float } double treat_Struct_FullName_dot_tSTRING_Float -(char* c1, char* c2, char* c3, double val_default, int type_treat) +(char* c1, char* c2, char* c3, int index, double val_default, int type_treat) { double out; std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); std::string key_member(c3); switch (nameSpaces.getMember - (struct_namespace, struct_name, key_member, out)) { + (struct_namespace, struct_name, key_member, out, index)) { case 0: if (type_treat == 1) out = 1.; // Exists (type_treat == 1) break; @@ -14445,6 +14537,34 @@ double treat_Struct_FullName_dot_tSTRING_Float yymsg(0, "Unknown member '%s' of Struct %s", c3, struct_name.c_str()); } break; + case 3: + out = val_default; + if (type_treat == 0) + yymsg(0, "Index %d out of range", index); + break; + } + Free(c1); Free(c2); + if (flag_tSTRING_alloc) Free(c3); + return out; +} + +int treat_Struct_FullName_dot_tSTRING_Float_getDim +(char* c1, char* c2, char* c3) +{ + int out; + std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); + std::string key_member(c3); + switch (nameSpaces.getMember_Dim + (struct_namespace, struct_name, key_member, out)) { + case 0: + break; + case 1: + out = 0; + break; + case 2: + out = 0; + yymsg(0, "Unknown member '%s' of Struct %s", c3, struct_name.c_str()); + break; } Free(c1); Free(c2); if (flag_tSTRING_alloc) Free(c3); @@ -14452,7 +14572,7 @@ double treat_Struct_FullName_dot_tSTRING_Float } char * treat_Struct_FullName_String -(char* c1, char* c2, char * val_default, int type_treat) +(char* c1, char* c2, int type_var, int index, char * val_default, int type_treat) { std::string string_default(val_default? val_default : std::string("")); const std::string * out = NULL; @@ -14480,7 +14600,7 @@ char * treat_Struct_FullName_String } char* treat_Struct_FullName_dot_tSTRING_String -(char* c1, char* c2, char* c3, char * val_default, int type_treat) +(char* c1, char* c2, char* c3, int index, char * val_default, int type_treat) { std::string string_default(val_default? val_default : std::string("")); const std::string * out = NULL; @@ -14488,7 +14608,7 @@ char* treat_Struct_FullName_dot_tSTRING_String std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); std::string key_member(c3); switch (nameSpaces.getMember - (struct_namespace, struct_name, key_member, out)) { + (struct_namespace, struct_name, key_member, out, index)) { case 0: break; case 1: @@ -14502,6 +14622,11 @@ char* treat_Struct_FullName_dot_tSTRING_String if (type_treat == 0) yymsg(0, "Unknown member '%s' of Struct %s", c3, struct_name.c_str()); break; + case 3: + out = &string_default; + if (type_treat == 0) + yymsg(0, "Index %d out of range", index); + break; } char* out_c = (char*)Malloc((out->size() + 1) * sizeof(char)); strcpy(out_c, out->c_str()); diff --git a/Parser/Gmsh.tab.hpp b/Parser/Gmsh.tab.hpp index 04e51c1f72d11bf4096fff64a8a4a71cfbc7cb27..f4a583fb69faf939e8bc8e1aa03c2c479bbe1b1e 100644 --- a/Parser/Gmsh.tab.hpp +++ b/Parser/Gmsh.tab.hpp @@ -494,7 +494,7 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 153 "Gmsh.y" +#line 159 "Gmsh.y" { char *c; int i; diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index d6b7e50177917038a0fd19c3a6ff8b57718e25f5..1133e04c55d33da908488899df342ea3f9750a63 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -135,13 +135,19 @@ void setColor(const std::vector<std::pair<int, int> > &dimTags, unsigned int val bool recursive); double treat_Struct_FullName_Float - (char* c1, char* c2, double val_default = 0., int type_treat = 0); + (char* c1, char* c2, int type_var = 1, int index = 0, + double val_default = 0., int type_treat = 0); double treat_Struct_FullName_dot_tSTRING_Float - (char* c1, char* c2, char* c3, double val_default = 0., int type_treat = 0); + (char* c1, char* c2, char* c3, int index = 0, + double val_default = 0., int type_treat = 0); +int treat_Struct_FullName_dot_tSTRING_Float_getDim + (char* c1, char* c2, char* c3); char* treat_Struct_FullName_String - (char* c1, char* c2, char* val_default = NULL, int type_treat = 0); + (char* c1, char* c2, int type_var = 1, int index = 0, + char* val_default = NULL, int type_treat = 0); char* treat_Struct_FullName_dot_tSTRING_String - (char* c1, char* c2, char* c3, char* val_default = NULL, int type_treat = 0); + (char* c1, char* c2, char* c3, int index = 0, + char* val_default = NULL, int type_treat = 0); struct doubleXstring{ double d; @@ -4851,56 +4857,30 @@ FExpr_Single : $$ = treat_Struct_FullName_Float($1.char1, $1.char2); } | String__Index '[' FExpr ']' + // | Struct_FullName '[' FExpr ']' { - int index = (int)$3; - if(!gmsh_yysymbols.count($1)){ - yymsg(0, "Unknown variable '%s'", $1); - $$ = 0.; - } - else{ - gmsh_yysymbol &s(gmsh_yysymbols[$1]); - if((int)s.value.size() < index + 1){ - yymsg(0, "Uninitialized variable '%s[%d]'", $1, index); - $$ = 0.; - } - else - $$ = s.value[index]; - } - Free($1); + $$ = treat_Struct_FullName_Float(NULL, $1, 2, (int)$3); } | String__Index '(' FExpr ')' + // | Struct_FullName '(' FExpr ')' { - int index = (int)$3; - if(!gmsh_yysymbols.count($1)){ - yymsg(0, "Unknown variable '%s'", $1); - $$ = 0.; - } - else{ - gmsh_yysymbol &s(gmsh_yysymbols[$1]); - if((int)s.value.size() < index + 1){ - yymsg(0, "Uninitialized variable '%s[%d]'", $1, index); - $$ = 0.; - } - else - $$ = s.value[index]; - } - Free($1); + $$ = treat_Struct_FullName_Float(NULL, $1, 2, (int)$3); } | tExists '(' Struct_FullName ')' { - $$ = treat_Struct_FullName_Float($3.char1, $3.char2, 0., 1); + $$ = treat_Struct_FullName_Float($3.char1, $3.char2, 1, 0, 0., 1); } | tExists '(' Struct_FullName '.' tSTRING_Member_Float ')' { - $$ = treat_Struct_FullName_dot_tSTRING_Float($3.char1, $3.char2, $5, 0., 1); + $$ = treat_Struct_FullName_dot_tSTRING_Float($3.char1, $3.char2, $5, 0, 0., 1); } | tGetForced '(' Struct_FullName GetForced_Default ')' { - $$ = treat_Struct_FullName_Float($3.char1, $3.char2, $4, 2); + $$ = treat_Struct_FullName_Float($3.char1, $3.char2, 1, 0, $4, 2); } | tGetForced '(' Struct_FullName '.' tSTRING_Member_Float GetForced_Default ')' { - $$ = treat_Struct_FullName_dot_tSTRING_Float($3.char1, $3.char2, $5, $6, 2); + $$ = treat_Struct_FullName_dot_tSTRING_Float($3.char1, $3.char2, $5, 0, $6, 2); } | tFileExists '(' StringExpr ')' { @@ -4924,6 +4904,11 @@ FExpr_Single : Free($2); } + | '#' Struct_FullName '.' tSTRING_Member_Float '(' ')' + { + $$ = treat_Struct_FullName_dot_tSTRING_Float_getDim($2.char1, $2.char2, $4); + } + | tDimNameSpace LP String__Index RP { std::string struct_namespace($3); @@ -5018,6 +5003,15 @@ FExpr_Single : $$ = treat_Struct_FullName_dot_tSTRING_Float($1, $3, $5); } + | String__Index '.' tSTRING_Member_Float '(' FExpr ')' + { + $$ = treat_Struct_FullName_dot_tSTRING_Float(NULL, $1, $3, (int)$5); + } + | String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' + { + $$ = treat_Struct_FullName_dot_tSTRING_Float($1, $3, $5, (int)$7); + } + | String__Index '[' FExpr ']' '.' tSTRING { NumberOption(GMSH_GET, $1, (int)$3, $6, $$); @@ -5743,6 +5737,15 @@ StringExprVar : $$ = treat_Struct_FullName_dot_tSTRING_String($1, $3, $5); } + | String__Index '.' tSTRING_Member_Float '(' FExpr ')' + { + $$ = treat_Struct_FullName_dot_tSTRING_String(NULL, $1, $3, (int)$5); + } + | String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' + { + $$ = treat_Struct_FullName_dot_tSTRING_String($1, $3, $5, (int)$7); + } + | String__Index '[' FExpr ']' '.' tSTRING { std::string out; @@ -5845,12 +5848,12 @@ StringExpr : //+++ No need to extend to Struct_FullName (a Tag is not a String), but... | tGetForcedStr '(' Struct_FullName GetForcedStr_Default ')' { - $$ = treat_Struct_FullName_String(NULL, $3.char2, $4, 2); + $$ = treat_Struct_FullName_String(NULL, $3.char2, 1, 0, $4, 2); } | tGetForcedStr '(' Struct_FullName '.' tSTRING_Member_Float GetForcedStr_Default ')' { - $$ = treat_Struct_FullName_dot_tSTRING_String($3.char1, $3.char2, $5, $6, 2); + $$ = treat_Struct_FullName_dot_tSTRING_String($3.char1, $3.char2, $5, 0, $6, 2); } | tStrCat LP RecursiveListOfStringExprVar RP @@ -6811,29 +6814,49 @@ int NEWPHYSICAL() double treat_Struct_FullName_Float -(char* c1, char* c2, double val_default, int type_treat) +(char* c1, char* c2, int type_var, int index, double val_default, int type_treat) { double out; if(!c1 && gmsh_yysymbols.count(c2)){ if (type_treat == 1) out = 1.; // Exists (type_treat == 1) else { // Get (0) or GetForced (2) - gmsh_yysymbol &s(gmsh_yysymbols[c2]); - if(s.value.empty()){ + if (type_var == 1) { + gmsh_yysymbol &s(gmsh_yysymbols[c2]); + if(s.value.empty()){ + out = val_default; + if (type_treat == 0) yymsg(0, "Uninitialized variable '%s'", c2); + } + else + out = s.value[0]; + } + else if (type_var == 2) { + gmsh_yysymbol &s(gmsh_yysymbols[c2]); + if((int)s.value.size() < index + 1){ + out = val_default; + if (type_treat == 0) yymsg(0, "Uninitialized variable '%s[%d]'", c2, index); + } + else + out = s.value[index]; + } + else { out = val_default; - if (type_treat == 0) yymsg(0, "Uninitialized variable '%s'", c2); } - else - out = s.value[0]; } } else if(!c1 && type_treat == 1 && gmsh_yystringsymbols.count(c2)) { out = 1.; } else{ - std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); - if(nameSpaces.getTag(struct_namespace, struct_name, out)) { + if (type_var == 1) { + std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); + if(nameSpaces.getTag(struct_namespace, struct_name, out)) { + out = val_default; + if (type_treat == 0) yymsg(0, "Unknown variable '%s'", struct_name.c_str()); + } + } + else { out = val_default; - if (type_treat == 0) yymsg(0, "Unknown variable '%s'", struct_name.c_str()); + if (type_treat == 0) yymsg(0, "Unknown variable '%s(.)'", c2); } } Free(c1); Free(c2); @@ -6841,13 +6864,13 @@ double treat_Struct_FullName_Float } double treat_Struct_FullName_dot_tSTRING_Float -(char* c1, char* c2, char* c3, double val_default, int type_treat) +(char* c1, char* c2, char* c3, int index, double val_default, int type_treat) { double out; std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); std::string key_member(c3); switch (nameSpaces.getMember - (struct_namespace, struct_name, key_member, out)) { + (struct_namespace, struct_name, key_member, out, index)) { case 0: if (type_treat == 1) out = 1.; // Exists (type_treat == 1) break; @@ -6868,6 +6891,34 @@ double treat_Struct_FullName_dot_tSTRING_Float yymsg(0, "Unknown member '%s' of Struct %s", c3, struct_name.c_str()); } break; + case 3: + out = val_default; + if (type_treat == 0) + yymsg(0, "Index %d out of range", index); + break; + } + Free(c1); Free(c2); + if (flag_tSTRING_alloc) Free(c3); + return out; +} + +int treat_Struct_FullName_dot_tSTRING_Float_getDim +(char* c1, char* c2, char* c3) +{ + int out; + std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); + std::string key_member(c3); + switch (nameSpaces.getMember_Dim + (struct_namespace, struct_name, key_member, out)) { + case 0: + break; + case 1: + out = 0; + break; + case 2: + out = 0; + yymsg(0, "Unknown member '%s' of Struct %s", c3, struct_name.c_str()); + break; } Free(c1); Free(c2); if (flag_tSTRING_alloc) Free(c3); @@ -6875,7 +6926,7 @@ double treat_Struct_FullName_dot_tSTRING_Float } char * treat_Struct_FullName_String -(char* c1, char* c2, char * val_default, int type_treat) +(char* c1, char* c2, int type_var, int index, char * val_default, int type_treat) { std::string string_default(val_default? val_default : std::string("")); const std::string * out = NULL; @@ -6903,7 +6954,7 @@ char * treat_Struct_FullName_String } char* treat_Struct_FullName_dot_tSTRING_String -(char* c1, char* c2, char* c3, char * val_default, int type_treat) +(char* c1, char* c2, char* c3, int index, char * val_default, int type_treat) { std::string string_default(val_default? val_default : std::string("")); const std::string * out = NULL; @@ -6911,7 +6962,7 @@ char* treat_Struct_FullName_dot_tSTRING_String std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); std::string key_member(c3); switch (nameSpaces.getMember - (struct_namespace, struct_name, key_member, out)) { + (struct_namespace, struct_name, key_member, out, index)) { case 0: break; case 1: @@ -6925,6 +6976,11 @@ char* treat_Struct_FullName_dot_tSTRING_String if (type_treat == 0) yymsg(0, "Unknown member '%s' of Struct %s", c3, struct_name.c_str()); break; + case 3: + out = &string_default; + if (type_treat == 0) + yymsg(0, "Index %d out of range", index); + break; } char* out_c = (char*)Malloc((out->size() + 1) * sizeof(char)); strcpy(out_c, out->c_str()); diff --git a/Parser/Gmsh_bu1.y b/Parser/Gmsh_bu1.y new file mode 100644 index 0000000000000000000000000000000000000000..ef7ec740364f099a8217a8f2b3656091ac4a0ae8 --- /dev/null +++ b/Parser/Gmsh_bu1.y @@ -0,0 +1,7018 @@ +%{ +// Gmsh - Copyright (C) 1997-2017 C. Geuzaine, J.-F. Remacle +// +// See the LICENSE.txt file for license information. Please report all +// bugs and problems to the public mailing list <gmsh@onelab.info>. + +#include <sstream> +#include <map> +#include <string.h> +#include <stdarg.h> +#include <time.h> +#include "GmshConfig.h" +#include "GmshMessage.h" +#include "fullMatrix.h" +#include "MallocUtils.h" +#include "ListUtils.h" +#include "TreeUtils.h" +#include "StringUtils.h" +#include "Numeric.h" +#include "Context.h" +#include "GModel.h" +#include "GModelIO_GEO.h" +#include "GModelIO_OCC.h" +#include "GeoDefines.h" +#include "ExtrudeParams.h" +#include "Options.h" +#include "Parser.h" +#include "OpenFile.h" +#include "CommandLine.h" +#include "FunctionManager.h" +#include "ColorTable.h" +#include "OS.h" +#include "CreateFile.h" +#include "gmshSurface.h" +#include "gmshLevelset.h" +#include "fullMatrix.h" + +#if defined(HAVE_MESH) +#include "Generator.h" +#include "Field.h" +#include "BackgroundMesh.h" +#include "HighOrder.h" +#endif + +#if defined(HAVE_POST) +#include "PView.h" +#include "PViewDataList.h" +#endif + +#if defined(HAVE_PLUGINS) +#include "PluginManager.h" +#endif + +#if defined(HAVE_OPENGL) +#include "drawContext.h" +#endif + +#if defined(HAVE_POPPLER) +#include "gmshPopplerWrapper.h" +#endif + +#define MAX_RECUR_TESTS 100 +#define MAX_RECUR_LOOPS 100 + +// global parser variables +std::string gmsh_yyname; +int gmsh_yyerrorstate = 0; +int gmsh_yyviewindex = 0; +std::map<std::string, gmsh_yysymbol> gmsh_yysymbols; +std::map<std::string, std::vector<std::string> > gmsh_yystringsymbols; +NameSpaces nameSpaces; + +// static parser variables (accessible only in this file) +#if defined(HAVE_POST) +static PViewDataList *ViewData = 0; +#endif +static std::vector<double> ViewCoord; +static std::vector<double> *ViewValueList = 0; +static int *ViewNumList = 0; +static ExtrudeParams extr; +static gmshSurface *myGmshSurface = 0; +static int statusImbricatedTests[MAX_RECUR_TESTS]; +static int ImbricatedLoop = 0, ImbricatedTest = 0; +static gmshfpos_t yyposImbricatedLoopsTab[MAX_RECUR_LOOPS]; +static int yylinenoImbricatedLoopsTab[MAX_RECUR_LOOPS]; +static double LoopControlVariablesTab[MAX_RECUR_LOOPS][3]; +static std::string LoopControlVariablesNameTab[MAX_RECUR_LOOPS]; +static std::string factory; +static std::string struct_name, struct_namespace; +static int flag_tSTRING_alloc = 0; + +static std::map<std::string, std::vector<double> > floatOptions; +static std::map<std::string, std::vector<std::string> > charOptions; +static int flag_Enum, member_ValMax; + +void init_options(int member_ValMax_ = 0) +{ + floatOptions.clear(); charOptions.clear(); + flag_Enum = 0; member_ValMax = member_ValMax_; +} + +// parser functions defined at the end of this file +void yyerror(const char *s); +void yymsg(int level, const char *fmt, ...); +char *strsave(char *ptr); +void skip(const char *skip, const char *until); +void skipTest(const char *skip, const char *until, + const char *until2, int l_until2_sub, int *type_until2); +void assignVariable(const std::string &name, int index, int assignType, + double value); +void assignVariables(const std::string &name, List_T *indices, int assignType, + List_T *values); +void incrementVariable(const std::string &name, int index, double value); +int printListOfDouble(char *format, List_T *list, char *buffer); +fullMatrix<double> ListOfListOfDouble2Matrix(List_T *list); +void ListOfDouble2Vector(List_T *list, std::vector<int> &v); +void ListOfDouble2Vector(List_T *list, std::vector<double> &v); +void ListOfShapes2VectorOfPairs(List_T *list, std::vector<std::pair<int, int> > &v); +void VectorOfPairs2ListOfShapes(const std::vector<std::pair<int, int> > &v, List_T *list); +void addPeriodicEdge(int, int, const std::vector<double>&); +void addPeriodicFace(int, int, const std::map<int, int>&); +void addPeriodicFace(int, int, const std::vector<double>&); +void computeAffineTransformation(SPoint3&, SPoint3&, double, SPoint3&, + std::vector<double>&); +void addEmbedded(int dim, std::vector<int> tags, int dim2, int tag2); +void getAllElementaryTags(int dim, List_T *in); +void getAllPhysicalTags(int dim, List_T *in); +void getElementaryTagsForPhysicalGroups(int dim, List_T *in, List_T *out); +void getElementaryTagsInBoundingBox(int dim, double x1, double y1, double z1, + double x2, double y2, double z2, List_T *out); +void setVisibility(int dim, int visible, bool recursive); +void setVisibility(const std::vector<std::pair<int, int> > &dimTags, int visible, + bool recursive); +void setColor(const std::vector<std::pair<int, int> > &dimTags, unsigned int val, + bool recursive); + +double treat_Struct_FullName_Float + (char* c1, char* c2, int type_var = 1, int index = 0, + double val_default = 0., int type_treat = 0); +double treat_Struct_FullName_dot_tSTRING_Float + (char* c1, char* c2, char* c3, int index = 0, + double val_default = 0., int type_treat = 0); +int treat_Struct_FullName_dot_tSTRING_Float_getDim + (char* c1, char* c2, char* c3); +char* treat_Struct_FullName_String + (char* c1, char* c2, int type_var = 1, int index = 0, + char* val_default = NULL, int type_treat = 0); +char* treat_Struct_FullName_dot_tSTRING_String + (char* c1, char* c2, char* c3, int index = 0, + char* val_default = NULL, int type_treat = 0); + +struct doubleXstring{ + double d; + char *s; +}; + +%} + +%union { + char *c; + int i; + unsigned int u; + double d; + double v[5]; + Shape s; + List_T *l; + struct TwoChar c2; +} + +%token <d> tDOUBLE +%token <c> tSTRING tBIGSTR + +%token tEND tAFFECT tDOTS tSCOPE tPi tMPI_Rank tMPI_Size tEuclidian tCoordinates tTestLevel +%token tExp tLog tLog10 tSqrt tSin tAsin tCos tAcos tTan tRand +%token tAtan tAtan2 tSinh tCosh tTanh tFabs tAbs tFloor tCeil tRound +%token tFmod tModulo tHypot tList tLinSpace tLogSpace tListFromFile tCatenary +%token tPrintf tError tStr tSprintf tStrCat tStrPrefix tStrRelative tStrReplace +%token tAbsolutePath tDirName tStrSub tStrLen +%token tFind tStrFind tStrCmp tStrChoice tUpperCase tLowerCase tLowerCaseIn +%token tTextAttributes +%token tBoundingBox tDraw tSetChanged tToday tFixRelativePath tCurrentDirectory +%token tSyncModel tNewModel +%token tOnelabAction tOnelabRun tCodeName +%token tCpu tMemory tTotalMemory +%token tCreateTopology tCreateTopologyNoHoles +%token tDistanceFunction tDefineConstant tUndefineConstant +%token tDefineNumber tDefineStruct tNameStruct tDimNameSpace tAppend +%token tDefineString tSetNumber tSetString +%token tPoint tCircle tEllipse tLine tSphere tPolarSphere tSurface tSpline tVolume +%token tBlock tCylinder tCone tTorus tEllipsoid tQuadric tShapeFromFile +%token tRectangle tDisk tWire +%token tCharacteristic tLength tParametric tElliptic tRefineMesh tAdaptMesh +%token tRelocateMesh tSetFactory tThruSections tWedge tFillet tChamfer +%token tPlane tRuled tTransfinite tPhysical tCompound tPeriodic +%token tUsing tPlugin tDegenerated tRecursive +%token tRotate tTranslate tSymmetry tDilate tExtrude tLevelset tAffine +%token tBooleanUnion tBooleanIntersection tBooleanDifference tBooleanSection +%token tBooleanFragments tThickSolid +%token tRecombine tSmoother tSplit tDelete tCoherence +%token tIntersect tMeshAlgorithm tReverse +%token tLayers tScaleLast tHole tAlias tAliasWithOptions tCopyOptions +%token tQuadTriAddVerts tQuadTriNoNewVerts +%token tRecombLaterals tTransfQuadTri +%token tText2D tText3D tInterpolationScheme tTime tCombine +%token tBSpline tBezier tNurbs tNurbsOrder tNurbsKnots +%token tColor tColorTable tFor tIn tEndFor tIf tElseIf tElse tEndIf tExit tAbort +%token tField tReturn tCall tSlide tMacro tShow tHide tGetValue tGetStringValue tGetEnv +%token tGetString tGetNumber tUnique +%token tHomology tCohomology tBetti tExists tFileExists tGetForced tGetForcedStr +%token tGMSH_MAJOR_VERSION tGMSH_MINOR_VERSION tGMSH_PATCH_VERSION +%token tGmshExecutableName tSetPartition +%token tNameToString tStringToName + +%type <d> FExpr FExpr_Single DefineStruct NameStruct_Arg GetForced_Default +%type <v> VExpr VExpr_Single CircleOptions TransfiniteType +%type <i> NumericAffectation NumericIncrement BooleanOperator BooleanOption +%type <i> PhysicalId0 PhysicalId1 PhysicalId2 PhysicalId3 +%type <i> TransfiniteArrangement RecombineAngle InSphereCenter +%type <i> Append AppendOrNot +%type <u> ColorExpr +%type <c> StringExpr StringExprVar SendToFile tSTRING_Member_Float HomologyCommand +%type <c> LP RP GetForcedStr_Default +%type <c> StringIndex String__Index +%type <l> RecursiveListOfStringExprVar +%type <l> FExpr_Multi ListOfDouble ListOfDoubleOrAll RecursiveListOfDouble +%type <l> RecursiveListOfListOfDouble Enumeration +%type <l> ListOfColor RecursiveListOfColor +%type <l> ListOfShapes Transform Extrude MultipleShape Boolean +%type <l> TransfiniteCorners PeriodicTransform +%type <s> Shape +%type <c2> Struct_FullName + +// Operators (with ascending priority): cf. C language +// +// Notes: - associativity (%left, %right) +// - UNARYPREC is a dummy terminal to resolve ambiguous cases +// for + and - (which exist in both unary and binary form) + +%right tAFFECT tAFFECTPLUS tAFFECTMINUS tAFFECTTIMES tAFFECTDIVIDE +%right '?' tDOTS +%left tOR +%left tAND +%left tEQUAL tNOTEQUAL +%left '<' tLESSOREQUAL '>' tGREATEROREQUAL tLESSLESS tGREATERGREATER +%left '+' '-' +%left '*' '/' '%' +%left '|' '&' +%right '!' tPLUSPLUS tMINUSMINUS UNARYPREC +%right '^' +%left '(' ')' '[' ']' '{' '}' '.' '#' +%left '~' +%left tSCOPE + +%start All + +%% + +All : + GeoFormatItems + | error tEND { yyerrok; return 1; } +; + +// G E O F I L E F O R M A T + +GeoFormatItems : + // nothing + | GeoFormatItems GeoFormatItem +; + +GeoFormatItem : + Printf { return 1; } + | View { return 1; } + | Affectation { return 1; } + | tSetFactory '(' StringExprVar ')' tEND + { + factory = $3; + if(factory == "OpenCASCADE"){ + if(!GModel::current()->getOCCInternals()) + GModel::current()->createOCCInternals(); + for(int dim = -2; dim <= 3; dim++) + GModel::current()->getOCCInternals()->setMaxTag + (dim, std::max(GModel::current()->getOCCInternals()->getMaxTag(dim), + GModel::current()->getGEOInternals()->getMaxTag(dim))); + } + else if(GModel::current()->getOCCInternals()){ + for(int dim = -2; dim <= 3; dim++) + GModel::current()->getGEOInternals()->setMaxTag + (dim, std::max(GModel::current()->getGEOInternals()->getMaxTag(dim), + GModel::current()->getOCCInternals()->getMaxTag(dim))); + } + Free($3); + } + | Shape { return 1; } + | Transform { List_Delete($1); return 1; } + | Delete { return 1; } + | Colorify { return 1; } + | SetPartition{ return 1; } + | Visibility { return 1; } + | Extrude { List_Delete($1); return 1; } + | Boolean { List_Delete($1); return 1; } + | BooleanShape{ return 1; } + | Constraints { return 1; } + | Coherence { return 1; } + | Loop { return 1; } + | Slide { return 1; } + | Command { return 1; } + | LevelSet { return 1; } + | Homology { return 1; } +; + +SendToFile : + '>' + { + $$ = (char*)"w"; + } + | tGREATERGREATER + { + $$ = (char*)"a"; + } +; + +Printf : + tPrintf '(' StringExprVar ')' tEND + { + Msg::Direct($3); + Free($3); + } + | tError '(' StringExprVar ')' tEND + { + Msg::Error($3); + Free($3); + } + | tPrintf '(' StringExprVar ')' SendToFile StringExprVar tEND + { + std::string tmp = FixRelativePath(gmsh_yyname, $6); + FILE *fp = Fopen(tmp.c_str(), $5); + if(!fp){ + yymsg(0, "Unable to open file '%s'", tmp.c_str()); + } + else{ + fprintf(fp, "%s\n", $3); + fclose(fp); + } + Free($3); + Free($6); + } + | tPrintf '(' StringExprVar ',' RecursiveListOfDouble ')' tEND + { + char tmpstring[5000]; + int i = printListOfDouble($3, $5, tmpstring); + if(i < 0) + yymsg(0, "Too few arguments in Printf"); + else if(i > 0) + yymsg(0, "%d extra argument%s in Printf", i, (i > 1) ? "s" : ""); + else + Msg::Direct(tmpstring); + Free($3); + List_Delete($5); + } + | tError '(' StringExprVar ',' RecursiveListOfDouble ')' tEND + { + char tmpstring[5000]; + int i = printListOfDouble($3, $5, tmpstring); + if(i < 0) + yymsg(0, "Too few arguments in Error"); + else if(i > 0) + yymsg(0, "%d extra argument%s in Error", i, (i > 1) ? "s" : ""); + else + Msg::Error(tmpstring); + Free($3); + List_Delete($5); + } + | tPrintf '(' StringExprVar ',' RecursiveListOfDouble ')' SendToFile StringExprVar tEND + { + char tmpstring[5000]; + int i = printListOfDouble($3, $5, tmpstring); + if(i < 0) + yymsg(0, "Too few arguments in Printf"); + else if(i > 0) + yymsg(0, "%d extra argument%s in Printf", i, (i > 1) ? "s" : ""); + else{ + std::string tmp = FixRelativePath(gmsh_yyname, $8); + FILE *fp = Fopen(tmp.c_str(), $7); + if(!fp){ + yymsg(0, "Unable to open file '%s'", tmp.c_str()); + } + else{ + fprintf(fp, "%s\n", tmpstring); + fclose(fp); + } + } + Free($3); + Free($8); + List_Delete($5); + } +; + +// V I E W + +View : + String__Index StringExprVar '{' Views '}' tEND + { +#if defined(HAVE_POST) + if(!strcmp($1, "View") && ViewData->finalize()){ + ViewData->setName($2); + ViewData->setFileName(gmsh_yyname); + ViewData->setFileIndex(gmsh_yyviewindex++); + new PView(ViewData); + } + else + delete ViewData; +#endif + Free($1); Free($2); + } + | tAlias tSTRING '[' FExpr ']' tEND + { +#if defined(HAVE_POST) + if(!strcmp($2, "View")){ + int index = (int)$4; + if(index >= 0 && index < (int)PView::list.size()) + new PView(PView::list[index], false); + else + yymsg(0, "Unknown view %d", index); + } +#endif + Free($2); + } + | tAliasWithOptions tSTRING '[' FExpr ']' tEND + { +#if defined(HAVE_POST) + if(!strcmp($2, "View")){ + int index = (int)$4; + if(index >= 0 && index < (int)PView::list.size()) + new PView(PView::list[index], true); + else + yymsg(0, "Unknown view %d", index); + } +#endif + Free($2); + } + | tCopyOptions tSTRING '[' FExpr ',' FExpr ']' tEND + { +#if defined(HAVE_POST) + if(!strcmp($2, "View")){ + int index = (int)$4, index2 = (int)$6; + if(index >= 0 && index < (int)PView::list.size() && + index2 >= 0 && index2 < (int)PView::list.size()){ + PView::list[index2]->setOptions(PView::list[index]->getOptions()); + } + else + yymsg(0, "Unknown view %d or %d", index, index2); + } +#endif + Free($2); + } +; + +Views : + // nothing + { +#if defined(HAVE_POST) + ViewData = new PViewDataList(); +#endif + } + | Views Element + | Views Text2D + | Views Text3D + | Views InterpolationMatrix + | Views Time +; + +ElementCoords : + FExpr + { ViewCoord.push_back($1); } + | ElementCoords ',' FExpr + { ViewCoord.push_back($3); } +; + +ElementValues : + FExpr + { if(ViewValueList) ViewValueList->push_back($1); } + | ElementValues ',' FExpr + { if(ViewValueList) ViewValueList->push_back($3); } +; + +Element : + tSTRING + { +#if defined(HAVE_POST) + if(!strncmp($1, "SP", 2)){ + ViewValueList = &ViewData->SP; ViewNumList = &ViewData->NbSP; + } + else if(!strncmp($1, "VP", 2)){ + ViewValueList = &ViewData->VP; ViewNumList = &ViewData->NbVP; + } + else if(!strncmp($1, "TP", 2)){ + ViewValueList = &ViewData->TP; ViewNumList = &ViewData->NbTP; + } + else if(!strncmp($1, "SL", 2)){ + ViewValueList = &ViewData->SL; ViewNumList = &ViewData->NbSL; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_LIN); + } + else if(!strncmp($1, "VL", 2)){ + ViewValueList = &ViewData->VL; ViewNumList = &ViewData->NbVL; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_LIN); + } + else if(!strncmp($1, "TL", 2)){ + ViewValueList = &ViewData->TL; ViewNumList = &ViewData->NbTL; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_LIN); + } + else if(!strncmp($1, "ST", 2)){ + ViewValueList = &ViewData->ST; ViewNumList = &ViewData->NbST; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_TRI); + } + else if(!strncmp($1, "VT", 2)){ + ViewValueList = &ViewData->VT; ViewNumList = &ViewData->NbVT; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_TRI); + } + else if(!strncmp($1, "TT", 2)){ + ViewValueList = &ViewData->TT; ViewNumList = &ViewData->NbTT; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_TRI); + } + else if(!strncmp($1, "SQ", 2)){ + ViewValueList = &ViewData->SQ; ViewNumList = &ViewData->NbSQ; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_QUA); + } + else if(!strncmp($1, "VQ", 2)){ + ViewValueList = &ViewData->VQ; ViewNumList = &ViewData->NbVQ; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_QUA); + } + else if(!strncmp($1, "TQ", 2)){ + ViewValueList = &ViewData->TQ; ViewNumList = &ViewData->NbTQ; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_QUA); + } + else if(!strncmp($1, "SS", 2)){ + ViewValueList = &ViewData->SS; ViewNumList = &ViewData->NbSS; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_TET); + } + else if(!strncmp($1, "VS", 2)){ + ViewValueList = &ViewData->VS; ViewNumList = &ViewData->NbVS; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_TET); + } + else if(!strncmp($1, "TS", 2)){ + ViewValueList = &ViewData->TS; ViewNumList = &ViewData->NbTS; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_TET); + } + else if(!strncmp($1, "SH", 2)){ + ViewValueList = &ViewData->SH; ViewNumList = &ViewData->NbSH; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_HEX); + } + else if(!strncmp($1, "VH", 2)){ + ViewValueList = &ViewData->VH; ViewNumList = &ViewData->NbVH; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_HEX); + } + else if(!strncmp($1, "TH", 2)){ + ViewValueList = &ViewData->TH; ViewNumList = &ViewData->NbTH; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_HEX); + } + else if(!strncmp($1, "SI", 2)){ + ViewValueList = &ViewData->SI; ViewNumList = &ViewData->NbSI; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_PRI); + } + else if(!strncmp($1, "VI", 2)){ + ViewValueList = &ViewData->VI; ViewNumList = &ViewData->NbVI; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_PRI); + } + else if(!strncmp($1, "TI", 2)){ + ViewValueList = &ViewData->TI; ViewNumList = &ViewData->NbTI; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_PRI); + } + else if(!strncmp($1, "SY", 2)){ + ViewValueList = &ViewData->SY; ViewNumList = &ViewData->NbSY; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_PYR); + } + else if(!strncmp($1, "VY", 2)){ + ViewValueList = &ViewData->VY; ViewNumList = &ViewData->NbVY; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_PYR); + } + else if(!strncmp($1, "TY", 2)){ + ViewValueList = &ViewData->TY; ViewNumList = &ViewData->NbTY; + if(strlen($1) > 2) ViewData->setOrder2(TYPE_PYR); + } + else{ + yymsg(0, "Unknown element type '%s'", $1); + ViewValueList = 0; ViewNumList = 0; + } +#endif + ViewCoord.clear(); + Free($1); + } + '(' ElementCoords ')' + { +#if defined(HAVE_POST) + if(ViewValueList){ + for(int i = 0; i < 3; i++) + for(unsigned int j = 0; j < ViewCoord.size() / 3; j++) + ViewValueList->push_back(ViewCoord[3 * j + i]); + } +#endif + } + '{' ElementValues '}' tEND + { +#if defined(HAVE_POST) + if(ViewValueList) (*ViewNumList)++; +#endif + } +; + +Text2DValues : + StringExprVar + { +#if defined(HAVE_POST) + for(int i = 0; i < (int)strlen($1) + 1; i++) ViewData->T2C.push_back($1[i]); +#endif + Free($1); + } + | Text2DValues ',' StringExprVar + { +#if defined(HAVE_POST) + for(int i = 0; i < (int)strlen($3) + 1; i++) ViewData->T2C.push_back($3[i]); +#endif + Free($3); + } +; + +Text2D : + tText2D '(' FExpr ',' FExpr ',' FExpr ')' + { +#if defined(HAVE_POST) + ViewData->T2D.push_back($3); + ViewData->T2D.push_back($5); + ViewData->T2D.push_back($7); + ViewData->T2D.push_back(ViewData->T2C.size()); +#endif + } + '{' Text2DValues '}' tEND + { +#if defined(HAVE_POST) + ViewData->NbT2++; +#endif + } +; + +Text3DValues : + StringExprVar + { +#if defined(HAVE_POST) + for(int i = 0; i < (int)strlen($1) + 1; i++) ViewData->T3C.push_back($1[i]); +#endif + Free($1); + } + | Text3DValues ',' StringExprVar + { +#if defined(HAVE_POST) + for(int i = 0; i < (int)strlen($3) + 1; i++) ViewData->T3C.push_back($3[i]); +#endif + Free($3); + } +; + +Text3D : + tText3D '(' FExpr ',' FExpr ',' FExpr ',' FExpr ')' + { +#if defined(HAVE_POST) + ViewData->T3D.push_back($3); ViewData->T3D.push_back($5); + ViewData->T3D.push_back($7); ViewData->T3D.push_back($9); + ViewData->T3D.push_back(ViewData->T3C.size()); +#endif + } + '{' Text3DValues '}' tEND + { +#if defined(HAVE_POST) + ViewData->NbT3++; +#endif + } +; + +InterpolationMatrix : + tInterpolationScheme '{' RecursiveListOfListOfDouble '}' + '{' RecursiveListOfListOfDouble '}' tEND + { +#if defined(HAVE_POST) + int type = + (ViewData->NbSL || ViewData->NbVL) ? TYPE_LIN : + (ViewData->NbST || ViewData->NbVT) ? TYPE_TRI : + (ViewData->NbSQ || ViewData->NbVQ) ? TYPE_QUA : + (ViewData->NbSS || ViewData->NbVS) ? TYPE_TET : + (ViewData->NbSY || ViewData->NbVY) ? TYPE_PYR : + (ViewData->NbSI || ViewData->NbVI) ? TYPE_PRI : + (ViewData->NbSH || ViewData->NbVH) ? TYPE_HEX : + 0; + ViewData->setInterpolationMatrices(type, ListOfListOfDouble2Matrix($3), + ListOfListOfDouble2Matrix($6)); +#endif + } + | tInterpolationScheme '{' RecursiveListOfListOfDouble '}' + '{' RecursiveListOfListOfDouble '}' + '{' RecursiveListOfListOfDouble '}' + '{' RecursiveListOfListOfDouble '}' tEND + { +#if defined(HAVE_POST) + int type = + (ViewData->NbSL || ViewData->NbVL) ? TYPE_LIN : + (ViewData->NbST || ViewData->NbVT) ? TYPE_TRI : + (ViewData->NbSQ || ViewData->NbVQ) ? TYPE_QUA : + (ViewData->NbSS || ViewData->NbVS) ? TYPE_TET : + (ViewData->NbSH || ViewData->NbVH) ? TYPE_HEX : + 0; + ViewData->setInterpolationMatrices(type, ListOfListOfDouble2Matrix($3), + ListOfListOfDouble2Matrix($6), + ListOfListOfDouble2Matrix($9), + ListOfListOfDouble2Matrix($12)); +#endif + } +; + +Time : + tTime + { +#if defined(HAVE_POST) + ViewValueList = &ViewData->Time; +#endif + } + '{' ElementValues '}' tEND + { + } +; + +// A F F E C T A T I O N + +NumericAffectation : + tAFFECT { $$ = 0; } + | tAFFECTPLUS { $$ = 1; } + | tAFFECTMINUS { $$ = 2; } + | tAFFECTTIMES { $$ = 3; } + | tAFFECTDIVIDE { $$ = 4; } +; + +NumericIncrement : + tPLUSPLUS { $$ = 1; } + | tMINUSMINUS { $$ = -1; } +; + +// these are for compatibility with the syntax in GetDP (square brackets instead +// of parentheses) + +LP : '(' { $$ = (char*)"("; } | '[' { $$ = (char*)"["; } ; +RP : ')' { $$ = (char*)")"; } | ']' { $$ = (char*)"]"; } ; + +Affectation : + + // Variables + + tDefineConstant '[' DefineConstants ']' tEND + | tUndefineConstant '[' UndefineConstants ']' tEND + | DefineStruct tEND + | tSetNumber LP StringExpr ',' FExpr RP tEND + { + Msg::SetOnelabNumber($3, $5); + Free($3); + } + | tSetString LP String__Index ',' StringExpr RP tEND + { + Msg::SetOnelabString($3, $5); + Free($3); + Free($5); + } + | String__Index NumericAffectation ListOfDouble tEND + { + if(!gmsh_yysymbols.count($1) && $2 && List_Nbr($3) == 1){ + yymsg(0, "Unknown variable '%s'", $1); + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[$1]); + if(!$2) s.list = (List_Nbr($3) != 1); // list if 0 or > 1 elements + if(!s.list){ // single expression + if(List_Nbr($3) != 1){ + yymsg(0, "Cannot assign list to variable '%s'", $1); + } + else{ + double d; + List_Read($3, 0, &d); + if(s.value.empty()){ + if($2) yymsg(1, "Uninitialized variable '%s'", $1); + s.value.resize(1, 0.); + } + switch($2){ + case 0 : s.value[0] = d; break; + case 1 : s.value[0] += d; break; + case 2 : s.value[0] -= d; break; + case 3 : s.value[0] *= d; break; + case 4 : + if(d) s.value[0] /= d; + else yymsg(0, "Division by zero in '%s /= %g'", $1, d); + break; + } + } + } + else{ + // list of expressions; this is not recommended (should use [] or () + // notation instead) + switch($2){ + case 0: // affect + s.value.clear(); // fall-through + case 1: // append + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + s.value.push_back(d); + } + break; + case 2: // remove + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + std::vector<double>::iterator it = std::find(s.value.begin(), + s.value.end(), d); + if(it != s.value.end()) s.value.erase(it); + } + break; + default: + yymsg(0, "Operators *= and /= not available for lists"); + break; + } + } + } + Free($1); + List_Delete($3); + } + | String__Index NumericIncrement tEND + { + if(!gmsh_yysymbols.count($1)) + yymsg(0, "Unknown variable '%s'", $1); + else{ + gmsh_yysymbol &s(gmsh_yysymbols[$1]); + if(!s.list && s.value.empty()) + yymsg(0, "Uninitialized variable '%s'", $1); + else if(!s.list) + s.value[0] += $2; + else + yymsg(0, "Variable '%s' is a list", $1); + } + Free($1); + } + | String__Index LP RP NumericAffectation ListOfDouble tEND + { + gmsh_yysymbol &s(gmsh_yysymbols[$1]); + s.list = true; + double d; + switch($4){ + case 0: // affect + s.value.clear(); // fall-through + case 1: // append + for(int i = 0; i < List_Nbr($5); i++){ + List_Read($5, i, &d); + s.value.push_back(d); + } + break; + case 2: // remove + for(int i = 0; i < List_Nbr($5); i++){ + List_Read($5, i, &d); + std::vector<double>::iterator it = std::find(s.value.begin(), + s.value.end(), d); + if(it != s.value.end()) s.value.erase(it); + } + break; + default: + yymsg(0, "Operators *= and /= not available for lists"); + break; + } + Free($1); + List_Delete($5); + } + | String__Index LP '{' RecursiveListOfDouble '}' RP NumericAffectation ListOfDouble tEND + { + assignVariables($1, $4, $7, $8); + Free($1); + List_Delete($4); + List_Delete($8); + } + + //+++ TO FIX + // lists of numbers with bracket notation + | String__Index '[' FExpr ']' NumericAffectation FExpr tEND + { + assignVariable($1, (int)$3, $5, $6); + Free($1); + } + | String__Index '[' FExpr ']' NumericIncrement tEND + { + incrementVariable($1, $3, $5); + Free($1); + } + + // lists of numbers with parentheses notation + + | String__Index '(' FExpr ')' NumericAffectation FExpr tEND + { + assignVariable($1, (int)$3, $5, $6); + Free($1); + } + | String__Index '(' FExpr ')' NumericIncrement tEND + { + incrementVariable($1, $3, $5); + Free($1); + } + + // strings + + | String__Index tAFFECT StringExpr tEND + { + gmsh_yystringsymbols[$1] = std::vector<std::string>(1, $3); + Free($1); + Free($3); + } + + // lists of strings + + | String__Index LP RP tAFFECT tStr LP RP tEND + { + gmsh_yystringsymbols[$1] = std::vector<std::string>(); + Free($1); + } + | String__Index LP RP tAFFECT tStr LP RecursiveListOfStringExprVar RP tEND + { + std::vector<std::string> s; + for(int i = 0; i < List_Nbr($7); i++){ + char **c = (char**)List_Pointer($7, i); + s.push_back(*c); + Free(*c); + } + gmsh_yystringsymbols[$1] = s; + Free($1); + List_Delete($7); + } + | String__Index LP RP tAFFECTPLUS tStr LP RecursiveListOfStringExprVar RP tEND + { + if(gmsh_yystringsymbols.count($1)){ + for(int i = 0; i < List_Nbr($7); i++){ + char **c = (char**)List_Pointer($7, i); + gmsh_yystringsymbols[$1].push_back(*c); + Free(*c); + } + } + else + yymsg(0, "Uninitialized variable '%s'", $1); + Free($1); + List_Delete($7); + } + + // Option Strings + + | String__Index '.' tSTRING tAFFECT StringExpr tEND + { + std::string tmp($5); + StringOption(GMSH_SET|GMSH_GUI, $1, 0, $3, tmp); + Free($1); Free($3); Free($5); + } + | String__Index '[' FExpr ']' '.' tSTRING tAFFECT StringExpr tEND + { + std::string tmp($8); + StringOption(GMSH_SET|GMSH_GUI, $1, (int)$3, $6, tmp); + Free($1); Free($6); Free($8); + } + + // Option Numbers + + | String__Index '.' tSTRING NumericAffectation FExpr tEND + { + double d = 0.; + if(NumberOption(GMSH_GET, $1, 0, $3, d)){ + switch($4){ + case 0 : d = $5; break; + case 1 : d += $5; break; + case 2 : d -= $5; break; + case 3 : d *= $5; break; + case 4 : + if($5) d /= $5; + else yymsg(0, "Division by zero in '%s.%s /= %g'", $1, $3, $5); + break; + } + NumberOption(GMSH_SET|GMSH_GUI, $1, 0, $3, d); + } + Free($1); Free($3); + } + | String__Index '[' FExpr ']' '.' tSTRING NumericAffectation FExpr tEND + { + double d = 0.; + if(NumberOption(GMSH_GET, $1, (int)$3, $6, d)){ + switch($7){ + case 0 : d = $8; break; + case 1 : d += $8; break; + case 2 : d -= $8; break; + case 3 : d *= $8; break; + case 4 : + if($8) d /= $8; + else yymsg(0, "Division by zero in '%s[%d].%s /= %g'", $1, (int)$3, $6, $8); + break; + } + NumberOption(GMSH_SET|GMSH_GUI, $1, (int)$3, $6, d); + } + Free($1); Free($6); + } + | String__Index '.' tSTRING NumericIncrement tEND + { + double d = 0.; + if(NumberOption(GMSH_GET, $1, 0, $3, d)){ + d += $4; + NumberOption(GMSH_SET|GMSH_GUI, $1, 0, $3, d); + } + Free($1); Free($3); + } + | String__Index '[' FExpr ']' '.' tSTRING NumericIncrement tEND + { + double d = 0.; + if(NumberOption(GMSH_GET, $1, (int)$3, $6, d)){ + d += $7; + NumberOption(GMSH_SET|GMSH_GUI, $1, (int)$3, $6, d); + } + Free($1); Free($6); + } + + // Option Colors + + | String__Index '.' tColor '.' tSTRING tAFFECT ColorExpr tEND + { + ColorOption(GMSH_SET|GMSH_GUI, $1, 0, $5, $7); + Free($1); Free($5); + } + | String__Index '[' FExpr ']' '.' tColor '.' tSTRING tAFFECT ColorExpr tEND + { + ColorOption(GMSH_SET|GMSH_GUI, $1, (int)$3, $8, $10); + Free($1); Free($8); + } + + // ColorTable + + | String__Index '.' tColorTable tAFFECT ListOfColor tEND + { + GmshColorTable *ct = GetColorTable(0); + if(!ct) + yymsg(0, "View[%d] does not exist", 0); + else{ + ct->size = List_Nbr($5); + if(ct->size > COLORTABLE_NBMAX_COLOR) + yymsg(0, "Too many (%d>%d) colors in View[%d].ColorTable", + ct->size, COLORTABLE_NBMAX_COLOR, 0); + else + for(int i = 0; i < ct->size; i++) List_Read($5, i, &ct->table[i]); + if(ct->size == 1){ + ct->size = 2; + ct->table[1] = ct->table[0]; + } + } + Free($1); + List_Delete($5); + } + | String__Index '[' FExpr ']' '.' tColorTable tAFFECT ListOfColor tEND + { + GmshColorTable *ct = GetColorTable((int)$3); + if(!ct) + yymsg(0, "View[%d] does not exist", (int)$3); + else{ + ct->size = List_Nbr($8); + if(ct->size > COLORTABLE_NBMAX_COLOR) + yymsg(0, "Too many (%d>%d) colors in View[%d].ColorTable", + ct->size, COLORTABLE_NBMAX_COLOR, (int)$3); + else + for(int i = 0; i < ct->size; i++) List_Read($8, i, &ct->table[i]); + if(ct->size == 1){ + ct->size = 2; + ct->table[1] = ct->table[0]; + } + } + Free($1); + List_Delete($8); + } + + // Fields + + | String__Index tField tAFFECT FExpr tEND + { +#if defined(HAVE_MESH) + if(!strcmp($1,"Background")) + GModel::current()->getFields()->setBackgroundFieldId((int)$4); + else if(!strcmp($1,"BoundaryLayer")) + GModel::current()->getFields()->setBoundaryLayerFieldId((int)$4); + else + yymsg(0, "Unknown command '%s Field'", $1); +#endif + } + | tField '[' FExpr ']' tAFFECT tSTRING tEND + { +#if defined(HAVE_MESH) + if(!GModel::current()->getFields()->newField((int)$3, $6)) + yymsg(0, "Cannot create field %i of type '%s'", (int)$3, $6); +#endif + Free($6); + } + | tField '[' FExpr ']' '.' tSTRING tAFFECT FExpr tEND + { +#if defined(HAVE_MESH) + Field *field = GModel::current()->getFields()->get((int)$3); + if(field){ + FieldOption *option = field->options[$6]; + if(option){ + try { option->numericalValue($8); } + catch(...){ + yymsg(0, "Cannot assign a numerical value to option '%s' " + "in field %i of type '%s'", $6, (int)$3, field->getName()); + } + } + else + yymsg(0, "Unknown option '%s' in field %i of type '%s'", + $6, (int)$3, field->getName()); + } + else + yymsg(0, "No field with id %i", (int)$3); +#endif + Free($6); + } + | tField '[' FExpr ']' '.' tSTRING tAFFECT StringExpr tEND + { +#if defined(HAVE_MESH) + Field *field = GModel::current()->getFields()->get((int)$3); + if(field){ + FieldOption *option = field->options[$6]; + if(option){ + try { option->string($8); } + catch (...){ + yymsg(0, "Cannot assign a string value to option '%s' " + "in field %i of type '%s'", $6, (int)$3, field->getName()); + } + } + else + yymsg(0, "Unknown option '%s' in field %i of type '%s'", + $6, (int)$3, field->getName()); + } + else + yymsg(0, "No field with id %i", (int)$3); +#endif + Free($6); + Free($8); + } + | tField '[' FExpr ']' '.' tSTRING tAFFECT '{' RecursiveListOfDouble '}' tEND + { +#if defined(HAVE_MESH) + Field *field = GModel::current()->getFields()->get((int)$3); + if(field){ + FieldOption *option = field->options[$6]; + if(option){ + if (option->getType() == FIELD_OPTION_LIST) { + std::list<int> vl = option->list(); + vl.clear(); + for(int i = 0; i < List_Nbr($9); i++){ + double id; + List_Read($9, i, &id); + vl.push_back((int)id); + } + option->list(vl); + } + else { + std::list<double> vl = option->listdouble(); + vl.clear(); + for(int i = 0; i < List_Nbr($9); i++){ + double id; + List_Read($9, i, &id); + vl.push_back(id); + } + option->listdouble(vl); + } + } + else + yymsg(0, "Unknown option '%s' in field %i of type '%s'", + $6, (int)$3, field->getName()); + } + else + yymsg(0, "No field with id %i", (int)$3); +#endif + Free($6); + List_Delete($9); + } + | tField '[' FExpr ']' '.' tSTRING tEND + { +#if defined(HAVE_MESH) + Field *field = GModel::current()->getFields()->get((int)$3); + if(field){ + FieldCallback *callback = field->callbacks[$6]; + if(callback) { + callback->run(); + } + else + yymsg(0, "Unknown callback '%s' in field %i of type '%s'", + $6, (int)$3, field->getName()); + } + else + yymsg(0, "No field with id %i", (int)$3); +#endif + Free($6); + } + + // Plugins + + | tPlugin '(' tSTRING ')' '.' tSTRING tAFFECT FExpr tEND + { +#if defined(HAVE_PLUGINS) + try { + PluginManager::instance()->setPluginOption($3, $6, $8); + } + catch (...) { + yymsg(0, "Unknown option '%s' or plugin '%s'", $6, $3); + } +#endif + Free($3); Free($6); + } + | tPlugin '(' tSTRING ')' '.' tSTRING tAFFECT StringExpr tEND + { +#if defined(HAVE_PLUGINS) + try { + PluginManager::instance()->setPluginOption($3, $6, $8); + } + catch (...) { + yymsg(0, "Unknown option '%s' or plugin '%s'", $6, $3); + } +#endif + Free($3); Free($6); Free($8); + } +; + +Comma : /* none */ | ',' ; + +DefineConstants : + /* none */ + | DefineConstants Comma String__Index + { + std::string key($3); + std::vector<double> val(1, 0.); + if(!gmsh_yysymbols.count(key)){ + gmsh_yysymbols[key].value = val; + } + Free($3); + } + | DefineConstants Comma String__Index tAFFECT FExpr + { + std::string key($3); + std::vector<double> val(1, $5); + if(!gmsh_yysymbols.count(key)){ + gmsh_yysymbols[key].value = val; + } + Free($3); + } + | DefineConstants Comma String__Index tAFFECT '{' ListOfDouble + { init_options(); } + FloatParameterOptionsOrNone '}' + { + if(List_Nbr($6) != 1) + yymsg(1, "List notation should be used to define list '%s[]'", $3); + std::string key($3); + std::vector<double> val; + for(int i = 0; i < List_Nbr($6); i++){ + double d; + List_Read($6, i, &d); + val.push_back(d); + } + if(!gmsh_yysymbols.count(key)){ + Msg::ExchangeOnelabParameter(key, val, floatOptions, charOptions); + gmsh_yysymbols[key].value = val; + } + Free($3); + Free($6); + } + | DefineConstants Comma String__Index LP RP tAFFECT '{' ListOfDouble + { init_options(); } + FloatParameterOptionsOrNone '}' + { + std::string key($3); + std::vector<double> val; + for(int i = 0; i < List_Nbr($8); i++){ + double d; + List_Read($8, i, &d); + val.push_back(d); + } + if(!gmsh_yysymbols.count(key)){ + Msg::ExchangeOnelabParameter(key, val, floatOptions, charOptions); + gmsh_yysymbols[key].value = val; + } + Free($3); + Free($8); + } + | DefineConstants Comma String__Index tAFFECT StringExpr + { + std::string key($3), val($5); + if(!gmsh_yystringsymbols.count(key)){ + gmsh_yystringsymbols[key] = std::vector<std::string>(1, val); + } + Free($3); + Free($5); + } + | DefineConstants Comma String__Index tAFFECT '{' StringExpr + { init_options(); } + CharParameterOptionsOrNone '}' + { + std::string key($3), val($6); + if(!gmsh_yysymbols.count(key)){ + Msg::ExchangeOnelabParameter(key, val, floatOptions, charOptions); + gmsh_yystringsymbols[key] = std::vector<std::string>(1, val); + } + Free($3); + Free($6); + } + ; + +UndefineConstants : + /* none */ + | UndefineConstants Comma StringExprVar + { + std::string name($3); + Msg::UndefineOnelabParameter(name); + Free($3); + } + +Enumeration : + FExpr tAFFECT StringExpr + { + $$ = List_Create(20,20,sizeof(doubleXstring)); + doubleXstring v = {$1, $3}; + List_Add($$, &v); + } + | Enumeration ',' FExpr tAFFECT StringExpr + { + doubleXstring v = {$3, $5}; + List_Add($$, &v); + } + | FExpr_Multi tAFFECT String__Index '(' ')' + { + $$ = List_Create(20,20,sizeof(doubleXstring)); + int n = List_Nbr($1); + if(!gmsh_yystringsymbols.count($3)){ + yymsg(0, "Unknown string variable '%s'", $3); + } + else{ + std::vector<std::string> &s(gmsh_yystringsymbols[$3]); + int m = s.size(); + if(n == m){ + for(int i = 0; i < n; i++){ + double d; + List_Read($1, i, &d); + doubleXstring v = {d, strsave((char*)s[i].c_str())}; + List_Add($$, &v); + } + } + else{ + yymsg(0, "Size mismatch in enumeration: %d != %d", n, m); + } + } + List_Delete($1); + } + ; + +FloatParameterOptionsOrNone : + // none + | ',' FloatParameterOptions + ; + +FloatParameterOptionsOrNone_NoComma : + // none + | FloatParameterOptions + ; + +FloatParameterOptions : + FloatParameterOption + | FloatParameterOptions ',' FloatParameterOption + ; + +FloatParameterOption : + tSTRING ListOfDouble + { + std::string key($1); + for(int i = 0; i < List_Nbr($2); i++){ + double v; + List_Read($2, i, &v); + floatOptions[key].push_back(v); + if (flag_Enum && !i) { member_ValMax = (int)v; } + } + Free($1); + List_Delete($2); + } + | tSTRING + { + std::string key($1); + double v; + if (!flag_Enum) { + v = 1.; + if (key == "Enum") flag_Enum = 1; + } + else + v = (double)++member_ValMax; + floatOptions[key].push_back(v); + Free($1); + } + | tSTRING '{' Enumeration '}' + { + std::string key($1); + for(int i = 0; i < List_Nbr($3); i++){ + doubleXstring v; + List_Read($3, i, &v); + floatOptions[key].push_back(v.d); + charOptions[key].push_back(v.s); + } + Free($1); + for(int i = 0; i < List_Nbr($3); i++) + Free(((doubleXstring*)List_Pointer($3, i))->s); + List_Delete($3); + } + + | tSTRING StringExpr + { + std::string key($1); + std::string val($2); + charOptions[key].push_back(val); + Free($1); + Free($2); + } + ; + +CharParameterOptionsOrNone : + // none + | ',' CharParameterOptions + ; + +CharParameterOptions : + CharParameterOption + | CharParameterOptions ',' CharParameterOption + ; + +CharParameterOption : + + tSTRING FExpr + { + std::string key($1); + double val = $2; + floatOptions[key].push_back(val); + Free($1); + } + + | tSTRING StringExpr + { + std::string key($1); + std::string val($2); + charOptions[key].push_back(val); + Free($1); + Free($2); + } + + | tMacro StringExpr // Macro is already a reserved keyword + { + std::string key("Macro"); + std::string val($2); + charOptions[key].push_back(val); + Free($2); + } + + | tSTRING '{' RecursiveListOfStringExprVar '}' + { + std::string key($1); + for(int i = 0; i < List_Nbr($3); i++){ + char *s; + List_Read($3, i, &s); + std::string val(s); + Free(s); + charOptions[key].push_back(val); + } + Free($1); + List_Delete($3); + } + ; + +// S H A P E + +PhysicalId0 : + FExpr + { + $$ = (int)$1; + } + | StringExpr + { + int t = GModel::current()->getGEOInternals()->getMaxPhysicalTag(); + GModel::current()->getGEOInternals()->setMaxPhysicalTag(t + 1); + $$ = GModel::current()->setPhysicalName(std::string($1), 0, t + 1); + Free($1); + } + | StringExpr ',' FExpr + { + $$ = GModel::current()->setPhysicalName(std::string($1), 0, $3); + Free($1); + } +; + +PhysicalId1 : + FExpr + { + $$ = (int)$1; + } + | StringExpr + { + int t = GModel::current()->getGEOInternals()->getMaxPhysicalTag(); + GModel::current()->getGEOInternals()->setMaxPhysicalTag(t + 1); + $$ = GModel::current()->setPhysicalName(std::string($1), 1, t + 1); + Free($1); + } + | StringExpr ',' FExpr + { + $$ = GModel::current()->setPhysicalName(std::string($1), 1, $3); + Free($1); + } +; + +PhysicalId2 : + FExpr + { + $$ = (int)$1; + } + | StringExpr + { + int t = GModel::current()->getGEOInternals()->getMaxPhysicalTag(); + GModel::current()->getGEOInternals()->setMaxPhysicalTag(t + 1); + $$ = GModel::current()->setPhysicalName(std::string($1), 2, t + 1); + Free($1); + } + | StringExpr ',' FExpr + { + $$ = GModel::current()->setPhysicalName(std::string($1), 2, $3); + Free($1); + } +; + +PhysicalId3 : + FExpr + { + $$ = (int)$1; + } + | StringExpr + { + int t = GModel::current()->getGEOInternals()->getMaxPhysicalTag(); + GModel::current()->getGEOInternals()->setMaxPhysicalTag(t + 1); + $$ = GModel::current()->setPhysicalName(std::string($1), 3, t + 1); + Free($1); + } + | StringExpr ',' FExpr + { + $$ = GModel::current()->setPhysicalName(std::string($1), 3, $3); + Free($1); + } +; + +InSphereCenter : + // nothing + { + $$ = -1; + } + | tIn tSphere '{' FExpr '}' + { + $$ = (int)$4; + } +; + +CircleOptions : + { + for(int i = 0; i < 4; i++) $$[i] = 0.; + } + | tPlane VExpr + { + for(int i = 0; i < 4; i++) $$[i] = $2[i]; + } +; + +Shape : + tPoint '(' FExpr ')' tAFFECT VExpr tEND + { + int num = (int)$3; + double x = CTX::instance()->geom.scalingFactor * $6[0]; + double y = CTX::instance()->geom.scalingFactor * $6[1]; + double z = CTX::instance()->geom.scalingFactor * $6[2]; + double lc = CTX::instance()->geom.scalingFactor * $6[3]; + if(lc == 0.) lc = MAX_LC; // no mesh size given at the point + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addVertex(num, x, y, z, lc); + } + else{ + if(!myGmshSurface) + r = GModel::current()->getGEOInternals()->addVertex(num, x, y, z, lc); + else + r = GModel::current()->getGEOInternals()->addVertex(num, x, y, + myGmshSurface, lc); + } + if(!r) yymsg(0, "Could not add point"); + AddToTemporaryBoundingBox(x, y, z); + $$.Type = MSH_POINT; + $$.Num = num; + } + | tLine '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<int> tags; ListOfDouble2Vector($6, tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addLine(num, tags); + } + else{ + r = GModel::current()->getGEOInternals()->addLine(num, tags); + } + if(!r) yymsg(0, "Could not add line"); + List_Delete($6); + $$.Type = MSH_SEGM_LINE; + $$.Num = num; + } + | tSpline '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<int> tags; ListOfDouble2Vector($6, tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(0, "Spline not available with OpenCASCADE factory"); + } + else{ + r = GModel::current()->getGEOInternals()->addSpline(num, tags); + } + if(!r) yymsg(0, "Could not add spline"); + List_Delete($6); + $$.Type = MSH_SEGM_SPLN; + $$.Num = num; + } + | tCircle '(' FExpr ')' tAFFECT ListOfDouble CircleOptions tEND + { + int num = (int)$3; + std::vector<int> tags; ListOfDouble2Vector($6, tags); + std::vector<double> param; ListOfDouble2Vector($6, param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(tags.size() == 3){ + r = GModel::current()->getOCCInternals()->addCircleArc + (num, tags[0], tags[1], tags[2]); + } + else if(param.size() >= 4 && param.size() <= 6){ + double r = param[3]; + double a1 = (param.size() == 6) ? param[4] : 0.; + double a2 = (param.size() == 6) ? param[5] : + (param.size() == 5) ? param[4] : 2.*M_PI; + r = GModel::current()->getOCCInternals()->addCircle + (num, param[0], param[1], param[2], r, a1, a2); + } + else{ + yymsg(0, "Circle requires 3 points or 4 to 6 parameters"); + } + } + else{ + if(tags.size() == 3){ + r = GModel::current()->getGEOInternals()->addCircleArc + (num, tags[0], tags[1], tags[2], $7[0], $7[1], $7[2]); + } + else{ + yymsg(0, "Circle requires 3 points"); + } + } + if(!r) yymsg(0, "Could not add circle"); + List_Delete($6); + $$.Type = MSH_SEGM_CIRC; + $$.Num = num; + } + | tEllipse '(' FExpr ')' tAFFECT ListOfDouble CircleOptions tEND + { + int num = (int)$3; + std::vector<int> tags; ListOfDouble2Vector($6, tags); + std::vector<double> param; ListOfDouble2Vector($6, param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(tags.size() == 3){ + r = GModel::current()->getOCCInternals()->addEllipseArc + (num, tags[0], tags[1], tags[2]); + } + else if(tags.size() == 4){ + r = GModel::current()->getOCCInternals()->addEllipseArc + (num, tags[0], tags[1], tags[3]); + } + else if(param.size() >= 5 && param.size() <= 7){ + double a1 = (param.size() == 7) ? param[5] : 0.; + double a2 = (param.size() == 7) ? param[6] : + (param.size() == 6) ? param[5] : 2.*M_PI; + r = GModel::current()->getOCCInternals()->addEllipse + (num, param[0], param[1], param[2], param[3], param[4], a1, a2); + } + else{ + yymsg(0, "Ellipse requires 3 or 4 points, or 5 to 7 parameters"); + } + } + else{ + if(tags.size() == 4){ + r = GModel::current()->getGEOInternals()->addEllipseArc + (num, tags[0], tags[1], tags[2], tags[3], $7[0], $7[1], $7[2]); + } + else{ + yymsg(0, "Ellipse requires 4 points"); + } + } + if(!r) yymsg(0, "Could not add ellipse"); + List_Delete($6); + $$.Type = MSH_SEGM_ELLI; + $$.Num = num; + } + | tBSpline '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<int> tags; ListOfDouble2Vector($6, tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addBSpline(num, tags); + } + else{ + r = GModel::current()->getGEOInternals()->addBSpline(num, tags); + } + if(!r) yymsg(0, "Could not add BSpline"); + List_Delete($6); + $$.Type = MSH_SEGM_BSPLN; + $$.Num = num; + } + | tBezier '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<int> tags; ListOfDouble2Vector($6, tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addBezier(num, tags); + } + else{ + r = GModel::current()->getGEOInternals()->addBezier(num, tags); + } + if(!r) yymsg(0, "Could not add Bezier"); + List_Delete($6); + $$.Type = MSH_SEGM_BEZIER; + $$.Num = num; + } + | tNurbs '(' FExpr ')' tAFFECT ListOfDouble tNurbsKnots ListOfDouble + tNurbsOrder FExpr tEND + { + int num = (int)$3; + std::vector<int> tags; ListOfDouble2Vector($6, tags); + std::vector<double> knots; ListOfDouble2Vector($8, knots); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(0, "Nurbs not available yet with OpenCASCADE factory"); + } + else{ + int order = knots.size() - tags.size() - 1; + if(order != (int)$10) + yymsg(1, "Incompatible Nurbs order: using %d", order); + r = GModel::current()->getGEOInternals()->addNurbs(num, tags, knots); + } + if(!r) yymsg(0, "Could not add nurbs"); + List_Delete($6); + List_Delete($8); + $$.Type = MSH_SEGM_NURBS; + $$.Num = num; + } + | tCompound tLine '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$4; + std::vector<int> tags; ListOfDouble2Vector($7, tags); + bool r = GModel::current()->getGEOInternals()->addCompoundLine(num, tags); + if(!r) yymsg(0, "Could not add compound line"); + List_Delete($7); + $$.Type = MSH_SEGM_COMPOUND; + $$.Num = num; + } + | tWire '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<int> tags; ListOfDouble2Vector($6, tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addWire(num, tags, false); + } + else{ + yymsg(0, "Wire only available using OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add wire"); + List_Delete($6); + $$.Type = MSH_SEGM_LOOP; + $$.Num = num; + } + | tLine tSTRING '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$4; + std::vector<int> tags; ListOfDouble2Vector($7, tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addLineLoop(num, tags); + } + else{ + r = GModel::current()->getGEOInternals()->addLineLoop(num, tags); + } + if(!r) yymsg(0, "Could not add line loop"); + List_Delete($7); + Free($2); + $$.Type = MSH_SEGM_LOOP; + $$.Num = num; + } + | tPlane tSurface '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$4; + std::vector<int> tags; ListOfDouble2Vector($7, tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addPlaneSurface(num, tags); + } + else{ + r = GModel::current()->getGEOInternals()->addPlaneSurface(num, tags); + } + if(!r) yymsg(0, "Could not add plane surface"); + List_Delete($7); + $$.Type = MSH_SURF_PLAN; + $$.Num = num; + } + | tSurface '(' FExpr ')' tAFFECT ListOfDouble InSphereCenter tEND + { + int num = (int)$3; + std::vector<int> wires; ListOfDouble2Vector($6, wires); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(wires.size() != 1){ + yymsg(0, "OpenCASCADE face filling requires a single line loop"); + } + else{ + r = GModel::current()->getOCCInternals()->addSurfaceFilling(num, wires[0]); + } + } + else{ + r = GModel::current()->getGEOInternals()->addSurfaceFilling(num, wires, $7); + } + if(!r) yymsg(0, "Could not add surface"); + List_Delete($6); + $$.Type = MSH_SURF_REGL; + $$.Num = num; + } + | tRuled tSurface '(' FExpr ')' tAFFECT ListOfDouble InSphereCenter tEND + { + yymsg(2, "'Ruled Surface' command is deprecated: use 'Surface' instead"); + int num = (int)$4; + std::vector<int> wires; ListOfDouble2Vector($7, wires); + bool r = GModel::current()->getGEOInternals()->addSurfaceFilling(num, wires, $8); + if(!r) yymsg(0, "Could not add surface"); + List_Delete($7); + $$.Type = MSH_SURF_REGL; + $$.Num = num; + } + | tEuclidian tCoordinates tEND + { + myGmshSurface = 0; + $$.Type = 0; + $$.Num = 0; + } + | tCoordinates tSurface FExpr tEND + { + myGmshSurface = gmshSurface::getSurface((int)$3); + $$.Type = 0; + $$.Num = 0; + } + | tParametric tSurface '(' FExpr ')' tAFFECT tBIGSTR tBIGSTR tBIGSTR tEND + { + int num = (int)$4; + myGmshSurface = gmshParametricSurface::NewParametricSurface(num, $7, $8, $9); + $$.Type = 0; + $$.Num = num; + } + | tSphere '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<int> tags; ListOfDouble2Vector($6, tags); + std::vector<double> param; ListOfDouble2Vector($6, param); + $$.Type = 0; + bool r = true; + if(param.size() >= 4 && param.size() <= 7){ + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + double a1 = (param.size() >= 5) ? param[4] : -M_PI/2; + double a2 = (param.size() >= 6) ? param[5] : M_PI/2; + double a3 = (param.size() >= 7) ? param[6] : 2.*M_PI; + r = GModel::current()->getOCCInternals()->addSphere + (num, param[0], param[1], param[2], param[3], a1, a2, a3); + } + else{ + yymsg(0, "Sphere only available with OpenCASCADE factory"); + } + $$.Type = MSH_VOLUME; + } + else if(tags.size() == 2){ + myGmshSurface = GModel::current()->getGEOInternals()->newGeometrySphere + (num, tags[0], tags[1]); + } + else{ + yymsg(0, "Sphere requires 2 points or from 4 to 7 parameters"); + } + if(!r) yymsg(0, "Could not add sphere"); + List_Delete($6); + $$.Num = num; + } + | tPolarSphere '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<int> tags; ListOfDouble2Vector($6, tags); + if(tags.size() == 2){ + myGmshSurface = GModel::current()->getGEOInternals()->newGeometryPolarSphere + (num, tags[0], tags[1]); + } + else{ + yymsg(0, "PolarSphere requires 2 points"); + } + List_Delete($6); + $$.Type = 0; + $$.Num = num; + } + | tBlock '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<double> param; ListOfDouble2Vector($6, param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() == 6){ + r = GModel::current()->getOCCInternals()->addBlock + (num, param[0], param[1], param[2], param[3], param[4], param[5]); + } + else{ + yymsg(0, "Block requires 6 parameters"); + } + } + else{ + yymsg(0, "Block only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add block"); + List_Delete($6); + $$.Type = MSH_VOLUME; + $$.Num = num; + } + | tTorus '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<double> param; ListOfDouble2Vector($6, param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() == 5 || param.size() == 6){ + double alpha = (param.size() == 6) ? param[5] : 2*M_PI; + r = GModel::current()->getOCCInternals()->addTorus + (num, param[0], param[1], param[2], param[3], param[4], alpha); + } + else{ + yymsg(0, "Torus requires 5 ou 6 parameters"); + } + } + else{ + yymsg(0, "Torus only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add torus"); + List_Delete($6); + $$.Type = MSH_VOLUME; + $$.Num = num; + } + | tRectangle '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<double> param; ListOfDouble2Vector($6, param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() == 6 || param.size() == 7){ + double r = (param.size() == 7) ? param[6] : 0.; + r = GModel::current()->getOCCInternals()->addRectangle + (num, param[0], param[1], param[2], param[3], param[4], param[5], r); + } + else{ + yymsg(0, "Rectangle requires 6 ou 7 parameters"); + } + } + else{ + yymsg(0, "Rectangle only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add rectangle"); + List_Delete($6); + $$.Type = MSH_SURF_PLAN; + $$.Num = num; + } + | tDisk '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<double> param; ListOfDouble2Vector($6, param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() == 4 || param.size() == 5){ + double ry = (param.size() == 5) ? param[4] : param[3]; + r = GModel::current()->getOCCInternals()->addDisk + (num, param[0], param[1], param[2], param[3], ry); + } + else{ + yymsg(0, "Disk requires 4 or 5 parameters"); + } + } + else{ + yymsg(0, "Disk only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add disk"); + List_Delete($6); + $$.Type = MSH_SURF_PLAN; + $$.Num = num; + } + | tCylinder '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<double> param; ListOfDouble2Vector($6, param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() == 7 || param.size() == 8){ + double angle = (param.size() == 8) ? param[7] : 2*M_PI; + r = GModel::current()->getOCCInternals()->addCylinder + (num, param[0], param[1], param[2], param[3], param[4], param[5], + param[6], angle); + } + else{ + yymsg(0, "Cylinder requires 7 or 8 parameters"); + } + } + else{ + yymsg(0, "Cylinder only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add cylinder"); + List_Delete($6); + $$.Type = MSH_VOLUME; + $$.Num = num; + } + | tCone '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<double> param; ListOfDouble2Vector($6, param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() == 8 || param.size() == 9){ + double alpha = (param.size() == 9) ? param[8] : 2*M_PI; + r = GModel::current()->getOCCInternals()->addCone + (num, param[0], param[1], param[2], param[3], param[4], param[5], + param[6], param[7], alpha); + } + else{ + yymsg(0, "Cone requires 8 or 9 parameters"); + } + } + else{ + yymsg(0, "Cone only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add cone"); + List_Delete($6); + $$.Type = MSH_VOLUME; + $$.Num = num; + } + | tWedge '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<double> param; ListOfDouble2Vector($6, param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() == 7){ + r = GModel::current()->getOCCInternals()->addWedge + (num, param[0], param[1], param[2], param[3], param[4], param[5], + param[6]); + } + else{ + yymsg(0, "Wedge requires 7 parameters"); + } + } + else{ + yymsg(0, "Wedge only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add wedge"); + List_Delete($6); + $$.Type = MSH_VOLUME; + $$.Num = num; + } + | tThickSolid '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<double> param; ListOfDouble2Vector($6, param); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + if(param.size() >= 2){ + int in = (int)param[0]; + double offset = param[1]; + std::vector<int> exclude; + for(unsigned int i = 2; i < param.size(); i++) + exclude.push_back(param[i]); + r = GModel::current()->getOCCInternals()->addThickSolid + (num, in, exclude, offset); + } + else{ + yymsg(0, "ThickSolid requires at least 2 parameters"); + } + } + else{ + yymsg(0, "ThickSolid only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add thick solid"); + List_Delete($6); + } + | tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$4; + std::vector<int> tags; ListOfDouble2Vector($7, tags); + bool r = GModel::current()->getGEOInternals()->addCompoundSurface(num, tags); + if(!r) yymsg(0, "Could not add compound surface"); + List_Delete($7); + $$.Type = MSH_SURF_COMPOUND; + $$.Num = num; + } + | tCompound tSurface '(' FExpr ')' tAFFECT ListOfDouble tSTRING + '{' RecursiveListOfListOfDouble '}' tEND + { + int num = (int)$4; + std::vector<int> tags; ListOfDouble2Vector($7, tags); + std::vector<int> bndTags[4]; + for(int i = 0; i < List_Nbr($10); i++){ + if(i < 4) + ListOfDouble2Vector(*(List_T**)List_Pointer($10, i), bndTags[i]); + else + break; + } + bool r = GModel::current()->getGEOInternals()->addCompoundSurface + (num, tags, bndTags); + if(!r) yymsg(0, "Could not add compound surface"); + List_Delete($7); + Free($8); + for (int i = 0; i < List_Nbr($10); i++) + List_Delete(*(List_T**)List_Pointer($10, i)); + List_Delete($10); + $$.Type = MSH_SURF_COMPOUND; + $$.Num = num; + } + | tSurface tSTRING '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$4; + std::vector<int> tags; ListOfDouble2Vector($7, tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addSurfaceLoop(num, tags); + } + else{ + r = GModel::current()->getGEOInternals()->addSurfaceLoop(num, tags); + } + if(!r) yymsg(0, "Could not add surface loop"); + List_Delete($7); + Free($2); + $$.Type = MSH_SURF_LOOP; + $$.Num = num; + } + | tVolume '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<int> tags; ListOfDouble2Vector($6, tags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addVolume(num, tags); + } + else{ + r = GModel::current()->getGEOInternals()->addVolume(num, tags); + } + if(!r) yymsg(0, "Could not add volume"); + List_Delete($6); + $$.Type = MSH_VOLUME; + $$.Num = num; + } + | tThruSections '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$3; + std::vector<int> wires; ListOfDouble2Vector($6, wires); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<std::pair<int, int> > outDimTags; + r = GModel::current()->getOCCInternals()->addThruSections + (num, wires, outDimTags, true, false); + } + else{ + yymsg(0, "ThruSections only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add thrusections"); + List_Delete($6); + $$.Type = MSH_VOLUME; + $$.Num = num; + } + | tRuled tThruSections '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$4; + std::vector<int> wires; ListOfDouble2Vector($7, wires); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<std::pair<int, int> > outDimTags; + r = GModel::current()->getOCCInternals()->addThruSections + (num, wires, outDimTags, true, true); + } + else{ + yymsg(0, "ThruSections only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add ruled thrusections"); + List_Delete($7); + $$.Type = MSH_VOLUME; + $$.Num = num; + } + | tCompound tVolume '(' FExpr ')' tAFFECT ListOfDouble tEND + { + int num = (int)$4; + std::vector<int> tags; ListOfDouble2Vector($7, tags); + bool r = GModel::current()->getGEOInternals()->addCompoundVolume(num, tags); + if(!r) yymsg(0, "Could not add compound volume"); + List_Delete($7); + $$.Type = MSH_VOLUME_COMPOUND; + $$.Num = num; + } + | tPhysical tPoint '(' PhysicalId0 ')' NumericAffectation ListOfDouble tEND + { + int num = (int)$4; + int op = $6; + std::vector<int> tags; ListOfDouble2Vector($7, tags); + bool r = GModel::current()->getGEOInternals()->modifyPhysicalGroup + (0, num, op, tags); + if(!r) yymsg(0, "Could not modify physical point"); + List_Delete($7); + $$.Type = MSH_PHYSICAL_POINT; + $$.Num = num; + } + | tPhysical tLine '(' PhysicalId1 ')' NumericAffectation ListOfDouble tEND + { + int num = (int)$4; + int op = $6; + std::vector<int> tags; ListOfDouble2Vector($7, tags); + bool r = GModel::current()->getGEOInternals()->modifyPhysicalGroup + (1, num, op, tags); + if(!r) yymsg(0, "Could not modify physical line"); + List_Delete($7); + $$.Type = MSH_PHYSICAL_LINE; + $$.Num = num; + } + | tPhysical tSurface '(' PhysicalId2 ')' NumericAffectation ListOfDouble tEND + { + int num = (int)$4; + int op = $6; + std::vector<int> tags; ListOfDouble2Vector($7, tags); + bool r = GModel::current()->getGEOInternals()->modifyPhysicalGroup + (2, num, op, tags); + if(!r) yymsg(0, "Could not modify physical surface"); + List_Delete($7); + $$.Type = MSH_PHYSICAL_SURFACE; + $$.Num = num; + } + | tPhysical tVolume '(' PhysicalId3 ')' NumericAffectation ListOfDouble tEND + { + int num = (int)$4; + int op = $6; + std::vector<int> tags; ListOfDouble2Vector($7, tags); + bool r = GModel::current()->getGEOInternals()->modifyPhysicalGroup + (3, num, op, tags); + if(!r) yymsg(0, "Could not modify physical volume"); + List_Delete($7); + $$.Type = MSH_PHYSICAL_VOLUME; + $$.Num = num; + } +; + +// T R A N S F O R M + +Transform : + tTranslate VExpr '{' MultipleShape '}' + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs($4, dimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->translate + (dimTags, $2[0], $2[1], $2[2]); + } + else{ + r = GModel::current()->getGEOInternals()->translate + (dimTags, $2[0], $2[1], $2[2]); + } + if(!r) yymsg(0, "Could not translate shapes"); + $$ = $4; + } + | tRotate '{' VExpr ',' VExpr ',' FExpr '}' '{' MultipleShape '}' + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs($10, dimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->rotate + (dimTags, $5[0], $5[1], $5[2], $3[0], $3[1], $3[2], $7); + } + else{ + r = GModel::current()->getGEOInternals()->rotate + (dimTags, $5[0], $5[1], $5[2], $3[0], $3[1], $3[2], $7); + } + if(!r) yymsg(0, "Could not rotate shapes"); + $$ = $10; + } + | tSymmetry VExpr '{' MultipleShape '}' + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs($4, dimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + Msg::Error("Symmetry not implemented yet with OpenCASCADE factory"); + } + else{ + r = GModel::current()->getGEOInternals()->symmetry + (dimTags, $2[0], $2[1], $2[2], $2[3]); + } + if(!r) yymsg(0, "Could not apply symmetry transform"); + $$ = $4; + } + | tDilate '{' VExpr ',' FExpr '}' '{' MultipleShape '}' + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs($8, dimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(1, "Warning Dilate OCC: Dilatation (second argument) + Translation (first argument) "); + r = GModel::current()->getOCCInternals()->dilate + (dimTags, $3[0], $3[1], $3[2], $5, $5, $5); + } + else{ + r = GModel::current()->getGEOInternals()->dilate + (dimTags, $3[0], $3[1], $3[2], $5, $5, $5); + } + if(!r) yymsg(0, "Could not dilate shapes"); + $$ = $8; + } + | tDilate '{' VExpr ',' VExpr '}' '{' MultipleShape '}' + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs($8, dimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(1, "Warning Dilate OCC: Dilatation (second argument) + Translation (first argument) "); + r = GModel::current()->getOCCInternals()->dilate + (dimTags, $3[0], $3[1], $3[2], $5[0], $5[1], $5[2]); + } + else{ + r = GModel::current()->getGEOInternals()->dilate + (dimTags, $3[0], $3[1], $3[2], $5[0], $5[1], $5[2]); + } + if(!r) yymsg(0, "Could not dilate shapes"); + $$ = $8; + } + | tSTRING '{' MultipleShape '}' + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs($3, inDimTags); + $$ = $3; + List_Reset($$); + std::string action($1); + bool r = true; + if(action == "Duplicata"){ + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->copy(inDimTags, outDimTags); + } + else{ + r = GModel::current()->getGEOInternals()->copy(inDimTags, outDimTags); + } + } + else if(action == "Boundary" || action == "CombinedBoundary"){ + // boundary operations are performed directly on GModel, which enables + // to compute the boundary of hybrid CAD models; this also automatically + // binds all boundary entities for OCC models + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + r = GModel::current()->getBoundaryTags + (inDimTags, outDimTags, action == "CombinedBoundary"); + } + else{ + yymsg(0, "Unknown action on multiple shapes '%s'", $1); + } + if(!r) yymsg(0, "Could not apply operation on shapes"); + VectorOfPairs2ListOfShapes(outDimTags, $$); + Free($1); + } + | tIntersect tLine '{' RecursiveListOfDouble '}' tSurface '{' FExpr '}' + { + $$ = List_Create(2, 1, sizeof(Shape)); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(0, "Intersect line not available with OpenCASCADE"); + } + else{ + std::vector<int> in, out; ListOfDouble2Vector($4, in); + r = GModel::current()->getGEOInternals()->intersectCurvesWithSurface + (in, (int)$8, out); + for(unsigned int i = 0; i < out.size(); i++){ + Shape s; + s.Type = MSH_POINT; + s.Num = out[i]; + List_Add($$, &s); + } + } + if(!r) yymsg(0, "Could not intersect line"); + List_Delete($4); + } + // syntax is wrong: should use {} around FExpr + | tSplit tLine '(' FExpr ')' '{' RecursiveListOfDouble '}' tEND + { + $$ = List_Create(2, 1, sizeof(Shape)); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(0, "Split Line not available with OpenCASCADE"); + } + else{ + std::vector<int> vertices, curves; ListOfDouble2Vector($7, vertices); + r = GModel::current()->getGEOInternals()->splitCurve + ((int)$4, vertices, curves); + for(unsigned int i = 0; i < curves.size(); i++){ + Shape s; + s.Type = MSH_SEGM_LINE; + s.Num = curves[i]; + List_Add($$, &s); + } + } + if(!r) yymsg(0, "Could not split line"); + List_Delete($7); + } +; + +MultipleShape : + ListOfShapes { $$ = $1; } + | Transform { $$ = $1; } +; + +ListOfShapes : + // nothing + { + $$ = List_Create(3, 3, sizeof(Shape)); + } + | ListOfShapes Shape + { + List_Add($$, &$2); + } + | ListOfShapes tPoint '{' RecursiveListOfDouble '}' tEND + { + for(int i = 0; i < List_Nbr($4); i++){ + double d; + List_Read($4, i, &d); + Shape s; + s.Num = (int)d; + s.Type = MSH_POINT; + List_Add($$, &s); + } + } + | ListOfShapes tLine '{' RecursiveListOfDouble '}' tEND + { + for(int i = 0; i < List_Nbr($4); i++){ + double d; + List_Read($4, i, &d); + Shape s; + s.Num = (int)d; + s.Type = MSH_SEGM_LINE; + List_Add($$, &s); + } + } + | ListOfShapes tSurface '{' RecursiveListOfDouble '}' tEND + { + for(int i = 0; i < List_Nbr($4); i++){ + double d; + List_Read($4, i, &d); + Shape s; + s.Num = (int)d; + s.Type = MSH_SURF_PLAN; // we don't care about the actual type + List_Add($$, &s); + } + } + | ListOfShapes tVolume '{' RecursiveListOfDouble '}' tEND + { + for(int i = 0; i < List_Nbr($4); i++){ + double d; + List_Read($4, i, &d); + Shape s; + s.Num = (int)d; + s.Type = MSH_VOLUME; + List_Add($$, &s); + } + } +; + +// L E V E L S E T S + +LevelSet : + tLevelset tPlane '(' FExpr ')' tAFFECT ListOfDouble tEND + { + if(List_Nbr($7) == 4){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d[4]; + for(int i = 0; i < 4; i++) + List_Read($7, i, &d[i]); + gLevelset *ls = new gLevelsetPlane(d[0], d[1], d[2], d[3], t); + gLevelset::add(ls); + } + } + else + yymsg(0, "Wrong number of arguments for levelset definition"); + List_Delete($7); + } + | tLevelset tPoint '(' FExpr ')' tAFFECT '{' RecursiveListOfListOfDouble '}' tEND + { + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + fullMatrix<double> centers(List_Nbr($8),3); + for (int i = 0; i < List_Nbr($8); i++){ + List_T *l = *(List_T**)List_Pointer($8, i); + for (int j = 0; j < List_Nbr(l); j++){ + centers(i,j) = (double)(*(double*)List_Pointer(l, j)); + } + } + gLevelset *ls = new gLevelsetPoints(centers, t); + gLevelset::add(ls); + } + for(int i = 0; i < List_Nbr($8); i++) + List_Delete(*(List_T**)List_Pointer($8, i)); + List_Delete($8); + } + | tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' + RecursiveListOfDouble '}' tEND + { + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double pt[3] = {$8[0], $8[1], $8[2]}; + double n[3] = {$10[0], $10[1], $10[2]}; + gLevelset *ls = new gLevelsetPlane(pt, n, t); + gLevelset::add(ls); + } + List_Delete($12); + } + | tLevelset tPlane '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' VExpr ',' + RecursiveListOfDouble '}' tEND + { + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double pt1[3] = {$8[0], $8[1], $8[2]}; + double pt2[3] = {$10[0], $10[1], $10[2]}; + double pt3[3] = {$12[0], $12[1], $12[2]}; + gLevelset *ls = new gLevelsetPlane(pt1, pt2, pt3, t); + gLevelset::add(ls); + } + List_Delete($14); + } + | tLevelset tSphere '(' FExpr ')' tAFFECT '{' VExpr ',' RecursiveListOfDouble '}' tEND + { + if(List_Nbr($10) == 1){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d; + List_Read($10, 0, &d); + gLevelset *ls = new gLevelsetSphere($8[0], $8[1], $8[2], d, t); + gLevelset::add(ls); + } + } + else + yymsg(0, "Wrong number of arguments for levelset definition"); + List_Delete($10); + } + | tLevelset tCylinder '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' + RecursiveListOfDouble '}' tEND + { + if(List_Nbr($12) == 1){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d; + List_Read($12, 0, &d); + double pt[3] = {$8[0], $8[1], $8[2]}; + double dir[3] = {$10[0], $10[1], $10[2]}; + gLevelset *ls = new gLevelsetGenCylinder(pt, dir, d, t); + gLevelset::add(ls); + } + } + else if(List_Nbr($12) == 2){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d[2]; + for(int i = 0; i < 2; i++) + List_Read($12, i, &d[i]); + double pt[3] = {$8[0], $8[1], $8[2]}; + double dir[3] = {$10[0], $10[1], $10[2]}; + gLevelset *ls = new gLevelsetCylinder(pt, dir, d[0], d[1], t); + gLevelset::add(ls); + } + } + else if(List_Nbr($12) == 3){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d[3]; + for(int i = 0; i < 3; i++) + List_Read($12, i, &d[i]); + double pt[3] = {$8[0], $8[1], $8[2]}; + double dir[3] = {$10[0], $10[1], $10[2]}; + gLevelset *ls = new gLevelsetCylinder(pt, dir, d[0], d[1], d[2], t); + gLevelset::add(ls); + } + } + else + yymsg(0, "Wrong number of arguments for levelset definition"); + List_Delete($12); + } + | tLevelset tCone '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' + RecursiveListOfDouble '}' tEND + { + if(List_Nbr($12) == 1){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d; + List_Read($12, 0, &d); + double pt[3] = {$8[0], $8[1], $8[2]}; + double dir[3] = {$10[0], $10[1], $10[2]}; + gLevelset *ls = new gLevelsetCone(pt, dir, d, t); + gLevelset::add(ls); + } + } + else + yymsg(0, "Wrong number of arguments for levelset definition"); + List_Delete($12); + } + | tLevelset tEllipsoid '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' + RecursiveListOfDouble '}' tEND + { + if(List_Nbr($12) == 3){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d[3]; + for(int i = 0; i < 3; i++) + List_Read($12, i, &d[i]); + double pt[3] = {$8[0], $8[1], $8[2]}; + double dir[3] = {$10[0], $10[1], $10[2]}; + gLevelset *ls = new gLevelsetEllipsoid(pt, dir, d[0], d[1], d[2], t); + gLevelset::add(ls); + } + } + else + yymsg(0, "Wrong number of arguments for levelset definition"); + List_Delete($12); + } + | tLevelset tQuadric '(' FExpr ')' tAFFECT '{' VExpr ',' VExpr ',' + RecursiveListOfDouble '}' tEND + { + if(List_Nbr($12) == 5){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d[5]; + for(int i = 0; i < 5; i++) + List_Read($12, i, &d[i]); + double pt[3] = {$8[0], $8[1], $8[2]}; + double dir[3] = {$10[0], $10[1], $10[2]}; + gLevelset *ls = new gLevelsetGeneralQuadric(pt, dir, d[0], d[1], + d[2], d[3], d[4], t); + gLevelset::add(ls); + } + } + else + yymsg(0, "Wrong number of arguments for levelset definition"); + List_Delete($12); + } + | tLevelset tSTRING '(' FExpr ')' tAFFECT ListOfDouble tEND + { + if(!strcmp($2, "Union")){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + std::vector<gLevelset *> vl; + for(int i = 0; i < List_Nbr($7); i++) { + double d; List_Read($7, i, &d); + gLevelset *pl = gLevelset::find((int)d); + if(!pl) yymsg(0, "Unknown levelset %d", (int)d); + else vl.push_back(pl); + } + gLevelset *ls = new gLevelsetUnion(vl, true, t); + gLevelset::add(ls); + } + } + else if(!strcmp($2, "Intersection")){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + std::vector<gLevelset *> vl; + for(int i = 0; i < List_Nbr($7); i++) { + double d; List_Read($7, i, &d); + gLevelset *pl = gLevelset::find((int)d); + if(!pl) yymsg(0, "Unknown levelset %d", (int)d); + else vl.push_back(pl); + } + gLevelset *ls = new gLevelsetIntersection(vl, true, t); + gLevelset::add(ls); + } + } + else if(!strcmp($2, "Cut")){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + std::vector<gLevelset *> vl; + for(int i = 0; i < List_Nbr($7); i++) { + double d; List_Read($7, i, &d); + gLevelset *pl = gLevelset::find((int)d); + if(!pl) yymsg(0, "Unknown levelset %d", (int)d); + else vl.push_back(pl); + } + gLevelset *ls = new gLevelsetCut(vl, true, t); + gLevelset::add(ls); + } + } + else if(!strcmp($2, "Crack")){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + std::vector<gLevelset *> vl; + for(int i = 0; i < List_Nbr($7); i++) { + double d; List_Read($7, i, &d); + gLevelset *pl = gLevelset::find((int)d); + if(!pl) yymsg(0, "Unknown levelset %d", (int)d); + else vl.push_back(pl); + } + gLevelset *ls = new gLevelsetCrack(vl, false, t); + gLevelset::add(ls); + } + } + else if(!strcmp($2, "Reverse")){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + double d; + List_Read($7, 0, &d); + gLevelset *pl = gLevelset::find((int)d); + gLevelset *ls = NULL; + if(!pl) yymsg(0, "Unknown levelset %d", (int)d); + else ls = new gLevelsetReverse(pl, t); + if(ls) gLevelset::add(ls); + } + } +#if defined(HAVE_POST) + else if(!strcmp($2, "PostView")){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + if(List_Nbr($7) > 0){ + double d; List_Read($7, 0, &d); + gLevelset *ls = new gLevelsetPostView((int)d, t); + gLevelset::add(ls); + } + } + } +#endif + else + yymsg(0, "Wrong number of arguments for levelset definition"); + Free($2); + List_Delete($7); + } + | tLevelset tSTRING '(' FExpr ')' tAFFECT tBIGSTR tEND + { + if(!strcmp($2, "MathEval")){ + int t = (int)$4; + if(gLevelset::find(t)){ + yymsg(0, "Levelset %d already exists", t); + } + else { + gLevelset *ls = new gLevelsetMathEval($7, t); + gLevelset::add(ls); + } + } + else + yymsg(0, "Unknown levelset '%s'", $2); + Free($2); Free($7); + } + | tLevelset tSTRING '{' FExpr '}' tEND + { + if(!strcmp($2, "CutMesh")){ + int t = (int)$4; + if(gLevelset::find(t)){ + GModel::current()->buildCutGModel(gLevelset::find(t), true, false); + } + else + yymsg(0, "Unknown levelset %d", t); + } + else if(!strcmp($2, "CutMeshTri")){ + int t = (int)$4; + if(gLevelset::find(t)){ + GModel::current()->buildCutGModel(gLevelset::find(t), true, true); + } + else + yymsg(0, "Unknown levelset %d", t); + } + else if(!strcmp($2, "SplitMesh")){ + int t = (int)$4; + if(gLevelset::find(t)){ + GModel::current()->buildCutGModel(gLevelset::find(t), false, true); + } + else + yymsg(0, "Unknown levelset %d", t); + } + else + yymsg(0, "Unknown levelset '%s'", $2); + Free($2); + } + ; + +// D E L E T E + +Delete : + tDelete '{' ListOfShapes '}' + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs($3, dimTags); + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + GModel::current()->getOCCInternals()->remove(dimTags); + } + GModel::current()->getGEOInternals()->remove(dimTags); + GModel::current()->remove(dimTags); + List_Delete($3); + } + | tRecursive tDelete '{' ListOfShapes '}' + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs($4, dimTags); + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + GModel::current()->getOCCInternals()->remove(dimTags, true); + } + GModel::current()->getGEOInternals()->remove(dimTags, true); + GModel::current()->remove(dimTags, true); + List_Delete($4); + } + | tDelete tField '[' FExpr ']' tEND + { +#if defined(HAVE_MESH) + GModel::current()->getFields()->deleteField((int)$4); +#endif + } + | tDelete tSTRING '[' FExpr ']' tEND + { +#if defined(HAVE_POST) + if(!strcmp($2, "View")){ + int index = (int)$4; + if(index >= 0 && index < (int)PView::list.size()) + delete PView::list[index]; + else + yymsg(0, "Unknown view %d", index); + } + else + yymsg(0, "Unknown command 'Delete %s'", $2); +#endif + Free($2); + } + | tDelete String__Index tEND + { + if(!strcmp($2, "Meshes") || !strcmp($2, "All")){ + ClearProject(); + } + else if(!strcmp($2, "Model")){ + GModel::current()->destroy(true); // destroy, but keep name/filename + GModel::current()->getGEOInternals()->destroy(); + } + else if(!strcmp($2, "Physicals")){ + GModel::current()->getGEOInternals()->resetPhysicalGroups(); + GModel::current()->deletePhysicalGroups(); + } + else if(!strcmp($2, "Variables")){ + gmsh_yysymbols.clear(); + } + else if(!strcmp($2, "Options")){ + ReInitOptions(0); + InitOptionsGUI(0); + } + else{ + if(gmsh_yysymbols.count($2)) + gmsh_yysymbols.erase($2); + else + yymsg(0, "Unknown object or expression to delete '%s'", $2); + } + Free($2); + } + | tDelete tSTRING tSTRING tEND + { +#if defined(HAVE_POST) + if(!strcmp($2, "Empty") && !strcmp($3, "Views")){ + for(int i = PView::list.size() - 1; i >= 0; i--) + if(PView::list[i]->getData()->empty()) delete PView::list[i]; + } + else + yymsg(0, "Unknown command 'Delete %s %s'", $2, $3); +#endif + Free($2); Free($3); + } + | tDelete tDefineStruct tEND + { + nameSpaces.clear(); + } +; + +// C O L O R I F Y + +Colorify : + tColor ColorExpr '{' ListOfShapes '}' + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs($4, dimTags); + setColor(dimTags, $2, false); + List_Delete($4); + } + | tRecursive tColor ColorExpr '{' ListOfShapes '}' + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs($5, dimTags); + setColor(dimTags, $3, true); + List_Delete($5); + } +; + +// S E T P A R T I T I O N + +SetPartition : + tSetPartition FExpr '{' ListOfShapes '}' + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs($4, dimTags); + for(unsigned int i = 0; i < dimTags.size(); i++){ + GEntity *ge = GModel::current()->getEntityByTag + (dimTags[i].first, dimTags[i].second); + if(ge){ + for(unsigned int j = 0; j < ge->getNumMeshElements(); j++) + ge->getMeshElement(j)->setPartition((int)$2); + } + } + List_Delete($4); + } +; + +// V I S I B I L I T Y + +Visibility : + tShow tBIGSTR tEND + { + std::string what = $2; + setVisibility(-1, 1, false); + Free($2); + } + | tHide tBIGSTR tEND + { + std::string what = $2; + setVisibility(-1, 0, false); + Free($2); + } + | tShow '{' ListOfShapes '}' + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs($3, dimTags); + setVisibility(dimTags, 1, false); + List_Delete($3); + } + | tRecursive tShow '{' ListOfShapes '}' + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs($4, dimTags); + setVisibility(dimTags, 1, true); + List_Delete($4); + } + | tHide '{' ListOfShapes '}' + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs($3, dimTags); + setVisibility(dimTags, 0, false); + List_Delete($3); + } + | tRecursive tHide '{' ListOfShapes '}' + { + std::vector<std::pair<int, int> > dimTags; + ListOfShapes2VectorOfPairs($4, dimTags); + setVisibility(dimTags, 0, true); + List_Delete($4); + } +; + +// C O M M A N D + +Command : + String__Index StringExpr tEND + { + if(!strcmp($1, "Include")){ + std::string tmp = FixRelativePath(gmsh_yyname, $2); + Msg::StatusBar(true, "Reading '%s'...", tmp.c_str()); + // Warning: we explicitly ask ParseFile not to fclose() the included + // file, in order to allow user functions definitions in these files. + // The files will be closed in the next time OpenFile terminates. If + // you need to include many many files and don't have functions in + // the files, use "Merge" instead of "Include", as some OSes limit + // the number of files a process can open simultaneously. (A better + // solution would be to modify FunctionManager to reopen the files + // instead of using the FILE pointer...) + ParseFile(tmp, false, true); + SetBoundingBox(); + Msg::StatusBar(true, "Done reading '%s'", tmp.c_str()); + } + else if(!strcmp($1, "Print")){ + // make sure we have the latest data from CAD internals in GModel (fixes + // bug where we would have no geometry in the picture if the print + // command is in the same file as the geometry) + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + std::string tmp = FixRelativePath(gmsh_yyname, $2); + CreateOutputFile(tmp, CTX::instance()->print.fileFormat); + } + else if(!strcmp($1, "Save")){ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + std::string tmp = FixRelativePath(gmsh_yyname, $2); + CreateOutputFile(tmp, CTX::instance()->mesh.fileFormat); + } + else if(!strcmp($1, "Merge") || !strcmp($1, "MergeWithBoundingBox")){ + // sync CAD internals here, so that if we e.g. import a STEP file, we + // have the correct entity tags and the numberings don't clash + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + std::string tmp = FixRelativePath(gmsh_yyname, $2); + MergeFile(tmp, true); + } + else if(!strcmp($1, "NonBlockingSystemCall")){ + SystemCall($2); + } + else if(!strcmp($1, "System") || !strcmp($1, "SystemCall")){ + SystemCall($2, true); + } + else if(!strcmp($1, "SetName")){ + GModel::current()->setName($2); + } + else if(!strcmp($1, "CreateDir")){ + std::string tmp = FixRelativePath(gmsh_yyname, $2); + CreateSingleDir(tmp); + } + else if(!strcmp($1, "OnelabRun")){ + Msg::RunOnelabClient($2); + } + else if(!strcmp($1, "OptimizeMesh")){ + GModel::current()->optimizeMesh($2); + } + else{ + yymsg(0, "Unknown command '%s'", $1); + } + Free($1); Free($2); + } + | tOnelabRun '(' RecursiveListOfStringExprVar ')' tEND + { + int n = List_Nbr($3); + if(n == 1){ + char *s; List_Read($3, 0, &s); + Msg::RunOnelabClient(s); + Free(s); + } + else if(n == 2){ + char *s, *t; List_Read($3, 0, &s); List_Read($3, 1, &t); + Msg::RunOnelabClient(s, t); + Free(s); Free(t); + } + else{ + yymsg(0, "OnelabRun takes one or two arguments"); + } + List_Delete($3); + } + | String__Index String__Index '[' FExpr ']' StringExprVar tEND + { +#if defined(HAVE_POST) + if(!strcmp($1, "Save") && !strcmp($2, "View")){ + int index = (int)$4; + if(index >= 0 && index < (int)PView::list.size()){ + std::string tmp = FixRelativePath(gmsh_yyname, $6); + PView::list[index]->write(tmp, CTX::instance()->post.fileFormat); + } + else + yymsg(0, "Unknown view %d", index); + } + else + yymsg(0, "Unknown command '%s'", $1); +#endif + Free($1); Free($2); Free($6); + } + | String__Index String__Index String__Index '[' FExpr ']' tEND + { +#if defined(HAVE_POST) && defined(HAVE_MESH) + if(!strcmp($1, "Background") && !strcmp($2, "Mesh") && !strcmp($3, "View")){ + int index = (int)$5; + if(index >= 0 && index < (int)PView::list.size()) + GModel::current()->getFields()->setBackgroundMesh(index); + else + yymsg(0, "Unknown view %d", index); + } + else + yymsg(0, "Unknown command '%s'", $1); +#endif + Free($1); Free($2); Free($3); + } + | String__Index FExpr tEND + { + if(!strcmp($1, "Sleep")){ + SleepInSeconds($2); + } + else if(!strcmp($1, "Remesh")){ + yymsg(0, "Surface remeshing must be reinterfaced"); + } + else if(!strcmp($1, "Mesh")){ + int lock = CTX::instance()->lock; + CTX::instance()->lock = 0; + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + GModel::current()->mesh((int)$2); + CTX::instance()->lock = lock; + } + else if(!strcmp($1, "SetOrder")){ +#if defined(HAVE_MESH) + SetOrderN(GModel::current(), $2, CTX::instance()->mesh.secondOrderLinear, + CTX::instance()->mesh.secondOrderIncomplete, + CTX::instance()->mesh.meshOnlyVisible); +#endif + } + else if(!strcmp($1, "PartitionMesh")){ + GModel::current()->partitionMesh($2); + } + else + yymsg(0, "Unknown command '%s'", $1); + Free($1); + } + | tPlugin '(' tSTRING ')' '.' tSTRING tEND + { +#if defined(HAVE_PLUGINS) + try { + PluginManager::instance()->action($3, $6, 0); + } + catch(...) { + yymsg(0, "Unknown action '%s' or plugin '%s'", $6, $3); + } +#endif + Free($3); Free($6); + } + | tCombine tSTRING tEND + { +#if defined(HAVE_POST) + if(!strcmp($2, "ElementsFromAllViews")) + PView::combine(false, 1, CTX::instance()->post.combineRemoveOrig); + else if(!strcmp($2, "ElementsFromVisibleViews")) + PView::combine(false, 0, CTX::instance()->post.combineRemoveOrig); + else if(!strcmp($2, "ElementsByViewName")) + PView::combine(false, 2, CTX::instance()->post.combineRemoveOrig); + else if(!strcmp($2, "TimeStepsFromAllViews")) + PView::combine(true, 1, CTX::instance()->post.combineRemoveOrig); + else if(!strcmp($2, "TimeStepsFromVisibleViews")) + PView::combine(true, 0, CTX::instance()->post.combineRemoveOrig); + else if(!strcmp($2, "TimeStepsByViewName")) + PView::combine(true, 2, CTX::instance()->post.combineRemoveOrig); + else if(!strcmp($2, "Views")) + PView::combine(false, 1, CTX::instance()->post.combineRemoveOrig); + else if(!strcmp($2, "TimeSteps")) + PView::combine(true, 2, CTX::instance()->post.combineRemoveOrig); + else + yymsg(0, "Unknown 'Combine' command"); +#endif + Free($2); + } + | tExit tEND + { + Msg::Exit(0); + } + | tAbort tEND + { + gmsh_yyerrorstate = 999; // this will be checked when yyparse returns + YYABORT; + } + | tSyncModel tEND + { + // force sync + if(GModel::current()->getOCCInternals()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + } + | tNewModel tEND + { + new GModel(); + GModel::current(GModel::list.size() - 1); + } + | tBoundingBox tEND + { + CTX::instance()->forcedBBox = 0; + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + SetBoundingBox(); + } + | tBoundingBox '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' tEND + { + CTX::instance()->forcedBBox = 1; + SetBoundingBox($3, $5, $7, $9, $11, $13); + } + | tDraw tEND + { +#if defined(HAVE_OPENGL) + drawContext::global()->draw(); +#endif + } + | tSetChanged tEND + { +#if defined(HAVE_OPENGL) + CTX::instance()->mesh.changed = ENT_ALL; + for(unsigned int index = 0; index < PView::list.size(); index++) + PView::list[index]->setChanged(true); +#endif + } + | tCreateTopology tEND + { + GModel::current()->createTopologyFromMesh(); + } + | tCreateTopologyNoHoles tEND + { + GModel::current()->createTopologyFromMesh(1); + } + | tRefineMesh tEND + { + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + GModel::current()->refineMesh(CTX::instance()->mesh.secondOrderLinear); + } + | tAdaptMesh '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' + '{' RecursiveListOfListOfDouble '}' '{' FExpr ',' FExpr '}' tEND + { + int lock = CTX::instance()->lock; + CTX::instance()->lock = 0; + std::vector<int> technique; + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + technique.push_back((int)d); + } + if(technique.empty()){ + yymsg(0, "Need at least one adaptation technique"); + } + else{ + std::vector<simpleFunction<double>*> f; + for(int i = 0; i < List_Nbr($6); i++){ + double d; + List_Read($6, i, &d); + gLevelset *l = gLevelset::find((int)d); + if(l) f.push_back(l); + else yymsg(0, "Unknown levelset %d", (int)d); + } + if(technique.size() != f.size()){ + yymsg(0, "Number of techniques != number of levelsets"); + } + else{ + if(List_Nbr($9) != (int)f.size()){ + yymsg(0, "Number of parameters != number of levelsets"); + } + else{ + std::vector<std::vector<double> > parameters; + parameters.resize(List_Nbr($9)); + for(int i = 0; i < List_Nbr($9); i++){ + List_T *l = *(List_T**)List_Pointer($9, i); + for(int j = 0; j < List_Nbr(l); j++){ + double d; + List_Read(l, j, &d); + parameters[i].push_back(d); + } + } + int niter = (int)$12; + bool meshAll = ($14 == 0) ? false : true; + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + GModel::current()->adaptMesh(technique, f, parameters, niter, meshAll); + } + } + } + List_Delete($3); + List_Delete($6); + for(int i = 0; i < List_Nbr($9); i++) + List_Delete(*(List_T**)List_Pointer($9, i)); + List_Delete($9); + CTX::instance()->lock = lock; + } +; + +// S L I D E + +Slide : + tSlide '(' '{' RecursiveListOfDouble '}' ',' StringExpr ',' StringExpr ')' tEND + { +#if defined(HAVE_POPPLER) + std::vector<int> is; + for(int i = 0; i < List_Nbr($4); i++){ + double d; + List_Read($4, i, &d); + is.push_back ((int) d); + } + gmshPopplerWrapper::instance()->setMacroForPages(is, $7, $9 ); +#endif + } + +// L O O P + +Loop : + tFor '(' FExpr tDOTS FExpr ')' + { + LoopControlVariablesTab[ImbricatedLoop][0] = $3; + LoopControlVariablesTab[ImbricatedLoop][1] = $5; + LoopControlVariablesTab[ImbricatedLoop][2] = 1.0; + LoopControlVariablesNameTab[ImbricatedLoop] = ""; + gmshgetpos(gmsh_yyin, &yyposImbricatedLoopsTab[ImbricatedLoop]); + yylinenoImbricatedLoopsTab[ImbricatedLoop] = gmsh_yylineno; + if($3 > $5) + skip("For", "EndFor"); + else + ImbricatedLoop++; + if(ImbricatedLoop > MAX_RECUR_LOOPS - 1){ + yymsg(0, "Reached maximum number of imbricated loops"); + ImbricatedLoop = MAX_RECUR_LOOPS - 1; + } + } + | tFor '(' FExpr tDOTS FExpr tDOTS FExpr ')' + { + LoopControlVariablesTab[ImbricatedLoop][0] = $3; + LoopControlVariablesTab[ImbricatedLoop][1] = $5; + LoopControlVariablesTab[ImbricatedLoop][2] = $7; + LoopControlVariablesNameTab[ImbricatedLoop] = ""; + gmshgetpos(gmsh_yyin, &yyposImbricatedLoopsTab[ImbricatedLoop]); + yylinenoImbricatedLoopsTab[ImbricatedLoop] = gmsh_yylineno; + if(($7 > 0. && $3 > $5) || ($7 < 0. && $3 < $5)) + skip("For", "EndFor"); + else + ImbricatedLoop++; + if(ImbricatedLoop > MAX_RECUR_LOOPS - 1){ + yymsg(0, "Reached maximum number of imbricated loops"); + ImbricatedLoop = MAX_RECUR_LOOPS - 1; + } + } + | tFor tSTRING tIn '{' FExpr tDOTS FExpr '}' + { + LoopControlVariablesTab[ImbricatedLoop][0] = $5; + LoopControlVariablesTab[ImbricatedLoop][1] = $7; + LoopControlVariablesTab[ImbricatedLoop][2] = 1.0; + LoopControlVariablesNameTab[ImbricatedLoop] = $2; + gmsh_yysymbol &s(gmsh_yysymbols[$2]); + s.list = false; + s.value.resize(1); + s.value[0] = $5; + gmshgetpos(gmsh_yyin, &yyposImbricatedLoopsTab[ImbricatedLoop]); + yylinenoImbricatedLoopsTab[ImbricatedLoop] = gmsh_yylineno; + if($5 > $7) + skip("For", "EndFor"); + else + ImbricatedLoop++; + if(ImbricatedLoop > MAX_RECUR_LOOPS - 1){ + yymsg(0, "Reached maximum number of imbricated loops"); + ImbricatedLoop = MAX_RECUR_LOOPS - 1; + } + Free($2); + } + | tFor tSTRING tIn '{' FExpr tDOTS FExpr tDOTS FExpr '}' + { + LoopControlVariablesTab[ImbricatedLoop][0] = $5; + LoopControlVariablesTab[ImbricatedLoop][1] = $7; + LoopControlVariablesTab[ImbricatedLoop][2] = $9; + LoopControlVariablesNameTab[ImbricatedLoop] = $2; + gmsh_yysymbol &s(gmsh_yysymbols[$2]); + s.list = false; + s.value.resize(1); + s.value[0] = $5; + gmshgetpos(gmsh_yyin, &yyposImbricatedLoopsTab[ImbricatedLoop]); + yylinenoImbricatedLoopsTab[ImbricatedLoop] = gmsh_yylineno; + if(($9 > 0. && $5 > $7) || ($9 < 0. && $5 < $7)) + skip("For", "EndFor"); + else + ImbricatedLoop++; + if(ImbricatedLoop > MAX_RECUR_LOOPS - 1){ + yymsg(0, "Reached maximum number of imbricated loops"); + ImbricatedLoop = MAX_RECUR_LOOPS - 1; + } + Free($2); + } + | tEndFor + { + if(ImbricatedLoop <= 0){ + yymsg(0, "Invalid For/EndFor loop"); + ImbricatedLoop = 0; + } + else{ + double step = LoopControlVariablesTab[ImbricatedLoop - 1][2]; + std::string name = LoopControlVariablesNameTab[ImbricatedLoop - 1]; + if(name.size()){ + if(!gmsh_yysymbols.count(name)) + yymsg(0, "Unknown loop variable '%s'", name.c_str()); + else{ + gmsh_yysymbol &s(gmsh_yysymbols[name]); + if(!s.list && s.value.size()){ + s.value[0] += step; + LoopControlVariablesTab[ImbricatedLoop - 1][0] = s.value[0]; + } + else + yymsg(0, "Bad loop variable %s", name.c_str()); + } + } + else{ + LoopControlVariablesTab[ImbricatedLoop - 1][0] += step; + } + double x0 = LoopControlVariablesTab[ImbricatedLoop - 1][0]; + double x1 = LoopControlVariablesTab[ImbricatedLoop - 1][1]; + if((step > 0. && x0 <= x1) || (step < 0. && x0 >= x1)){ + gmshsetpos(gmsh_yyin, &yyposImbricatedLoopsTab[ImbricatedLoop - 1]); + gmsh_yylineno = yylinenoImbricatedLoopsTab[ImbricatedLoop - 1]; + } + else + ImbricatedLoop--; + } + } + | tMacro tSTRING + { + if(!FunctionManager::Instance()->createFunction + (std::string($2), gmsh_yyin, gmsh_yyname, gmsh_yylineno)) + yymsg(0, "Redefinition of function %s", $2); + skip(NULL, "Return"); + Free($2); + } + | tMacro StringExpr + { + if(!FunctionManager::Instance()->createFunction + (std::string($2), gmsh_yyin, gmsh_yyname, gmsh_yylineno)) + yymsg(0, "Redefinition of function %s", $2); + skip(NULL, "Return"); + Free($2); + } + | tReturn + { + if(!FunctionManager::Instance()->leaveFunction + (&gmsh_yyin, gmsh_yyname, gmsh_yylineno)) + yymsg(0, "Error while exiting function"); + } + | tCall String__Index tEND + { + if(!FunctionManager::Instance()->enterFunction + (std::string($2), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) + yymsg(0, "Unknown function '%s'", $2); + Free($2); + } + | tCall StringExpr tEND + { + if(!FunctionManager::Instance()->enterFunction + (std::string($2), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) + yymsg(0, "Unknown function '%s'", $2); + Free($2); + } + | tIf '(' FExpr ')' + { + ImbricatedTest++; + if(ImbricatedTest > MAX_RECUR_TESTS-1){ + yymsg(0, "Reached maximum number of imbricated tests"); + ImbricatedTest = MAX_RECUR_TESTS-1; + } + + if($3){ + // Current test is true + statusImbricatedTests[ImbricatedTest] = 1; + } + else{ + statusImbricatedTests[ImbricatedTest] = 0; + // Go after the next ElseIf or Else or EndIf + int type_until2 = 0; + skipTest("If", "EndIf", "ElseIf", 4, &type_until2); + if(!type_until2) ImbricatedTest--; // EndIf reached + } + } + | tElseIf '(' FExpr ')' + { + if(ImbricatedTest > 0){ + if (statusImbricatedTests[ImbricatedTest]){ + // Last test (If or ElseIf) was true, thus go after EndIf (out of If EndIf) + skip("If", "EndIf"); + ImbricatedTest--; + } + else{ + // Previous test(s) (If and ElseIf) not yet true + if($3){ + statusImbricatedTests[ImbricatedTest] = 1; + } + else{ + // Current test still not true: statusImbricatedTests[ImbricatedTest] = 0; + // Go after the next ElseIf or Else or EndIf + int type_until2 = 0; + skipTest("If", "EndIf", "ElseIf", 4, &type_until2); + if(!type_until2) ImbricatedTest--; + } + } + } + else{ + yymsg(0, "Orphan ElseIf"); + } + } + | tElse + { + if(ImbricatedTest > 0){ + if(statusImbricatedTests[ImbricatedTest]){ + skip("If", "EndIf"); + ImbricatedTest--; + } + } + else{ + yymsg(0, "Orphan Else"); + } + } + | tEndIf + { + ImbricatedTest--; + if(ImbricatedTest < 0) + yymsg(1, "Orphan EndIf"); + } +; + + +// E X T R U D E + +Extrude : + tExtrude VExpr '{' ListOfShapes '}' + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs($4, inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->extrude + (inDimTags, $2[0], $2[1], $2[2], outDimTags); + } + else{ + r = GModel::current()->getGEOInternals()->extrude + (inDimTags, $2[0], $2[1], $2[2], outDimTags); + } + if(!r) yymsg(0, "Could not extrude shapes"); + $$ = $4; + List_Reset($$); + VectorOfPairs2ListOfShapes(outDimTags, $$); + } + | tExtrude '{' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes '}' + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs($10, inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->revolve + (inDimTags, $5[0], $5[1], $5[2], $3[0], $3[1], $3[2], $7, outDimTags); + } + else{ + r = GModel::current()->getGEOInternals()->revolve + (inDimTags, $5[0], $5[1], $5[2], $3[0], $3[1], $3[2], $7, outDimTags); + } + if(!r) yymsg(0, "Could not extrude shapes"); + $$ = $10; + List_Reset($$); + VectorOfPairs2ListOfShapes(outDimTags, $$); + } + | tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes '}' + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs($12, inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(0, "Twisting extrude not available with OpenCASCADE factory"); + } + else{ + r = GModel::current()->getGEOInternals()->twist + (inDimTags, $7[0], $7[1], $7[2], $3[0], $3[1], $3[2], $5[0], $5[1], $5[2], + $9, outDimTags); + } + if(!r) yymsg(0, "Could not extrude shapes"); + $$ = $12; + List_Reset($$); + VectorOfPairs2ListOfShapes(outDimTags, $$); + } + | tExtrude VExpr '{' ListOfShapes + { + extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; + extr.mesh.QuadToTri = NO_QUADTRI; + extr.mesh.ScaleLast = false; + } + ExtrudeParameters '}' + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs($4, inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->extrude + (inDimTags, $2[0], $2[1], $2[2], outDimTags, &extr); + } + else{ + r = GModel::current()->getGEOInternals()->extrude + (inDimTags, $2[0], $2[1], $2[2], outDimTags, &extr); + } + if(!r) yymsg(0, "Could not extrude shapes"); + $$ = $4; + List_Reset($$); + VectorOfPairs2ListOfShapes(outDimTags, $$); + } + | tExtrude '{' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes + { + extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; + extr.mesh.QuadToTri = NO_QUADTRI; + extr.mesh.ScaleLast = false; + } + ExtrudeParameters '}' + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs($10, inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->revolve + (inDimTags, $5[0], $5[1], $5[2], $3[0], $3[1], $3[2], $7, outDimTags, + &extr); + } + else{ + r = GModel::current()->getGEOInternals()->revolve + (inDimTags, $5[0], $5[1], $5[2], $3[0], $3[1], $3[2], $7, outDimTags, + &extr); + } + if(!r) yymsg(0, "Could not extrude shapes"); + $$ = $10; + List_Reset($$); + VectorOfPairs2ListOfShapes(outDimTags, $$); + } + | tExtrude '{' VExpr ',' VExpr ',' VExpr ',' FExpr '}' '{' ListOfShapes + { + extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; + extr.mesh.QuadToTri = NO_QUADTRI; + extr.mesh.ScaleLast = false; + } + ExtrudeParameters '}' + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs($12, inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(0, "Twisting extrude not available with OpenCASCADE factory"); + } + else{ + r = GModel::current()->getGEOInternals()->twist + (inDimTags, $7[0], $7[1], $7[2], $3[0], $3[1], $3[2], $5[0], $5[1], $5[2], + $9, outDimTags, &extr); + } + if(!r) yymsg(0, "Could not extrude shapes"); + $$ = $12; + List_Reset($$); + VectorOfPairs2ListOfShapes(outDimTags, $$); + } + | tExtrude '{' ListOfShapes + { + extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; + extr.mesh.QuadToTri = NO_QUADTRI; + extr.mesh.ScaleLast = false; + } + ExtrudeParameters '}' + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs($3, inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + yymsg(0, "Boundary layer extrusion not available with OpenCASCADE factory"); + } + else{ + r = GModel::current()->getGEOInternals()->boundaryLayer + (inDimTags, outDimTags, &extr); + } + if(!r) yymsg(0, "Could not extrude shapes"); + $$ = $3; + List_Reset($$); + VectorOfPairs2ListOfShapes(outDimTags, $$); + } + | tExtrude '{' ListOfShapes '}' tUsing tWire '{' FExpr '}' + { + std::vector<std::pair<int, int> > inDimTags, outDimTags; + ListOfShapes2VectorOfPairs($3, inDimTags); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + r = GModel::current()->getOCCInternals()->addPipe(inDimTags, (int)$8, outDimTags); + } + else{ + yymsg(0, "Pipe only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not extrude shapes"); + $$ = $3; + List_Reset($$); + VectorOfPairs2ListOfShapes(outDimTags, $$); + } + | tThruSections ListOfDouble + { + $$ = List_Create(2, 1, sizeof(Shape)); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<int> wires; ListOfDouble2Vector($2, wires); + std::vector<std::pair<int, int> > outDimTags; + r = GModel::current()->getOCCInternals()->addThruSections + (-1, wires, outDimTags, false, false); + VectorOfPairs2ListOfShapes(outDimTags, $$); + } + else{ + yymsg(0, "ThruSections only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add thrusections"); + List_Delete($2); + } + | tRuled tThruSections ListOfDouble + { + $$ = List_Create(2, 1, sizeof(Shape)); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<int> wires; ListOfDouble2Vector($3, wires); + std::vector<std::pair<int, int> > outDimTags; + r = GModel::current()->getOCCInternals()->addThruSections + (-1, wires, outDimTags, false, true); + VectorOfPairs2ListOfShapes(outDimTags, $$); + } + else{ + yymsg(0, "ThruSections only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not add ruled thrusections"); + List_Delete($3); + } + | tFillet '{' RecursiveListOfDouble '}' '{' RecursiveListOfDouble '}' '{' FExpr '}' + { + $$ = List_Create(2, 1, sizeof(Shape)); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + double radius = $9; + std::vector<int> regions, edges; + ListOfDouble2Vector($3, regions); ListOfDouble2Vector($6, edges); + std::vector<std::pair<int, int> > outDimTags; + r = GModel::current()->getOCCInternals()->fillet + (regions, edges, radius, outDimTags); + VectorOfPairs2ListOfShapes(outDimTags, $$); + } + else{ + yymsg(0, "Fillet only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not fillet shapes"); + List_Delete($3); + List_Delete($6); + } +; + +ExtrudeParameters : + ExtrudeParameter + { + } + | ExtrudeParameters ExtrudeParameter + { + } +; + +ExtrudeParameter : + tLayers '{' FExpr '}' tEND + { + int n = (int)fabs($3); + if(n){ // we accept n==0 to easily disable layers + extr.mesh.ExtrudeMesh = true; + extr.mesh.NbLayer = 1; + extr.mesh.NbElmLayer.clear(); + extr.mesh.hLayer.clear(); + extr.mesh.NbElmLayer.push_back((int)fabs($3)); + extr.mesh.hLayer.push_back(1.); + } + } + | tLayers '{' ListOfDouble ',' ListOfDouble '}' tEND + { + extr.mesh.ExtrudeMesh = true; + extr.mesh.NbLayer = List_Nbr($3); + if(List_Nbr($3) == List_Nbr($5)){ + extr.mesh.NbElmLayer.clear(); + extr.mesh.hLayer.clear(); + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + extr.mesh.NbElmLayer.push_back((d > 0) ? (int)d : 1); + List_Read($5, i, &d); + extr.mesh.hLayer.push_back(d); + } + } + else + yymsg(0, "Wrong layer definition {%d, %d}", List_Nbr($3), List_Nbr($5)); + List_Delete($3); + List_Delete($5); + } + | tScaleLast tEND + { + extr.mesh.ScaleLast = true; + } + | tRecombine tEND + { + extr.mesh.Recombine = true; + } + | tRecombine FExpr tEND + { + extr.mesh.Recombine = $2 ? true : false; + } + | tQuadTriAddVerts tEND + { + extr.mesh.QuadToTri = QUADTRI_ADDVERTS_1; + } + | tQuadTriAddVerts tRecombLaterals tEND + { + extr.mesh.QuadToTri = QUADTRI_ADDVERTS_1_RECOMB; + } + | tQuadTriNoNewVerts tEND + { + extr.mesh.QuadToTri = QUADTRI_NOVERTS_1; + } + | tQuadTriNoNewVerts tRecombLaterals tEND + { + extr.mesh.QuadToTri = QUADTRI_NOVERTS_1_RECOMB; + } + | tHole '(' FExpr ')' tAFFECT ListOfDouble tUsing FExpr tEND + { + std::vector<int> tags; ListOfDouble2Vector($6, tags); + int num = (int)$3; + GModel::current()->getGEOInternals()->addDiscreteSurface(num); + extr.mesh.Holes[num].first = $8; + extr.mesh.Holes[num].second = tags; + List_Delete($6); + } + | tUsing tSTRING '[' FExpr ']' tEND + { + if(!strcmp($2, "Index")) + extr.mesh.BoundaryLayerIndex = $4; + else if(!strcmp($2, "View")) + extr.mesh.ViewIndex = $4; + Free($2); + } +; + +// B O O L E A N + +BooleanOperator : + tBooleanUnion { $$ = OCC_Internals::Union; } + | tBooleanIntersection { $$ = OCC_Internals::Intersection; } + | tBooleanDifference { $$ = OCC_Internals::Difference; } + | tBooleanSection { $$ = OCC_Internals::Section; } + | tBooleanFragments { $$ = OCC_Internals::Fragments; } +; + +BooleanOption : + { $$ = 0; } + | tDelete tEND { $$ = 1; } + | tRecursive tDelete tEND { $$ = 2; } + | tDelete FExpr tEND { $$ = $2 ? 1 : 0; } + | tRecursive tDelete FExpr tEND { $$ = $3 ? 2 : 0; } + +Boolean : + BooleanOperator '{' ListOfShapes BooleanOption '}' + '{' ListOfShapes BooleanOption '}' + { + $$ = List_Create(2, 1, sizeof(Shape)); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<std::pair<int, int > > object, tool, out; + ListOfShapes2VectorOfPairs($3, object); + ListOfShapes2VectorOfPairs($7, tool); + // currently we don't distinguish between Delete and Recursive Delete: + // we always delete recursively. Let us know if you have examples where + // having the choice would be interesting + r = GModel::current()->getOCCInternals()->applyBooleanOperator + (-1, (OCC_Internals::BooleanOperator)$1, object, tool, out, $4, $8); + VectorOfPairs2ListOfShapes(out, $$); + } + else{ + yymsg(0, "Boolean operators only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could not apply boolean operator"); + List_Delete($3); + List_Delete($7); + } + | tShapeFromFile '(' StringExprVar ')' + { + $$ = List_Create(2, 1, sizeof(Shape)); + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<std::pair<int, int> > out; + std::string tmp = FixRelativePath(gmsh_yyname, $3); + GModel::current()->getOCCInternals()->importShapes(tmp, true, out); + VectorOfPairs2ListOfShapes(out, $$); + } + else{ + yymsg(0, "ShapeFromFile only available with OpenCASCADE factory"); + } + if(!r) yymsg(0, "Could import shape"); + Free($3); + } +; + +BooleanShape : + BooleanOperator '(' FExpr ')' tAFFECT '{' ListOfShapes BooleanOption '}' + '{' ListOfShapes BooleanOption '}' tEND + { + bool r = true; + if(factory == "OpenCASCADE" && GModel::current()->getOCCInternals()){ + std::vector<std::pair<int, int> > object, tool, out; + ListOfShapes2VectorOfPairs($7, object); + ListOfShapes2VectorOfPairs($11, tool); + // currently we don't distinguish between Delete and Recursive Delete: + // we always delete recursively. Let us know if you have examples where + // having the choice would be interesting + r = GModel::current()->getOCCInternals()->applyBooleanOperator + ((int)$3, (OCC_Internals::BooleanOperator)$1, object, tool, out, $8, $12); + } + if(!r) yymsg(0, "Could not apply boolean operator"); + List_Delete($7); + List_Delete($11); + } + +// M E S H I N G C O N S T R A I N T S ( T R A N S F I N I T E , . . . ) + +TransfiniteType : + { + $$[0] = $$[1] = 1.; + } + | tUsing tSTRING FExpr + { + if(!strcmp($2, "Progression") || !strcmp($2, "Power")) + $$[0] = 1.; + else if(!strcmp($2, "Bump")) + $$[0] = 2.; + else{ + yymsg(0, "Unknown transfinite mesh type"); + $$[0] = 1.; + } + $$[1] = $3; + Free($2); + } +; + +TransfiniteArrangement : + { + $$ = -1; // left + } + | tSTRING + { + if(!strcmp($1, "Right")) + $$ = 1; + else if(!strcmp($1, "Left")) + $$ = -1; + else if(!strcmp($1, "AlternateRight")) + $$ = 2; + else if(!strcmp($1, "AlternateLeft")) + $$ = -2; + else // "Alternate" -> "Alternate Right" + $$ = 2; + Free($1); + } +; + +TransfiniteCorners : + { + $$ = List_Create(1, 1, sizeof(double)); + } + | tAFFECT ListOfDouble + { + $$ = $2; + } + +RecombineAngle : + { + $$ = 45; + } + | tAFFECT FExpr + { + $$ = (int)$2; + } +; + +PeriodicTransform : + { + $$ = List_Create(1, 1, sizeof(double)); + } + | tAffine ListOfDouble + { + $$ = $2; + } +; + +Constraints : + tCharacteristic tLength ListOfDouble tAFFECT FExpr tEND + { + // mesh sizes at vertices are stored in internal CAD data, as they can be + // specified during vertex creation and copied around during CAD + // operations + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + int tag = (int)d; + if(GModel::current()->getOCCInternals()) + GModel::current()->getOCCInternals()->setMeshSize(0, tag, $5); + GModel::current()->getGEOInternals()->setMeshSize(0, tag, $5); + GVertex *gv = GModel::current()->getVertexByTag(tag); + if(gv) gv->setPrescribedMeshSizeAtVertex($5); + } + List_Delete($3); + } + | tTransfinite tLine ListOfDoubleOrAll tAFFECT FExpr TransfiniteType tEND + { + // transfinite constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + int type = (int)$6[0]; + double coef = fabs($6[1]); + int npoints = ((int)$5 < 2) ? 2 : (int)$5; + if(!$3){ + GModel::current()->getGEOInternals()->setTransfiniteLine + (0, npoints, type, coef); + for(GModel::eiter it = GModel::current()->firstEdge(); + it != GModel::current()->lastEdge(); it++){ + (*it)->meshAttributes.method = MESH_TRANSFINITE; + (*it)->meshAttributes.nbPointsTransfinite = npoints; + (*it)->meshAttributes.typeTransfinite = type; + (*it)->meshAttributes.coeffTransfinite = coef; + } + } + else{ + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + int j = (int)fabs(d); + for(int sig = -1; sig <= 1; sig += 2){ + GModel::current()->getGEOInternals()->setTransfiniteLine + (sig * j, npoints, type * gmsh_sign(d), coef); + GEdge *ge = GModel::current()->getEdgeByTag(sig * j); + if(ge){ + ge->meshAttributes.method = MESH_TRANSFINITE; + ge->meshAttributes.nbPointsTransfinite = npoints; + ge->meshAttributes.typeTransfinite = type * gmsh_sign(d); + ge->meshAttributes.coeffTransfinite = coef; + } + } + } + List_Delete($3); + } + } + | tTransfinite tSurface ListOfDoubleOrAll TransfiniteCorners TransfiniteArrangement tEND + { + // transfinite constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + std::vector<int> corners; ListOfDouble2Vector($4, corners); + if(!$3){ + GModel::current()->getGEOInternals()->setTransfiniteSurface(0, $5, corners); + for(GModel::fiter it = GModel::current()->firstFace(); + it != GModel::current()->lastFace(); it++){ + (*it)->meshAttributes.method = MESH_TRANSFINITE; + (*it)->meshAttributes.transfiniteArrangement = $5; + } + } + else{ + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + int tag = (int)d; + GModel::current()->getGEOInternals()->setTransfiniteSurface(tag, $5, corners); + GFace *gf = GModel::current()->getFaceByTag(tag); + if(gf){ + gf->meshAttributes.method = MESH_TRANSFINITE; + gf->meshAttributes.transfiniteArrangement = $5; + if(corners.empty() || corners.size() == 3 || corners.size() == 4){ + for(unsigned int j = 0; j < corners.size(); j++){ + GVertex *gv = GModel::current()->getVertexByTag(corners[j]); + if(gv) + gf->meshAttributes.corners.push_back(gv); + else + yymsg(0, "Unknown model vertex with tag %d", corners[j]); + } + } + else{ + yymsg(0, "Transfinite surface requires 3 or 4 corners vertices"); + } + } + } + List_Delete($3); + } + List_Delete($4); + } + | tTransfinite tVolume ListOfDoubleOrAll TransfiniteCorners tEND + { + // transfinite constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + std::vector<int> corners; ListOfDouble2Vector($4, corners); + if(!$3){ + GModel::current()->getGEOInternals()->setTransfiniteVolume(0, corners); + for(GModel::riter it = GModel::current()->firstRegion(); + it != GModel::current()->lastRegion(); it++){ + (*it)->meshAttributes.method = MESH_TRANSFINITE; + } + } + else{ + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + int tag = (int)d; + GModel::current()->getGEOInternals()->setTransfiniteVolume(tag, corners); + GRegion *gr = GModel::current()->getRegionByTag(tag); + if(gr){ + gr->meshAttributes.method = MESH_TRANSFINITE; + if(corners.empty() || corners.size() == 6 || corners.size() == 8){ + for(unsigned int i = 0; i < corners.size(); i++){ + GVertex *gv = GModel::current()->getVertexByTag(corners[i]); + if(gv) + gr->meshAttributes.corners.push_back(gv); + else + yymsg(0, "Unknown model vertex with tag %d", corners[i]); + } + } + } + } + List_Delete($3); + } + List_Delete($4); + } + | tTransfQuadTri ListOfDoubleOrAll tEND + { + // transfinite constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(!$2){ + GModel::current()->getGEOInternals()->setTransfiniteVolumeQuadTri(0); + for(GModel::riter it = GModel::current()->firstRegion(); + it != GModel::current()->lastRegion(); it++) + (*it)->meshAttributes.QuadTri = TRANSFINITE_QUADTRI_1; + } + else{ + for(int i = 0; i < List_Nbr($2); i++){ + double d; + List_Read($2, i, &d); + int tag = (int)d; + GModel::current()->getGEOInternals()->setTransfiniteVolumeQuadTri(tag); + GRegion *gr = GModel::current()->getRegionByTag(tag); + if(gr) gr->meshAttributes.QuadTri = TRANSFINITE_QUADTRI_1; + } + List_Delete($2); + } + } + | tMeshAlgorithm tSurface '{' RecursiveListOfDouble '}' tAFFECT FExpr tEND + { + for(int i = 0; i < List_Nbr($4); i++){ + double d; + List_Read($4, i, &d); + CTX::instance()->mesh.algo2d_per_face[(int)d] = (int)$7; + } + List_Delete($4); + } + | tRecombine tSurface ListOfDoubleOrAll RecombineAngle tEND + { + // recombine constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(!$3){ + GModel::current()->getGEOInternals()->setRecombine(2, 0, $4); + for(GModel::fiter it = GModel::current()->firstFace(); + it != GModel::current()->lastFace(); it++){ + (*it)->meshAttributes.recombine = 1; + (*it)->meshAttributes.recombineAngle = $4; + } + } + else{ + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + int tag = (int)d; + GModel::current()->getGEOInternals()->setRecombine(2, tag, $4); + GFace *gf = GModel::current()->getFaceByTag(tag); + if(gf){ + gf->meshAttributes.recombine = 1; + gf->meshAttributes.recombineAngle = $4; + } + } + List_Delete($3); + } + } + | tRecombine tVolume ListOfDoubleOrAll tEND + { + // recombine constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(!$3){ + GModel::current()->getGEOInternals()->setRecombine(3, 0, 0.); + for(GModel::riter it = GModel::current()->firstRegion(); + it != GModel::current()->lastRegion(); it++){ + (*it)->meshAttributes.recombine3D = 1; + } + } + else{ + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + int tag = (int)d; + GModel::current()->getGEOInternals()->setRecombine(3, tag, 0.); + GRegion *gr = GModel::current()->getRegionByTag(tag); + if(gr) gr->meshAttributes.recombine3D = 1; + } + List_Delete($3); + } + } + | tSmoother tSurface ListOfDoubleOrAll tAFFECT FExpr tEND + { + // smoothing constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(!$3){ + GModel::current()->getGEOInternals()->setSmoothing(0, (int)$5); + for(GModel::fiter it = GModel::current()->firstFace(); + it != GModel::current()->lastFace(); it++){ + (*it)->meshAttributes.transfiniteSmoothing = (int)$5; + } + } + else{ + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + int tag = (int)d; + GModel::current()->getGEOInternals()->setSmoothing(tag, (int)$5); + GFace *gf = GModel::current()->getFaceByTag(tag); + if(gf) gf->meshAttributes.transfiniteSmoothing = (int)$5; + } + List_Delete($3); + } + } + | tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT + '{' RecursiveListOfDouble '}' PeriodicTransform tEND + { + if (List_Nbr($4) != List_Nbr($8)){ + yymsg(0, "Number of master lines (%d) different from number of " + "slaves (%d) ", List_Nbr($8), List_Nbr($4)); + } + else{ + std::vector<double> transfo; + if(List_Nbr($10) != 0) { + if (List_Nbr($10) < 12){ + yymsg(0, "Affine transformation requires at least 12 entries (we have %d)", + List_Nbr($10)); + } + else { + transfo.resize(List_Nbr($10)); + for(int i = 0; i < List_Nbr($10); i++) + List_Read($10, i, &transfo[i]); + } + } + for(int i = 0; i < List_Nbr($4); i++){ + double d_master, d_slave; + List_Read($8, i, &d_master); + List_Read($4, i, &d_slave); + int j_master = (int)d_master; + int j_slave = (int)d_slave; + addPeriodicEdge(j_slave, j_master, transfo); + } + } + List_Delete($4); + List_Delete($8); + } + | tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT + '{' RecursiveListOfDouble '}' PeriodicTransform tEND + { + if (List_Nbr($4) != List_Nbr($8)){ + yymsg(0, "Number of master faces (%d) different from number of " + "slaves (%d) ", List_Nbr($8), List_Nbr($4)); + } + else{ + if (List_Nbr($10) < 12){ + // FIXME full automatic case here if List_Nbr($10) == 0) + yymsg(0, "Affine transformation requires at least 12 entries"); + } + else { + std::vector<double> transfo(16,0); + for(int i = 0; i < List_Nbr($10); i++) + List_Read($10, i, &transfo[i]); + for(int i = 0; i < List_Nbr($4); i++){ + double d_master, d_slave; + List_Read($8, i, &d_master); + List_Read($4, i, &d_slave); + addPeriodicFace(d_slave, d_master, transfo); + } + } + } + List_Delete($4); + List_Delete($8); + } + | tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT + '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + { + if (List_Nbr($4) != List_Nbr($8)){ + yymsg(0, "Number of master edges (%d) different from number of " + "slaves (%d) ", List_Nbr($8), List_Nbr($4)); + } + else{ + SPoint3 axis($12[0],$12[1],$12[2]); + SPoint3 origin($14[0],$14[1],$14[2]); + double angle($16); + SPoint3 translation(0,0,0); + + std::vector<double> transfo; + computeAffineTransformation(origin,axis,angle,translation,transfo); + + for(int i = 0; i < List_Nbr($4); i++){ + double d_master, d_slave; + List_Read($8, i, &d_master); + List_Read($4, i, &d_slave); + addPeriodicEdge(d_slave,d_master,transfo); + } + } + List_Delete($4); + List_Delete($8); + } + | tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT + '{' RecursiveListOfDouble '}' tRotate '{' VExpr ',' VExpr ',' FExpr '}' tEND + { + if (List_Nbr($4) != List_Nbr($8)){ + yymsg(0, "Number of master faces (%d) different from number of " + "slaves (%d) ", List_Nbr($8), List_Nbr($4)); + } + else{ + SPoint3 origin($14[0],$14[1],$14[2]); + SPoint3 axis($12[0],$12[1],$12[2]); + double angle($16); + SPoint3 translation(0,0,0); + + std::vector<double> transfo; + computeAffineTransformation(origin,axis,angle,translation,transfo); + + for(int i = 0; i < List_Nbr($4); i++){ + double d_master, d_slave; + List_Read($8, i, &d_master); + List_Read($4, i, &d_slave); + addPeriodicFace(d_slave, d_master, transfo); + } + } + List_Delete($4); + List_Delete($8); + } + | tPeriodic tLine '{' RecursiveListOfDouble '}' tAFFECT + '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + { + if (List_Nbr($4) != List_Nbr($8)){ + yymsg(0, "Number of master edges (%d) different from number of " + "slaves (%d) ", List_Nbr($8), List_Nbr($4)); + } + else{ + SPoint3 origin(0,0,0); + SPoint3 axis(0,0,0); + double angle(0); + SPoint3 translation($11[0],$11[1],$11[2]); + + std::vector<double> transfo; + computeAffineTransformation(origin,axis,angle,translation,transfo); + + for(int i = 0; i < List_Nbr($4); i++){ + double d_master, d_slave; + List_Read($8, i, &d_master); + List_Read($4, i, &d_slave); + addPeriodicEdge(d_slave,d_master,transfo); + } + } + List_Delete($4); + List_Delete($8); + } + | tPeriodic tSurface '{' RecursiveListOfDouble '}' tAFFECT + '{' RecursiveListOfDouble '}' tTranslate VExpr tEND + { + if (List_Nbr($4) != List_Nbr($8)){ + yymsg(0, "Number of master faces (%d) different from number of " + "slaves (%d) ", List_Nbr($8), List_Nbr($4)); + } + else{ + SPoint3 origin(0,0,0); + SPoint3 axis(0,0,0); + double angle(0); + SPoint3 translation($11[0],$11[1],$11[2]); + + std::vector<double> transfo; + computeAffineTransformation(origin,axis,angle,translation,transfo); + + for(int i = 0; i < List_Nbr($4); i++){ + double d_master, d_slave; + List_Read($8, i, &d_master); + List_Read($4, i, &d_slave); + addPeriodicFace(d_slave, d_master, transfo); + } + } + List_Delete($4); + List_Delete($8); + } + | tPeriodic tSurface FExpr '{' RecursiveListOfDouble '}' + tAFFECT FExpr '{' RecursiveListOfDouble '}' tEND + { + if (List_Nbr($5) != List_Nbr($10)){ + yymsg(0, "Number of master surface edges (%d) different from number of " + "slave (%d) edges", List_Nbr($10), List_Nbr($5)); + } + else{ + int j_master = (int)$8; + int j_slave = (int)$3; + std::map<int,int> edgeCounterParts; + for (int i = 0; i < List_Nbr($5); i++){ + double ds,dm; + List_Read($5,i,&ds); + List_Read($10,i,&dm); + edgeCounterParts[(int) ds] = (int) dm; + } + addPeriodicFace(j_slave, j_master, edgeCounterParts); + } + List_Delete($5); + List_Delete($10); + } + | tPoint '{' RecursiveListOfDouble '}' tIn tSurface '{' FExpr '}' tEND + { + std::vector<int> tags; ListOfDouble2Vector($3, tags); + addEmbedded(0, tags, 2, (int)$8); + List_Delete($3); + } + | tLine '{' RecursiveListOfDouble '}' tIn tSurface '{' FExpr '}' tEND + { + std::vector<int> tags; ListOfDouble2Vector($3, tags); + addEmbedded(1, tags, 2, (int)$8); + List_Delete($3); + } + | tPoint '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND + { + std::vector<int> tags; ListOfDouble2Vector($3, tags); + addEmbedded(0, tags, 3, (int)$8); + List_Delete($3); + } + | tLine '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND + { + std::vector<int> tags; ListOfDouble2Vector($3, tags); + addEmbedded(1, tags, 3, (int)$8); + List_Delete($3); + } + | tSurface '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND + { + std::vector<int> tags; ListOfDouble2Vector($3, tags); + addEmbedded(2, tags, 3, (int)$8); + List_Delete($3); + } + | tReverse tSurface ListOfDoubleOrAll tEND + { + // reverse mesh constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(!$3){ + GModel::current()->getGEOInternals()->setReverseMesh(2, 0); + for(GModel::fiter it = GModel::current()->firstFace(); + it != GModel::current()->lastFace(); it++){ + (*it)->meshAttributes.reverseMesh = 1; + } + } + else{ + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + int num = (int)d; + GModel::current()->getGEOInternals()->setReverseMesh(2, num); + GFace *gf = GModel::current()->getFaceByTag(num); + if(gf) gf->meshAttributes.reverseMesh = 1; + } + List_Delete($3); + } + } + | tReverse tLine ListOfDoubleOrAll tEND + { + // reverse mesh constraints are stored in GEO internals in addition to + // GModel, as they can be copied around during GEO operations + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(!$3){ + GModel::current()->getGEOInternals()->setReverseMesh(1, 0); + for(GModel::eiter it = GModel::current()->firstEdge(); + it != GModel::current()->lastEdge(); it++){ + (*it)->meshAttributes.reverseMesh = 1; + } + } + else{ + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + int num = (int)d; + GModel::current()->getGEOInternals()->setReverseMesh(1, num); + GEdge *ge = GModel::current()->getEdgeByTag(num); + if(ge) ge->meshAttributes.reverseMesh = 1; + } + List_Delete($3); + } + } + | tRelocateMesh tPoint ListOfDoubleOrAll tEND + { + if(!$3){ + for(GModel::viter it = GModel::current()->firstVertex(); + it != GModel::current()->lastVertex(); it++) + (*it)->relocateMeshVertices(); + } + else{ + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + GVertex *gv = GModel::current()->getVertexByTag((int)d); + if(gv) gv->relocateMeshVertices(); + } + List_Delete($3); + } + } + | tRelocateMesh tLine ListOfDoubleOrAll tEND + { + if(!$3){ + for(GModel::eiter it = GModel::current()->firstEdge(); + it != GModel::current()->lastEdge(); it++) + (*it)->relocateMeshVertices(); + } + else{ + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + GEdge *ge = GModel::current()->getEdgeByTag((int)d); + if(ge) ge->relocateMeshVertices(); + } + List_Delete($3); + } + } + | tRelocateMesh tSurface ListOfDoubleOrAll tEND + { + if(!$3){ + for(GModel::fiter it = GModel::current()->firstFace(); + it != GModel::current()->lastFace(); it++) + (*it)->relocateMeshVertices(); + } + else{ + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + GFace *gf = GModel::current()->getFaceByTag((int)d); + if(gf) gf->relocateMeshVertices(); + } + List_Delete($3); + } + } + | tDegenerated tLine ListOfDouble tEND + { + for(int i = 0; i < List_Nbr($3); i++){ + double dnum; + List_Read($3, i, &dnum); + int num = (int)dnum; + GModel::current()->getGEOInternals()->setDegenerated(1, num); + GEdge *ge = GModel::current()->getEdgeByTag(num); + if(ge) ge->setTooSmall(true); + } + List_Delete($3); + } + | tCompound tLine ListOfDouble tEND + { + std::vector<int> tags; ListOfDouble2Vector($3, tags); + GModel::current()->getGEOInternals()->setCompoundMesh(1, tags); + List_Delete($3); + } + | tCompound tSurface ListOfDouble tEND + { + std::vector<int> tags; ListOfDouble2Vector($3, tags); + GModel::current()->getGEOInternals()->setCompoundMesh(2, tags); + List_Delete($3); + } + | tCompound tVolume ListOfDouble tEND + { + std::vector<int> tags; ListOfDouble2Vector($3, tags); + GModel::current()->getGEOInternals()->setCompoundMesh(3, tags); + List_Delete($3); + } +; + + +// C O H E R E N C E + +Coherence : + tCoherence tEND + { + GModel::current()->getGEOInternals()->removeAllDuplicates(); + } + | tCoherence tSTRING tEND + { + if(!strcmp($2, "Geometry")) + GModel::current()->getGEOInternals()->removeAllDuplicates(); + else if(!strcmp($2, "Mesh")) + GModel::current()->removeDuplicateMeshVertices(CTX::instance()->geom.tolerance); + else + yymsg(0, "Unknown coherence command"); + Free($2); + } + | tCoherence tPoint '{' RecursiveListOfDouble '}' tEND + { + std::vector<int> tags; ListOfDouble2Vector($4, tags); + GModel::current()->getGEOInternals()->mergeVertices(tags); + List_Delete($4); + } +; + +// H O M O L O G Y + +HomologyCommand : + tHomology { $$ = (char*)"Homology"; } + | tCohomology { $$ = (char*)"Cohomology"; } + | tBetti { $$ = (char*)"Betti"; } + ; + +Homology : + HomologyCommand tEND + { + std::vector<int> domain, subdomain, dim; + for(int i = 0; i < 4; i++) dim.push_back(i); + GModel::current()->addHomologyRequest($1, domain, subdomain, dim); + } + | HomologyCommand '{' ListOfDouble '}' tEND + { + std::vector<int> domain, subdomain, dim; + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + domain.push_back((int)d); + } + for(int i = 0; i < 4; i++) dim.push_back(i); + GModel::current()->addHomologyRequest($1, domain, subdomain, dim); + List_Delete($3); + } + | HomologyCommand '{' ListOfDouble ',' ListOfDouble '}' tEND + { + std::vector<int> domain, subdomain, dim; + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + domain.push_back((int)d); + } + for(int i = 0; i < List_Nbr($5); i++){ + double d; + List_Read($5, i, &d); + subdomain.push_back((int)d); + } + for(int i = 0; i < 4; i++) dim.push_back(i); + GModel::current()->addHomologyRequest($1, domain, subdomain, dim); + List_Delete($3); + List_Delete($5); + } + | HomologyCommand '(' ListOfDouble ')' '{' ListOfDouble ',' ListOfDouble '}' tEND + { + std::vector<int> domain, subdomain, dim; + for(int i = 0; i < List_Nbr($6); i++){ + double d; + List_Read($6, i, &d); + domain.push_back((int)d); + } + for(int i = 0; i < List_Nbr($8); i++){ + double d; + List_Read($8, i, &d); + subdomain.push_back((int)d); + } + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + dim.push_back((int)d); + } + GModel::current()->addHomologyRequest($1, domain, subdomain, dim); + List_Delete($6); + List_Delete($8); + List_Delete($3); + } + ; + +// G E N E R A L + +FExpr : + FExpr_Single { $$ = $1; } + | '(' FExpr ')' { $$ = $2; } + | '-' FExpr %prec UNARYPREC { $$ = -$2; } + | '+' FExpr %prec UNARYPREC { $$ = $2; } + | '!' FExpr { $$ = !$2; } + | FExpr '-' FExpr { $$ = $1 - $3; } + | FExpr '+' FExpr { $$ = $1 + $3; } + | FExpr '*' FExpr { $$ = $1 * $3; } + | FExpr '/' FExpr + { + if(!$3) + yymsg(0, "Division by zero in '%g / %g'", $1, $3); + else + $$ = $1 / $3; + } + | FExpr '|' FExpr { $$ = (int)$1 | (int)$3; } + | FExpr '&' FExpr { $$ = (int)$1 & (int)$3; } + | FExpr '%' FExpr { $$ = (int)$1 % (int)$3; } + | FExpr '^' FExpr { $$ = pow($1, $3); } + | FExpr '<' FExpr { $$ = $1 < $3; } + | FExpr '>' FExpr { $$ = $1 > $3; } + | FExpr tLESSOREQUAL FExpr { $$ = $1 <= $3; } + | FExpr tGREATEROREQUAL FExpr { $$ = $1 >= $3; } + | FExpr tEQUAL FExpr { $$ = $1 == $3; } + | FExpr tNOTEQUAL FExpr { $$ = $1 != $3; } + | FExpr tAND FExpr { $$ = $1 && $3; } + | FExpr tOR FExpr { $$ = $1 || $3; } + | FExpr tGREATERGREATER FExpr { $$ = ((int)$1 >> (int)$3); } + | FExpr tLESSLESS FExpr { $$ = ((int)$1 << (int)$3); } + | FExpr '?' FExpr tDOTS FExpr { $$ = $1 ? $3 : $5; } + | tExp LP FExpr RP { $$ = exp($3); } + | tLog LP FExpr RP { $$ = log($3); } + | tLog10 LP FExpr RP { $$ = log10($3); } + | tSqrt LP FExpr RP { $$ = sqrt($3); } + | tSin LP FExpr RP { $$ = sin($3); } + | tAsin LP FExpr RP { $$ = asin($3); } + | tCos LP FExpr RP { $$ = cos($3); } + | tAcos LP FExpr RP { $$ = acos($3); } + | tTan LP FExpr RP { $$ = tan($3); } + | tAtan LP FExpr RP { $$ = atan($3); } + | tAtan2 LP FExpr ',' FExpr RP { $$ = atan2($3, $5);} + | tSinh LP FExpr RP { $$ = sinh($3); } + | tCosh LP FExpr RP { $$ = cosh($3); } + | tTanh LP FExpr RP { $$ = tanh($3); } + | tFabs LP FExpr RP { $$ = fabs($3); } + | tAbs LP FExpr RP { $$ = std::abs($3); } + | tFloor LP FExpr RP { $$ = floor($3); } + | tCeil LP FExpr RP { $$ = ceil($3); } + | tRound LP FExpr RP { $$ = floor($3 + 0.5); } + | tFmod LP FExpr ',' FExpr RP { $$ = fmod($3, $5); } + | tModulo LP FExpr ',' FExpr RP { $$ = fmod($3, $5); } + | tHypot LP FExpr ',' FExpr RP { $$ = sqrt($3 * $3 + $5 * $5); } + | tRand LP FExpr RP { $$ = $3 * (double)rand() / (double)RAND_MAX; } +; + +// FIXME: add +=, -=, *= et /= + +FExpr_Single : + + // Constants + + tDOUBLE { $$ = $1; } + | tPi { $$ = 3.141592653589793; } + | tTestLevel { $$ = (double)ImbricatedTest; } + | tMPI_Rank { $$ = Msg::GetCommRank(); } + | tMPI_Size { $$ = Msg::GetCommSize(); } + | tGMSH_MAJOR_VERSION { $$ = GetGmshMajorVersion(); } + | tGMSH_MINOR_VERSION { $$ = GetGmshMinorVersion(); } + | tGMSH_PATCH_VERSION { $$ = GetGmshPatchVersion(); } + | tCpu { $$ = Cpu(); } + | tMemory { $$ = GetMemoryUsage()/1024./1024.; } + | tTotalMemory { $$ = TotalRam(); } + + // Variables + + | tDefineNumber LP FExpr + { init_options(); } + FloatParameterOptionsOrNone RP + { + std::vector<double> val(1, $3); + Msg::ExchangeOnelabParameter("", val, floatOptions, charOptions); + $$ = val[0]; + } + | DefineStruct + { $$ = $1; } + | tGetNumber LP StringExprVar RP + { + $$ = Msg::GetOnelabNumber($3); + Free($3); + } + | tGetNumber LP StringExprVar ',' FExpr RP + { + $$ = Msg::GetOnelabNumber($3, $5); + Free($3); + } + | Struct_FullName + { + $$ = treat_Struct_FullName_Float($1.char1, $1.char2); + } +// | String__Index '[' FExpr ']' + | Struct_FullName '[' FExpr ']' + { + $$ = treat_Struct_FullName_Float($1.char1, $1.char2, 2, (int)$3); + /* + int index = (int)$3; + if(!gmsh_yysymbols.count($1)){ + yymsg(0, "Unknown variable '%s'", $1); + $$ = 0.; + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[$1]); + if((int)s.value.size() < index + 1){ + yymsg(0, "Uninitialized variable '%s[%d]'", $1, index); + $$ = 0.; + } + else + $$ = s.value[index]; + } + Free($1); + */ + } +// | String__Index '(' FExpr ')' + | Struct_FullName '(' FExpr ')' + { + $$ = treat_Struct_FullName_Float($1.char1, $1.char2, 2, (int)$3); + /* + int index = (int)$3; + if(!gmsh_yysymbols.count($1)){ + yymsg(0, "Unknown variable '%s'", $1); + $$ = 0.; + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[$1]); + if((int)s.value.size() < index + 1){ + yymsg(0, "Uninitialized variable '%s[%d]'", $1, index); + $$ = 0.; + } + else + $$ = s.value[index]; + } + Free($1); + */ + } + | tExists '(' Struct_FullName ')' + { + $$ = treat_Struct_FullName_Float($3.char1, $3.char2, 1, 0, 0., 1); + } + | tExists '(' Struct_FullName '.' tSTRING_Member_Float ')' + { + $$ = treat_Struct_FullName_dot_tSTRING_Float($3.char1, $3.char2, $5, 0, 0., 1); + } + | tGetForced '(' Struct_FullName GetForced_Default ')' + { + $$ = treat_Struct_FullName_Float($3.char1, $3.char2, 1, 0, $4, 2); + } + | tGetForced '(' Struct_FullName '.' tSTRING_Member_Float GetForced_Default ')' + { + $$ = treat_Struct_FullName_dot_tSTRING_Float($3.char1, $3.char2, $5, 0, $6, 2); + } + | tFileExists '(' StringExpr ')' + { + std::string tmp = FixRelativePath(gmsh_yyname, $3); + $$ = !StatFile(tmp); + Free($3); + } + | '#' String__Index LP RP + { + if(gmsh_yysymbols.count($2)){ + gmsh_yysymbol &s(gmsh_yysymbols[$2]); + $$ = s.value.size(); + } + else if(gmsh_yystringsymbols.count($2)){ + $$ = gmsh_yystringsymbols[$2].size(); + } + else{ + yymsg(0, "Unknown variable '%s'", $2); + $$ = 0.; + } + Free($2); + } + + | '#' Struct_FullName '.' tSTRING_Member_Float '(' ')' + { + $$ = treat_Struct_FullName_dot_tSTRING_Float_getDim($2.char1, $2.char2, $4); + } + + | tDimNameSpace LP String__Index RP + { + std::string struct_namespace($3); + $$ = (double)nameSpaces[struct_namespace].size(); + Free($3); + } + | tDimNameSpace LP RP + { + std::string struct_namespace(std::string("")); + $$ = (double)nameSpaces[struct_namespace].size(); + } + + | String__Index NumericIncrement + { + if(!gmsh_yysymbols.count($1)){ + yymsg(0, "Unknown variable '%s'", $1); + $$ = 0.; + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[$1]); + if(s.value.empty()){ + yymsg(0, "Uninitialized variable '%s'", $1); + $$ = 0.; + } + else{ + $$ = s.value[0]; + s.value[0] += $2; + } + } + Free($1); + } + | String__Index '[' FExpr ']' NumericIncrement + { + int index = (int)$3; + if(!gmsh_yysymbols.count($1)){ + yymsg(0, "Unknown variable '%s'", $1); + $$ = 0.; + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[$1]); + if((int)s.value.size() < index + 1){ + yymsg(0, "Uninitialized variable '%s[%d]'", $1, index); + $$ = 0.; + } + else{ + $$ = s.value[index]; + s.value[index] += $5; + } + } + Free($1); + } + + | String__Index '(' FExpr ')' NumericIncrement + { + int index = (int)$3; + if(!gmsh_yysymbols.count($1)){ + yymsg(0, "Unknown variable '%s'", $1); + $$ = 0.; + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[$1]); + if((int)s.value.size() < index + 1){ + yymsg(0, "Uninitialized variable '%s[%d]'", $1, index); + $$ = 0.; + } + else{ + $$ = s.value[index]; + s.value[index] += $5; + } + } + Free($1); + } + + // Option Strings +/* not any more ... + | tSTRING '.' tSTRING + { + NumberOption(GMSH_GET, $1, 0, $3, $$); + Free($1); Free($3); + } +*/ + +//+++ ... extention to structures +// PD: TO FIX (to avoid shift/reduce conflict) +// | Struct_FullName '.' tSTRING_Member_Float + | String__Index '.' tSTRING_Member_Float + { + $$ = treat_Struct_FullName_dot_tSTRING_Float(NULL, $1, $3); + } + | String__Index tSCOPE String__Index '.' tSTRING_Member_Float + { + $$ = treat_Struct_FullName_dot_tSTRING_Float($1, $3, $5); + } + + | String__Index '.' tSTRING_Member_Float '(' FExpr ')' + { + $$ = treat_Struct_FullName_dot_tSTRING_Float(NULL, $1, $3, (int)$5); + } + | String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' + { + $$ = treat_Struct_FullName_dot_tSTRING_Float($1, $3, $5, (int)$7); + } + + | String__Index '[' FExpr ']' '.' tSTRING + { + NumberOption(GMSH_GET, $1, (int)$3, $6, $$); + Free($1); Free($6); + } + | String__Index '.' tSTRING NumericIncrement + { + double d = 0.; + if(NumberOption(GMSH_GET, $1, 0, $3, d)){ + d += $4; + NumberOption(GMSH_SET|GMSH_GUI, $1, 0, $3, d); + $$ = d; + } + Free($1); Free($3); + } + | String__Index '[' FExpr ']' '.' tSTRING NumericIncrement + { + double d = 0.; + if(NumberOption(GMSH_GET, $1, (int)$3, $6, d)){ + d += $7; + NumberOption(GMSH_SET|GMSH_GUI, $1, (int)$3, $6, d); + $$ = d; + } + Free($1); Free($6); + } + | tGetValue '(' StringExprVar ',' FExpr ')' + { + $$ = Msg::GetValue($3, $5); + Free($3); + } + | tFind '(' ListOfDouble ',' ListOfDouble ')' + { + int matches = 0; + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + matches += List_Search($5, &d, fcmp_double); + } + $$ = matches; + Free($3); Free($5); + } + | tStrFind LP StringExprVar ',' StringExprVar RP + { + std::string s($3), substr($5); + if(s.find(substr) != std::string::npos) + $$ = 1.; + else + $$ = 0.; + Free($3); Free($5); + } + | tStrLen LP StringExprVar RP + { + $$ = strlen($3); + Free($3); + } + | tStrCmp LP StringExprVar ',' StringExprVar RP + { + $$ = strcmp($3, $5); + Free($3); Free($5); + } + | tTextAttributes '(' RecursiveListOfStringExprVar ')' + { + int align = 0, font = 0, fontsize = CTX::instance()->glFontSize; + if(List_Nbr($3) % 2){ + yymsg(0, "Number of text attributes should be even"); + } + else{ + for(int i = 0 ; i < List_Nbr($3); i += 2){ + char *s1, *s2; List_Read($3, i, &s1); List_Read($3, i + 1, &s2); + std::string key(s1), val(s2); + Free(s1); Free(s2); +#if defined(HAVE_OPENGL) + if(key == "Font") + font = drawContext::global()->getFontIndex(val.c_str()); + else if(key == "FontSize") + fontsize = atoi(val.c_str()); + else if(key == "Align") + align = drawContext::global()->getFontAlign(val.c_str()); +#endif + } + } + List_Delete($3); + $$ = (double)((align<<16)|(font<<8)|(fontsize)); + } +; + +GetForced_Default : + // none + { $$ = 0.; } + | ',' FExpr + { $$ = $2;} +; + +GetForcedStr_Default : + // none + { $$ = NULL; } + | ',' StringExprVar + { $$ = $2;} +; + +DefineStruct : + tDefineStruct Struct_FullName AppendOrNot + { + std::string struct_namespace($2.char1? $2.char1 : std::string("")), + struct_name($2.char2); + init_options + (nameSpaces.getMember_ValMax(struct_namespace, struct_name)); + } + '[' FloatParameterOptionsOrNone_NoComma ']' + { + std::string struct_namespace($2.char1? $2.char1 : std::string("")), + struct_name($2.char2); + Free($2.char1); Free($2.char2); + int tag_out; + if (nameSpaces.defStruct(struct_namespace, struct_name, + floatOptions, charOptions, + tag_out, member_ValMax, $3)) + yymsg(0, "Redefinition of Struct '%s::%s'", + struct_namespace.c_str(), struct_name.c_str()); + $$ = (double)tag_out; + } +; + +Struct_FullName : + String__Index + { $$.char1 = NULL; $$.char2 = $1; } + | String__Index tSCOPE String__Index + { $$.char1 = $1; $$.char2 = $3; } +; + +tSTRING_Member_Float : + tSTRING + { $$ = $1; flag_tSTRING_alloc = 1; } +/* + | tType + { $$ = (char*)"Type"; flag_tSTRING_alloc = 0; } +*/ +; + +Append : + tAppend + { $$ = 99; } // Default: max level + | tAppend FExpr + { $$ = (int)$2; } + ; + +AppendOrNot : + /* none */ + { $$ = 0; } + | '(' Append ')' + { $$ = $2; } + ; + + +VExpr : + VExpr_Single + { + memcpy($$, $1, 5*sizeof(double)); + } + | '-' VExpr %prec UNARYPREC + { + for(int i = 0; i < 5; i++) $$[i] = -$2[i]; + } + | '+' VExpr %prec UNARYPREC + { + for(int i = 0; i < 5; i++) $$[i] = $2[i]; + } + | VExpr '-' VExpr + { + for(int i = 0; i < 5; i++) $$[i] = $1[i] - $3[i]; + } + | VExpr '+' VExpr + { + for(int i = 0; i < 5; i++) $$[i] = $1[i] + $3[i]; + } +; + +VExpr_Single : + '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + { + $$[0] = $2; $$[1] = $4; $$[2] = $6; $$[3] = $8; $$[4] = $10; + } + | '{' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + { + $$[0] = $2; $$[1] = $4; $$[2] = $6; $$[3] = $8; $$[4] = 1.0; + } + | '{' FExpr ',' FExpr ',' FExpr '}' + { + $$[0] = $2; $$[1] = $4; $$[2] = $6; $$[3] = 0.0; $$[4] = 1.0; + } + | '(' FExpr ',' FExpr ',' FExpr ')' + { + $$[0] = $2; $$[1] = $4; $$[2] = $6; $$[3] = 0.0; $$[4] = 1.0; + } +; + +RecursiveListOfListOfDouble : + ListOfDouble + { + $$ = List_Create(2, 1, sizeof(List_T*)); + List_Add($$, &($1)); + } + | RecursiveListOfListOfDouble ',' ListOfDouble + { + List_Add($$, &($3)); + } +; + +ListOfDouble : + FExpr + { + $$ = List_Create(2, 1, sizeof(double)); + List_Add($$, &($1)); + } + | FExpr_Multi + { + $$ = $1; + } + | '{' '}' + { + // creates an empty list + $$ = List_Create(2, 1, sizeof(double)); + } + | '{' RecursiveListOfDouble '}' + { + $$ = $2; + } + | '-' '{' RecursiveListOfDouble '}' + { + $$ = $3; + for(int i = 0; i < List_Nbr($$); i++){ + double *pd = (double*)List_Pointer($$, i); + (*pd) = - (*pd); + } + } + | FExpr '*' '{' RecursiveListOfDouble '}' + { + $$ = $4; + for(int i = 0; i < List_Nbr($$); i++){ + double *pd = (double*)List_Pointer($$, i); + (*pd) *= $1; + } + } +; + +ListOfDoubleOrAll : + ListOfDouble + { + $$ = $1; + } + | tBIGSTR + { + if(!strcmp($1, "*") || !strcmp($1, "all")) + $$ = 0; + else{ + yyerror("Unknown special string for list replacement"); + $$ = List_Create(2, 1, sizeof(double)); + } + } +; + +FExpr_Multi : + '-' FExpr_Multi %prec UNARYPREC + { + $$ = $2; + for(int i = 0; i < List_Nbr($$); i++){ + double *pd = (double*)List_Pointer($$, i); + (*pd) = - (*pd); + } + } + | FExpr '*' FExpr_Multi + { + $$ = $3; + for(int i = 0; i < List_Nbr($$); i++){ + double *pd = (double*)List_Pointer($$, i); + (*pd) *= $1; + } + } + | FExpr tDOTS FExpr + { + $$ = List_Create(2, 1, sizeof(double)); + for(double d = $1; ($1 < $3) ? (d <= $3) : (d >= $3); + ($1 < $3) ? (d += 1.) : (d -= 1.)) + List_Add($$, &d); + } + | FExpr tDOTS FExpr tDOTS FExpr + { + $$ = List_Create(2, 1, sizeof(double)); + if(!$5){ //|| ($1 < $3 && $5 < 0) || ($1 > $3 && $5 > 0) + yymsg(0, "Wrong increment in '%g:%g:%g'", $1, $3, $5); + } + else + for(double d = $1; ($5 > 0) ? (d <= $3) : (d >= $3); d += $5) + List_Add($$, &d); + } + | tPoint '{' FExpr '}' + { + $$ = List_Create(3, 1, sizeof(double)); + int tag = (int)$3; + double x = 0., y = 0., z = 0.; + bool found = GModel::current()->getGEOInternals()->getVertex(tag, x, y, z); + if(!found && GModel::current()->getOCCInternals()) + found = GModel::current()->getOCCInternals()->getVertex(tag, x, y, z); + if(!found){ + GVertex *gv = GModel::current()->getVertexByTag(tag); + if(gv){ + x = gv->x(); + y = gv->y(); + z = gv->z(); + } + else{ + yymsg(0, "Unknown model vertex with tag %d", tag); + } + } + List_Add($$, &x); + List_Add($$, &y); + List_Add($$, &z); + } + | tPoint tBIGSTR + { + $$ = List_Create(10, 10, sizeof(double)); + getAllElementaryTags(0, $$); + Free($2); + } + | tLine tBIGSTR + { + $$ = List_Create(10, 10, sizeof(double)); + getAllElementaryTags(1, $$); + Free($2); + } + | tSurface tBIGSTR + { + $$ = List_Create(10, 10, sizeof(double)); + getAllElementaryTags(2, $$); + Free($2); + } + | tVolume tBIGSTR + { + $$ = List_Create(10, 10, sizeof(double)); + getAllElementaryTags(3, $$); + Free($2); + } + | tPhysical tPoint ListOfDoubleOrAll + { + $$ = List_Create(10, 10, sizeof(double)); + if(!$3){ + getAllPhysicalTags(0, $$); + } + else{ + getElementaryTagsForPhysicalGroups(0, $3, $$); + List_Delete($3); + } + } + | tPhysical tLine ListOfDoubleOrAll + { + $$ = List_Create(10, 10, sizeof(double)); + if(!$3){ + getAllPhysicalTags(1, $$); + } + else{ + getElementaryTagsForPhysicalGroups(1, $3, $$); + List_Delete($3); + } + } + | tPhysical tSurface ListOfDoubleOrAll + { + $$ = List_Create(10, 10, sizeof(double)); + if(!$3){ + getAllPhysicalTags(2, $$); + } + else{ + getElementaryTagsForPhysicalGroups(2, $3, $$); + List_Delete($3); + } + } + | tPhysical tVolume ListOfDoubleOrAll + { + $$ = List_Create(10, 10, sizeof(double)); + if(!$3){ + getAllPhysicalTags(3, $$); + } + else{ + getElementaryTagsForPhysicalGroups(3, $3, $$); + List_Delete($3); + } + } + | tPoint tIn tBoundingBox + '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + { + $$ = List_Create(10, 10, sizeof(double)); + getElementaryTagsInBoundingBox(0, $5, $7, $9, $11, $13, $15, $$); + } + | tLine tIn tBoundingBox + '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + { + $$ = List_Create(10, 10, sizeof(double)); + getElementaryTagsInBoundingBox(1, $5, $7, $9, $11, $13, $15, $$); + } + | tSurface tIn tBoundingBox + '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + { + $$ = List_Create(10, 10, sizeof(double)); + getElementaryTagsInBoundingBox(2, $5, $7, $9, $11, $13, $15, $$); + } + | tVolume tIn tBoundingBox + '{' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + { + $$ = List_Create(10, 10, sizeof(double)); + getElementaryTagsInBoundingBox(3, $5, $7, $9, $11, $13, $15, $$); + } + | Transform + { + $$ = List_Create(List_Nbr($1), 1, sizeof(double)); + for(int i = 0; i < List_Nbr($1); i++){ + Shape *s = (Shape*) List_Pointer($1, i); + double d = s->Num; + List_Add($$, &d); + } + List_Delete($1); + } + | Extrude + { + $$ = List_Create(List_Nbr($1), 1, sizeof(double)); + for(int i = 0; i < List_Nbr($1); i++){ + Shape *s = (Shape*) List_Pointer($1, i); + double d = s->Num; + List_Add($$, &d); + } + List_Delete($1); + } + | Boolean + { + $$ = List_Create(List_Nbr($1), 1, sizeof(double)); + for(int i = 0; i < List_Nbr($1); i++){ + Shape *s = (Shape*) List_Pointer($1, i); + double d = s->Num; + List_Add($$, &d); + } + List_Delete($1); + } + | String__Index LP RP + { + $$ = List_Create(2, 1, sizeof(double)); + if(!gmsh_yysymbols.count($1)) + yymsg(0, "Unknown variable '%s'", $1); + else{ + gmsh_yysymbol &s(gmsh_yysymbols[$1]); + for(unsigned int i = 0; i < s.value.size(); i++) + List_Add($$, &s.value[i]); + } + Free($1); + } + // for compatibility with GetDP + | tList '[' String__Index ']' + { + $$ = List_Create(2, 1, sizeof(double)); + if(!gmsh_yysymbols.count($3)) + yymsg(0, "Unknown variable '%s'", $3); + else{ + gmsh_yysymbol &s(gmsh_yysymbols[$3]); + for(unsigned int i = 0; i < s.value.size(); i++) + List_Add($$, &s.value[i]); + } + Free($3); + } + | tList '[' FExpr_Multi ']' + { + $$ = $3; + } + | tList '(' FExpr_Multi ')' + { + $$ = $3; + } + | tList LP '{' RecursiveListOfDouble '}' RP + { + $$ = $4; + } + | String__Index LP '{' RecursiveListOfDouble '}' RP + { + $$ = List_Create(2, 1, sizeof(double)); + if(!gmsh_yysymbols.count($1)) + yymsg(0, "Unknown variable '%s'", $1); + else{ + gmsh_yysymbol &s(gmsh_yysymbols[$1]); + for(int i = 0; i < List_Nbr($4); i++){ + int index = (int)(*(double*)List_Pointer_Fast($4, i)); + if((int)s.value.size() < index + 1) + yymsg(0, "Uninitialized variable '%s[%d]'", $1, index); + else + List_Add($$, &s.value[index]); + } + } + Free($1); + List_Delete($4); + } + | tLinSpace LP FExpr ',' FExpr ',' FExpr RP + { + $$ = List_Create(20,20,sizeof(double)); + for(int i = 0; i < (int)$7; i++) { + double d = $3 + ($5-$3)*(double)i/($7-1); + List_Add($$, &d); + } + } + | tLogSpace LP FExpr ',' FExpr ',' FExpr RP + { + $$ = List_Create(20,20,sizeof(double)); + for(int i = 0; i < (int)$7; i++) { + double d = pow(10,$3 + ($5-$3)*(double)i/($7-1)); + List_Add($$, &d); + } + } + | tListFromFile LP StringExprVar RP + { + Msg::Barrier(); + FILE *File; + $$ = List_Create(100, 100, sizeof(double)); + std::string tmp = FixRelativePath(gmsh_yyname, $3); + if(!(File = Fopen(tmp.c_str(), "rb"))){ + yymsg(0, "Could not open file '%s'", $3); + } + else{ + double d; + while(!feof(File)){ + int ret = fscanf(File, "%lf", &d); + if(ret == 1){ + List_Add($$, &d); + } + else if(ret == EOF){ + break; + } + else{ + char dummy[1024]; + fscanf(File, "%s", dummy); + yymsg(0, "Ignoring '%s' in file '%s'", dummy, $3); + } + } + fclose(File); + } + Free($3); + } + | tCatenary LP FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr ',' FExpr RP + { + double x0 = $3, x1 = $5, y0 = $7, y1 = $9, ys = $11; + int N = (int)$13; + std::vector<double> y(N); + if(!catenary(x0, x1, y0, y1, ys, N, &y[0])) + Msg::Warning("Catenary did not converge, using linear interpolation"); + $$ = List_Create(N,10,sizeof(double)); + for(int i = 0; i < N; i++) List_Add($$, &y[i]); + } + | tUnique LP FExpr_Multi RP + { + std::vector<double> tmp; + for(int i = 0; i < List_Nbr($3); i++){ + double d; List_Read($3, i, &d); + tmp.push_back(d); + } + std::sort(tmp.begin(), tmp.end()); + std::vector<double>::iterator last = std::unique(tmp.begin(), tmp.end()); + tmp.erase(last, tmp.end()); + $$ = $3; + List_Reset($$); + for(unsigned int i = 0; i < tmp.size(); i++){ + List_Add($$, &tmp[i]); + } + } + | tAbs LP FExpr_Multi RP + { + for(int i = 0; i < List_Nbr($3); i++){ + double *d = (double*)List_Pointer($3, i); + *d = std::abs(*d); + } + $$ = $3; + } +; + +RecursiveListOfDouble : + FExpr + { + $$ = List_Create(2, 1, sizeof(double)); + List_Add($$, &($1)); + } + | FExpr_Multi + { + $$ = $1; + } + | RecursiveListOfDouble ',' FExpr + { + List_Add($$, &($3)); + } + | RecursiveListOfDouble ',' FExpr_Multi + { + for(int i = 0; i < List_Nbr($3); i++){ + double d; + List_Read($3, i, &d); + List_Add($$, &d); + } + List_Delete($3); + } +; + +ColorExpr : + '{' FExpr ',' FExpr ',' FExpr ',' FExpr '}' + { + $$ = CTX::instance()->packColor((int)$2, (int)$4, (int)$6, (int)$8); + } + | '{' FExpr ',' FExpr ',' FExpr '}' + { + $$ = CTX::instance()->packColor((int)$2, (int)$4, (int)$6, 255); + } +/* shift/reduce conflict + | '{' tSTRING ',' FExpr '}' + { + int flag; + $$ = GetColorForString((int)$4, $2, &flag); + if(flag) yymsg(0, "Unknown color '%s'", $2); + } +*/ + | String__Index + { + int flag = 0; + if(gmsh_yystringsymbols.count($1)){ + if(gmsh_yystringsymbols[$1].size()){ + $$ = GetColorForString(-1, gmsh_yystringsymbols[$1][0].c_str(), &flag); + } + else{ + yymsg(0, "Unknown color '%s'", $1); + $$ = 0; + } + } + else + $$ = GetColorForString(-1, $1, &flag); + if(flag) yymsg(0, "Unknown color '%s'", $1); + Free($1); + } + | tSTRING '.' tColor '.' tSTRING + { + unsigned int val = 0; + ColorOption(GMSH_GET, $1, 0, $5, val); + $$ = val; + Free($1); Free($5); + } +; + +ListOfColor : + '{' RecursiveListOfColor '}' + { + $$ = $2; + } + | String__Index '[' FExpr ']' '.' tColorTable + { + $$ = List_Create(256, 10, sizeof(unsigned int)); + GmshColorTable *ct = GetColorTable((int)$3); + if(!ct) + yymsg(0, "View[%d] does not exist", (int)$3); + else{ + for(int i = 0; i < ct->size; i++) + List_Add($$, &ct->table[i]); + } + Free($1); + } +; + +RecursiveListOfColor : + ColorExpr + { + $$ = List_Create(256, 10, sizeof(unsigned int)); + List_Add($$, &($1)); + } + | RecursiveListOfColor ',' ColorExpr + { + List_Add($$, &($3)); + } +; + +StringExprVar : + StringExpr + { + $$ = $1; + } + | String__Index + { + // No need to extend to Struct_FullName (a Tag is not a String) + $$ = treat_Struct_FullName_String(NULL, $1); + } + | String__Index '[' FExpr ']' + { + std::string val; + int j = (int)$3; + if(!gmsh_yystringsymbols.count($1)) + yymsg(0, "Unknown string variable '%s'", $1); + else if(j >= 0 && j < (int)gmsh_yystringsymbols[$1].size()) + val = gmsh_yystringsymbols[$1][j]; + else + yymsg(0, "Index %d out of range", j); + $$ = (char *)Malloc((val.size() + 1) * sizeof(char)); + strcpy($$, val.c_str()); + Free($1); + } + | String__Index '(' FExpr ')' + { + std::string val; + int j = (int)$3; + if(!gmsh_yystringsymbols.count($1)) + yymsg(0, "Unknown string variable '%s'", $1); + else if(j >= 0 && j < (int)gmsh_yystringsymbols[$1].size()) + val = gmsh_yystringsymbols[$1][j]; + else + yymsg(0, "Index %d out of range", j); + $$ = (char *)Malloc((val.size() + 1) * sizeof(char)); + strcpy($$, val.c_str()); + Free($1); + } + +// PD: TO FIX (to avoid shift/reduce conflict) +// | Struct_FullName '.' String__Index //tSTRING//_Member_Float + | String__Index '.' tSTRING_Member_Float + { + $$ = treat_Struct_FullName_dot_tSTRING_String(NULL, $1, $3); + } + | String__Index tSCOPE String__Index '.' tSTRING_Member_Float + { + $$ = treat_Struct_FullName_dot_tSTRING_String($1, $3, $5); + } + + | String__Index '.' tSTRING_Member_Float '(' FExpr ')' + { + $$ = treat_Struct_FullName_dot_tSTRING_String(NULL, $1, $3, (int)$5); + } + | String__Index tSCOPE String__Index '.' tSTRING_Member_Float '(' FExpr ')' + { + $$ = treat_Struct_FullName_dot_tSTRING_String($1, $3, $5, (int)$7); + } + + | String__Index '[' FExpr ']' '.' tSTRING + { + std::string out; + StringOption(GMSH_GET, $1, (int)$3, $6, out); + $$ = (char*)Malloc((out.size() + 1) * sizeof(char)); + strcpy($$, out.c_str()); + Free($1); Free($6); + } + | tPhysical tPoint '{' FExpr '}' + { + std::string name = GModel::current()->getPhysicalName(0, (int)$4); + $$ = (char*)Malloc((name.size() + 1) * sizeof(char)); + strcpy($$, name.c_str()); + } + | tPhysical tLine '{' FExpr '}' + { + std::string name = GModel::current()->getPhysicalName(1, (int)$4); + $$ = (char*)Malloc((name.size() + 1) * sizeof(char)); + strcpy($$, name.c_str()); + } + | tPhysical tSurface '{' FExpr '}' + { + std::string name = GModel::current()->getPhysicalName(2, (int)$4); + $$ = (char*)Malloc((name.size() + 1) * sizeof(char)); + strcpy($$, name.c_str()); + } + | tPhysical tVolume '{' FExpr '}' + { + std::string name = GModel::current()->getPhysicalName(3, (int)$4); + $$ = (char*)Malloc((name.size() + 1) * sizeof(char)); + strcpy($$, name.c_str()); + } +; + +StringExpr : + tBIGSTR + { + $$ = $1; + } + | tNameToString '[' String__Index ']' + { + $$ = $3; + } + | tToday + { + $$ = (char *)Malloc(32 * sizeof(char)); + time_t now; + time(&now); + strcpy($$, ctime(&now)); + $$[strlen($$) - 1] = '\0'; + } + | tGmshExecutableName + { + std::string exe = Msg::GetExecutableName(); + $$ = (char *)Malloc(exe.size() + 1); + strcpy($$, exe.c_str()); + } + | tOnelabAction + { + std::string action = Msg::GetOnelabAction(); + $$ = (char *)Malloc(action.size() + 1); + strcpy($$, action.c_str()); + } + | tCodeName + { + $$ = strsave((char*)"Gmsh"); + } + | tGetEnv '(' StringExprVar ')' + { + const char *env = GetEnvironmentVar($3); + if(!env) env = ""; + $$ = (char *)Malloc((sizeof(env) + 1) * sizeof(char)); + strcpy($$, env); + Free($3); + } + | tGetStringValue '(' StringExprVar ',' StringExprVar ')' + { + std::string s = Msg::GetString($3, $5); + $$ = (char *)Malloc((s.size() + 1) * sizeof(char)); + strcpy($$, s.c_str()); + Free($3); + Free($5); + } + | tGetString LP StringExprVar RP + { + std::string s = Msg::GetOnelabString($3); + $$ = (char *)Malloc((s.size() + 1) * sizeof(char)); + strcpy($$, s.c_str()); + Free($3); + } + | tGetString LP StringExprVar ',' StringExprVar RP + { + std::string s = Msg::GetOnelabString($3, $5); + $$ = (char *)Malloc((s.size() + 1) * sizeof(char)); + strcpy($$, s.c_str()); + Free($3); + Free($5); + } + + //+++ No need to extend to Struct_FullName (a Tag is not a String), but... + | tGetForcedStr '(' Struct_FullName GetForcedStr_Default ')' + { + $$ = treat_Struct_FullName_String(NULL, $3.char2, 1, 0, $4, 2); + } + + | tGetForcedStr '(' Struct_FullName '.' tSTRING_Member_Float GetForcedStr_Default ')' + { + $$ = treat_Struct_FullName_dot_tSTRING_String($3.char1, $3.char2, $5, 0, $6, 2); + } + + | tStrCat LP RecursiveListOfStringExprVar RP + { + int size = 1; + for(int i = 0; i < List_Nbr($3); i++) + size += strlen(*(char**)List_Pointer($3, i)) + 1; + $$ = (char*)Malloc(size * sizeof(char)); + $$[0] = '\0'; + for(int i = 0; i < List_Nbr($3); i++){ + char *s; + List_Read($3, i, &s); + strcat($$, s); + Free(s); + } + List_Delete($3); + } + | tStrPrefix '(' StringExprVar ')' + { + $$ = (char *)Malloc((strlen($3) + 1) * sizeof(char)); + int i; + for(i = strlen($3) - 1; i >= 0; i--){ + if($3[i] == '.'){ + strncpy($$, $3, i); + $$[i]='\0'; + break; + } + } + if(i <= 0) strcpy($$, $3); + Free($3); + } + | tStrRelative '(' StringExprVar ')' + { + $$ = (char *)Malloc((strlen($3) + 1) * sizeof(char)); + int i; + for(i = strlen($3) - 1; i >= 0; i--){ + if($3[i] == '/' || $3[i] == '\\') + break; + } + if(i <= 0) + strcpy($$, $3); + else + strcpy($$, &$3[i+1]); + Free($3); + } + | tStrReplace '(' StringExprVar ',' StringExprVar ',' StringExprVar ')' + { + std::string input = $3; + std::string substr_old = $5; + std::string substr_new = $7; + std::string ret = ReplaceSubString(substr_old, substr_new, input); + $$ = (char *)Malloc((ret.size() + 1) * sizeof(char)); + strcpy($$, ret.c_str()); + Free($3); + Free($5); + Free($7); + } + | tStr LP RecursiveListOfStringExprVar RP + { + int size = 1; + for(int i = 0; i < List_Nbr($3); i++) + size += strlen(*(char**)List_Pointer($3, i)) + 1; + $$ = (char*)Malloc(size * sizeof(char)); + $$[0] = '\0'; + for(int i = 0; i < List_Nbr($3); i++){ + char *s; + List_Read($3, i, &s); + strcat($$, s); + Free(s); + if(i != List_Nbr($3) - 1) strcat($$, "\n"); + } + List_Delete($3); + } + | tUpperCase LP StringExprVar RP + { + int i = 0; + while ($3[i]) { + $3[i] = toupper($3[i]); + i++; + } + $$ = $3; + } + | tLowerCase LP StringExprVar RP + { + int i = 0; + while ($3[i]) { + $3[i] = tolower($3[i]); + i++; + } + $$ = $3; + } + | tLowerCaseIn LP StringExprVar RP + { + int i = 0; + while ($3[i]) { + if (i > 0 && $3[i-1] != '_') + $3[i] = tolower($3[i]); + i++; + } + $$ = $3; + } + | tStrChoice LP FExpr ',' StringExprVar ',' StringExprVar RP + { + if($3){ + $$ = $5; + Free($7); + } + else{ + $$ = $7; + Free($5); + } + } + | tStrSub LP StringExprVar ',' FExpr ',' FExpr RP + { + std::string in = $3; + std::string out = in.substr((int)$5, (int)$7); + $$ = (char *)Malloc((out.size() + 1) * sizeof(char)); + strcpy($$, out.c_str()); + Free($3); + } + | tStrSub LP StringExprVar ',' FExpr RP + { + std::string in = $3; + std::string out = in.substr((int)$5, std::string::npos); + $$ = (char *)Malloc((out.size() + 1) * sizeof(char)); + strcpy($$, out.c_str()); + Free($3); + } + | tSprintf LP StringExprVar RP + { + $$ = $3; + } + | tSprintf LP StringExprVar ',' RecursiveListOfDouble RP + { + char tmpstring[5000]; + int i = printListOfDouble($3, $5, tmpstring); + if(i < 0){ + yymsg(0, "Too few arguments in Sprintf"); + $$ = $3; + } + else if(i > 0){ + yymsg(0, "%d extra argument%s in Sprintf", i, (i > 1) ? "s" : ""); + $$ = $3; + } + else{ + $$ = (char*)Malloc((strlen(tmpstring) + 1) * sizeof(char)); + strcpy($$, tmpstring); + Free($3); + } + List_Delete($5); + } + | tFixRelativePath LP StringExprVar RP + { + std::string tmp = FixRelativePath(gmsh_yyname, $3); + $$ = (char*)Malloc((tmp.size() + 1) * sizeof(char)); + strcpy($$, tmp.c_str()); + Free($3); + } + | tCurrentDirectory + { + std::string tmp = SplitFileName(GetAbsolutePath(gmsh_yyname))[0]; + $$ = (char*)Malloc((tmp.size() + 1) * sizeof(char)); + strcpy($$, tmp.c_str()); + } + | tDirName LP StringExprVar RP + { + std::string tmp = SplitFileName($3)[0]; + $$ = (char*)Malloc((tmp.size() + 1) * sizeof(char)); + strcpy($$, tmp.c_str()); + Free($3); + } + | tAbsolutePath LP StringExprVar RP + { + std::string tmp = GetAbsolutePath($3); + $$ = (char*)Malloc((tmp.size() + 1) * sizeof(char)); + strcpy($$, tmp.c_str()); + Free($3); + } + | tDefineString LP StringExpr + { init_options(); } + CharParameterOptionsOrNone RP + { + std::string val($3); + Msg::ExchangeOnelabParameter("", val, floatOptions, charOptions); + $$ = (char*)Malloc((val.size() + 1) * sizeof(char)); + strcpy($$, val.c_str()); + Free($3); + } + | tNameStruct LP NameStruct_Arg RP + { + std::string out; + const std::string * key_struct = NULL; + switch (nameSpaces.get_key_struct_from_tag(struct_namespace, + (int)$3, key_struct)) { + case 0: + out = *key_struct; + break; + case 1: + yymsg(1, "Unknown NameSpace '%s' of Struct", struct_namespace.c_str()); + break; + case 2: + yymsg(1, "Unknown Struct of index %d", (int)$3); + break; + default: + break; + } + $$ = (char*)Malloc((out.size() + 1) * sizeof(char)); + strcpy($$, out.c_str()); + } +; + +NameStruct_Arg : + '#' FExpr + { struct_namespace = std::string(""); $$ = $2; } + | String__Index tSCOPE '#' FExpr + { struct_namespace = $1; Free($1); $$ = $4; } +; + + +RecursiveListOfStringExprVar : + StringExprVar + { + $$ = List_Create(20,20,sizeof(char*)); + List_Add($$, &($1)); + } + | RecursiveListOfStringExprVar ',' StringExprVar + { + List_Add($$, &($3)); + } + ; + +StringIndex : + + tSTRING '~' '{' FExpr '}' + { + char tmpstr[256]; + sprintf(tmpstr, "_%d", (int)$4); + $$ = (char *)Malloc((strlen($1)+strlen(tmpstr)+1)*sizeof(char)); + strcpy($$, $1); strcat($$, tmpstr); + Free($1); + } + + | StringIndex '~' '{' FExpr '}' + { + char tmpstr[256]; + sprintf(tmpstr, "_%d", (int)$4); + $$ = (char *)Malloc((strlen($1)+strlen(tmpstr)+1)*sizeof(char)) ; + strcpy($$, $1) ; strcat($$, tmpstr) ; + Free($1); + } + + | tStringToName '[' StringExprVar ']' '~' '{' FExpr '}' + { + char tmpstr[256]; + sprintf(tmpstr, "_%d", (int)$7); + $$ = (char *)Malloc((strlen($3)+strlen(tmpstr)+1)*sizeof(char)); + strcpy($$, $3); strcat($$, tmpstr); + Free($3); + } + ; + +String__Index : + + tSTRING + { $$ = $1; } + + | StringIndex + { $$ = $1; } + + // Create a name from any string + | tStringToName '[' StringExprVar ']' + { $$ = $3; } + ; + +%% + +void assignVariable(const std::string &name, int index, int assignType, + double value) +{ + if(!gmsh_yysymbols.count(name)){ + if(!assignType){ + gmsh_yysymbol &s(gmsh_yysymbols[name]); + s.list = true; + s.value.resize(index + 1, 0.); + s.value[index] = value; + } + else + yymsg(0, "Unknown variable '%s'", name.c_str()); + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[name]); + if(s.list){ + if((int)s.value.size() < index + 1) s.value.resize(index + 1, 0.); + switch(assignType){ + case 0 : s.value[index] = value; break; + case 1 : s.value[index] += value; break; + case 2 : s.value[index] -= value; break; + case 3 : s.value[index] *= value; break; + case 4 : + if(value) s.value[index] /= value; + else yymsg(0, "Division by zero in '%s[%d] /= %g'", + name.c_str(), index, value); + break; + } + } + else + yymsg(0, "Variable '%s' is not a list", name.c_str()); + } +} + +void assignVariables(const std::string &name, List_T *indices, int assignType, + List_T *values) +{ + if(List_Nbr(indices) != List_Nbr(values)){ + yymsg(0, "Incompatible array dimensions in affectation"); + } + else{ + if(!gmsh_yysymbols.count(name)){ + if(!assignType){ + gmsh_yysymbol &s(gmsh_yysymbols[name]); + s.list = true; + for(int i = 0; i < List_Nbr(indices); i++){ + int index = (int)(*(double*)List_Pointer(indices, i)); + s.value.resize(index + 1, 0.); + s.value[index] = *(double*)List_Pointer(values, i); + } + } + else + yymsg(0, "Unknown variable '%s'", name.c_str()); + } + else{ + gmsh_yysymbol &s(gmsh_yysymbols[name]); + if(s.list){ + for(int i = 0; i < List_Nbr(indices); i++){ + int index = (int)(*(double*)List_Pointer(indices, i)); + double d = *(double*)List_Pointer(values, i); + if((int)s.value.size() < index + 1) s.value.resize(index + 1, 0.); + switch(assignType){ + case 0 : s.value[index] = d; break; + case 1 : s.value[index] += d; break; + case 2 : s.value[index] -= d; break; + case 3 : s.value[index] *= d; break; + case 4 : + if(d) s.value[index] /= d; + else yymsg(0, "Division by zero in '%s[%d] /= %g'", name.c_str(), index, d); + break; + } + } + } + else + yymsg(0, "Variable '%s' is not a list", name.c_str()); + } + } +} + +void incrementVariable(const std::string &name, int index, double value) +{ + if(!gmsh_yysymbols.count(name)) + yymsg(0, "Unknown variable '%s'", name.c_str()); + else{ + gmsh_yysymbol &s(gmsh_yysymbols[name]); + if(s.list){ + if((int)s.value.size() < index + 1) s.value.resize(index + 1, 0.); + s.value[index] += value; + } + else + yymsg(0, "Variable '%s' is not a list", name.c_str()); + } +} + +int printListOfDouble(char *format, List_T *list, char *buffer) +{ + // if format does not contain formatting characters, dump the list (useful for + // quick debugging of lists) + int numFormats = 0; + for(unsigned int i = 0; i < strlen(format); i++) + if(format[i] == '%') numFormats++; + if(!numFormats){ + strcpy(buffer, format); + for(int i = 0; i < List_Nbr(list); i++){ + double d; + List_Read(list, i, &d); + char tmp[256]; + sprintf(tmp, " [%d]%g", i, d); + strcat(buffer, tmp); + } + return 0; + } + + char tmp1[256], tmp2[256]; + int j = 0, k = 0; + buffer[j] = '\0'; + + while(j < (int)strlen(format) && format[j] != '%') j++; + strncpy(buffer, format, j); + buffer[j] = '\0'; + for(int i = 0; i < List_Nbr(list); i++){ + k = j; + j++; + if(j < (int)strlen(format)){ + if(format[j] == '%'){ + strcat(buffer, "%"); + j++; + } + while(j < (int)strlen(format) && format[j] != '%') j++; + if(k != j){ + strncpy(tmp1, &(format[k]), j-k); + tmp1[j-k] = '\0'; + sprintf(tmp2, tmp1, *(double*)List_Pointer(list, i)); + strcat(buffer, tmp2); + } + } + else + return List_Nbr(list) - i; + } + if(j != (int)strlen(format)) + return -1; + return 0; +} + +void PrintParserSymbols(bool help, std::vector<std::string> &vec) +{ + if(help){ + vec.push_back("//"); + vec.push_back("// Numbers"); + vec.push_back("//"); + } + for(std::map<std::string, gmsh_yysymbol>::iterator it = gmsh_yysymbols.begin(); + it != gmsh_yysymbols.end(); it++){ + gmsh_yysymbol s(it->second); + std::ostringstream sstream; + sstream.precision(12); + sstream << it->first; + if(s.list){ + sstream << "[] = {"; + for(unsigned int i = 0; i < s.value.size(); i++){ + if(i) sstream << ", "; + sstream << s.value[i]; + } + sstream << "}"; + } + else + sstream << " = " << s.value[0]; + sstream << ";"; + vec.push_back(sstream.str()); + } + if(help){ + vec.push_back("//"); + vec.push_back("// Strings"); + vec.push_back("//"); + } + for(std::map<std::string, std::vector<std::string> >::iterator it = + gmsh_yystringsymbols.begin(); it != gmsh_yystringsymbols.end(); it++){ + if(it->second.size() == 1) + vec.push_back(it->first + " = \"" + it->second[0] + "\";"); + else{ + std::string s = it->first + "[] = Str("; + for(unsigned int i = 0; i < it->second.size(); i++){ + if(i) s += ", "; + s += std::string("\"") + it->second[i] + "\""; + } + s += ");"; + vec.push_back(s); + } + } + if (nameSpaces.size()){ + if(help){ + vec.push_back("//"); + vec.push_back("// Structures"); + vec.push_back("//"); + } + std::vector<std::string> strs; + nameSpaces.sprint(strs); + vec.insert(vec.end(), strs.begin(), strs.end()); + } +} + +fullMatrix<double> ListOfListOfDouble2Matrix(List_T *list) +{ + // Warning: this returns a fullMatrix copy, and deletes the input list + int M = List_Nbr(list); + int N = 0; + for(int i = 0; i < M; i++){ + List_T *line = *(List_T**)List_Pointer_Fast(list, i); + N = std::max(N, List_Nbr(line)); + } + fullMatrix<double> mat(M, N); + for(int i = 0; i < M; i++){ + List_T *line = *(List_T**)List_Pointer_Fast(list, i); + for(int j = 0; j < List_Nbr(line); j++){ + double val; + List_Read(line, j, &val); + mat(i, j) = val; + } + } + for(int i = 0; i < List_Nbr(list); i++) + List_Delete(*(List_T**)List_Pointer(list, i)); + List_Delete(list); + return mat; +} + +void ListOfDouble2Vector(List_T *list, std::vector<int> &v) +{ + v.clear(); + if(!list) return; + v.reserve(List_Nbr(list)); + for(int i = 0; i < List_Nbr(list); i++){ + double d; + List_Read(list, i, &d); + v.push_back((int)d); + } +} + +void ListOfDouble2Vector(List_T *list, std::vector<double> &v) +{ + v.clear(); + if(!list) return; + v.reserve(List_Nbr(list)); + for(int i = 0; i < List_Nbr(list); i++){ + double d; + List_Read(list, i, &d); + v.push_back(d); + } +} + +void ListOfShapes2VectorOfPairs(List_T *list, std::vector<std::pair<int, int> > &v) +{ + for(int i = 0; i < List_Nbr(list); i++){ + Shape s; + List_Read(list, i, &s); + int dim = s.Type / 100 - 1; + if(dim >= 0 && dim <= 3) v.push_back(std::pair<int, int>(dim, s.Num)); + } +} + +void VectorOfPairs2ListOfShapes(const std::vector<std::pair<int, int> > &v, List_T *list) +{ + for(unsigned int i = 0; i < v.size(); i++){ + int dim = v[i].first; + int tag = v[i].second; + Shape s; + s.Type = (dim == 3) ? MSH_VOLUME : (dim == 2) ? MSH_SURF_PLAN : + (dim == 1) ? MSH_SEGM_LINE : MSH_POINT; + s.Num = tag; + List_Add(list, &s); + } +} + +void yyerror(const char *s) +{ + Msg::Error("'%s', line %d : %s (%s)", gmsh_yyname.c_str(), gmsh_yylineno - 1, + s, gmsh_yytext); + gmsh_yyerrorstate++; +} + +void yymsg(int level, const char *fmt, ...) +{ + va_list args; + char tmp[1024]; + + va_start(args, fmt); + vsprintf(tmp, fmt, args); + va_end(args); + + if(level == 0){ + Msg::Error("'%s', line %d : %s", gmsh_yyname.c_str(), gmsh_yylineno - 1, tmp); + gmsh_yyerrorstate++; + } + else if(level == 1){ + Msg::Warning("'%s', line %d : %s", gmsh_yyname.c_str(), gmsh_yylineno - 1, tmp); + } + else{ + Msg::Info("'%s', line %d : %s", gmsh_yyname.c_str(), gmsh_yylineno - 1, tmp); + } +} + +void addPeriodicFace(int iTarget, int iSource, + const std::vector<double>& affineTransform) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + GFace *target = GModel::current()->getFaceByTag(std::abs(iTarget)); + GFace *source = GModel::current()->getFaceByTag(std::abs(iSource)); + if (!target || !source) { + Msg::Error("Could not find edge slave %d or master %d for periodic copy", + iTarget, iSource); + } + else target->setMeshMaster(source, affineTransform); +} + +void addPeriodicFace(int iTarget, int iSource, + const std::map<int,int>& edgeCounterparts) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + Msg::Info("Encoding periodic connection between %d and %d", iTarget, iSource); + std::map<int,int>::const_iterator sIter = edgeCounterparts.begin(); + for (; sIter != edgeCounterparts.end(); ++sIter) { + Msg::Info("%d - %d", sIter->first, sIter->second); + } + + GFace *target = GModel::current()->getFaceByTag(std::abs(iTarget)); + GFace *source = GModel::current()->getFaceByTag(std::abs(iSource)); + if (!target || !source) { + Msg::Error("Could not find surface slave %d or master %d for periodic copy", + iTarget,iSource); + } + else target->setMeshMaster(source, edgeCounterparts); +} + +void addPeriodicEdge(int iTarget,int iSource, + const std::vector<double>& affineTransform) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + GEdge *target = GModel::current()->getEdgeByTag(std::abs(iTarget)); + GEdge *source = GModel::current()->getEdgeByTag(std::abs(iSource)); + if (!target || !source) + Msg::Error("Could not find surface %d or %d for periodic copy", + iTarget,iSource); + if (affineTransform.size() >= 12) { + target->setMeshMaster(source, affineTransform); + } + else { + target->setMeshMaster(source, iSource * iTarget < 0 ? -1 : 1); + } +} + +void computeAffineTransformation(SPoint3& origin, SPoint3& axis, + double angle, SPoint3& translation, + std::vector<double>& tfo) +{ + tfo.resize(16,0.0); + + double ca = cos(angle); + double sa = sin(angle); + + double ux = axis.x(); + double uy = axis.y(); + double uz = axis.z(); + + tfo.resize(16); + + tfo[0*4+0] = ca + ux*ux*(1.-ca); + tfo[0*4+1] = ux*uy*(1.-ca) - uz * sa; + tfo[0*4+2] = ux*uz*(1.-ca) + uy * sa; + + tfo[1*4+0] = ux*uy*(1.-ca) + uz * sa; + tfo[1*4+1] = ca + uy*uy*(1.-ca); + tfo[1*4+2] = uy*uz*(1.-ca) - ux * sa; + + tfo[2*4+0] = ux*uz*(1.-ca) - uy * sa; + tfo[2*4+1] = uy*uz*(1.-ca) + ux * sa; + tfo[2*4+2] = ca + uz*uz*(1.-ca); + + int idx = 0; + for (size_t i = 0; i < 3; i++,idx++) { + int tIdx = i*4+3; + tfo[tIdx] = origin[i] + translation[i]; + for (int j = 0; j < 3; j++,idx++) tfo[tIdx] -= tfo[idx] * origin[j]; + } + + for (int i = 0; i < 4; i++) tfo[12+i] = 0; + tfo[15] = 1; +} + +void addEmbedded(int dim, std::vector<int> tags, int dim2, int tag2) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + if(dim2 == 2){ + GFace *gf = GModel::current()->getFaceByTag(tag2); + if(!gf){ + yymsg(0, "Unknown model face with tag %d", tag2); + return; + } + for(unsigned int i = 0; i < tags.size(); i++){ + if(dim == 0){ + GVertex *gv = GModel::current()->getVertexByTag(tags[i]); + if(gv) + gf->addEmbeddedVertex(gv); + else + yymsg(0, "Unknown model vertex %d", tags[i]); + } + else if(dim == 1){ + GEdge *ge = GModel::current()->getEdgeByTag(tags[i]); + if(ge) + gf->addEmbeddedEdge(ge); + else + yymsg(0, "Unknown model edge %d", tags[i]); + } + } + } + else if(dim2 == 3){ + GRegion *gr = GModel::current()->getRegionByTag(tag2); + if(!gr){ + yymsg(0, "Unknown model region with tag %d", tag2); + return; + } + for(unsigned int i = 0; i < tags.size(); i++){ + if(dim == 0){ + GVertex *gv = GModel::current()->getVertexByTag(tags[i]); + if(gv) + gr->addEmbeddedVertex(gv); + else + yymsg(0, "Unknown model vertex with tag %d", tags[i]); + } + else if(dim == 1){ + GEdge *ge = GModel::current()->getEdgeByTag(tags[i]); + if(ge) + gr->addEmbeddedEdge(ge); + else + yymsg(0, "Unknown model edge with tag %d", tags[i]); + } + else if(dim == 2){ + GFace *gf = GModel::current()->getFaceByTag(tags[i]); + if(gf) + gr->addEmbeddedFace(gf); + else + yymsg(0, "Unknown model face with tag %d", tags[i]); + } + } + } +} + +void getAllElementaryTags(int dim, List_T *out) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + std::vector<GEntity*> entities; + GModel::current()->getEntities(entities, dim); + for(unsigned int i = 0; i < entities.size(); i++){ + double tag = entities[i]->tag(); + List_Add(out, &tag); + } +} + +void getAllPhysicalTags(int dim, List_T *out) +{ + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + std::map<int, std::vector<GEntity*> > groups; + GModel::current()->getPhysicalGroups(dim, groups); + for(std::map<int, std::vector<GEntity*> >::iterator it = groups.begin(); + it != groups.end(); it++){ + double d = it->first; + List_Add(out, &d); + } +} + +void getElementaryTagsForPhysicalGroups(int dim, List_T *in, List_T *out) +{ + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + std::map<int, std::vector<GEntity*> > groups; + GModel::current()->getPhysicalGroups(dim, groups); + for(int i = 0; i < List_Nbr(in); i++){ + double num; + List_Read(in, i, &num); + std::map<int, std::vector<GEntity*> >::iterator it = groups.find(num); + if(it != groups.end()){ + for(unsigned j = 0; j < it->second.size(); j++){ + double d = it->second[j]->tag(); + List_Add(out, &d); + } + } + } +} + +void getElementaryTagsInBoundingBox(int dim, double x1, double y1, double z1, + double x2, double y2, double z2, List_T *out) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + SBoundingBox3d box(x1, y1, z1, x2, y2, z2); + std::vector<GEntity*> entities; + GModel::current()->getEntitiesInBox(entities, box, dim); + for(unsigned int i = 0; i < entities.size(); i++){ + double d = entities[i]->tag(); + List_Add(out, &d); + } +} + +void setVisibility(int dim, int visible, bool recursive) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + std::vector<GEntity*> entities; + GModel::current()->getEntities(entities, dim); + for(unsigned int i = 0; i < entities.size(); i++){ + entities[i]->setVisibility(visible); + } +} + +void setVisibility(const std::vector<std::pair<int, int> > &dimTags, + int visible, bool recursive) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + for(unsigned int i = 0; i < dimTags.size(); i++){ + GEntity *ge = GModel::current()->getEntityByTag + (dimTags[i].first, std::abs(dimTags[i].second)); + if(ge) ge->setVisibility(visible, recursive); + } +} + +void setColor(const std::vector<std::pair<int, int> > &dimTags, + unsigned int val, bool recursive) +{ + if(GModel::current()->getOCCInternals() && + GModel::current()->getOCCInternals()->getChanged()) + GModel::current()->getOCCInternals()->synchronize(GModel::current()); + if(GModel::current()->getGEOInternals()->getChanged()) + GModel::current()->getGEOInternals()->synchronize(GModel::current()); + + for(unsigned int i = 0; i < dimTags.size(); i++){ + GEntity *ge = GModel::current()->getEntityByTag + (dimTags[i].first, std::abs(dimTags[i].second)); + if(ge) ge->setColor(val, recursive); + } +} + +int NEWPOINT() +{ + int tag = GModel::current()->getGEOInternals()->getMaxTag(0) + 1; + if(GModel::current()->getOCCInternals()) + tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(0) + 1); + return tag; +} + +int NEWLINE() +{ + int tag = 0; + if(CTX::instance()->geom.oldNewreg) + tag = NEWREG(); + else + tag = GModel::current()->getGEOInternals()->getMaxTag(1) + 1; + if(GModel::current()->getOCCInternals()) + tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(1) + 1); + return tag; +} + +int NEWLINELOOP() +{ + int tag = 0; + if(CTX::instance()->geom.oldNewreg) + tag = NEWREG(); + else + tag = GModel::current()->getGEOInternals()->getMaxTag(-1) + 1; + if(GModel::current()->getOCCInternals()) + tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(-1) + 1); + return tag; +} + +int NEWSURFACE() +{ + int tag = 0; + if(CTX::instance()->geom.oldNewreg) + tag = NEWREG(); + else + tag = GModel::current()->getGEOInternals()->getMaxTag(2) + 1; + if(GModel::current()->getOCCInternals()) + tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(2) + 1); + return tag; +} + +int NEWSURFACELOOP() +{ + int tag = 0; + if(CTX::instance()->geom.oldNewreg) + tag = NEWREG(); + else + tag = GModel::current()->getGEOInternals()->getMaxTag(-2) + 1; + if(GModel::current()->getOCCInternals()) + tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(-2) + 1); + return tag; +} + +int NEWVOLUME() +{ + int tag = 0; + if(CTX::instance()->geom.oldNewreg) + tag = NEWREG(); + else + tag = GModel::current()->getGEOInternals()->getMaxTag(3) + 1; + if(GModel::current()->getOCCInternals()) + tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(3) + 1); + return tag; +} + +int NEWREG() +{ + int tag = 0; + for(int dim = -2; dim <= 3; dim++){ + if(dim) + tag = std::max(tag, GModel::current()->getGEOInternals()->getMaxTag(dim) + 1); + } + tag = std::max(tag, GModel::current()->getGEOInternals()->getMaxPhysicalTag() + 1); + if(GModel::current()->getOCCInternals()){ + for(int dim = -2; dim <= 3; dim++){ + if(dim) + tag = std::max(tag, GModel::current()->getOCCInternals()->getMaxTag(dim) + 1); + } + } + return tag; +} + +int NEWFIELD() +{ +#if defined(HAVE_MESH) + return (GModel::current()->getFields()->maxId() + 1); +#else + return 0; +#endif +} + +int NEWPHYSICAL() +{ + if(CTX::instance()->geom.oldNewreg) + return NEWREG(); + else + return (GModel::current()->getGEOInternals()->getMaxPhysicalTag() + 1); +} + + +double treat_Struct_FullName_Float +(char* c1, char* c2, int type_var, int index, double val_default, int type_treat) +{ + double out; + if(!c1 && gmsh_yysymbols.count(c2)){ + if (type_treat == 1) out = 1.; // Exists (type_treat == 1) + else { // Get (0) or GetForced (2) + if (type_var == 1) { + gmsh_yysymbol &s(gmsh_yysymbols[c2]); + if(s.value.empty()){ + out = val_default; + if (type_treat == 0) yymsg(0, "Uninitialized variable '%s'", c2); + } + else + out = s.value[0]; + } + else if (type_var == 2) { + gmsh_yysymbol &s(gmsh_yysymbols[c2]); + if((int)s.value.size() < index + 1){ + out = val_default; + if (type_treat == 0) yymsg(0, "Uninitialized variable '%s[%d]'", c2, index); + } + else + out = s.value[0]; + } + else { + out = val_default; + } + } + } + else if(!c1 && type_treat == 1 && gmsh_yystringsymbols.count(c2)) { + out = 1.; + } + else{ + std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); + if(nameSpaces.getTag(struct_namespace, struct_name, out)) { + out = val_default; + if (type_treat == 0) yymsg(0, "Unknown variable '%s'", struct_name.c_str()); + } + } + Free(c1); Free(c2); + return out; +} + +double treat_Struct_FullName_dot_tSTRING_Float +(char* c1, char* c2, char* c3, int index, double val_default, int type_treat) +{ + double out; + std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); + std::string key_member(c3); + switch (nameSpaces.getMember + (struct_namespace, struct_name, key_member, out, index)) { + case 0: + if (type_treat == 1) out = 1.; // Exists (type_treat == 1) + break; + case 1: + if (!NumberOption(GMSH_GET, c2, 0, c3, out, type_treat==0)) + out = val_default; + break; + case 2: + if (type_treat != 0) { + const std::string * out_dummy = NULL; + out = (nameSpaces.getMember + (struct_namespace, struct_name, key_member, out_dummy))? + val_default : 1.; + } + else { + out = val_default; + if (type_treat == 0) + yymsg(0, "Unknown member '%s' of Struct %s", c3, struct_name.c_str()); + } + break; + case 3: + out = val_default; + if (type_treat == 0) + yymsg(0, "Index %d out of range", index); + break; + } + Free(c1); Free(c2); + if (flag_tSTRING_alloc) Free(c3); + return out; +} + +int treat_Struct_FullName_dot_tSTRING_Float_getDim +(char* c1, char* c2, char* c3) +{ + int out; + std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); + std::string key_member(c3); + switch (nameSpaces.getMember_Dim + (struct_namespace, struct_name, key_member, out)) { + case 0: + break; + case 1: + out = 0; + break; + case 2: + out = 0; + yymsg(0, "Unknown member '%s' of Struct %s", c3, struct_name.c_str()); + break; + } + Free(c1); Free(c2); + if (flag_tSTRING_alloc) Free(c3); + return out; +} + +char * treat_Struct_FullName_String +(char* c1, char* c2, int type_var, int index, char * val_default, int type_treat) +{ + std::string string_default(val_default? val_default : std::string("")); + const std::string * out = NULL; + std::string out_tmp; + if(!c1 && gmsh_yystringsymbols.count(c2)){ + // Get (0) or GetForced (2) + if(gmsh_yystringsymbols[c2].size() != 1){ + out = &string_default; + if (type_treat == 0) + yymsg(0, "Expected single valued string variable '%s'", c2); + } + else { + out_tmp = gmsh_yystringsymbols[c2][0]; + out = &out_tmp; + } + } + else{ + out = &string_default; + if (type_treat == 0) yymsg(0, "Unknown string variable '%s'", c2); + } + char* out_c = (char*)Malloc((out->size() + 1) * sizeof(char)); + strcpy(out_c, out->c_str()); + Free(c1); Free(c2); + return out_c; +} + +char* treat_Struct_FullName_dot_tSTRING_String +(char* c1, char* c2, char* c3, int index, char * val_default, int type_treat) +{ + std::string string_default(val_default? val_default : std::string("")); + const std::string * out = NULL; + std::string out_tmp; // PD: we should avoid that -> StringOption() to be changed + std::string struct_namespace(c1? c1 : std::string("")), struct_name(c2); + std::string key_member(c3); + switch (nameSpaces.getMember + (struct_namespace, struct_name, key_member, out, index)) { + case 0: + break; + case 1: + if (StringOption(GMSH_GET, c2, 0, c3, out_tmp, type_treat==0)) + out = &out_tmp; + else + out = &string_default; + break; + case 2: + out = &string_default; + if (type_treat == 0) + yymsg(0, "Unknown member '%s' of Struct %s", c3, struct_name.c_str()); + break; + case 3: + out = &string_default; + if (type_treat == 0) + yymsg(0, "Index %d out of range", index); + break; + } + char* out_c = (char*)Malloc((out->size() + 1) * sizeof(char)); + strcpy(out_c, out->c_str()); + Free(c1); Free(c2); + if (flag_tSTRING_alloc) Free(c3); + return out_c; +} diff --git a/Parser/Parser.h b/Parser/Parser.h index ec52388c293aa04add4e898c81d6689ef766a87b..561d262f9a990fc8d70969c84e7aee9891f65311 100644 --- a/Parser/Parser.h +++ b/Parser/Parser.h @@ -55,30 +55,52 @@ public: inline int getTag() const { return _tag; } - int getMember (std::string & key_member, double & out) const + int getMember (std::string & key_member, double & out, int index) const { std::map<std::string, std::vector<double> >::const_iterator it = _fopt.find(key_member); if (it != _fopt.end()) { - out = it->second[0]; return 0; + if (index < it->second.size()) { + out = it->second[index]; return 0; + } + else { + out = 0.; return 2; // Error: Index out of range + } } else { out = 0.; return 1; // Error: Unknown member of Struct } } - int getMember (std::string & key_member, const std::string * & out) const + int getMember (std::string & key_member, const std::string * & out, int index) const { std::map<std::string, std::vector<std::string> >::const_iterator it = _copt.find(key_member); if (it != _copt.end()) { - out = &it->second[0]; return 0; + if (index < it->second.size()) { + out = &it->second[index]; return 0; + } + else { + out = NULL; return 2; // Error: Index out of range + } } else { out = NULL; return 1; // Error: Unknown member of Struct } } + int getMember_Dim (std::string & key_member, int & out) const + { + std::map<std::string, std::vector<double> >::const_iterator + it = _fopt.find(key_member); + if (it != _fopt.end()) { + out = it->second.size(); return 0; + } + else { + out = 0; return 1; // Error: Unknown member of Struct + } + } + int getMember_ValMax () const { return _member_ValMax; } void sprint(std::string & str, @@ -95,14 +117,27 @@ public: if (!flag_comma && it_attrib != _fopt.begin()) flag_comma = true; if (flag_comma) str += ", "; str += it_attrib->first + " "; - char tmp[32]; sprintf(tmp, "%g", it_attrib->second[0]); str += tmp; + char tmp[32]; + if (it_attrib->second.size() > 1) str += "{ "; + for (int i = 0; i < it_attrib->second.size(); i++) { + if (i) str += ", "; + sprintf(tmp, "%g", it_attrib->second[i]); str += tmp; + } + if (it_attrib->second.size() > 1) str += "}"; } for (std::map<std::string, std::vector<std::string> >::const_iterator it_attrib = _copt.begin(); it_attrib != _copt.end(); ++it_attrib ) { if (!flag_comma && it_attrib != _copt.begin()) flag_comma = true; if (flag_comma) str += ", "; - str += it_attrib->first + " \"" + it_attrib->second[0] + "\""; + str += it_attrib->first + " "; + if (it_attrib->second.size() > 1) str += "{ "; + for (int i = 0; i < it_attrib->second.size(); i++) { + if (i) str += ", "; + str += "\"" + it_attrib->second[i] + "\""; + } + if (it_attrib->second.size() > 1) str += "}"; + } str += " ];\n"; } @@ -239,13 +274,20 @@ public: } int getMember(std::string & key_namespace, std::string & key_name, - std::string & key_member, double & out) const { + std::string & key_member, double & out, int index = 0) const { const Structs * structs_P = this->Find(key_namespace); const Struct * struct_P = (structs_P)? structs_P->Find(key_name) : NULL; if (structs_P && struct_P) { - if (struct_P->getMember(key_member, out)) { + switch (struct_P->getMember(key_member, out, index)) { + case 0: + break; + case 1: out = 0.; return 2; // 2: Error: Unknown member of Struct + break; + case 2: + out = 0.; return 3; // 3: // Error: Index out of range + break; } } else { @@ -255,14 +297,21 @@ public: } int getMember(std::string & key_namespace, std::string & key_name, - std::string & key_member, const std::string * & out) const + std::string & key_member, const std::string * & out, int index = 0) const { const Structs * structs_P = this->Find(key_namespace); const Struct * struct_P = (structs_P)? structs_P->Find(key_name) : NULL; if (structs_P && struct_P) { - if (struct_P->getMember(key_member, out)) { + switch (struct_P->getMember(key_member, out, index)) { + case 0: + break; + case 1: out = NULL; return 2; // 2: Error: Unknown member of Struct + break; + case 2: + out = NULL; return 3; // 3: // Error: Index out of range + break; } } else { @@ -271,6 +320,26 @@ public: return 0; // 0: no error } + int getMember_Dim(std::string & key_namespace, std::string & key_name, + std::string & key_member, int & out) const { + + const Structs * structs_P = this->Find(key_namespace); + const Struct * struct_P = (structs_P)? structs_P->Find(key_name) : NULL; + if (structs_P && struct_P) { + switch (struct_P->getMember_Dim(key_member, out)) { + case 0: + break; + case 1: + out = 0; return 2; // 2: Error: Unknown member of Struct + break; + } + } + else { + out = 0; return 1; // 1: Error: Unknown Struct + } + return 0; // 0: no error + } + int get_key_struct_from_tag(std::string & key_namespace, int tag, const std::string * & key_struct) const {