diff --git a/Common/Makefile b/Common/Makefile index 8d4307bd5b30db56c33a88ae13ea90c2f546a151..dfb61b99b3f6d23c086daf70d609aae8ae0223c3 100644 --- a/Common/Makefile +++ b/Common/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.128 2007-04-12 12:21:17 geuzaine Exp $ +# $Id: Makefile,v 1.129 2007-04-16 09:08:26 remacle Exp $ # # Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle # @@ -24,7 +24,7 @@ include ../variables LIB = ../lib/libGmshCommon.a INCLUDE = -I../Common -I../DataStr -I../Geo -I../Graphics -I../Mesh\ -I../Numeric -I../Parser -I../Plugin -I../Fltk\ - -I../contrib/MathEval + -I../contrib/MathEval -I../contrib/ANN/include/ CFLAGS =${OPTIM} ${FLAGS} ${INCLUDE} SRC = Context.cpp\ @@ -71,9 +71,9 @@ Context.o: Context.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ VertexArray.h SmoothData.h AdaptiveViews.h GmshMatrix.h Trackball.h AdaptiveViews.o: AdaptiveViews.cpp AdaptiveViews.h ../DataStr/List.h \ GmshMatrix.h ../Plugin/Plugin.h ../Common/Options.h ../Common/Message.h \ - ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ - ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ - ../Common/GmshMatrix.h OS.h + ../Common/Views.h ../Common/ColorTable.h ../DataStr/List.h \ + ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h OS.h Views.o: Views.cpp Gmsh.h Message.h ../DataStr/Malloc.h ../DataStr/List.h \ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h \ ../DataStr/Tree.h ../Numeric/Numeric.h Views.h ColorTable.h \ @@ -93,13 +93,15 @@ OctreePost.o: OctreePost.cpp Octree.h OctreeInternals.h OctreePost.h \ Options.o: Options.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ ../DataStr/List.h ../DataStr/Tree.h GmshUI.h GmshDefines.h \ - ../Graphics/Draw.h ../Common/Views.h ../Common/ColorTable.h \ - ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Mesh/Generator.h \ - Context.h Options.h ../Mesh/BackgroundMesh.h ../Plugin/PluginManager.h \ - ../Plugin/Plugin.h ../Common/Options.h ../Common/Message.h \ - ../Fltk/Solvers.h ../Fltk/GUI.h ../Fltk/Opengl_Window.h \ - ../Fltk/Colorbar_Window.h ../Common/GmshUI.h ../Fltk/Popup_Button.h \ + ../Graphics/Draw.h ../DataStr/List.h ../Common/Views.h \ + ../Common/ColorTable.h ../DataStr/List.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ + ../Common/GmshMatrix.h ../Mesh/Generator.h Context.h Options.h \ + ../Mesh/BackgroundMesh.h ../Plugin/PluginManager.h ../Plugin/Plugin.h \ + ../Common/Options.h ../Common/Message.h ../Common/Views.h \ + ../Common/GmshMatrix.h ../Fltk/Solvers.h ../Fltk/GUI.h \ + ../Fltk/Opengl_Window.h ../Fltk/Colorbar_Window.h ../Common/GmshUI.h \ + ../Common/ColorTable.h ../Fltk/Popup_Button.h \ ../Fltk/SpherePosition_Widget.h CommandLine.o: CommandLine.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ @@ -107,22 +109,15 @@ CommandLine.o: CommandLine.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ GmshVersion.h CommandLine.h ../Numeric/Numeric.h Context.h Options.h \ ../Geo/Geo.h ../Common/GmshDefines.h ../Geo/gmshSurface.h ../Geo/Pair.h \ ../Geo/Range.h ../Geo/SPoint2.h ../Geo/SPoint3.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../Geo/SPoint2.h ../Geo/ExtrudeParams.h ../Common/SmoothData.h Views.h \ - ColorTable.h VertexArray.h SmoothData.h AdaptiveViews.h GmshMatrix.h \ - ../Parser/OpenFile.h ../Parser/CreateFile.h ../Parser/Parser.h \ - ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/MVertex.h \ - ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h \ - ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h \ - ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/MVertex.h ../Geo/MEdge.h \ - ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Hash.h ../Geo/MFace.h \ - ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Context.h \ - ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h \ - ../Geo/GEntity.h ../Geo/MElement.h ../Geo/ExtrudeParams.h \ - ../Geo/SBoundingBox3d.h OS.h + ../Geo/SBoundingBox3d.h ../DataStr/List.h ../DataStr/Tree.h \ + ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h \ + Views.h ColorTable.h VertexArray.h SmoothData.h AdaptiveViews.h \ + GmshMatrix.h ../Parser/OpenFile.h ../Parser/CreateFile.h \ + ../Parser/Parser.h ../DataStr/List.h ../DataStr/Tree.h ../Geo/GModel.h \ + ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/MVertex.h ../Geo/GPoint.h \ + ../Geo/GEdge.h ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h \ + ../Geo/MFace.h ../Numeric/Numeric.h ../Common/Context.h ../Geo/GFace.h \ + ../Geo/GEdgeLoop.h ../Geo/GRegion.h OS.h OS.o: OS.cpp Message.h ColorTable.o: ColorTable.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ @@ -130,20 +125,14 @@ ColorTable.o: ColorTable.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ ../Numeric/Numeric.h Visibility.o: Visibility.cpp Visibility.h GmshDefines.h ../Geo/GVertex.h \ ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Geo/GFace.h \ - ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ - ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/Pair.h \ - ../Geo/ExtrudeParams.h ../Geo/GRegion.h ../Geo/GEntity.h \ - ../Geo/MElement.h ../Geo/ExtrudeParams.h ../Geo/GModel.h \ - ../Geo/GVertex.h ../Geo/GEdge.h ../Geo/GFace.h ../Geo/GRegion.h \ - ../Geo/SBoundingBox3d.h ../Parser/Parser.h ../DataStr/Tree.h \ + ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/GVertex.h \ + ../Geo/SVector3.h ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h \ + ../Geo/MFace.h ../Numeric/Numeric.h ../Common/Context.h \ + ../DataStr/List.h ../Geo/ExtrudeParams.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ + ../Geo/Pair.h ../Geo/GRegion.h ../Geo/GModel.h ../Geo/GFace.h \ + ../Geo/GRegion.h ../Parser/Parser.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h Trackball.o: Trackball.cpp Trackball.h VertexArray.o: VertexArray.cpp VertexArray.h Context.h ../DataStr/List.h \ diff --git a/Fltk/Callbacks.cpp b/Fltk/Callbacks.cpp index cc81d32c3fb315e05f3c528365610dc215af0162..d0b32266fdd7f65ff9f96ff80f1868ea7251d92f 100644 --- a/Fltk/Callbacks.cpp +++ b/Fltk/Callbacks.cpp @@ -1,4 +1,4 @@ -// $Id: Callbacks.cpp,v 1.520 2007-04-01 10:29:42 geuzaine Exp $ +// $Id: Callbacks.cpp,v 1.521 2007-04-16 09:08:26 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -48,6 +48,7 @@ #include "Solvers.h" #include "OS.h" #include "GModel.h" +#include "Field.h" extern Context_T CTX; extern GUI *WID; @@ -4460,7 +4461,9 @@ void view_applybgmesh_cb(CALLBACK_ARGS) Msg(GERROR, "Background mesh generation impossible with non-scalar view"); return; } - BGMWithView(v); + Field *field=new PostViewField(v); + fields.insert(field); + lc_field.push_front(field); } void view_plugin_cancel_cb(CALLBACK_ARGS) diff --git a/Fltk/Main.cpp b/Fltk/Main.cpp index 31ad694461551daf7917b683de444229c26a1e1b..7524f9a00a032be6c5e20d9d46468433c30bed50 100644 --- a/Fltk/Main.cpp +++ b/Fltk/Main.cpp @@ -1,4 +1,4 @@ -// $Id: Main.cpp,v 1.105 2007-03-18 14:12:20 geuzaine Exp $ +// $Id: Main.cpp,v 1.106 2007-04-16 09:08:27 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -39,6 +39,8 @@ #include "Solvers.h" #include "PluginManager.h" #include "GModel.h" +#include "Field.h" +#include "BackgroundMesh.h" Context_T CTX; Mesh *THEM = 0; @@ -127,10 +129,12 @@ int main(int argc, char *argv[]) CombineViews(1, 2, CTX.post.combine_remove_orig); if(CTX.bgm_filename) { MergeFile(CTX.bgm_filename); - if(List_Nbr(CTX.post.list)) - BGMWithView(*(Post_View **) - List_Pointer(CTX.post.list, - List_Nbr(CTX.post.list) - 1)); + if(List_Nbr(CTX.post.list)){ + Field *field = new PostViewField(*(Post_View **) + List_Pointer(CTX.post.list, List_Nbr(CTX.post.list) - 1)); + BGMAddField(field); + fields.insert(field); + } else Msg(GERROR, "Invalid background mesh (no view)"); } @@ -227,10 +231,12 @@ int main(int argc, char *argv[]) if(CTX.bgm_filename) { MergeFile(CTX.bgm_filename); - if(List_Nbr(CTX.post.list)) - BGMWithView(*(Post_View **) - List_Pointer(CTX.post.list, List_Nbr(CTX.post.list) - 1)); - else + if(List_Nbr(CTX.post.list)){ + Field *field = new PostViewField(*(Post_View **) + List_Pointer(CTX.post.list, List_Nbr(CTX.post.list) - 1)); + BGMAddField(field); + fields.insert(field); + } else Msg(GERROR, "Invalid background mesh (no view)"); } diff --git a/Fltk/Makefile b/Fltk/Makefile index 82dc88b802d450bf97a731e44c71104fa636c783..99dda99a73a6d9c0dcf23beeac7149151642fd75 100644 --- a/Fltk/Makefile +++ b/Fltk/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.129 2007-04-12 12:21:17 geuzaine Exp $ +# $Id: Makefile,v 1.130 2007-04-16 09:08:27 remacle Exp $ # # Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle # @@ -70,26 +70,21 @@ Main.o: Main.cpp GUI.h Opengl_Window.h Colorbar_Window.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ ../Common/OS.h ../Geo/Geo.h ../Common/GmshDefines.h \ ../Geo/gmshSurface.h ../Geo/Pair.h ../Geo/Range.h ../Geo/SPoint2.h \ - ../Geo/SPoint3.h ../Geo/SVector3.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Geo/SPoint2.h \ - ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Mesh/Generator.h ../Parser/CreateFile.h ../Graphics/Draw.h \ + ../Geo/SPoint3.h ../Geo/SVector3.h ../Geo/SBoundingBox3d.h \ + ../DataStr/List.h ../DataStr/Tree.h ../Geo/ExtrudeParams.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Mesh/Generator.h \ + ../Parser/CreateFile.h ../Graphics/Draw.h ../DataStr/List.h \ ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ ../Common/SmoothData.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ ../Common/Context.h ../Common/Options.h ../Parser/Parser.h \ - ../Parser/OpenFile.h ../Common/CommandLine.h Solvers.h \ - ../Plugin/PluginManager.h ../Plugin/Plugin.h ../Geo/GModel.h \ - ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/MVertex.h ../Geo/SPoint3.h \ - ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/GEntity.h \ - ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h ../Geo/SPoint2.h \ - ../Geo/MElement.h ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h \ - ../Geo/SVector3.h ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h \ - ../Geo/SVector3.h ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h \ - ../Geo/GEntity.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h \ - ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h \ - ../Geo/GRegion.h ../Geo/GEntity.h ../Geo/MElement.h \ - ../Geo/ExtrudeParams.h ../Geo/SBoundingBox3d.h + ../DataStr/List.h ../DataStr/Tree.h ../Parser/OpenFile.h \ + ../Common/CommandLine.h ../Numeric/Numeric.h Solvers.h \ + ../Plugin/PluginManager.h ../Plugin/Plugin.h ../Common/Options.h \ + ../Common/Message.h ../Common/Views.h ../Common/GmshMatrix.h \ + ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/MEdge.h \ + ../Common/Hash.h ../Geo/MFace.h ../Numeric/Numeric.h \ + ../Common/Context.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/GRegion.h Message.o: Message.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ @@ -100,115 +95,101 @@ GUI.o: GUI.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ ../DataStr/List.h ../DataStr/Tree.h ../Common/GmshUI.h \ ../Common/GmshDefines.h ../Numeric/Numeric.h ../Common/Context.h \ - ../Common/Options.h ../Graphics/Draw.h ../Common/Views.h \ - ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h GUI.h Opengl_Window.h \ - Colorbar_Window.h Popup_Button.h SpherePosition_Widget.h Callbacks.h \ - Bitmaps.h Win32Icon.h ../Parser/OpenFile.h ../Common/CommandLine.h \ - ../Mesh/Generator.h Solvers.h ../Plugin/PluginManager.h \ - ../Plugin/Plugin.h Shortcut_Window.h + ../Common/Options.h ../Graphics/Draw.h ../DataStr/List.h \ + ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ + ../Common/GmshMatrix.h GUI.h Opengl_Window.h Colorbar_Window.h \ + ../Common/ColorTable.h Popup_Button.h SpherePosition_Widget.h \ + Callbacks.h Bitmaps.h Win32Icon.h ../Parser/OpenFile.h \ + ../Common/CommandLine.h ../Mesh/Generator.h Solvers.h \ + ../Plugin/PluginManager.h ../Plugin/Plugin.h ../Common/Options.h \ + ../Common/Message.h ../Common/Views.h ../Common/GmshMatrix.h \ + Shortcut_Window.h GUI_Extras.o: GUI_Extras.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ ../Common/GmshUI.h ../Common/GmshDefines.h File_Picker.h \ Shortcut_Window.h ../Parser/CreateFile.h ../Common/Options.h \ - ../Common/Context.h ../Graphics/Draw.h ../Common/Views.h \ - ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h + ../Common/Context.h ../Graphics/Draw.h ../DataStr/List.h \ + ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ + ../Common/GmshMatrix.h GUI_Projection.o: GUI_Projection.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ ../Common/GmshUI.h ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h \ ../Geo/Range.h ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h \ - ../Geo/SPoint3.h ../Common/GmshDefines.h ../Geo/MVertex.h \ - ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h \ - ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h \ - ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/MVertex.h \ - ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Hash.h \ - ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h ../Numeric/Numeric.h \ + ../Common/GmshDefines.h ../Geo/MVertex.h ../Geo/GPoint.h \ + ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/SVector3.h ../Geo/MElement.h \ + ../Geo/MEdge.h ../Common/Hash.h ../Geo/MFace.h ../Numeric/Numeric.h \ ../Common/Context.h ../Geo/ExtrudeParams.h ../Common/SmoothData.h \ - ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/GEdgeLoop.h \ - ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h \ - ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h ../Geo/GEntity.h \ - ../Geo/MElement.h ../Geo/ExtrudeParams.h ../Geo/SBoundingBox3d.h \ - ../Geo/projectionFace.h ../Geo/GFace.h ../Graphics/Draw.h \ - ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ - ../Common/SmoothData.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Common/Options.h Shortcut_Window.h + ../Numeric/Numeric.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/Pair.h \ + ../Geo/GRegion.h ../Geo/projectionFace.h ../Graphics/Draw.h \ + ../DataStr/List.h ../Common/Views.h ../Common/ColorTable.h \ + ../Common/VertexArray.h ../Common/SmoothData.h \ + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/Options.h \ + ../Common/Context.h Shortcut_Window.h Callbacks.o: Callbacks.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ ../Common/GmshUI.h ../Geo/Geo.h ../Common/GmshDefines.h \ ../Geo/gmshSurface.h ../Geo/Pair.h ../Geo/Range.h ../Geo/SPoint2.h \ - ../Geo/SPoint3.h ../Geo/SVector3.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Geo/SPoint2.h \ - ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Geo/GeoStringInterface.h ../Geo/Geo.h ../Geo/findLinks.h \ - ../Mesh/Generator.h ../Mesh/HighOrder.h ../Geo/GModel.h \ - ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/MVertex.h ../Geo/SPoint3.h \ - ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/GEntity.h \ - ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h ../Geo/SPoint2.h \ - ../Geo/MElement.h ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h \ - ../Geo/SVector3.h ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h \ - ../Geo/SVector3.h ../Common/Context.h ../Geo/ExtrudeParams.h \ - ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/GEdgeLoop.h \ - ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h \ - ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h ../Geo/GEntity.h \ - ../Geo/MElement.h ../Geo/ExtrudeParams.h ../Geo/SBoundingBox3d.h \ - ../Graphics/Draw.h ../Common/Views.h ../Common/ColorTable.h \ - ../Common/VertexArray.h ../Common/SmoothData.h \ + ../Geo/SPoint3.h ../Geo/SVector3.h ../Geo/SBoundingBox3d.h \ + ../DataStr/List.h ../DataStr/Tree.h ../Geo/ExtrudeParams.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Geo/GeoStringInterface.h \ + ../Geo/Geo.h ../Geo/findLinks.h ../Mesh/Generator.h ../Mesh/HighOrder.h \ + ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/MEdge.h \ + ../Common/Hash.h ../Geo/MFace.h ../Numeric/Numeric.h \ + ../Common/Context.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/GRegion.h \ + ../Graphics/Draw.h ../DataStr/List.h ../Common/Views.h \ + ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Graphics/SelectBuffer.h ../Parser/CreateFile.h ../Parser/OpenFile.h \ - ../Common/CommandLine.h ../Common/Options.h GUI.h Opengl_Window.h \ - Colorbar_Window.h Popup_Button.h SpherePosition_Widget.h GUI_Extras.h \ - Callbacks.h ../Plugin/Plugin.h ../Plugin/PluginManager.h \ - ../Plugin/Plugin.h ../Common/Visibility.h ../Common/GmshDefines.h \ - Solvers.h ../Common/OS.h + ../Graphics/SelectBuffer.h ../Geo/GVertex.h ../Geo/GEdge.h \ + ../Geo/GFace.h ../Geo/GRegion.h ../Common/Views.h \ + ../Parser/CreateFile.h ../Parser/OpenFile.h ../Common/CommandLine.h \ + ../Common/Context.h ../Common/Options.h GUI.h Opengl_Window.h \ + Colorbar_Window.h ../Common/ColorTable.h Popup_Button.h \ + SpherePosition_Widget.h GUI_Extras.h Callbacks.h ../Plugin/Plugin.h \ + ../Common/Options.h ../Common/Message.h ../Common/Views.h \ + ../Common/GmshMatrix.h ../Plugin/PluginManager.h ../Plugin/Plugin.h \ + ../Common/Visibility.h ../Common/GmshDefines.h ../Geo/GVertex.h \ + ../Geo/GEdge.h ../Geo/GFace.h ../Geo/GRegion.h ../Numeric/Numeric.h \ + Solvers.h ../Common/OS.h ../Geo/GModel.h Opengl.o: Opengl.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ ../Common/GmshUI.h ../Numeric/Numeric.h ../Common/Context.h \ - ../Graphics/Draw.h ../Common/Views.h ../Common/ColorTable.h \ - ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ + ../Graphics/Draw.h ../DataStr/List.h ../Common/Views.h \ + ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ ../Graphics/SelectBuffer.h ../Geo/GVertex.h ../Geo/GEntity.h \ ../Geo/Range.h ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h \ - ../Geo/SPoint3.h ../Common/GmshDefines.h ../Geo/MVertex.h \ - ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h \ - ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h \ - ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/MVertex.h \ - ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Hash.h \ - ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h \ - ../Geo/GEntity.h ../Geo/MElement.h ../Geo/ExtrudeParams.h GUI.h \ - Opengl_Window.h Colorbar_Window.h Popup_Button.h \ - SpherePosition_Widget.h ../Graphics/gl2ps.h + ../Common/GmshDefines.h ../Geo/MVertex.h ../Geo/GPoint.h \ + ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/GVertex.h ../Geo/SVector3.h \ + ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h ../Geo/MFace.h \ + ../Numeric/Numeric.h ../Common/Context.h ../Geo/ExtrudeParams.h \ + ../Common/SmoothData.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ + ../Geo/Pair.h ../Geo/GRegion.h GUI.h Opengl_Window.h Colorbar_Window.h \ + ../Common/ColorTable.h Popup_Button.h SpherePosition_Widget.h \ + ../Graphics/gl2ps.h Opengl_Window.o: Opengl_Window.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ ../Numeric/Numeric.h ../Common/GmshUI.h ../Common/Context.h \ ../Geo/Geo.h ../Common/GmshDefines.h ../Geo/gmshSurface.h ../Geo/Pair.h \ ../Geo/Range.h ../Geo/SPoint2.h ../Geo/SPoint3.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../Geo/SPoint2.h ../Geo/ExtrudeParams.h ../Common/SmoothData.h \ - ../Graphics/Draw.h ../Common/Views.h ../Common/ColorTable.h \ - ../Common/VertexArray.h ../Common/SmoothData.h \ + ../Geo/SBoundingBox3d.h ../DataStr/List.h ../DataStr/Tree.h \ + ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h \ + ../Graphics/Draw.h ../DataStr/List.h ../Common/Views.h \ + ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ ../Graphics/SelectBuffer.h ../Geo/GVertex.h ../Geo/GEntity.h \ - ../Geo/Range.h ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/MVertex.h \ - ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Hash.h \ - ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h \ - ../Geo/GEntity.h ../Geo/MElement.h ../Geo/ExtrudeParams.h GUI.h \ - Opengl_Window.h Colorbar_Window.h Popup_Button.h \ + ../Geo/MVertex.h ../Geo/GPoint.h ../Geo/GEdge.h ../Geo/GVertex.h \ + ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h ../Geo/MFace.h \ + ../Numeric/Numeric.h ../Common/Context.h ../Geo/GFace.h \ + ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/GRegion.h GUI.h \ + Opengl_Window.h Colorbar_Window.h ../Common/ColorTable.h Popup_Button.h \ SpherePosition_Widget.h Colorbar_Window.o: Colorbar_Window.cpp ../Common/Gmsh.h \ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ @@ -221,7 +202,7 @@ Solvers.o: Solvers.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ Solvers.h GmshServer.h ../Parser/OpenFile.h ../Common/GmshUI.h GUI.h \ Opengl_Window.h Colorbar_Window.h ../Common/ColorTable.h Popup_Button.h \ - SpherePosition_Widget.h ../Graphics/Draw.h ../Common/Views.h \ - ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Common/Context.h + SpherePosition_Widget.h ../Graphics/Draw.h ../DataStr/List.h \ + ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ + ../Common/GmshMatrix.h ../Common/Context.h diff --git a/Geo/GModel.cpp b/Geo/GModel.cpp index 737a4b4870f48c15ad90faa24d9670a8d1c94325..57bef333570489f163db690beea329e6f13e6f9e 100644 --- a/Geo/GModel.cpp +++ b/Geo/GModel.cpp @@ -1,4 +1,4 @@ -// $Id: GModel.cpp,v 1.37 2007-04-08 23:06:53 geuzaine Exp $ +// $Id: GModel.cpp,v 1.38 2007-04-16 09:08:27 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -21,8 +21,9 @@ #include "GModel.h" #include "gmshSurface.h" -#include "Attractors.h" +#include "Field.h" #include "MRep.h" +#include "BackgroundMesh.h" void GModel::destroy() { @@ -43,7 +44,8 @@ void GModel::destroy() MVertex::resetGlobalNumber(); MElement::resetGlobalNumber(); gmshSurface::reset(); - Attractor::reset(); + fields.reset(); + BGMReset(); } GRegion * GModel::regionByTag(int n) const diff --git a/Geo/GeoInterpolation.cpp b/Geo/GeoInterpolation.cpp index eff7449192b857530851271648ad0d893582a687..a109c6e8032818cd587ce06d1dbf840a9de833b7 100644 --- a/Geo/GeoInterpolation.cpp +++ b/Geo/GeoInterpolation.cpp @@ -1,4 +1,4 @@ -// $Id: GeoInterpolation.cpp,v 1.24 2007-03-11 20:18:58 geuzaine Exp $ +// $Id: GeoInterpolation.cpp,v 1.25 2007-04-16 09:08:27 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -129,46 +129,34 @@ SPoint2 InterpolateCubicSpline(Vertex * v[4], double t, double mat[4][4], } - // Uniform BSplines -Vertex InterpolateUBS(Curve * Curve, double u, int derivee) -{ +Vertex InterpolateUBS(Curve * Curve, double u, int derivee) { int NbControlPoints, NbCurves, iCurve; double t, t1, t2; Vertex *v[4]; Vertex V; - + bool periodic=Curve->end==Curve->beg; NbControlPoints = List_Nbr(Curve->Control_Points); - NbCurves = NbControlPoints - (Curve->beg==Curve->end ? 1 : 3); - - iCurve = (int)(u * (double)NbCurves) + 1; - - if(iCurve > NbCurves) - iCurve = NbCurves; - else if (iCurve < 1) - iCurve = 1; - - t1 = (double)(iCurve - 1) / (double)(NbCurves); - t2 = (double)(iCurve) / (double)(NbCurves); - + NbCurves = NbControlPoints +(periodic ? -1:+1) ; + iCurve = (int)floor(u * (double)NbCurves); + if(iCurve==NbCurves)iCurve-=1;//u=1 + t1 = (double)(iCurve) / (double)(NbCurves); + t2 = (double)(iCurve+1) / (double)(NbCurves); t = (u - t1) / (t2 - t1); - - for(int i=0;i<4;i++){ - int k=iCurve - (Curve->beg==Curve->end ? 2 : 1) + i; - if (k<0) k+=NbControlPoints - 1; - if (k>=NbControlPoints) k-=NbControlPoints - 1; + for(int i=0;i<4;i++) { + int k=iCurve - (periodic?1:2) + i; + if (k<0) k=periodic ? k + NbControlPoints - 1 : 0; + if (k>=NbControlPoints) k=periodic ? k-NbControlPoints + 1: NbControlPoints-1; List_Read(Curve->Control_Points, k , &v[i]); } - if (Curve->geometry) - { - SPoint2 pp = InterpolateCubicSpline(v, t, Curve->mat, 0, t1, t2,Curve->geometry); - SPoint3 pt = Curve->geometry->point(pp); - V.Pos.X = pt.x(); - V.Pos.Y = pt.y(); - V.Pos.Z = pt.z(); - return V; - } - else + if (Curve->geometry) { + SPoint2 pp = InterpolateCubicSpline(v, t, Curve->mat, 0, t1, t2,Curve->geometry); + SPoint3 pt = Curve->geometry->point(pp); + V.Pos.X = pt.x(); + V.Pos.Y = pt.y(); + V.Pos.Z = pt.z(); + return V; + } else return InterpolateCubicSpline(v, t, Curve->mat, 0, t1, t2); } diff --git a/Geo/Makefile b/Geo/Makefile index 52d62ed92fdc58063e90a2a9e66622a7e670f7e4..c3fad22340465aece60a89d82f3bae5591d76948 100644 --- a/Geo/Makefile +++ b/Geo/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.140 2007-04-08 23:06:53 geuzaine Exp $ +# $Id: Makefile,v 1.141 2007-04-16 09:08:27 remacle Exp $ # # Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle # @@ -72,167 +72,179 @@ GEntity.o: GEntity.cpp GEntity.h Range.h SPoint3.h SBoundingBox3d.h \ ../Common/GmshDefines.h MRep.h GEdge.h GVertex.h MVertex.h GPoint.h \ SPoint2.h SVector3.h MElement.h MEdge.h ../Common/Hash.h MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h ../Common/VertexArray.h ../Common/Message.h ../Common/OS.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h ../Common/VertexArray.h \ + ../Common/Message.h ../Common/OS.h GVertex.o: GVertex.cpp GVertex.h GEntity.h Range.h SPoint3.h \ SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h SPoint2.h \ GFace.h GEdgeLoop.h GEdge.h SVector3.h MElement.h MEdge.h \ ../Common/Hash.h MFace.h ../Numeric/Numeric.h ../Common/Context.h \ - ../DataStr/List.h ExtrudeParams.h ../Common/SmoothData.h Pair.h + ../DataStr/List.h ExtrudeParams.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h Pair.h GEdge.o: GEdge.cpp GModel.h GVertex.h GEntity.h Range.h SPoint3.h \ SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h SPoint2.h \ GEdge.h SVector3.h MElement.h MEdge.h ../Common/Hash.h MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h GEdgeLoop.o: GEdgeLoop.cpp GEdgeLoop.h GEdge.h GEntity.h Range.h \ SPoint3.h SBoundingBox3d.h ../Common/GmshDefines.h GVertex.h MVertex.h \ GPoint.h SPoint2.h SVector3.h MElement.h MEdge.h ../Common/Hash.h \ MFace.h ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h ../Common/Message.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h \ + ../Common/Message.h GFace.o: GFace.cpp GModel.h GVertex.h GEntity.h Range.h SPoint3.h \ SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h SPoint2.h \ GEdge.h SVector3.h MElement.h MEdge.h ../Common/Hash.h MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h ../Common/Message.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h ../Common/Message.h GRegion.o: GRegion.cpp GModel.h GVertex.h GEntity.h Range.h SPoint3.h \ SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h SPoint2.h \ GEdge.h SVector3.h MElement.h MEdge.h ../Common/Hash.h MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h gmshVertex.o: gmshVertex.cpp GFace.h GPoint.h GEntity.h Range.h SPoint3.h \ SBoundingBox3d.h ../Common/GmshDefines.h GEdgeLoop.h GEdge.h GVertex.h \ MVertex.h SPoint2.h SVector3.h MElement.h MEdge.h ../Common/Hash.h \ MFace.h ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h Pair.h gmshVertex.h Geo.h \ - gmshSurface.h ../DataStr/Tree.h ../DataStr/avl.h GeoInterpolation.h \ - ../Common/Message.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h Pair.h \ + gmshVertex.h Geo.h gmshSurface.h ../DataStr/List.h ../DataStr/Tree.h \ + ../DataStr/avl.h GeoInterpolation.h ../Common/Message.h gmshEdge.o: gmshEdge.cpp GFace.h GPoint.h GEntity.h Range.h SPoint3.h \ SBoundingBox3d.h ../Common/GmshDefines.h GEdgeLoop.h GEdge.h GVertex.h \ MVertex.h SPoint2.h SVector3.h MElement.h MEdge.h ../Common/Hash.h \ MFace.h ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h Pair.h gmshEdge.h Geo.h \ - gmshSurface.h ../DataStr/Tree.h ../DataStr/avl.h gmshVertex.h \ - GeoInterpolation.h ../Common/Message.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h Pair.h \ + gmshEdge.h Geo.h gmshSurface.h ../DataStr/List.h ../DataStr/Tree.h \ + ../DataStr/avl.h gmshVertex.h GeoInterpolation.h ../Common/Message.h gmshFace.o: gmshFace.cpp GModel.h GVertex.h GEntity.h Range.h SPoint3.h \ SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h SPoint2.h \ GEdge.h SVector3.h MElement.h MEdge.h ../Common/Hash.h MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h gmshVertex.h Geo.h gmshSurface.h ../DataStr/Tree.h \ - ../DataStr/avl.h gmshEdge.h gmshFace.h GeoInterpolation.h \ - ../Common/Message.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h gmshVertex.h Geo.h gmshSurface.h \ + ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h gmshEdge.h \ + gmshFace.h GeoInterpolation.h ../Common/Message.h gmshRegion.o: gmshRegion.cpp GModel.h GVertex.h GEntity.h Range.h \ SPoint3.h SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h \ SPoint2.h GEdge.h SVector3.h MElement.h MEdge.h ../Common/Hash.h \ MFace.h ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h gmshFace.h Geo.h gmshSurface.h ../DataStr/Tree.h \ - ../DataStr/avl.h gmshVertex.h gmshRegion.h ../Common/Message.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h gmshFace.h Geo.h gmshSurface.h \ + ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h gmshVertex.h \ + gmshRegion.h ../Common/Message.h gmshSurface.o: gmshSurface.cpp gmshSurface.h Pair.h Range.h SPoint2.h \ SPoint3.h SVector3.h SBoundingBox3d.h ../Common/Message.h OCCVertex.o: OCCVertex.cpp GModel.h GVertex.h GEntity.h Range.h SPoint3.h \ SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h SPoint2.h \ GEdge.h SVector3.h MElement.h MEdge.h ../Common/Hash.h MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h OCCVertex.h OCCIncludes.h OCCEdge.h OCCFace.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h OCCVertex.h OCCIncludes.h OCCEdge.h \ + OCCFace.h OCCEdge.o: OCCEdge.cpp GModel.h GVertex.h GEntity.h Range.h SPoint3.h \ SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h SPoint2.h \ GEdge.h SVector3.h MElement.h MEdge.h ../Common/Hash.h MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h ../Common/Message.h OCCEdge.h OCCVertex.h OCCIncludes.h \ - OCCFace.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h ../Common/Message.h OCCEdge.h OCCVertex.h \ + OCCIncludes.h OCCFace.h OCCFace.o: OCCFace.cpp GModel.h GVertex.h GEntity.h Range.h SPoint3.h \ SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h SPoint2.h \ GEdge.h SVector3.h MElement.h MEdge.h ../Common/Hash.h MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h OCCVertex.h OCCIncludes.h OCCEdge.h OCCFace.h \ - ../Common/Message.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h OCCVertex.h OCCIncludes.h OCCEdge.h \ + OCCFace.h ../Common/Message.h OCCRegion.o: OCCRegion.cpp GModel.h GVertex.h GEntity.h Range.h SPoint3.h \ SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h SPoint2.h \ GEdge.h SVector3.h MElement.h MEdge.h ../Common/Hash.h MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h OCCVertex.h OCCIncludes.h OCCEdge.h OCCFace.h OCCRegion.h \ - ../Common/Message.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h OCCVertex.h OCCIncludes.h OCCEdge.h \ + OCCFace.h OCCRegion.h ../Common/Message.h projectionFace.o: projectionFace.cpp projectionFace.h GFace.h GPoint.h \ GEntity.h Range.h SPoint3.h SBoundingBox3d.h ../Common/GmshDefines.h \ GEdgeLoop.h GEdge.h GVertex.h MVertex.h SPoint2.h SVector3.h MElement.h \ MEdge.h ../Common/Hash.h MFace.h ../Numeric/Numeric.h \ ../Common/Context.h ../DataStr/List.h ExtrudeParams.h \ - ../Common/SmoothData.h Pair.h + ../Common/SmoothData.h ../Numeric/Numeric.h Pair.h GModel.o: GModel.cpp GModel.h GVertex.h GEntity.h Range.h SPoint3.h \ SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h SPoint2.h \ GEdge.h SVector3.h MElement.h MEdge.h ../Common/Hash.h MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h gmshSurface.h ../Mesh/Attractors.h ../Geo/SPoint3.h \ - ../Geo/Geo.h ../Geo/gmshSurface.h ../DataStr/Tree.h ../DataStr/avl.h \ - ../Geo/SPoint2.h ../Geo/ExtrudeParams.h ../Common/Message.h \ - ../Geo/GEdge.h MRep.h ../Common/VertexArray.h ../Common/OS.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h gmshSurface.h ../Mesh/Field.h \ + ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ + ../Geo/Geo.h ../Common/GmshDefines.h ../Geo/gmshSurface.h \ + ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../Geo/SPoint2.h \ + ../Geo/ExtrudeParams.h ../Geo/GEdge.h ../Common/OctreePost.h \ + ../Common/Octree.h ../Common/OctreeInternals.h MRep.h \ + ../Common/VertexArray.h ../Common/Message.h ../Common/OS.h GModelIO_Geo.o: GModelIO_Geo.cpp GModel.h GVertex.h GEntity.h Range.h \ SPoint3.h SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h \ SPoint2.h GEdge.h SVector3.h MElement.h MEdge.h ../Common/Hash.h \ MFace.h ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h Geo.h gmshSurface.h ../DataStr/Tree.h ../DataStr/avl.h \ - ../Parser/OpenFile.h ../DataStr/Tools.h ../DataStr/List.h \ - ../DataStr/Tree.h ../Common/Message.h gmshVertex.h gmshFace.h \ - gmshEdge.h gmshRegion.h ../Parser/Parser.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h Geo.h gmshSurface.h ../DataStr/List.h \ + ../DataStr/Tree.h ../DataStr/avl.h ../Parser/OpenFile.h \ + ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ + ../Common/Message.h gmshVertex.h gmshFace.h gmshEdge.h gmshRegion.h \ + ../Parser/Parser.h ../DataStr/List.h ../DataStr/Tree.h GModelIO_Mesh.o: GModelIO_Mesh.cpp ../Common/Message.h \ ../Common/GmshDefines.h GModel.h GVertex.h GEntity.h Range.h SPoint3.h \ SBoundingBox3d.h MVertex.h GPoint.h SPoint2.h GEdge.h SVector3.h \ MElement.h MEdge.h ../Common/Hash.h MFace.h ../Numeric/Numeric.h \ ../Common/Context.h ../DataStr/List.h ExtrudeParams.h \ - ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h GRegion.h \ - gmshRegion.h Geo.h gmshSurface.h ../DataStr/Tree.h ../DataStr/avl.h \ - gmshFace.h gmshVertex.h gmshEdge.h + ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h GEdgeLoop.h Pair.h \ + GRegion.h gmshRegion.h Geo.h gmshSurface.h ../DataStr/List.h \ + ../DataStr/Tree.h ../DataStr/avl.h gmshFace.h gmshVertex.h gmshEdge.h GModelIO_Fourier.o: GModelIO_Fourier.cpp GModel.h GVertex.h GEntity.h \ Range.h SPoint3.h SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h \ GPoint.h SPoint2.h GEdge.h SVector3.h MElement.h MEdge.h \ ../Common/Hash.h MFace.h ../Numeric/Numeric.h ../Common/Context.h \ - ../DataStr/List.h ExtrudeParams.h ../Common/SmoothData.h GFace.h \ - GEdgeLoop.h Pair.h GRegion.h fourierFace.h gmshFace.h Geo.h \ - gmshSurface.h ../DataStr/Tree.h ../DataStr/avl.h gmshVertex.h \ - ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ - ../Common/VertexArray.h ../Common/SmoothData.h \ + ../DataStr/List.h ExtrudeParams.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h GFace.h GEdgeLoop.h Pair.h GRegion.h fourierFace.h \ + gmshFace.h Geo.h gmshSurface.h ../DataStr/List.h ../DataStr/Tree.h \ + ../DataStr/avl.h gmshVertex.h ../Common/Message.h ../Common/Views.h \ + ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Common/AdaptiveViews.h ../Common/GmshMatrix.h GModelIO_OCC.o: GModelIO_OCC.cpp GModel.h GVertex.h GEntity.h Range.h \ SPoint3.h SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h \ SPoint2.h GEdge.h SVector3.h MElement.h MEdge.h ../Common/Hash.h \ MFace.h ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h ../Common/Message.h OCCIncludes.h OCCVertex.h OCCEdge.h \ - OCCFace.h OCCRegion.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h ../Common/Message.h OCCIncludes.h \ + OCCVertex.h OCCEdge.h OCCFace.h OCCRegion.h GModelIO_CGNS.o: GModelIO_CGNS.cpp GModel.h GVertex.h GEntity.h Range.h \ SPoint3.h SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h \ SPoint2.h GEdge.h SVector3.h MElement.h MEdge.h ../Common/Hash.h \ MFace.h ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h ../Common/Message.h MNeighbour.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h ../Common/Message.h MNeighbour.h GModelIO_MED.o: GModelIO_MED.cpp GModel.h GVertex.h GEntity.h Range.h \ SPoint3.h SBoundingBox3d.h ../Common/GmshDefines.h MVertex.h GPoint.h \ SPoint2.h GEdge.h SVector3.h MElement.h MEdge.h ../Common/Hash.h \ MFace.h ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ExtrudeParams.h ../Common/SmoothData.h GFace.h GEdgeLoop.h Pair.h \ - GRegion.h GModelIO_MED.h ../Common/Message.h + ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h GFace.h \ + GEdgeLoop.h Pair.h GRegion.h GModelIO_MED.h ../Common/Message.h ExtrudeParams.o: ExtrudeParams.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ Geo.h ../Common/GmshDefines.h gmshSurface.h Pair.h Range.h SPoint2.h \ - SPoint3.h SVector3.h SBoundingBox3d.h ExtrudeParams.h \ - ../Common/SmoothData.h ../Numeric/Numeric.h + SPoint3.h SVector3.h SBoundingBox3d.h ../DataStr/List.h \ + ../DataStr/Tree.h ExtrudeParams.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h Geo.o: Geo.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ ../DataStr/List.h ../DataStr/Tree.h ../Numeric/Numeric.h Geo.h \ ../Common/GmshDefines.h gmshSurface.h Pair.h Range.h SPoint2.h \ - SPoint3.h SVector3.h SBoundingBox3d.h ExtrudeParams.h \ - ../Common/SmoothData.h GModel.h GVertex.h GEntity.h MVertex.h GPoint.h \ + SPoint3.h SVector3.h SBoundingBox3d.h ../DataStr/List.h \ + ../DataStr/Tree.h ExtrudeParams.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h GModel.h GVertex.h GEntity.h MVertex.h GPoint.h \ GEdge.h MElement.h MEdge.h ../Common/Hash.h MFace.h ../Common/Context.h \ GFace.h GEdgeLoop.h GRegion.h GeoInterpolation.h GeoStringInterface.o: GeoStringInterface.cpp ../Common/Gmsh.h \ @@ -240,26 +252,28 @@ GeoStringInterface.o: GeoStringInterface.cpp ../Common/Gmsh.h \ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h \ ../DataStr/Tree.h ../Numeric/Numeric.h Geo.h ../Common/GmshDefines.h \ gmshSurface.h Pair.h Range.h SPoint2.h SPoint3.h SVector3.h \ - SBoundingBox3d.h ExtrudeParams.h ../Common/SmoothData.h \ - GeoStringInterface.h ../Parser/Parser.h ../Parser/OpenFile.h \ - ../Common/Context.h GModel.h GVertex.h GEntity.h MVertex.h GPoint.h \ - GEdge.h MElement.h MEdge.h ../Common/Hash.h MFace.h GFace.h GEdgeLoop.h \ - GRegion.h + SBoundingBox3d.h ../DataStr/List.h ../DataStr/Tree.h ExtrudeParams.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h GeoStringInterface.h \ + ../Parser/Parser.h ../DataStr/List.h ../DataStr/Tree.h \ + ../Parser/OpenFile.h ../Common/Context.h GModel.h GVertex.h GEntity.h \ + MVertex.h GPoint.h GEdge.h MElement.h MEdge.h ../Common/Hash.h MFace.h \ + GFace.h GEdgeLoop.h GRegion.h GeoInterpolation.o: GeoInterpolation.cpp ../Common/Gmsh.h \ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h \ ../DataStr/Tree.h Geo.h ../Common/GmshDefines.h gmshSurface.h Pair.h \ - Range.h SPoint2.h SPoint3.h SVector3.h SBoundingBox3d.h ExtrudeParams.h \ + Range.h SPoint2.h SPoint3.h SVector3.h SBoundingBox3d.h \ + ../DataStr/List.h ../DataStr/Tree.h ExtrudeParams.h \ ../Common/SmoothData.h ../Numeric/Numeric.h GeoInterpolation.h \ - GeoStringInterface.h + GeoStringInterface.h ../Numeric/Numeric.h findLinks.o: findLinks.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ GModel.h GVertex.h GEntity.h Range.h SPoint3.h SBoundingBox3d.h \ ../Common/GmshDefines.h MVertex.h GPoint.h SPoint2.h GEdge.h SVector3.h \ MElement.h MEdge.h ../Common/Hash.h MFace.h ../Numeric/Numeric.h \ - ../Common/Context.h ExtrudeParams.h ../Common/SmoothData.h GFace.h \ - GEdgeLoop.h Pair.h GRegion.h + ../Common/Context.h ExtrudeParams.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h GFace.h GEdgeLoop.h Pair.h GRegion.h MVertex.o: MVertex.cpp MVertex.h SPoint3.h MElement.o: MElement.cpp MElement.h ../Common/GmshDefines.h MVertex.h \ SPoint3.h MEdge.h SVector3.h ../Common/Hash.h MFace.h \ diff --git a/Graphics/Makefile b/Graphics/Makefile index a7c2918d92810f1ea730eefd7363c18c4e2f7f00..1e7f814d87283ee9219acd9aa6f8ccdaf72238a3 100644 --- a/Graphics/Makefile +++ b/Graphics/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.113 2007-03-02 08:48:25 geuzaine Exp $ +# $Id: Makefile,v 1.114 2007-04-16 09:08:28 remacle Exp $ # # Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle # @@ -71,107 +71,90 @@ depend: Draw.o: Draw.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ ../DataStr/List.h ../DataStr/Tree.h ../Common/GmshUI.h \ - ../Common/GmshDefines.h Draw.h ../Common/Views.h ../Common/ColorTable.h \ - ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/Context.h \ - ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h \ - ../Geo/GEntity.h ../Geo/MElement.h ../Geo/ExtrudeParams.h \ - ../Geo/SBoundingBox3d.h + ../Common/GmshDefines.h Draw.h ../DataStr/List.h ../Common/Views.h \ + ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ + ../Common/Context.h ../Numeric/Numeric.h ../Geo/GModel.h \ + ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ + ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/SVector3.h \ + ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h ../Geo/MFace.h \ + ../Numeric/Numeric.h ../Common/Context.h ../Geo/ExtrudeParams.h \ + ../Common/SmoothData.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/Pair.h \ + ../Geo/GRegion.h Mesh.o: Mesh.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ ../DataStr/List.h ../DataStr/Tree.h ../Common/GmshUI.h ../Geo/GModel.h \ ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ + ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/SVector3.h \ + ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h ../Geo/MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../Geo/ExtrudeParams.h \ - ../Common/SmoothData.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h \ - ../Geo/GEntity.h ../Geo/MElement.h ../Geo/ExtrudeParams.h \ - ../Geo/SBoundingBox3d.h Draw.h ../Common/Views.h ../Common/ColorTable.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Geo/GFace.h \ + ../Geo/GEdgeLoop.h ../Geo/Pair.h ../Geo/GRegion.h Draw.h \ + ../DataStr/List.h ../Common/Views.h ../Common/ColorTable.h \ ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Geo/MRep.h \ - ../Geo/GEdge.h ../Geo/GFace.h ../Geo/GRegion.h ../Geo/MVertex.h \ - ../Geo/MEdge.h ../Geo/MElement.h ../Common/OS.h gl2ps.h + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/Context.h \ + ../Geo/MRep.h ../Common/VertexArray.h ../Common/Message.h \ + ../Common/OS.h ../Common/OS.h gl2ps.h Geom.o: Geom.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ ../DataStr/List.h ../DataStr/Tree.h ../Common/GmshUI.h Draw.h \ - ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ - ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ - ../Common/GmshMatrix.h ../Common/Context.h gl2ps.h ../Geo/GModel.h \ - ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h \ - ../Geo/GEntity.h ../Geo/MElement.h ../Geo/ExtrudeParams.h \ + ../DataStr/List.h ../Common/Views.h ../Common/ColorTable.h \ + ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/Context.h \ + gl2ps.h ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h \ + ../Geo/Range.h ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h \ + ../Common/GmshDefines.h ../Geo/MVertex.h ../Geo/GPoint.h \ + ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/SVector3.h ../Geo/MElement.h \ + ../Geo/MEdge.h ../Common/Hash.h ../Geo/MFace.h ../Numeric/Numeric.h \ + ../Common/Context.h ../Geo/ExtrudeParams.h ../Common/SmoothData.h \ + ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/Pair.h ../Geo/GRegion.h \ ../Geo/SBoundingBox3d.h Post.o: Post.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ ../DataStr/List.h ../DataStr/Tree.h ../Common/GmshUI.h \ - ../Numeric/Numeric.h Draw.h ../Common/Views.h ../Common/ColorTable.h \ - ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/Context.h \ - gl2ps.h + ../Numeric/Numeric.h Draw.h ../DataStr/List.h ../Common/Views.h \ + ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ + ../Common/Context.h gl2ps.h PostElement.o: PostElement.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ - ../Common/GmshUI.h Draw.h ../Common/Views.h ../Common/ColorTable.h \ - ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Iso.h \ - ../Common/Context.h + ../Common/GmshUI.h Draw.h ../DataStr/List.h ../Common/Views.h \ + ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ + Iso.h ../Common/Context.h ../Numeric/Numeric.h SelectBuffer.o: SelectBuffer.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ - ../Common/GmshUI.h ../Common/GmshDefines.h Draw.h ../Common/Views.h \ - ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Common/Context.h SelectBuffer.h ../Geo/GVertex.h ../Geo/GEntity.h \ - ../Geo/Range.h ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h \ - ../Geo/SPoint3.h ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h \ - ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h \ - ../Geo/SVector3.h ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h \ - ../Geo/MElement.h ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h \ - ../Geo/SVector3.h ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h \ - ../Geo/SVector3.h ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h \ - ../Geo/GEntity.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h \ - ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h \ - ../Geo/GRegion.h ../Geo/GEntity.h ../Geo/MElement.h \ - ../Geo/ExtrudeParams.h ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEdge.h \ - ../Geo/GFace.h ../Geo/GRegion.h ../Geo/SBoundingBox3d.h ../Geo/MRep.h \ - ../Geo/GEdge.h ../Geo/GFace.h ../Geo/GRegion.h ../Geo/MVertex.h \ - ../Geo/MEdge.h ../Geo/MElement.h ../Common/OS.h + ../Common/GmshUI.h ../Common/GmshDefines.h Draw.h ../DataStr/List.h \ + ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ + ../Common/GmshMatrix.h ../Common/Context.h SelectBuffer.h \ + ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ + ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/GVertex.h \ + ../Geo/SVector3.h ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h \ + ../Geo/MFace.h ../Numeric/Numeric.h ../Common/Context.h \ + ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Geo/GFace.h \ + ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/Pair.h ../Geo/GRegion.h \ + ../Geo/GModel.h ../Geo/GFace.h ../Geo/GRegion.h ../Geo/MRep.h \ + ../Common/VertexArray.h ../Common/Message.h ../Common/OS.h Iso.o: Iso.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \ ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ ../DataStr/List.h ../DataStr/Tree.h ../Common/GmshUI.h Draw.h \ - ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ - ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ - ../Common/GmshMatrix.h ../Common/Context.h + ../DataStr/List.h ../Common/Views.h ../Common/ColorTable.h \ + ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/Context.h \ + ../Numeric/Numeric.h Entity.o: Entity.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ - ../Common/GmshUI.h ../Numeric/Numeric.h Draw.h ../Common/Views.h \ - ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/Context.h \ - gl2ps.h + ../Common/GmshUI.h ../Numeric/Numeric.h Draw.h ../DataStr/List.h \ + ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ + ../Common/GmshMatrix.h ../Common/Context.h gl2ps.h ReadImg.o: ReadImg.cpp ReadImg.h ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ @@ -181,45 +164,50 @@ ReadImg.o: ReadImg.cpp ReadImg.h ../Common/Gmsh.h ../Common/Message.h \ Scale.o: Scale.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ - ../Common/GmshUI.h ../Numeric/Numeric.h Draw.h ../Common/Views.h \ - ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/Context.h \ - gl2ps.h + ../Common/GmshUI.h ../Numeric/Numeric.h Draw.h ../DataStr/List.h \ + ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ + ../Common/GmshMatrix.h ../Common/Context.h gl2ps.h Graph2D.o: Graph2D.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ ../Common/GmshUI.h ../Common/Context.h ../Numeric/Numeric.h Draw.h \ - ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ - ../Common/SmoothData.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - gl2ps.h + ../DataStr/List.h ../Common/Views.h ../Common/ColorTable.h \ + ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h gl2ps.h gl2ps.o: gl2ps.cpp gl2ps.h gl2gif.o: gl2gif.cpp gl2gif.h PixelBuffer.h ../Common/Gmsh.h \ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h \ - ../DataStr/Tree.h ../Common/GmshUI.h Draw.h ../Common/Views.h \ - ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h + ../DataStr/Tree.h ../Common/GmshUI.h Draw.h ../DataStr/List.h \ + ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ + ../Common/GmshMatrix.h gl2jpeg.o: gl2jpeg.cpp gl2jpeg.h PixelBuffer.h ../Common/Gmsh.h \ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h \ - ../DataStr/Tree.h ../Common/GmshUI.h Draw.h ../Common/Views.h \ - ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h + ../DataStr/Tree.h ../Common/GmshUI.h Draw.h ../DataStr/List.h \ + ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ + ../Common/GmshMatrix.h gl2png.o: gl2png.cpp gl2png.h PixelBuffer.h ../Common/Gmsh.h \ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h \ - ../DataStr/Tree.h ../Common/GmshUI.h Draw.h ../Common/Views.h \ - ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h + ../DataStr/Tree.h ../Common/GmshUI.h Draw.h ../DataStr/List.h \ + ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ + ../Common/GmshMatrix.h gl2ppm.o: gl2ppm.cpp gl2ppm.h PixelBuffer.h ../Common/Gmsh.h \ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h \ - ../DataStr/Tree.h ../Common/GmshUI.h Draw.h ../Common/Views.h \ - ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h + ../DataStr/Tree.h ../Common/GmshUI.h Draw.h ../DataStr/List.h \ + ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ + ../Common/GmshMatrix.h gl2yuv.o: gl2yuv.cpp gl2yuv.h PixelBuffer.h ../Common/Gmsh.h \ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h \ - ../DataStr/Tree.h ../Common/GmshUI.h Draw.h ../Common/Views.h \ - ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h + ../DataStr/Tree.h ../Common/GmshUI.h Draw.h ../DataStr/List.h \ + ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ + ../Common/GmshMatrix.h diff --git a/Mesh/Attractors.cpp b/Mesh/Attractors.cpp deleted file mode 100644 index ee365b7ebe7949b021786899b952a14baa47308d..0000000000000000000000000000000000000000 --- a/Mesh/Attractors.cpp +++ /dev/null @@ -1,150 +0,0 @@ -// $Id: Attractors.cpp,v 1.4 2007-03-16 10:03:40 remacle Exp $ -// -// Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle -// -// 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 of the License, 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 -// USA. -// -// Please report all bugs and problems to <gmsh@geuz.org>. - -#include "Attractors.h" -#include "GeoInterpolation.h" - -#define maxpts 1 - -std::list <Attractor *> Attractor::allAttractors; - -void Attractor::addPoint ( double X, double Y, double Z, double lc) -{ - attractorPoints.push_back(SPoint3(X,Y,Z)); - // lcs.push_back(lc); -} - -Attractor::~Attractor() -{ -#ifdef HAVE_ANN_ - if(kdtree) delete kdtree; - if(zeronodes) annDeallocPts(zeronodes); - delete [] index; - delete [] dist; -#endif -} - -Attractor::Attractor() -#ifdef HAVE_ANN_ - : kdtree (0), zeronodes(0) -#endif -{ -#ifdef HAVE_ANN_ - index = new ANNidx[maxpts]; - dist = new ANNdist[maxpts]; -#endif -} - -void Attractor::reset() -{ - for(std::list<Attractor *>::iterator it = allAttractors.begin(); - it != allAttractors.end(); ++it) - delete *it; - allAttractors.clear(); -} - -void Attractor::buildFastSearchStructures() -{ -#ifdef HAVE_ANN_ - if(zeronodes){ - annDeallocPts(zeronodes); - delete kdtree; - } - int totpoints = 0; -// for(std::list <Attractor *>::iterator it = allAttractors.begin(); -// it != allAttractors.end(); ++it) - totpoints += attractorPoints.size(); - if (totpoints) - zeronodes = annAllocPts(totpoints, 4); - int k = 0; -// for(std::list <Attractor *>::iterator it = allAttractors.begin(); -// it != allAttractors.end(); ++it){ - for (std::list <SPoint3>::iterator it2 = attractorPoints.begin(); - it2 != attractorPoints.end(); ++it2){ - zeronodes[k][0]=it2->x(); - zeronodes[k][1]=it2->y(); - zeronodes[k++][2]=it2->z(); - } -// } - kdtree = new ANNkd_tree(zeronodes, totpoints, 3); -#endif -} - -double Attractor::lc(double X, double Y, double Z) -{ - if(!allAttractors.size()) return 1.e22; - double xyz[3] = {X, Y, Z}; - double minLc = 1.e22; - - for(std::list<Attractor *>::iterator it = allAttractors.begin(); - it != allAttractors.end(); ++it){ - if((*it)->attractorPoints.size() == 1){ - SPoint3 p = *((*it)->attractorPoints.begin()); - double dist = sqrt((p.x()-X)*(p.x()-X)+(p.y()-Y)*(p.y()-Y)+(p.z()-Z)*(p.z()-Z)); - Attractor *a = (*it); - minLc = std::min((*a)(dist),minLc); - } - else{ -#ifdef HAVE_ANN_ - (*it)->kdtree->annkSearch(xyz, maxpts, (*it)->index, (*it)->dist); - double distHere = sqrt((*it)->dist[0]); - Attractor *a = (*it); - minLc = std::min((*a)(distHere), minLc); -#else - Msg(GERROR,"GMSH should be compiled with ANN in order to enable attractors !"); -#endif - } - } - return minLc; -} - -void buildListOfPoints(Attractor * a, Curve *c, int N) -{ - for(int i = 0; i < N; i++){ - double u = (double)i / (N - 1); - Vertex V = InterpolateCurve (c, u, 0); - a->addPoint(V.Pos.X, V.Pos.Y, V.Pos.Z); - } -} - -void buildListOfPoints(Attractor * a, GEdge *c, int N) -{ - for(int i = 0; i < N; i++){ - double u = (double)i / (N - 1); - Range<double> b = c->parBounds(0); - double t = b.low() + u * (b.high() - b.low()); - GPoint gp = c->point(t); - a->addPoint(gp.x(), gp.y(), gp.z()); - } -} - -double tresholdAttractor::operator () (const double & distance) -{ - double l; - if(distance > factor * treshold) l = meshSizeOut; - else if(distance > treshold) { - const double t = (factor / (factor - 1.)) * (1. - treshold / distance); - l = 1. / ((1. / meshSizeIn) * (1. - t) + (1. / meshSizeOut) * t); - } - else l = meshSizeIn; - - return l; -} diff --git a/Mesh/Attractors.h b/Mesh/Attractors.h deleted file mode 100644 index 1124be0fd2efb73755a40ac47e0d91758f088e39..0000000000000000000000000000000000000000 --- a/Mesh/Attractors.h +++ /dev/null @@ -1,89 +0,0 @@ -#ifndef _ATTRACTORS_H_ -#define _ATTRACTORS_H_ - -// Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle -// -// 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 of the License, 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 -// USA. -// -// Please report all bugs and problems to <gmsh@geuz.org>. - -// an attractor is a functor that returns a mesh size when you give it -// a distance -#include <list> -#include "SPoint3.h" -#include "Geo.h" -#include "Message.h" -#include "GEdge.h" -#ifdef HAVE_ANN_ -#include "ANN/ANN.h" -#endif - -class Attractor { - protected : -#ifdef HAVE_ANN_ - ANNkd_tree* kdtree; - ANNpointArray zeronodes; - ANNidxArray index; - ANNdistArray dist; -#endif - std::list <SPoint3> attractorPoints; - std::list <SPoint3> lcs; - static std::list <Attractor *> allAttractors; -public : - Attractor(); - virtual ~Attractor(); - virtual double operator () ( const double & distance ) = 0; - // adds a point in the attractor. - void addPoint ( double X, double Y, double Z, double lc = -1.0); - void buildFastSearchStructures() ; - static void reset (); - static double lc (double X, double Y, double Z) ; - static bool size () {return allAttractors.size();} -}; - -class tresholdAttractor : public Attractor -{ - double treshold, meshSizeIn, meshSizeOut, factor; - tresholdAttractor(double _tres, double _In, double _Out, double _fact) - : treshold(_tres), meshSizeIn(_In), meshSizeOut(_Out), factor(_fact) {} - public: - static Attractor* New(double _tres, double _In, double _Out, double _fact) - { - if(_fact == 1){ - Msg(WARNING,"tresholdAttractor factor should be greater than 1"); - _fact = 3; - } - tresholdAttractor *a = new tresholdAttractor(_tres, _In, _Out, _fact); - allAttractors.push_back(a); - return a; - } - virtual double operator () (const double & distance); -}; - -// this attractor uses the 1D mesh for propagating the edge lengths -// inside the 2D and 3D domain. This attra - -class mesh1DAttractor : public Attractor -{ -}; - - -// build a list of points for the attractor on a model edge -// presently, the function is duplicated (internals of gmsh and GMODEL) -void buildListOfPoints(Attractor*, GEdge*, int); -void buildListOfPoints(Attractor*, Curve*, int); - -#endif diff --git a/Mesh/BackgroundMesh.cpp b/Mesh/BackgroundMesh.cpp index 3df339fd56d8b3e39f6bdc324f39e32e354337f5..98b224924f932a773767e6fa435b53614cc98a44 100644 --- a/Mesh/BackgroundMesh.cpp +++ b/Mesh/BackgroundMesh.cpp @@ -1,4 +1,4 @@ -// $Id: BackgroundMesh.cpp,v 1.18 2007-04-12 08:47:25 remacle Exp $ +// $Id: BackgroundMesh.cpp,v 1.19 2007-04-16 09:08:28 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -29,33 +29,32 @@ #include "GEdge.h" #include "GFace.h" #include "GModel.h" -#include "Attractors.h" +#include "Field.h" extern Context_T CTX; +MinField lc_field; static OctreePost *BGM_OCTREE = NULL; const double MAX_LC = 1.e22; -int BGMWithView(Post_View * ErrView) +/*int BGMWithView(Post_View * ErrView) { Msg(INFO, "Applying '%s' as background mesh", ErrView->Name); if(BGM_OCTREE) delete BGM_OCTREE; BGM_OCTREE = new OctreePost(ErrView); CTX.mesh.bgmesh_view_num = ErrView->Num; // view numbers are unique return 1 ; -} - -int BGMExists() -{ - if(!BGM_OCTREE || CTX.mesh.bgmesh_view_num < 0) return 0; +}*/ - for(int i = 0; i < List_Nbr(CTX.post.list); i++){ - Post_View *v = *(Post_View**)List_Pointer_Fast(CTX.post.list, i); - if(v->Num == CTX.mesh.bgmesh_view_num) return 1; - } - CTX.mesh.bgmesh_view_num = -1; - return 0; +bool BGMExists() { + return lc_field.empty(); +} +void BGMAddField(Field *field){ + lc_field.push_front(field); +} +void BGMReset(){ + lc_field.clear(); } // computes the characteristic length of the mesh at a vertex in order @@ -128,38 +127,6 @@ double LC_MVertex_CURV(GEntity *ge, double U, double V) else return MAX_LC; } -// compute the mesh size at a given point in space using a background -// mesh on file -double LC_MVertex_BGM(GEntity *ge, double X, double Y, double Z) -{ - if(!BGMExists()) return MAX_LC; - - double l = 0.; - double fact[9] = {0.001, 0.0025, 0.005, 0.0075, 0.01, 0.025, 0.05, 0.075, 0.1}; - - if(!BGM_OCTREE->searchScalar(X, Y, Z, &l, 0)){ - // try really hard to find an element around the point - for(int i = 0; i < 9; i++){ - double eps = CTX.lc * fact[i]; - if(BGM_OCTREE->searchScalar(X + eps, Y, Z, &l, 0)) break; - if(BGM_OCTREE->searchScalar(X - eps, Y, Z, &l, 0)) break; - if(BGM_OCTREE->searchScalar(X, Y + eps, Z, &l, 0)) break; - if(BGM_OCTREE->searchScalar(X, Y - eps, Z, &l, 0)) break; - if(BGM_OCTREE->searchScalar(X, Y, Z + eps, &l, 0)) break; - if(BGM_OCTREE->searchScalar(X, Y, Z - eps, &l, 0)) break; - if(BGM_OCTREE->searchScalar(X + eps, Y - eps, Z - eps, &l, 0)) break; - if(BGM_OCTREE->searchScalar(X + eps, Y + eps, Z - eps, &l, 0)) break; - if(BGM_OCTREE->searchScalar(X - eps, Y - eps, Z - eps, &l, 0)) break; - if(BGM_OCTREE->searchScalar(X - eps, Y + eps, Z - eps, &l, 0)) break; - if(BGM_OCTREE->searchScalar(X + eps, Y - eps, Z + eps, &l, 0)) break; - if(BGM_OCTREE->searchScalar(X + eps, Y + eps, Z + eps, &l, 0)) break; - if(BGM_OCTREE->searchScalar(X - eps, Y - eps, Z + eps, &l, 0)) break; - if(BGM_OCTREE->searchScalar(X - eps, Y + eps, Z + eps, &l, 0)) break; - } - } - if(l <= 0) return MAX_LC; - return l; -} // compute the mesh size at a given vertex due to prescribed sizes at // mesh vertices @@ -196,8 +163,7 @@ double BGM_MeshSize(GEntity *ge, double U, double V, double X, double Y, double double l1 = MAX_LC; double l2 = MAX_LC; double l3 = CTX.lc; - double l4 = LC_MVertex_BGM(ge, X, Y, Z); - double l5 = Attractor::lc(X, Y, Z); + double l4 = !lc_field.empty()?lc_field(X, Y, Z):MAX_LC; if(l4 < MAX_LC && !CTX.mesh.constrained_bgmesh) return l4 * CTX.mesh.lc_factor; @@ -208,6 +174,6 @@ double BGM_MeshSize(GEntity *ge, double U, double V, double X, double Y, double if(CTX.mesh.lc_from_curvature && ge->dim() < 3) l1 = std::max(l3 / 100., LC_MVertex_CURV(ge, U, V)); - double lc = std::min(std::min(std::min(std::min(l1, l2), l3), l4), l5); + double lc = std::min(std::min(std::min(l1, l2), l3), l4); return lc * CTX.mesh.lc_factor; } diff --git a/Mesh/BackgroundMesh.h b/Mesh/BackgroundMesh.h index c69edbeda9cc39b91d5d44c867f330730eadcad4..2d761aceb81dffedb2ca27422a187e69c972ec7f 100644 --- a/Mesh/BackgroundMesh.h +++ b/Mesh/BackgroundMesh.h @@ -21,7 +21,10 @@ // Please report all bugs and problems to <gmsh@geuz.org>. class GEntity; +class Field; double BGM_MeshSize(GEntity *ge, double U, double V, double X, double Y, double Z); -int BGMExists(); +bool BGMExists(); +void BGMAddField(Field *field); +void BGMReset(); #endif diff --git a/Mesh/Makefile b/Mesh/Makefile index 754944f03a63bf10f18e52ce9ce0d48f837593b3..fa87380311cf8089729e0892596c46fdd78b08c8 100644 --- a/Mesh/Makefile +++ b/Mesh/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.168 2007-03-05 09:30:53 geuzaine Exp $ +# $Id: Makefile,v 1.169 2007-04-16 09:08:28 remacle Exp $ # # Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle # @@ -27,11 +27,11 @@ INCLUDE = -I../Numeric -I../Common -I../DataStr -I../Geo -I../Mesh\ -I../contrib/NR -I../contrib/Triangle -I../contrib/Tetgen\ -I../contrib/Netgen -I../contrib/Netgen/libsrc/include\ -I../contrib/Netgen/libsrc/interface -I../contrib/ANN/include\ - -I../contrib/Metis + -I../contrib/Metis -I../contrib/MathEval CFLAGS = ${OPTIM} ${FLAGS} ${INCLUDE} SRC = Generator.cpp \ - Attractors.cpp\ + Field.cpp\ meshGEdge.cpp \ meshGEdgeExtruded.cpp \ meshGFace.cpp \ @@ -76,206 +76,148 @@ Generator.o: Generator.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ ../Numeric/Numeric.h ../Common/Context.h ../Common/Views.h \ ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/OS.h \ - ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../Common/GmshDefines.h ../Geo/MVertex.h ../Geo/SPoint3.h \ - ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/GEntity.h \ - ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h ../Geo/SPoint3.h \ - ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/MVertex.h ../Geo/MEdge.h \ - ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Hash.h ../Geo/MFace.h \ - ../Geo/MVertex.h ../Geo/SVector3.h ../Geo/ExtrudeParams.h \ - ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/GEdgeLoop.h \ - ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h \ - ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h ../Geo/GEntity.h \ - ../Geo/MElement.h ../Geo/ExtrudeParams.h ../Geo/SBoundingBox3d.h \ + ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ + ../Common/OS.h ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h \ + ../Geo/Range.h ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h \ + ../Common/GmshDefines.h ../Geo/MVertex.h ../Geo/GPoint.h \ + ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/SVector3.h ../Geo/MElement.h \ + ../Geo/MEdge.h ../Common/Hash.h ../Geo/MFace.h ../Numeric/Numeric.h \ + ../Common/Context.h ../Geo/ExtrudeParams.h ../Common/SmoothData.h \ + ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/Pair.h ../Geo/GRegion.h \ meshGEdge.h meshGFace.h meshGRegion.h BackgroundMesh.h BoundaryLayer.h \ HighOrder.h -Attractors.o: Attractors.cpp Attractors.h ../Geo/SPoint3.h ../Geo/Geo.h \ - ../Common/GmshDefines.h ../Geo/gmshSurface.h ../Geo/Pair.h \ +Field.o: Field.cpp Field.h ../Common/Views.h ../Common/ColorTable.h \ + ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ + ../Geo/Geo.h ../Common/GmshDefines.h ../Geo/gmshSurface.h ../Geo/Pair.h \ ../Geo/Range.h ../Geo/SPoint2.h ../Geo/SPoint3.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../Geo/SPoint2.h \ - ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/Message.h ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/Range.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/GVertex.h \ - ../Geo/GEntity.h ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h \ - ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/SPoint3.h ../Geo/SPoint2.h \ - ../Geo/MElement.h ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h \ - ../Geo/SVector3.h ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h \ - ../Geo/SVector3.h ../Common/Context.h ../Geo/ExtrudeParams.h \ - ../Geo/GeoInterpolation.h ../Geo/Geo.h + ../Geo/SBoundingBox3d.h ../DataStr/List.h ../DataStr/Tree.h \ + ../DataStr/avl.h ../Geo/ExtrudeParams.h ../Common/SmoothData.h \ + ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h \ + ../Geo/MFace.h ../Numeric/Numeric.h ../Common/Context.h \ + ../Common/OctreePost.h ../Common/Octree.h ../Common/OctreeInternals.h \ + ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \ + ../DataStr/Tree.h ../DataStr/Tools.h ../DataStr/List.h \ + ../DataStr/Tree.h ../Common/Context.h ../Geo/GeoInterpolation.h \ + ../Geo/Geo.h meshGEdge.o: meshGEdge.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ meshGEdge.h ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/Range.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../Common/GmshDefines.h ../Geo/GVertex.h ../Geo/GEntity.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h \ - ../Geo/MElement.h ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h \ - ../Geo/SVector3.h ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h \ - ../Geo/SVector3.h ../Numeric/Numeric.h ../Common/Context.h \ - ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Geo/GFace.h \ - ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ - ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/Pair.h \ - ../Geo/ExtrudeParams.h ../Geo/MRep.h ../Geo/GEdge.h ../Geo/GFace.h \ - ../Geo/GRegion.h ../Geo/GEntity.h ../Geo/MElement.h \ - ../Geo/ExtrudeParams.h ../Geo/MVertex.h ../Geo/MEdge.h \ - ../Geo/MElement.h ../Common/VertexArray.h ../Common/OS.h \ - BackgroundMesh.h + ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h \ + ../Geo/GVertex.h ../Geo/MVertex.h ../Geo/GPoint.h ../Geo/SPoint2.h \ + ../Geo/SVector3.h ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h \ + ../Geo/MFace.h ../Numeric/Numeric.h ../Common/Context.h \ + ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h \ + ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/Pair.h \ + ../Geo/MRep.h ../Geo/GFace.h ../Geo/GRegion.h ../Common/VertexArray.h \ + ../Common/Message.h ../Common/OS.h BackgroundMesh.h ../Common/Message.h meshGEdgeExtruded.o: meshGEdgeExtruded.cpp ../Geo/ExtrudeParams.h \ ../Common/SmoothData.h ../Numeric/Numeric.h ../Geo/GModel.h \ ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Context.h ../DataStr/List.h ../Geo/ExtrudeParams.h \ - ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/GEdgeLoop.h \ - ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h \ - ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h ../Geo/GEntity.h \ - ../Geo/MElement.h ../Geo/ExtrudeParams.h ../Geo/SBoundingBox3d.h \ - ../Common/Message.h + ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/SVector3.h \ + ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h ../Geo/MFace.h \ + ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ + ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/Pair.h \ + ../Geo/GRegion.h ../Common/Message.h meshGFace.o: meshGFace.cpp meshGFace.h meshGFaceDelaunayInsertion.h \ ../Geo/MElement.h ../Common/GmshDefines.h ../Geo/MVertex.h \ - ../Geo/SPoint3.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h \ - ../Geo/SVector3.h ../Numeric/Numeric.h ../Common/Context.h \ + ../Geo/SPoint3.h ../Geo/MEdge.h ../Geo/SVector3.h ../Common/Hash.h \ + ../Geo/MFace.h ../Numeric/Numeric.h ../Common/Context.h \ ../DataStr/List.h DivideAndConquer.h BackgroundMesh.h ../Geo/GVertex.h \ - ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Geo/MVertex.h \ - ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/GEntity.h \ - ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h ../Geo/SPoint2.h \ - ../Geo/MElement.h ../Geo/ExtrudeParams.h ../Common/SmoothData.h \ - ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/GEdgeLoop.h \ - ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h \ - ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/MRep.h ../Geo/GEdge.h \ - ../Geo/GFace.h ../Geo/GRegion.h ../Geo/GEntity.h ../Geo/MElement.h \ - ../Geo/ExtrudeParams.h ../Geo/MVertex.h ../Geo/MEdge.h \ - ../Geo/MElement.h ../Common/VertexArray.h ../Common/Message.h \ - ../Common/OS.h BDS.h ../Common/Views.h ../Common/ColorTable.h \ + ../Geo/GEntity.h ../Geo/Range.h ../Geo/SBoundingBox3d.h ../Geo/GPoint.h \ + ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/GVertex.h ../Geo/MElement.h \ + ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h \ + ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/Pair.h \ + ../Geo/MVertex.h ../Geo/MRep.h ../Geo/GFace.h ../Geo/GRegion.h \ + ../Common/VertexArray.h ../Common/Message.h ../Common/OS.h \ + ../Common/Context.h ../Geo/GPoint.h ../Common/Message.h \ + ../Numeric/Numeric.h BDS.h ../Common/Views.h ../Common/ColorTable.h \ ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Attractors.h \ - ../Geo/Geo.h ../Geo/gmshSurface.h ../Geo/Pair.h ../Geo/Range.h \ - ../Geo/SPoint2.h ../Geo/SPoint3.h ../Geo/SVector3.h \ - ../Geo/SBoundingBox3d.h ../DataStr/Tree.h ../DataStr/avl.h \ - ../Geo/SPoint2.h ../Geo/ExtrudeParams.h + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Field.h ../Geo/Geo.h \ + ../Geo/gmshSurface.h ../DataStr/List.h ../DataStr/Tree.h \ + ../DataStr/avl.h ../Common/OctreePost.h ../Common/Octree.h \ + ../Common/OctreeInternals.h meshGFaceTransfinite.o: meshGFaceTransfinite.cpp meshGFace.h \ ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Geo/GFace.h \ - ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ - ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/Pair.h \ - ../Geo/ExtrudeParams.h ../Common/Message.h + ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/GVertex.h \ + ../Geo/SVector3.h ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h \ + ../Geo/MFace.h ../Numeric/Numeric.h ../Common/Context.h \ + ../DataStr/List.h ../Geo/ExtrudeParams.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ + ../Geo/Pair.h ../Geo/MVertex.h ../Geo/MElement.h ../Common/Context.h \ + ../Common/Message.h meshGFaceExtruded.o: meshGFaceExtruded.cpp ../Geo/ExtrudeParams.h \ ../Common/SmoothData.h ../Numeric/Numeric.h ../Geo/GModel.h \ ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Context.h ../DataStr/List.h ../Geo/ExtrudeParams.h \ - ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/GEdgeLoop.h \ - ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h \ - ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h ../Geo/GEntity.h \ - ../Geo/MElement.h ../Geo/ExtrudeParams.h ../Geo/SBoundingBox3d.h \ - ../Common/Message.h + ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/SVector3.h \ + ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h ../Geo/MFace.h \ + ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ + ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/Pair.h \ + ../Geo/GRegion.h ../Common/Context.h ../Common/Message.h meshGFaceDelaunayInsertion.o: meshGFaceDelaunayInsertion.cpp BDS.h \ ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/Range.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../Common/GmshDefines.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ - ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/MVertex.h \ - ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Geo/MElement.h \ - ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h \ + ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h \ + ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/GVertex.h ../Geo/MVertex.h \ + ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/MElement.h ../Geo/MEdge.h \ + ../Common/Hash.h ../Geo/MFace.h ../Numeric/Numeric.h \ + ../Common/Context.h ../DataStr/List.h ../Geo/ExtrudeParams.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Geo/Pair.h \ ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ ../Common/SmoothData.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - BackgroundMesh.h meshGFaceDelaunayInsertion.h ../Common/Message.h + BackgroundMesh.h meshGFaceDelaunayInsertion.h ../Geo/MElement.h \ + ../Numeric/Numeric.h ../Common/Message.h meshGRegion.o: meshGRegion.cpp meshGRegion.h \ meshGRegionDelaunayInsertion.h ../Geo/MElement.h \ ../Common/GmshDefines.h ../Geo/MVertex.h ../Geo/SPoint3.h \ - ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ + ../Geo/MEdge.h ../Geo/SVector3.h ../Common/Hash.h ../Geo/MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../Geo/MVertex.h ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h \ - ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h \ - ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/ExtrudeParams.h \ - ../Common/SmoothData.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h \ - ../Geo/GEntity.h ../Geo/MElement.h ../Geo/ExtrudeParams.h \ - ../Geo/SBoundingBox3d.h ../Geo/gmshRegion.h ../Geo/Geo.h \ - ../Geo/gmshSurface.h ../Geo/Pair.h ../Geo/Range.h ../Geo/SPoint2.h \ - ../Geo/SPoint3.h ../Geo/SVector3.h ../Geo/SBoundingBox3d.h \ - ../DataStr/Tree.h ../DataStr/avl.h ../Geo/SPoint2.h \ - ../Geo/ExtrudeParams.h ../Geo/GRegion.h ../Geo/MRep.h ../Geo/GEdge.h \ - ../Geo/GFace.h ../Geo/GRegion.h ../Geo/MVertex.h ../Geo/MEdge.h \ - ../Geo/MElement.h ../Common/VertexArray.h ../Common/Message.h \ - ../Common/OS.h BDS.h ../Common/Views.h ../Common/ColorTable.h \ - ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h + ../Geo/SBoundingBox3d.h ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h \ + ../Geo/MElement.h ../Geo/ExtrudeParams.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/Pair.h \ + ../Geo/GRegion.h ../Geo/GRegion.h ../Geo/GFace.h ../Geo/GEdge.h \ + ../Geo/gmshRegion.h ../Geo/Geo.h ../Geo/gmshSurface.h ../DataStr/List.h \ + ../DataStr/Tree.h ../DataStr/avl.h ../Geo/MRep.h \ + ../Common/VertexArray.h ../Common/Message.h ../Common/OS.h BDS.h \ + ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ + ../Common/Message.h meshGRegionDelaunayInsertion.o: meshGRegionDelaunayInsertion.cpp \ BackgroundMesh.h meshGRegionDelaunayInsertion.h ../Geo/MElement.h \ ../Common/GmshDefines.h ../Geo/MVertex.h ../Geo/SPoint3.h \ - ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ + ../Geo/MEdge.h ../Geo/SVector3.h ../Common/Hash.h ../Geo/MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../Geo/MVertex.h ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h \ - ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h \ - ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/ExtrudeParams.h \ - ../Common/SmoothData.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h \ - ../Geo/GEntity.h ../Geo/MElement.h ../Geo/ExtrudeParams.h \ - ../Geo/SBoundingBox3d.h ../Common/Message.h + ../Geo/SBoundingBox3d.h ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h \ + ../Geo/MElement.h ../Geo/ExtrudeParams.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/Pair.h \ + ../Geo/GRegion.h ../Geo/GRegion.h ../Numeric/Numeric.h \ + ../Common/Message.h meshGRegionTransfinite.o: meshGRegionTransfinite.cpp meshGFace.h \ ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/Range.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../Common/GmshDefines.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ - ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/MVertex.h \ - ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Geo/MElement.h \ - ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h \ - ../Geo/GRegion.h ../Geo/GEntity.h ../Geo/MElement.h \ - ../Geo/ExtrudeParams.h ../Common/Message.h + ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h \ + ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/GVertex.h ../Geo/MVertex.h \ + ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/MElement.h ../Geo/MEdge.h \ + ../Common/Hash.h ../Geo/MFace.h ../Numeric/Numeric.h \ + ../Common/Context.h ../DataStr/List.h ../Geo/ExtrudeParams.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Geo/Pair.h \ + ../Geo/GRegion.h ../Geo/MVertex.h ../Geo/MElement.h ../Common/Context.h \ + ../Common/Message.h meshGRegionExtruded.o: meshGRegionExtruded.cpp ../Geo/ExtrudeParams.h \ ../Common/SmoothData.h ../Numeric/Numeric.h ../Geo/GModel.h \ ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Context.h ../DataStr/List.h ../Geo/ExtrudeParams.h \ - ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/GEdgeLoop.h \ - ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h \ - ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h ../Geo/GEntity.h \ - ../Geo/MElement.h ../Geo/ExtrudeParams.h ../Geo/SBoundingBox3d.h \ - meshGFace.h meshGRegion.h ../Common/Message.h + ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/SVector3.h \ + ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h ../Geo/MFace.h \ + ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ + ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/Pair.h \ + ../Geo/GRegion.h meshGFace.h meshGRegion.h ../Common/Context.h \ + ../Common/Message.h DivideAndConquer.o: DivideAndConquer.cpp ../Common/Gmsh.h \ ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h \ @@ -285,70 +227,46 @@ BackgroundMesh.o: BackgroundMesh.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ - ../Common/GmshMatrix.h BackgroundMesh.h ../Common/Context.h \ - ../Common/OctreePost.h ../Common/Octree.h ../Common/OctreeInternals.h \ - ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GModel.h \ - ../Geo/GVertex.h ../Geo/GEdge.h ../Geo/GFace.h ../Geo/GRegion.h \ - ../Geo/GEntity.h ../Geo/MElement.h ../Geo/ExtrudeParams.h \ - ../Geo/SBoundingBox3d.h Attractors.h ../Geo/Geo.h ../Geo/gmshSurface.h \ - ../Geo/Pair.h ../Geo/Range.h ../Geo/SPoint2.h ../Geo/SPoint3.h \ - ../Geo/SVector3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint2.h \ - ../Geo/ExtrudeParams.h + ../Common/GmshMatrix.h BackgroundMesh.h ../Numeric/Numeric.h \ + ../Common/Context.h ../Common/OctreePost.h ../Common/Octree.h \ + ../Common/OctreeInternals.h ../Geo/GVertex.h ../Geo/GEntity.h \ + ../Geo/Range.h ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h \ + ../Common/GmshDefines.h ../Geo/MVertex.h ../Geo/GPoint.h \ + ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/GVertex.h ../Geo/SVector3.h \ + ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h ../Geo/MFace.h \ + ../Numeric/Numeric.h ../Common/Context.h ../Geo/ExtrudeParams.h \ + ../Common/SmoothData.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ + ../Geo/Pair.h ../Geo/GModel.h ../Geo/GFace.h ../Geo/GRegion.h Field.h \ + ../Geo/Geo.h ../Geo/gmshSurface.h ../DataStr/List.h ../DataStr/Tree.h BoundaryLayer.o: BoundaryLayer.cpp BoundaryLayer.h ../Geo/GModel.h \ ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ + ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/SVector3.h \ + ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h ../Geo/MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Geo/GFace.h \ - ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ - ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/Pair.h \ - ../Geo/ExtrudeParams.h ../Geo/GRegion.h ../Geo/GEntity.h \ - ../Geo/MElement.h ../Geo/ExtrudeParams.h ../Geo/SBoundingBox3d.h \ - meshGEdge.h meshGFace.h ../Common/Message.h ../Common/Views.h \ - ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h + ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h \ + ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/Pair.h ../Geo/GRegion.h \ + ../Geo/ExtrudeParams.h meshGEdge.h meshGFace.h ../Common/Message.h \ + ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ + ../Common/SmoothData.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h BDS.o: BDS.cpp ../Numeric/Numeric.h ../Common/GmshMatrix.h BDS.h \ ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/Range.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../Common/GmshDefines.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ - ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/MVertex.h \ - ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ + ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h \ + ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/GVertex.h ../Geo/MVertex.h \ + ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/MElement.h ../Geo/MEdge.h \ + ../Common/Hash.h ../Geo/MFace.h ../Numeric/Numeric.h \ ../Common/Context.h ../DataStr/List.h ../Geo/ExtrudeParams.h \ - ../Common/SmoothData.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h ../Geo/Pair.h \ ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ ../Common/SmoothData.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ ../Common/Message.h HighOrder.o: HighOrder.cpp HighOrder.h ../Geo/GModel.h ../Geo/GVertex.h \ ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Common/Hash.h ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ + ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h ../Geo/SVector3.h \ + ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h ../Geo/MFace.h \ ../Numeric/Numeric.h ../Common/Context.h ../DataStr/List.h \ - ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Geo/GFace.h \ - ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ - ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/Pair.h \ - ../Geo/ExtrudeParams.h ../Geo/GRegion.h ../Geo/GEntity.h \ - ../Geo/MElement.h ../Geo/ExtrudeParams.h ../Geo/SBoundingBox3d.h \ - ../Geo/MRep.h ../Geo/GEdge.h ../Geo/GFace.h ../Geo/GRegion.h \ - ../Geo/MVertex.h ../Geo/MEdge.h ../Geo/MElement.h \ - ../Common/VertexArray.h ../Common/Message.h ../Common/OS.h + ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h \ + ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/Pair.h ../Geo/GRegion.h \ + ../Geo/MElement.h ../Geo/MRep.h ../Common/VertexArray.h \ + ../Common/Message.h ../Common/OS.h ../Common/Message.h ../Common/OS.h diff --git a/Mesh/meshGEdge.cpp b/Mesh/meshGEdge.cpp index 7a33610cd5969aad048b41cf18acbe7381eacf19..5e14c20e09ebf3d032ed4321532860e519bf3b75 100644 --- a/Mesh/meshGEdge.cpp +++ b/Mesh/meshGEdge.cpp @@ -1,4 +1,4 @@ -// $Id: meshGEdge.cpp,v 1.30 2007-03-09 14:57:06 remacle Exp $ +// $Id: meshGEdge.cpp,v 1.31 2007-04-16 09:08:28 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -234,6 +234,7 @@ void meshGEdge::operator() (GEdge *ge) // do not consider the first and the last vertex (those are not // classified on this mesh edge) + printf("mid\n"); if(N > 2){ ge->mesh_vertices.resize(N - 2); while(NUMP < N - 1) { @@ -241,15 +242,15 @@ void meshGEdge::operator() (GEdge *ge) List_Read(Points, count, &P2); const double d = (double)NUMP *b; if((fabs(P2.p) >= fabs(d)) && (fabs(P1.p) < fabs(d))) { - double dt = P2.t - P1.t; - double dp = P2.p - P1.p; - double t = P1.t + dt / dp * (d - P1.p); - GPoint V = ge->point(t); - ge->mesh_vertices[NUMP - 1] = new MEdgeVertex(V.x(), V.y(), V.z(), ge, t); - NUMP++; + double dt = P2.t - P1.t; + double dp = P2.p - P1.p; + double t = P1.t + dt / dp * (d - P1.p); + GPoint V = ge->point(t); + ge->mesh_vertices[NUMP - 1] = new MEdgeVertex(V.x(), V.y(), V.z(), ge, t); + NUMP++; } else { - count++; + count++; } } } @@ -268,7 +269,6 @@ void meshGEdge::operator() (GEdge *ge) // not connecting any other curve. So, the mesh vertex and its associated geom vertex // are not necessary at the same location - // printf("%p %p %d\n",ge->getBeginVertex(),ge->getEndVertex(),ge->getBeginVertex()->edges().size()); if (ge->getBeginVertex() == ge->getEndVertex() && ge->getBeginVertex()->edges().size() == 1) diff --git a/Mesh/meshGFace.cpp b/Mesh/meshGFace.cpp index a7f542f7d9a91ab7091aa648be8ba11bc16a6957..d3db3beffb1f261a34f9bad50558744d66d3f5b1 100644 --- a/Mesh/meshGFace.cpp +++ b/Mesh/meshGFace.cpp @@ -1,4 +1,4 @@ -// $Id: meshGFace.cpp,v 1.72 2007-04-13 12:49:52 remacle Exp $ +// $Id: meshGFace.cpp,v 1.73 2007-04-16 09:08:28 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -34,7 +34,6 @@ #include "Message.h" #include "Numeric.h" #include "BDS.h" -#include "Attractors.h" extern Context_T CTX; @@ -302,7 +301,7 @@ void RefineMesh ( GFace *gf, BDS_Mesh &m , const int NIT) // computecharacteristic lengths using mesh edge spacing // separate attractors & - if (NIT > 0 && !Attractor::size()) + if (NIT > 0 && !BGMExists()) { std::set<BDS_Point*,PointLessThan>::iterator itp = m.points.begin(); while (itp != m.points.end()) @@ -391,7 +390,7 @@ void RefineMesh ( GFace *gf, BDS_Mesh &m , const int NIT) coord * (*it)->p1->u + (1 - coord) * (*it)->p2->u, coord * (*it)->p1->v + (1 - coord) * (*it)->p2->v,gf); double l1; - if (Attractor::size()) + if (!BGMExists()) l1 = BGM_MeshSize(gf, (coord * (*it)->p1->u + (1 - coord) * (*it)->p2->u)*m.scalingU, (coord * (*it)->p1->v + (1 - coord) * (*it)->p2->v)*m.scalingV, diff --git a/Parser/Gmsh.l b/Parser/Gmsh.l index d6d9d43b656a776636e3b94b5392a5f84718f42b..0d36eddc8e5adf4a1245e4358fc46747401ab835 100644 --- a/Parser/Gmsh.l +++ b/Parser/Gmsh.l @@ -1,5 +1,5 @@ %{ -// $Id: Gmsh.l,v 1.86 2007-03-05 09:30:53 geuzaine Exp $ +// $Id: Gmsh.l,v 1.87 2007-04-16 09:08:28 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -130,8 +130,6 @@ Combine return tCombine; Cosh return tCosh; Cos return tCos; Characteristic return tCharacteristic; -Circle return tCircle; -Coherence return tCoherence; Complex return tComplex; Color return tColor; ColorTable return tColorTable; @@ -155,12 +153,14 @@ Euclidian return tEuclidian; Exit return tExit; Fabs return tFabs; +Field return tField; Floor return tFloor; Fmod return tFmod; For return tFor; Function return tFunction; GetValue return tGetValue; +Grad return tGrad; GMSH_MAJOR_VERSION return tGMSH_MAJOR_VERSION; GMSH_MINOR_VERSION return tGMSH_MINOR_VERSION; GMSH_PATCH_VERSION return tGMSH_PATCH_VERSION; @@ -174,6 +174,7 @@ If return tIf; Knots return tKnots; +LatLon return tLatLon; Length return tLength; Line return tLine; Loop return tLoop; @@ -217,12 +218,14 @@ Sprintf return tSprintf; StrCat return tStrCat; StrPrefix return tStrPrefix; StrRelative return tStrRelative; +Structured return tStructured; Show return tShow; Transfinite return tTransfinite; Translate return tTranslate; Tanh return tTanh; Tan return tTan; +Threshold return tThreshold; Today return tToday; Using return tUsing; diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index 753e1edba46158b8219d1ddeff2b134de2ca509b..277bc3748dfb1a7a18019ff023e1b10d3c75bea6 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -1,131 +1,328 @@ +/* A Bison parser, made by GNU Bison 2.3. */ -/* A Bison parser, made from Gmsh.y - by GNU Bison version 1.28 */ - -#define YYBISON 1 /* Identify Bison output. */ - -#define tDOUBLE 257 -#define tSTRING 258 -#define tBIGSTR 259 -#define tEND 260 -#define tAFFECT 261 -#define tDOTS 262 -#define tPi 263 -#define tMPI_Rank 264 -#define tMPI_Size 265 -#define tEuclidian 266 -#define tCoordinates 267 -#define tExp 268 -#define tLog 269 -#define tLog10 270 -#define tSqrt 271 -#define tSin 272 -#define tAsin 273 -#define tCos 274 -#define tAcos 275 -#define tTan 276 -#define tRand 277 -#define tAtan 278 -#define tAtan2 279 -#define tSinh 280 -#define tCosh 281 -#define tTanh 282 -#define tFabs 283 -#define tFloor 284 -#define tCeil 285 -#define tFmod 286 -#define tModulo 287 -#define tHypot 288 -#define tPrintf 289 -#define tSprintf 290 -#define tStrCat 291 -#define tStrPrefix 292 -#define tStrRelative 293 -#define tBoundingBox 294 -#define tDraw 295 -#define tToday 296 -#define tPoint 297 -#define tCircle 298 -#define tEllipse 299 -#define tLine 300 -#define tSphere 301 -#define tPolarSphere 302 -#define tSurface 303 -#define tSpline 304 -#define tVolume 305 -#define tCharacteristic 306 -#define tLength 307 -#define tParametric 308 -#define tElliptic 309 -#define tPlane 310 -#define tRuled 311 -#define tTransfinite 312 -#define tComplex 313 -#define tPhysical 314 -#define tUsing 315 -#define tBump 316 -#define tProgression 317 -#define tPlugin 318 -#define tRotate 319 -#define tTranslate 320 -#define tSymmetry 321 -#define tDilate 322 -#define tExtrude 323 -#define tDuplicata 324 -#define tLoop 325 -#define tRecombine 326 -#define tDelete 327 -#define tCoherence 328 -#define tAttractor 329 -#define tLayers 330 -#define tHole 331 -#define tAlias 332 -#define tAliasWithOptions 333 -#define tText2D 334 -#define tText3D 335 -#define tInterpolationScheme 336 -#define tTime 337 -#define tGrain 338 -#define tCombine 339 -#define tBSpline 340 -#define tBezier 341 -#define tNurbs 342 -#define tOrder 343 -#define tKnots 344 -#define tColor 345 -#define tColorTable 346 -#define tFor 347 -#define tIn 348 -#define tEndFor 349 -#define tIf 350 -#define tEndIf 351 -#define tExit 352 -#define tReturn 353 -#define tCall 354 -#define tFunction 355 -#define tShow 356 -#define tHide 357 -#define tGetValue 358 -#define tGMSH_MAJOR_VERSION 359 -#define tGMSH_MINOR_VERSION 360 -#define tGMSH_PATCH_VERSION 361 -#define tAFFECTPLUS 362 -#define tAFFECTMINUS 363 -#define tAFFECTTIMES 364 -#define tAFFECTDIVIDE 365 -#define tOR 366 -#define tAND 367 -#define tEQUAL 368 -#define tNOTEQUAL 369 -#define tLESSOREQUAL 370 -#define tGREATEROREQUAL 371 -#define tPLUSPLUS 372 -#define tMINUSMINUS 373 -#define UNARYPREC 374 +/* 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, + tPi = 264, + tMPI_Rank = 265, + tMPI_Size = 266, + tEuclidian = 267, + tCoordinates = 268, + tExp = 269, + tLog = 270, + tLog10 = 271, + tSqrt = 272, + tSin = 273, + tAsin = 274, + tCos = 275, + tAcos = 276, + tTan = 277, + tRand = 278, + tAtan = 279, + tAtan2 = 280, + tSinh = 281, + tCosh = 282, + tTanh = 283, + tFabs = 284, + tFloor = 285, + tCeil = 286, + tFmod = 287, + tModulo = 288, + tHypot = 289, + tPrintf = 290, + tSprintf = 291, + tStrCat = 292, + tStrPrefix = 293, + tStrRelative = 294, + tBoundingBox = 295, + tDraw = 296, + tToday = 297, + tPoint = 298, + tCircle = 299, + tEllipse = 300, + tLine = 301, + tSphere = 302, + tPolarSphere = 303, + tSurface = 304, + tSpline = 305, + tVolume = 306, + tCharacteristic = 307, + tLength = 308, + tParametric = 309, + tElliptic = 310, + tPlane = 311, + tRuled = 312, + tTransfinite = 313, + tComplex = 314, + tPhysical = 315, + tUsing = 316, + tBump = 317, + tProgression = 318, + tPlugin = 319, + tRotate = 320, + tTranslate = 321, + tSymmetry = 322, + tDilate = 323, + tExtrude = 324, + tDuplicata = 325, + tLoop = 326, + tRecombine = 327, + tDelete = 328, + tCoherence = 329, + tAttractor = 330, + tLayers = 331, + tHole = 332, + tAlias = 333, + tAliasWithOptions = 334, + tText2D = 335, + tText3D = 336, + tInterpolationScheme = 337, + tTime = 338, + tGrain = 339, + tCombine = 340, + tBSpline = 341, + tBezier = 342, + tNurbs = 343, + tOrder = 344, + tKnots = 345, + tColor = 346, + tColorTable = 347, + tFor = 348, + tIn = 349, + tEndFor = 350, + tIf = 351, + tEndIf = 352, + tExit = 353, + tField = 354, + tThreshold = 355, + tStructured = 356, + tLatLon = 357, + tGrad = 358, + tReturn = 359, + tCall = 360, + tFunction = 361, + tShow = 362, + tHide = 363, + tGetValue = 364, + tGMSH_MAJOR_VERSION = 365, + tGMSH_MINOR_VERSION = 366, + tGMSH_PATCH_VERSION = 367, + tAFFECTDIVIDE = 368, + tAFFECTTIMES = 369, + tAFFECTMINUS = 370, + tAFFECTPLUS = 371, + tOR = 372, + tAND = 373, + tNOTEQUAL = 374, + tEQUAL = 375, + tGREATEROREQUAL = 376, + tLESSOREQUAL = 377, + UNARYPREC = 378, + tMINUSMINUS = 379, + tPLUSPLUS = 380 + }; +#endif +/* Tokens. */ +#define tDOUBLE 258 +#define tSTRING 259 +#define tBIGSTR 260 +#define tEND 261 +#define tAFFECT 262 +#define tDOTS 263 +#define tPi 264 +#define tMPI_Rank 265 +#define tMPI_Size 266 +#define tEuclidian 267 +#define tCoordinates 268 +#define tExp 269 +#define tLog 270 +#define tLog10 271 +#define tSqrt 272 +#define tSin 273 +#define tAsin 274 +#define tCos 275 +#define tAcos 276 +#define tTan 277 +#define tRand 278 +#define tAtan 279 +#define tAtan2 280 +#define tSinh 281 +#define tCosh 282 +#define tTanh 283 +#define tFabs 284 +#define tFloor 285 +#define tCeil 286 +#define tFmod 287 +#define tModulo 288 +#define tHypot 289 +#define tPrintf 290 +#define tSprintf 291 +#define tStrCat 292 +#define tStrPrefix 293 +#define tStrRelative 294 +#define tBoundingBox 295 +#define tDraw 296 +#define tToday 297 +#define tPoint 298 +#define tCircle 299 +#define tEllipse 300 +#define tLine 301 +#define tSphere 302 +#define tPolarSphere 303 +#define tSurface 304 +#define tSpline 305 +#define tVolume 306 +#define tCharacteristic 307 +#define tLength 308 +#define tParametric 309 +#define tElliptic 310 +#define tPlane 311 +#define tRuled 312 +#define tTransfinite 313 +#define tComplex 314 +#define tPhysical 315 +#define tUsing 316 +#define tBump 317 +#define tProgression 318 +#define tPlugin 319 +#define tRotate 320 +#define tTranslate 321 +#define tSymmetry 322 +#define tDilate 323 +#define tExtrude 324 +#define tDuplicata 325 +#define tLoop 326 +#define tRecombine 327 +#define tDelete 328 +#define tCoherence 329 +#define tAttractor 330 +#define tLayers 331 +#define tHole 332 +#define tAlias 333 +#define tAliasWithOptions 334 +#define tText2D 335 +#define tText3D 336 +#define tInterpolationScheme 337 +#define tTime 338 +#define tGrain 339 +#define tCombine 340 +#define tBSpline 341 +#define tBezier 342 +#define tNurbs 343 +#define tOrder 344 +#define tKnots 345 +#define tColor 346 +#define tColorTable 347 +#define tFor 348 +#define tIn 349 +#define tEndFor 350 +#define tIf 351 +#define tEndIf 352 +#define tExit 353 +#define tField 354 +#define tThreshold 355 +#define tStructured 356 +#define tLatLon 357 +#define tGrad 358 +#define tReturn 359 +#define tCall 360 +#define tFunction 361 +#define tShow 362 +#define tHide 363 +#define tGetValue 364 +#define tGMSH_MAJOR_VERSION 365 +#define tGMSH_MINOR_VERSION 366 +#define tGMSH_PATCH_VERSION 367 +#define tAFFECTDIVIDE 368 +#define tAFFECTTIMES 369 +#define tAFFECTMINUS 370 +#define tAFFECTPLUS 371 +#define tOR 372 +#define tAND 373 +#define tNOTEQUAL 374 +#define tEQUAL 375 +#define tGREATEROREQUAL 376 +#define tLESSOREQUAL 377 +#define UNARYPREC 378 +#define tMINUSMINUS 379 +#define tPLUSPLUS 380 + + + + +/* Copy the first part of user declarations. */ #line 1 "Gmsh.y" -// $Id: Gmsh.tab.cpp,v 1.315 2007-04-12 08:58:06 remacle Exp $ +// $Id: Gmsh.tab.cpp,v 1.316 2007-04-16 09:08:28 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -169,7 +366,8 @@ #include "OS.h" #include "CreateFile.h" #include "gmshSurface.h" -#include "Attractors.h" +#include "Field.h" +#include "BackgroundMesh.h" Tree_T *Symbol_T = NULL; @@ -200,8 +398,29 @@ void skip_until(char *skip, char *until); int PrintListOfDouble(char *format, List_T *list, char *buffer); int CheckViewErrorFlags(Post_View *v); -#line 78 "Gmsh.y" -typedef union { + +/* 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 79 "Gmsh.y" +{ char *c; int i; unsigned int u; @@ -209,2279 +428,3111 @@ typedef union { double v[5]; Shape s; List_T *l; -} YYSTYPE; -#include <stdio.h> +} +/* Line 187 of yacc.c. */ +#line 434 "Gmsh.tab.cpp" + 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. */ + -#ifndef __cplusplus -#ifndef __STDC__ -#define const +/* Line 216 of yacc.c. */ +#line 447 "Gmsh.tab.cpp" + +#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 -#define YYFINAL 1230 -#define YYFLAG -32768 -#define YYNTBASE 141 - -#define YYTRANSLATE(x) ((unsigned)(x) <= 374 ? yytranslate[x] : 210) - -static const short yytranslate[] = { 0, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 126, 2, 136, 2, 125, 2, 2, 131, - 132, 123, 121, 137, 122, 135, 124, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 117, - 2, 119, 112, 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, - 133, 2, 134, 130, 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, 138, 2, 139, 140, 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, 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, 113, 114, 115, 116, 118, - 120, 127, 128, 129 -}; +#ifdef YYTYPE_INT16 +typedef YYTYPE_INT16 yytype_int16; +#else +typedef short int yytype_int16; +#endif -#if YYDEBUG != 0 -static const short yyprhs[] = { 0, - 0, 2, 5, 6, 9, 11, 13, 15, 17, 19, - 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, - 41, 44, 50, 58, 66, 76, 83, 92, 93, 96, - 99, 102, 105, 108, 111, 113, 117, 119, 123, 124, - 125, 136, 138, 142, 143, 157, 159, 163, 164, 180, - 189, 204, 205, 212, 219, 221, 223, 225, 227, 229, - 231, 233, 238, 246, 256, 263, 270, 274, 281, 286, - 293, 303, 310, 320, 326, 335, 344, 356, 363, 373, - 383, 393, 395, 397, 405, 414, 421, 428, 435, 443, - 451, 459, 469, 477, 487, 505, 513, 521, 533, 542, - 551, 560, 569, 573, 578, 589, 597, 605, 614, 623, - 632, 640, 649, 655, 667, 673, 683, 685, 687, 689, - 690, 693, 700, 707, 714, 721, 726, 733, 740, 747, - 752, 759, 763, 768, 774, 778, 782, 787, 792, 796, - 804, 812, 816, 824, 828, 831, 834, 850, 853, 860, - 869, 878, 889, 891, 894, 896, 900, 905, 907, 913, - 925, 939, 940, 948, 949, 963, 964, 980, 981, 988, - 989, 1000, 1009, 1018, 1027, 1040, 1053, 1066, 1081, 1096, - 1111, 1112, 1125, 1126, 1139, 1140, 1153, 1154, 1171, 1172, - 1189, 1190, 1207, 1208, 1227, 1228, 1247, 1248, 1267, 1269, - 1272, 1278, 1286, 1296, 1299, 1309, 1316, 1326, 1336, 1345, - 1355, 1364, 1373, 1380, 1385, 1396, 1407, 1418, 1429, 1432, - 1434, 1438, 1441, 1444, 1447, 1451, 1455, 1459, 1463, 1467, - 1471, 1475, 1479, 1483, 1487, 1491, 1495, 1499, 1503, 1509, - 1514, 1519, 1524, 1529, 1534, 1539, 1544, 1549, 1554, 1559, - 1566, 1571, 1576, 1581, 1586, 1591, 1596, 1603, 1610, 1617, - 1622, 1627, 1632, 1637, 1642, 1647, 1652, 1657, 1662, 1667, - 1672, 1679, 1684, 1689, 1694, 1699, 1704, 1709, 1716, 1723, - 1730, 1735, 1737, 1739, 1741, 1743, 1745, 1747, 1749, 1751, - 1757, 1762, 1767, 1770, 1776, 1780, 1787, 1792, 1800, 1807, - 1809, 1812, 1815, 1819, 1823, 1835, 1845, 1853, 1861, 1863, - 1867, 1869, 1871, 1874, 1878, 1883, 1889, 1892, 1896, 1900, - 1906, 1911, 1913, 1915, 1917, 1921, 1928, 1930, 1932, 1936, - 1940, 1950, 1958, 1960, 1966, 1970, 1977, 1979, 1983, 1985, - 1987, 1989, 1991, 1998, 2003, 2008, 2013, 2020, 2027 -}; +#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 -static const short yyrhs[] = { 142, - 0, 1, 6, 0, 0, 142, 143, 0, 146, 0, - 145, 0, 165, 0, 167, 0, 168, 0, 171, 0, - 172, 0, 173, 0, 174, 0, 177, 0, 194, 0, - 195, 0, 196, 0, 176, 0, 175, 0, 119, 0, - 119, 119, 0, 35, 131, 5, 132, 6, 0, 35, - 131, 5, 132, 144, 208, 6, 0, 35, 131, 5, - 137, 204, 132, 6, 0, 35, 131, 5, 137, 204, - 132, 144, 208, 6, 0, 4, 5, 138, 147, 139, - 6, 0, 4, 5, 4, 199, 138, 147, 139, 6, - 0, 0, 147, 150, 0, 147, 154, 0, 147, 157, - 0, 147, 159, 0, 147, 160, 0, 147, 162, 0, - 197, 0, 148, 137, 197, 0, 197, 0, 149, 137, - 197, 0, 0, 0, 4, 151, 131, 148, 132, 152, - 138, 149, 139, 6, 0, 208, 0, 153, 137, 208, - 0, 0, 80, 131, 197, 137, 197, 137, 197, 132, - 155, 138, 153, 139, 6, 0, 208, 0, 156, 137, - 208, 0, 0, 81, 131, 197, 137, 197, 137, 197, - 137, 197, 132, 158, 138, 156, 139, 6, 0, 82, - 138, 201, 139, 138, 201, 139, 6, 0, 82, 138, - 201, 139, 138, 201, 139, 138, 201, 139, 138, 201, - 139, 6, 0, 0, 83, 161, 138, 149, 139, 6, - 0, 84, 131, 197, 132, 202, 6, 0, 7, 0, - 108, 0, 109, 0, 110, 0, 111, 0, 127, 0, - 128, 0, 4, 163, 197, 6, 0, 4, 133, 197, - 134, 163, 197, 6, 0, 4, 133, 138, 204, 139, - 134, 163, 202, 6, 0, 4, 133, 134, 7, 202, - 6, 0, 4, 133, 134, 108, 202, 6, 0, 4, - 164, 6, 0, 4, 133, 197, 134, 164, 6, 0, - 4, 7, 209, 6, 0, 4, 135, 4, 7, 209, - 6, 0, 4, 133, 197, 134, 135, 4, 7, 209, - 6, 0, 4, 135, 4, 163, 197, 6, 0, 4, - 133, 197, 134, 135, 4, 163, 197, 6, 0, 4, - 135, 4, 164, 6, 0, 4, 133, 197, 134, 135, - 4, 164, 6, 0, 4, 135, 91, 135, 4, 7, - 205, 6, 0, 4, 133, 197, 134, 135, 91, 135, - 4, 7, 205, 6, 0, 4, 135, 92, 7, 206, - 6, 0, 4, 133, 197, 134, 135, 92, 7, 206, - 6, 0, 64, 131, 4, 132, 135, 4, 7, 197, - 6, 0, 64, 131, 4, 132, 135, 4, 7, 209, - 6, 0, 197, 0, 209, 0, 43, 131, 197, 132, - 7, 199, 6, 0, 60, 43, 131, 166, 132, 7, - 202, 6, 0, 75, 43, 202, 7, 202, 6, 0, - 75, 46, 202, 7, 202, 6, 0, 52, 53, 202, - 7, 197, 6, 0, 46, 131, 197, 132, 7, 202, - 6, 0, 50, 131, 197, 132, 7, 202, 6, 0, - 44, 131, 197, 132, 7, 202, 6, 0, 44, 131, - 197, 132, 7, 202, 56, 199, 6, 0, 45, 131, - 197, 132, 7, 202, 6, 0, 45, 131, 197, 132, - 7, 202, 56, 199, 6, 0, 54, 131, 197, 132, - 7, 138, 197, 137, 197, 137, 5, 137, 5, 137, - 5, 139, 6, 0, 86, 131, 197, 132, 7, 202, - 6, 0, 87, 131, 197, 132, 7, 202, 6, 0, - 88, 131, 197, 132, 7, 202, 90, 202, 89, 197, - 6, 0, 46, 71, 131, 197, 132, 7, 202, 6, - 0, 60, 46, 131, 166, 132, 7, 202, 6, 0, - 56, 49, 131, 197, 132, 7, 202, 6, 0, 57, - 49, 131, 197, 132, 7, 202, 6, 0, 12, 13, - 6, 0, 13, 49, 197, 6, 0, 54, 49, 131, - 197, 132, 7, 5, 5, 5, 6, 0, 47, 131, - 197, 132, 7, 202, 6, 0, 48, 131, 197, 132, - 7, 202, 6, 0, 49, 71, 131, 197, 132, 7, - 202, 6, 0, 60, 49, 131, 166, 132, 7, 202, - 6, 0, 59, 51, 131, 197, 132, 7, 202, 6, - 0, 51, 131, 197, 132, 7, 202, 6, 0, 60, - 51, 131, 166, 132, 7, 202, 6, 0, 66, 199, - 138, 169, 139, 0, 65, 138, 199, 137, 199, 137, - 197, 139, 138, 169, 139, 0, 67, 199, 138, 169, - 139, 0, 68, 138, 199, 137, 197, 139, 138, 169, - 139, 0, 171, 0, 170, 0, 168, 0, 0, 170, - 167, 0, 170, 43, 138, 204, 139, 6, 0, 170, - 46, 138, 204, 139, 6, 0, 170, 49, 138, 204, - 139, 6, 0, 170, 51, 138, 204, 139, 6, 0, - 70, 138, 170, 139, 0, 70, 4, 133, 197, 134, - 6, 0, 78, 4, 133, 197, 134, 6, 0, 79, - 4, 133, 197, 134, 6, 0, 73, 138, 170, 139, - 0, 73, 4, 133, 197, 134, 6, 0, 73, 4, - 6, 0, 73, 4, 4, 6, 0, 91, 205, 138, - 170, 139, 0, 102, 208, 6, 0, 103, 208, 6, - 0, 102, 138, 170, 139, 0, 103, 138, 170, 139, - 0, 4, 209, 6, 0, 4, 4, 133, 197, 134, - 208, 6, 0, 4, 4, 4, 133, 197, 134, 6, - 0, 4, 197, 6, 0, 64, 131, 4, 132, 135, - 4, 6, 0, 85, 4, 6, 0, 98, 6, 0, - 40, 6, 0, 40, 138, 197, 137, 197, 137, 197, - 137, 197, 137, 197, 137, 197, 139, 6, 0, 41, - 6, 0, 93, 131, 197, 8, 197, 132, 0, 93, - 131, 197, 8, 197, 8, 197, 132, 0, 93, 4, - 94, 138, 197, 8, 197, 139, 0, 93, 4, 94, - 138, 197, 8, 197, 8, 197, 139, 0, 95, 0, - 101, 4, 0, 99, 0, 100, 4, 6, 0, 96, - 131, 197, 132, 0, 97, 0, 69, 199, 138, 170, - 139, 0, 69, 138, 199, 137, 199, 137, 197, 139, - 138, 170, 139, 0, 69, 138, 199, 137, 199, 137, - 199, 137, 197, 139, 138, 170, 139, 0, 0, 69, - 199, 138, 170, 178, 192, 139, 0, 0, 69, 138, - 199, 137, 199, 137, 197, 139, 138, 170, 179, 192, - 139, 0, 0, 69, 138, 199, 137, 199, 137, 199, - 137, 197, 139, 138, 170, 180, 192, 139, 0, 0, - 69, 138, 170, 181, 192, 139, 0, 0, 69, 4, - 133, 197, 134, 138, 170, 182, 192, 139, 0, 69, - 43, 138, 197, 137, 199, 139, 6, 0, 69, 46, - 138, 197, 137, 199, 139, 6, 0, 69, 49, 138, - 197, 137, 199, 139, 6, 0, 69, 43, 138, 197, - 137, 199, 137, 199, 137, 197, 139, 6, 0, 69, - 46, 138, 197, 137, 199, 137, 199, 137, 197, 139, - 6, 0, 69, 49, 138, 197, 137, 199, 137, 199, - 137, 197, 139, 6, 0, 69, 43, 138, 197, 137, - 199, 137, 199, 137, 199, 137, 197, 139, 6, 0, - 69, 46, 138, 197, 137, 199, 137, 199, 137, 199, - 137, 197, 139, 6, 0, 69, 49, 138, 197, 137, - 199, 137, 199, 137, 199, 137, 197, 139, 6, 0, - 0, 69, 43, 138, 197, 137, 199, 139, 183, 138, - 192, 139, 6, 0, 0, 69, 46, 138, 197, 137, - 199, 139, 184, 138, 192, 139, 6, 0, 0, 69, - 49, 138, 197, 137, 199, 139, 185, 138, 192, 139, - 6, 0, 0, 69, 43, 138, 197, 137, 199, 137, - 199, 137, 197, 139, 186, 138, 192, 139, 6, 0, - 0, 69, 46, 138, 197, 137, 199, 137, 199, 137, - 197, 139, 187, 138, 192, 139, 6, 0, 0, 69, - 49, 138, 197, 137, 199, 137, 199, 137, 197, 139, - 188, 138, 192, 139, 6, 0, 0, 69, 43, 138, - 197, 137, 199, 137, 199, 137, 199, 137, 197, 139, - 189, 138, 192, 139, 6, 0, 0, 69, 46, 138, - 197, 137, 199, 137, 199, 137, 199, 137, 197, 139, - 190, 138, 192, 139, 6, 0, 0, 69, 49, 138, - 197, 137, 199, 137, 199, 137, 199, 137, 197, 139, - 191, 138, 192, 139, 6, 0, 193, 0, 192, 193, - 0, 76, 138, 197, 139, 6, 0, 76, 138, 202, - 137, 202, 139, 6, 0, 76, 138, 202, 137, 202, - 137, 202, 139, 6, 0, 72, 6, 0, 77, 131, - 197, 132, 7, 202, 61, 197, 6, 0, 58, 46, - 202, 7, 197, 6, 0, 58, 46, 202, 7, 197, - 61, 63, 197, 6, 0, 58, 46, 202, 7, 197, - 61, 62, 197, 6, 0, 58, 49, 138, 197, 139, - 7, 202, 6, 0, 58, 49, 138, 197, 139, 7, - 202, 4, 6, 0, 55, 49, 138, 197, 139, 7, - 202, 6, 0, 58, 51, 138, 197, 139, 7, 202, - 6, 0, 72, 49, 202, 7, 197, 6, 0, 72, - 49, 202, 6, 0, 43, 138, 204, 139, 94, 49, - 138, 197, 139, 6, 0, 46, 138, 204, 139, 94, - 49, 138, 197, 139, 6, 0, 46, 138, 204, 139, - 94, 51, 138, 197, 139, 6, 0, 49, 138, 204, - 139, 94, 51, 138, 197, 139, 6, 0, 74, 6, - 0, 198, 0, 131, 197, 132, 0, 122, 197, 0, - 121, 197, 0, 126, 197, 0, 197, 122, 197, 0, - 197, 121, 197, 0, 197, 123, 197, 0, 197, 124, - 197, 0, 197, 125, 197, 0, 197, 130, 197, 0, - 197, 117, 197, 0, 197, 119, 197, 0, 197, 118, - 197, 0, 197, 120, 197, 0, 197, 115, 197, 0, - 197, 116, 197, 0, 197, 114, 197, 0, 197, 113, - 197, 0, 197, 112, 197, 8, 197, 0, 14, 131, - 197, 132, 0, 15, 131, 197, 132, 0, 16, 131, - 197, 132, 0, 17, 131, 197, 132, 0, 18, 131, - 197, 132, 0, 19, 131, 197, 132, 0, 20, 131, - 197, 132, 0, 21, 131, 197, 132, 0, 22, 131, - 197, 132, 0, 24, 131, 197, 132, 0, 25, 131, - 197, 137, 197, 132, 0, 26, 131, 197, 132, 0, - 27, 131, 197, 132, 0, 28, 131, 197, 132, 0, - 29, 131, 197, 132, 0, 30, 131, 197, 132, 0, - 31, 131, 197, 132, 0, 32, 131, 197, 137, 197, - 132, 0, 33, 131, 197, 137, 197, 132, 0, 34, - 131, 197, 137, 197, 132, 0, 23, 131, 197, 132, - 0, 14, 133, 197, 134, 0, 15, 133, 197, 134, - 0, 16, 133, 197, 134, 0, 17, 133, 197, 134, - 0, 18, 133, 197, 134, 0, 19, 133, 197, 134, - 0, 20, 133, 197, 134, 0, 21, 133, 197, 134, - 0, 22, 133, 197, 134, 0, 24, 133, 197, 134, - 0, 25, 133, 197, 137, 197, 134, 0, 26, 133, - 197, 134, 0, 27, 133, 197, 134, 0, 28, 133, - 197, 134, 0, 29, 133, 197, 134, 0, 30, 133, - 197, 134, 0, 31, 133, 197, 134, 0, 32, 133, - 197, 137, 197, 134, 0, 33, 133, 197, 137, 197, - 134, 0, 34, 133, 197, 137, 197, 134, 0, 23, - 133, 197, 134, 0, 3, 0, 9, 0, 10, 0, - 11, 0, 105, 0, 106, 0, 107, 0, 4, 0, - 4, 140, 138, 197, 139, 0, 4, 133, 197, 134, - 0, 136, 4, 133, 134, 0, 4, 164, 0, 4, - 133, 197, 134, 164, 0, 4, 135, 4, 0, 4, - 133, 197, 134, 135, 4, 0, 4, 135, 4, 164, - 0, 4, 133, 197, 134, 135, 4, 164, 0, 104, - 131, 5, 137, 197, 132, 0, 200, 0, 122, 199, - 0, 121, 199, 0, 199, 122, 199, 0, 199, 121, - 199, 0, 138, 197, 137, 197, 137, 197, 137, 197, - 137, 197, 139, 0, 138, 197, 137, 197, 137, 197, - 137, 197, 139, 0, 138, 197, 137, 197, 137, 197, - 139, 0, 131, 197, 137, 197, 137, 197, 132, 0, - 202, 0, 201, 137, 202, 0, 197, 0, 203, 0, - 138, 139, 0, 138, 204, 139, 0, 122, 138, 204, - 139, 0, 197, 123, 138, 204, 139, 0, 122, 203, - 0, 197, 123, 203, 0, 197, 8, 197, 0, 197, - 8, 197, 8, 197, 0, 43, 138, 197, 139, 0, - 168, 0, 171, 0, 177, 0, 4, 133, 134, 0, - 4, 133, 138, 204, 139, 134, 0, 197, 0, 203, - 0, 204, 137, 197, 0, 204, 137, 203, 0, 138, - 197, 137, 197, 137, 197, 137, 197, 139, 0, 138, - 197, 137, 197, 137, 197, 139, 0, 4, 0, 4, - 135, 91, 135, 4, 0, 138, 207, 139, 0, 4, - 133, 197, 134, 135, 92, 0, 205, 0, 207, 137, - 205, 0, 209, 0, 4, 0, 5, 0, 42, 0, - 37, 131, 208, 137, 208, 132, 0, 38, 131, 208, - 132, 0, 39, 131, 208, 132, 0, 36, 131, 208, - 132, 0, 36, 131, 208, 137, 204, 132, 0, 36, - 131, 4, 135, 4, 132, 0, 36, 131, 4, 133, - 197, 134, 135, 4, 132, 0 -}; +#define YYSIZE_MAXIMUM ((YYSIZE_T) -1) + +#ifndef YY_ +# if 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 -#if YYDEBUG != 0 -static const short yyrline[] = { 0, - 143, 145, 150, 152, 155, 157, 158, 159, 160, 161, - 162, 163, 164, 165, 166, 167, 168, 169, 170, 173, - 178, 184, 190, 205, 218, 246, 254, 263, 271, 272, - 273, 274, 275, 276, 279, 282, 286, 289, 293, 484, - 502, 512, 518, 525, 533, 539, 545, 552, 560, 566, - 572, 582, 587, 591, 600, 602, 603, 604, 605, 608, - 610, 613, 648, 687, 741, 758, 776, 787, 804, 811, - 825, 842, 868, 895, 909, 926, 940, 957, 977, 1000, - 1010, 1024, 1029, 1037, 1063, 1079, 1108, 1139, 1161, 1179, - 1197, 1215, 1241, 1259, 1285, 1305, 1329, 1353, 1379, 1396, - 1415, 1433, 1472, 1477, 1482, 1488, 1510, 1532, 1548, 1568, - 1585, 1602, 1622, 1628, 1633, 1638, 1645, 1647, 1648, 1651, - 1656, 1660, 1683, 1706, 1729, 1756, 1769, 1775, 1781, 1792, - 1802, 1812, 1828, 1846, 1860, 1867, 1873, 1882, 1895, 1946, - 1961, 1972, 1992, 2002, 2024, 2028, 2033, 2038, 2048, 2065, - 2081, 2107, 2134, 2166, 2173, 2178, 2184, 2188, 2196, 2205, - 2213, 2221, 2225, 2233, 2237, 2245, 2249, 2257, 2261, 2268, - 2272, 2284, 2291, 2298, 2305, 2312, 2319, 2326, 2333, 2340, - 2347, 2351, 2358, 2362, 2369, 2373, 2380, 2384, 2391, 2395, - 2402, 2406, 2413, 2417, 2424, 2428, 2435, 2439, 2449, 2453, - 2458, 2468, 2490, 2514, 2518, 2541, 2560, 2578, 2596, 2625, - 2660, 2665, 2692, 2706, 2724, 2731, 2737, 2740, 2748, 2758, - 2760, 2761, 2762, 2763, 2764, 2765, 2766, 2767, 2774, 2775, - 2776, 2777, 2778, 2779, 2780, 2781, 2782, 2783, 2784, 2785, - 2786, 2787, 2788, 2789, 2790, 2791, 2792, 2793, 2794, 2795, - 2796, 2797, 2798, 2799, 2800, 2801, 2802, 2803, 2804, 2805, - 2807, 2808, 2809, 2810, 2811, 2812, 2813, 2814, 2815, 2816, - 2817, 2818, 2819, 2820, 2821, 2822, 2823, 2824, 2825, 2826, - 2827, 2832, 2837, 2838, 2839, 2840, 2841, 2842, 2846, 2862, - 2877, 2897, 2911, 2924, 2947, 2965, 2983, 3001, 3019, 3026, - 3031, 3035, 3039, 3043, 3049, 3054, 3058, 3062, 3068, 3074, - 3081, 3087, 3091, 3096, 3100, 3108, 3118, 3127, 3135, 3141, - 3152, 3172, 3182, 3192, 3202, 3219, 3245, 3251, 3255, 3259, - 3271, 3276, 3288, 3295, 3316, 3321, 3335, 3341, 3347, 3352, - 3358, 3363, 3371, 3379, 3393, 3407, 3411, 3430, 3452 -}; +/* 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)) -#if YYDEBUG != 0 || defined (YYERROR_VERBOSE) - -static const char * const yytname[] = { "$","error","$undefined.","tDOUBLE", -"tSTRING","tBIGSTR","tEND","tAFFECT","tDOTS","tPi","tMPI_Rank","tMPI_Size","tEuclidian", -"tCoordinates","tExp","tLog","tLog10","tSqrt","tSin","tAsin","tCos","tAcos", -"tTan","tRand","tAtan","tAtan2","tSinh","tCosh","tTanh","tFabs","tFloor","tCeil", -"tFmod","tModulo","tHypot","tPrintf","tSprintf","tStrCat","tStrPrefix","tStrRelative", -"tBoundingBox","tDraw","tToday","tPoint","tCircle","tEllipse","tLine","tSphere", -"tPolarSphere","tSurface","tSpline","tVolume","tCharacteristic","tLength","tParametric", -"tElliptic","tPlane","tRuled","tTransfinite","tComplex","tPhysical","tUsing", -"tBump","tProgression","tPlugin","tRotate","tTranslate","tSymmetry","tDilate", -"tExtrude","tDuplicata","tLoop","tRecombine","tDelete","tCoherence","tAttractor", -"tLayers","tHole","tAlias","tAliasWithOptions","tText2D","tText3D","tInterpolationScheme", -"tTime","tGrain","tCombine","tBSpline","tBezier","tNurbs","tOrder","tKnots", -"tColor","tColorTable","tFor","tIn","tEndFor","tIf","tEndIf","tExit","tReturn", -"tCall","tFunction","tShow","tHide","tGetValue","tGMSH_MAJOR_VERSION","tGMSH_MINOR_VERSION", -"tGMSH_PATCH_VERSION","tAFFECTPLUS","tAFFECTMINUS","tAFFECTTIMES","tAFFECTDIVIDE", -"'?'","tOR","tAND","tEQUAL","tNOTEQUAL","'<'","tLESSOREQUAL","'>'","tGREATEROREQUAL", -"'+'","'-'","'*'","'/'","'%'","'!'","tPLUSPLUS","tMINUSMINUS","UNARYPREC","'^'", -"'('","')'","'['","']'","'.'","'#'","','","'{'","'}'","'~'","All","GeoFormatItems", -"GeoFormatItem","SendToFile","Printf","View","Views","ElementCoords","ElementValues", -"Element","@1","@2","Text2DValues","Text2D","@3","Text3DValues","Text3D","@4", -"InterpolationMatrix","Time","@5","Grain","NumericAffectation","NumericIncrement", -"Affectation","PhysicalId","Shape","Transform","MultipleShape","ListOfShapes", -"Duplicata","Delete","Colorify","Visibility","Command","Loop","Extrude","@6", -"@7","@8","@9","@10","@11","@12","@13","@14","@15","@16","@17","@18","@19","ExtrudeParameters", -"ExtrudeParameter","Transfinite","Embedding","Coherence","FExpr","FExpr_Single", -"VExpr","VExpr_Single","RecursiveListOfListOfDouble","ListOfDouble","FExpr_Multi", -"RecursiveListOfDouble","ColorExpr","ListOfColor","RecursiveListOfColor","StringExprVar", -"StringExpr", NULL -}; #endif -static const short yyr1[] = { 0, - 141, 141, 142, 142, 143, 143, 143, 143, 143, 143, - 143, 143, 143, 143, 143, 143, 143, 143, 143, 144, - 144, 145, 145, 145, 145, 146, 146, 147, 147, 147, - 147, 147, 147, 147, 148, 148, 149, 149, 151, 152, - 150, 153, 153, 155, 154, 156, 156, 158, 157, 159, - 159, 161, 160, 162, 163, 163, 163, 163, 163, 164, - 164, 165, 165, 165, 165, 165, 165, 165, 165, 165, - 165, 165, 165, 165, 165, 165, 165, 165, 165, 165, - 165, 166, 166, 167, 167, 167, 167, 167, 167, 167, - 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, - 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, - 167, 167, 168, 168, 168, 168, 169, 169, 169, 170, - 170, 170, 170, 170, 170, 171, 171, 171, 171, 172, - 172, 172, 172, 173, 174, 174, 174, 174, 175, 175, - 175, 175, 175, 175, 175, 175, 175, 175, 176, 176, - 176, 176, 176, 176, 176, 176, 176, 176, 177, 177, - 177, 178, 177, 179, 177, 180, 177, 181, 177, 182, - 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, - 183, 177, 184, 177, 185, 177, 186, 177, 187, 177, - 188, 177, 189, 177, 190, 177, 191, 177, 192, 192, - 193, 193, 193, 193, 193, 194, 194, 194, 194, 194, - 194, 194, 194, 194, 195, 195, 195, 195, 196, 197, - 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, - 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, - 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, - 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, - 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, - 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, - 197, 198, 198, 198, 198, 198, 198, 198, 198, 198, - 198, 198, 198, 198, 198, 198, 198, 198, 198, 199, - 199, 199, 199, 199, 200, 200, 200, 200, 201, 201, - 202, 202, 202, 202, 202, 202, 203, 203, 203, 203, - 203, 203, 203, 203, 203, 203, 204, 204, 204, 204, - 205, 205, 205, 205, 206, 206, 207, 207, 208, 208, - 209, 209, 209, 209, 209, 209, 209, 209, 209 +/* YYFINAL -- State number of the termination state. */ +#define YYFINAL 5 +/* YYLAST -- Last index in YYTABLE. */ +#define YYLAST 6566 + +/* YYNTOKENS -- Number of terminals. */ +#define YYNTOKENS 146 +/* YYNNTS -- Number of nonterminals. */ +#define YYNNTS 70 +/* YYNRULES -- Number of rules. */ +#define YYNRULES 354 +/* YYNRULES -- Number of states. */ +#define YYNSTATES 1260 + +/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ +#define YYUNDEFTOK 2 +#define YYMAXUTOK 380 + +#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, 131, 2, 141, 2, 130, 2, 2, + 136, 137, 128, 126, 142, 127, 140, 129, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, + 122, 2, 123, 117, 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, 138, 2, 139, 135, 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, 143, 2, 144, 145, 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, 118, 119, 120, 121, 124, 125, 132, 133, + 134 }; -static const short yyr2[] = { 0, - 1, 2, 0, 2, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 2, 5, 7, 7, 9, 6, 8, 0, 2, 2, - 2, 2, 2, 2, 1, 3, 1, 3, 0, 0, - 10, 1, 3, 0, 13, 1, 3, 0, 15, 8, - 14, 0, 6, 6, 1, 1, 1, 1, 1, 1, - 1, 4, 7, 9, 6, 6, 3, 6, 4, 6, - 9, 6, 9, 5, 8, 8, 11, 6, 9, 9, - 9, 1, 1, 7, 8, 6, 6, 6, 7, 7, - 7, 9, 7, 9, 17, 7, 7, 11, 8, 8, - 8, 8, 3, 4, 10, 7, 7, 8, 8, 8, - 7, 8, 5, 11, 5, 9, 1, 1, 1, 0, - 2, 6, 6, 6, 6, 4, 6, 6, 6, 4, - 6, 3, 4, 5, 3, 3, 4, 4, 3, 7, - 7, 3, 7, 3, 2, 2, 15, 2, 6, 8, - 8, 10, 1, 2, 1, 3, 4, 1, 5, 11, - 13, 0, 7, 0, 13, 0, 15, 0, 6, 0, - 10, 8, 8, 8, 12, 12, 12, 14, 14, 14, - 0, 12, 0, 12, 0, 12, 0, 16, 0, 16, - 0, 16, 0, 18, 0, 18, 0, 18, 1, 2, - 5, 7, 9, 2, 9, 6, 9, 9, 8, 9, - 8, 8, 6, 4, 10, 10, 10, 10, 2, 1, - 3, 2, 2, 2, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 5, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, - 4, 4, 4, 4, 4, 4, 6, 6, 6, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 6, 4, 4, 4, 4, 4, 4, 6, 6, 6, - 4, 1, 1, 1, 1, 1, 1, 1, 1, 5, - 4, 4, 2, 5, 3, 6, 4, 7, 6, 1, - 2, 2, 3, 3, 11, 9, 7, 7, 1, 3, - 1, 1, 2, 3, 4, 5, 2, 3, 3, 5, - 4, 1, 1, 1, 3, 6, 1, 1, 3, 3, - 9, 7, 1, 5, 3, 6, 1, 3, 1, 1, - 1, 1, 6, 4, 4, 4, 6, 6, 9 +#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, + 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, + 40, 42, 44, 47, 53, 61, 69, 79, 86, 95, + 96, 99, 102, 105, 108, 111, 114, 116, 120, 122, + 126, 127, 128, 139, 141, 145, 146, 160, 162, 166, + 167, 183, 192, 207, 208, 215, 222, 224, 226, 228, + 230, 232, 234, 236, 241, 249, 259, 266, 273, 277, + 284, 289, 296, 306, 313, 323, 329, 338, 347, 359, + 366, 376, 386, 396, 398, 400, 408, 417, 427, 436, + 446, 455, 461, 468, 475, 483, 491, 499, 509, 517, + 527, 545, 553, 561, 573, 582, 591, 600, 609, 613, + 618, 629, 637, 645, 654, 663, 672, 680, 689, 695, + 707, 713, 723, 725, 727, 729, 730, 733, 740, 747, + 754, 761, 766, 773, 780, 787, 792, 799, 803, 808, + 814, 818, 822, 827, 832, 836, 844, 852, 856, 864, + 868, 871, 874, 890, 893, 900, 909, 918, 929, 931, + 934, 936, 940, 945, 947, 953, 965, 979, 980, 988, + 989, 1003, 1004, 1020, 1021, 1028, 1029, 1040, 1049, 1058, + 1067, 1080, 1093, 1106, 1121, 1136, 1151, 1152, 1165, 1166, + 1179, 1180, 1193, 1194, 1211, 1212, 1229, 1230, 1247, 1248, + 1267, 1268, 1287, 1288, 1307, 1309, 1312, 1318, 1326, 1336, + 1339, 1349, 1356, 1366, 1376, 1385, 1395, 1404, 1413, 1420, + 1425, 1436, 1447, 1458, 1469, 1472, 1474, 1478, 1481, 1484, + 1487, 1491, 1495, 1499, 1503, 1507, 1511, 1515, 1519, 1523, + 1527, 1531, 1535, 1539, 1543, 1549, 1554, 1559, 1564, 1569, + 1574, 1579, 1584, 1589, 1594, 1599, 1606, 1611, 1616, 1621, + 1626, 1631, 1636, 1643, 1650, 1657, 1662, 1667, 1672, 1677, + 1682, 1687, 1692, 1697, 1702, 1707, 1712, 1719, 1724, 1729, + 1734, 1739, 1744, 1749, 1756, 1763, 1770, 1775, 1777, 1779, + 1781, 1783, 1785, 1787, 1789, 1791, 1797, 1802, 1807, 1810, + 1816, 1820, 1827, 1832, 1840, 1847, 1849, 1852, 1855, 1859, + 1863, 1875, 1885, 1893, 1901, 1903, 1907, 1909, 1911, 1914, + 1918, 1923, 1929, 1932, 1936, 1940, 1946, 1951, 1953, 1955, + 1957, 1961, 1968, 1970, 1972, 1976, 1980, 1990, 1998, 2000, + 2006, 2010, 2017, 2019, 2023, 2025, 2027, 2029, 2031, 2038, + 2043, 2048, 2053, 2060, 2067 }; -static const short yydefact[] = { 0, - 0, 1, 2, 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, 153, 0, 158, 0, 155, - 0, 0, 0, 0, 4, 6, 5, 7, 8, 9, - 10, 11, 12, 13, 19, 18, 14, 15, 16, 17, - 282, 289, 341, 55, 283, 284, 285, 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, 342, 0, 286, 287, 288, 56, 57, 58, - 59, 0, 0, 0, 60, 61, 0, 0, 0, 0, - 0, 0, 0, 220, 0, 0, 0, 0, 146, 0, - 148, 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, 300, 0, 0, 0, 0, - 0, 0, 120, 0, 0, 120, 0, 0, 120, 219, - 0, 0, 0, 0, 0, 0, 0, 0, 333, 0, - 0, 0, 0, 0, 145, 0, 154, 340, 341, 120, - 0, 339, 120, 0, 0, 0, 0, 0, 293, 0, - 28, 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, 289, - 223, 222, 224, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 67, 142, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 139, - 103, 0, 0, 0, 0, 289, 0, 0, 322, 323, - 324, 327, 328, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 311, 0, 312, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 302, 301, 0, 0, 0, - 0, 120, 120, 0, 0, 0, 0, 0, 0, 0, - 0, 168, 0, 120, 0, 0, 0, 0, 132, 0, - 0, 0, 0, 0, 0, 144, 0, 0, 0, 0, - 0, 120, 0, 0, 0, 156, 0, 135, 0, 136, - 0, 0, 295, 0, 0, 0, 69, 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, 340, - 0, 0, 0, 0, 0, 0, 221, 0, 0, 0, - 0, 55, 0, 0, 0, 0, 0, 62, 0, 238, - 237, 235, 236, 231, 233, 232, 234, 226, 225, 227, - 228, 229, 230, 104, 0, 0, 0, 0, 0, 0, - 222, 317, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 313, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 82, 83, 0, 0, 0, 0, 0, 0, - 0, 304, 303, 119, 0, 118, 117, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 121, 0, - 0, 162, 0, 126, 214, 0, 133, 0, 130, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 157, 137, 138, 0, 291, 297, 0, 28, 39, - 0, 0, 0, 52, 0, 0, 29, 30, 31, 32, - 33, 34, 240, 261, 241, 262, 242, 263, 243, 264, - 244, 265, 245, 266, 246, 267, 247, 268, 248, 269, - 260, 281, 249, 270, 0, 0, 251, 272, 252, 273, - 253, 274, 254, 275, 255, 276, 256, 277, 0, 0, - 0, 0, 0, 0, 0, 0, 346, 0, 0, 344, - 345, 0, 0, 0, 0, 0, 55, 0, 0, 0, - 0, 0, 74, 0, 0, 0, 0, 292, 0, 22, - 20, 0, 0, 0, 0, 325, 0, 0, 319, 227, - 318, 329, 330, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 314, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 113, 115, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 199, 0, 159, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 134, 0, 0, - 0, 0, 294, 0, 290, 0, 0, 0, 0, 0, - 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 291, 65, 66, 0, - 0, 0, 0, 0, 68, 70, 72, 0, 0, 337, - 0, 78, 239, 21, 0, 0, 0, 0, 0, 321, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 315, 0, 88, 0, 0, 0, - 0, 0, 206, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 120, 0, 0, 0, - 0, 0, 0, 0, 204, 0, 0, 169, 200, 0, - 0, 127, 213, 131, 86, 87, 128, 129, 0, 0, - 0, 334, 0, 0, 0, 149, 141, 296, 140, 0, - 0, 0, 0, 0, 309, 0, 0, 250, 271, 257, - 278, 258, 279, 259, 280, 0, 348, 347, 343, 299, - 0, 55, 0, 0, 0, 0, 63, 0, 0, 0, - 335, 23, 24, 0, 0, 84, 0, 320, 0, 91, - 0, 93, 0, 0, 89, 0, 0, 106, 107, 0, - 0, 90, 111, 316, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 143, 0, - 0, 0, 0, 120, 170, 0, 181, 0, 183, 0, - 185, 0, 0, 0, 0, 311, 0, 0, 0, 0, - 163, 96, 97, 0, 0, 0, 0, 298, 27, 0, - 35, 0, 0, 0, 0, 0, 37, 0, 0, 0, - 0, 0, 75, 0, 0, 76, 0, 338, 0, 0, - 326, 0, 0, 0, 99, 0, 0, 108, 0, 0, - 0, 211, 101, 102, 0, 0, 0, 209, 212, 110, - 85, 100, 109, 112, 0, 0, 0, 308, 0, 307, - 0, 0, 0, 172, 0, 0, 173, 0, 0, 174, - 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, - 0, 0, 332, 0, 151, 150, 40, 0, 0, 0, - 310, 0, 0, 0, 0, 0, 64, 71, 73, 0, - 79, 0, 25, 0, 0, 92, 94, 0, 0, 0, - 0, 0, 208, 207, 210, 80, 81, 120, 0, 116, - 0, 0, 0, 0, 0, 0, 0, 201, 0, 0, - 120, 0, 0, 0, 0, 0, 36, 0, 0, 0, - 38, 53, 54, 349, 0, 336, 0, 215, 216, 217, - 218, 105, 0, 0, 0, 306, 171, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, - 0, 0, 331, 152, 0, 0, 0, 0, 77, 0, - 0, 114, 0, 187, 0, 0, 189, 0, 0, 191, - 0, 0, 0, 202, 0, 160, 0, 120, 98, 0, - 44, 0, 50, 0, 0, 0, 305, 175, 0, 0, - 182, 176, 0, 0, 184, 177, 0, 0, 186, 0, - 0, 0, 166, 0, 0, 0, 0, 0, 0, 0, - 193, 0, 195, 0, 197, 203, 205, 165, 161, 0, - 41, 0, 48, 0, 0, 0, 0, 178, 0, 0, - 179, 0, 0, 180, 0, 0, 0, 42, 0, 0, - 147, 0, 0, 0, 0, 0, 0, 0, 167, 0, - 0, 0, 0, 0, 188, 0, 190, 0, 192, 0, - 43, 45, 0, 46, 0, 95, 0, 0, 0, 0, - 0, 51, 194, 196, 198, 47, 49, 0, 0, 0 +/* YYRHS -- A `-1'-separated list of the rules' RHS. */ +static const yytype_int16 yyrhs[] = +{ + 147, 0, -1, 148, -1, 1, 6, -1, -1, 148, + 149, -1, 152, -1, 151, -1, 171, -1, 173, -1, + 174, -1, 177, -1, 178, -1, 179, -1, 180, -1, + 183, -1, 200, -1, 201, -1, 202, -1, 182, -1, + 181, -1, 123, -1, 123, 123, -1, 35, 136, 5, + 137, 6, -1, 35, 136, 5, 137, 150, 214, 6, + -1, 35, 136, 5, 142, 210, 137, 6, -1, 35, + 136, 5, 142, 210, 137, 150, 214, 6, -1, 4, + 5, 143, 153, 144, 6, -1, 4, 5, 4, 205, + 143, 153, 144, 6, -1, -1, 153, 156, -1, 153, + 160, -1, 153, 163, -1, 153, 165, -1, 153, 166, + -1, 153, 168, -1, 203, -1, 154, 142, 203, -1, + 203, -1, 155, 142, 203, -1, -1, -1, 4, 157, + 136, 154, 137, 158, 143, 155, 144, 6, -1, 214, + -1, 159, 142, 214, -1, -1, 80, 136, 203, 142, + 203, 142, 203, 137, 161, 143, 159, 144, 6, -1, + 214, -1, 162, 142, 214, -1, -1, 81, 136, 203, + 142, 203, 142, 203, 142, 203, 137, 164, 143, 162, + 144, 6, -1, 82, 143, 207, 144, 143, 207, 144, + 6, -1, 82, 143, 207, 144, 143, 207, 144, 143, + 207, 144, 143, 207, 144, 6, -1, -1, 83, 167, + 143, 155, 144, 6, -1, 84, 136, 203, 137, 208, + 6, -1, 7, -1, 116, -1, 115, -1, 114, -1, + 113, -1, 134, -1, 133, -1, 4, 169, 203, 6, + -1, 4, 138, 203, 139, 169, 203, 6, -1, 4, + 138, 143, 210, 144, 139, 169, 208, 6, -1, 4, + 138, 139, 7, 208, 6, -1, 4, 138, 139, 116, + 208, 6, -1, 4, 170, 6, -1, 4, 138, 203, + 139, 170, 6, -1, 4, 7, 215, 6, -1, 4, + 140, 4, 7, 215, 6, -1, 4, 138, 203, 139, + 140, 4, 7, 215, 6, -1, 4, 140, 4, 169, + 203, 6, -1, 4, 138, 203, 139, 140, 4, 169, + 203, 6, -1, 4, 140, 4, 170, 6, -1, 4, + 138, 203, 139, 140, 4, 170, 6, -1, 4, 140, + 91, 140, 4, 7, 211, 6, -1, 4, 138, 203, + 139, 140, 91, 140, 4, 7, 211, 6, -1, 4, + 140, 92, 7, 212, 6, -1, 4, 138, 203, 139, + 140, 92, 7, 212, 6, -1, 64, 136, 4, 137, + 140, 4, 7, 203, 6, -1, 64, 136, 4, 137, + 140, 4, 7, 215, 6, -1, 203, -1, 215, -1, + 43, 136, 203, 137, 7, 205, 6, -1, 60, 43, + 136, 172, 137, 7, 208, 6, -1, 75, 43, 99, + 136, 203, 137, 7, 208, 6, -1, 100, 99, 136, + 203, 137, 7, 208, 6, -1, 106, 99, 136, 203, + 137, 7, 5, 208, 6, -1, 101, 99, 136, 203, + 137, 7, 5, 6, -1, 52, 53, 99, 208, 6, + -1, 75, 43, 208, 7, 208, 6, -1, 52, 53, + 208, 7, 203, 6, -1, 46, 136, 203, 137, 7, + 208, 6, -1, 50, 136, 203, 137, 7, 208, 6, + -1, 44, 136, 203, 137, 7, 208, 6, -1, 44, + 136, 203, 137, 7, 208, 56, 205, 6, -1, 45, + 136, 203, 137, 7, 208, 6, -1, 45, 136, 203, + 137, 7, 208, 56, 205, 6, -1, 54, 136, 203, + 137, 7, 143, 203, 142, 203, 142, 5, 142, 5, + 142, 5, 144, 6, -1, 86, 136, 203, 137, 7, + 208, 6, -1, 87, 136, 203, 137, 7, 208, 6, + -1, 88, 136, 203, 137, 7, 208, 90, 208, 89, + 203, 6, -1, 46, 71, 136, 203, 137, 7, 208, + 6, -1, 60, 46, 136, 172, 137, 7, 208, 6, + -1, 56, 49, 136, 203, 137, 7, 208, 6, -1, + 57, 49, 136, 203, 137, 7, 208, 6, -1, 12, + 13, 6, -1, 13, 49, 203, 6, -1, 54, 49, + 136, 203, 137, 7, 5, 5, 5, 6, -1, 47, + 136, 203, 137, 7, 208, 6, -1, 48, 136, 203, + 137, 7, 208, 6, -1, 49, 71, 136, 203, 137, + 7, 208, 6, -1, 60, 49, 136, 172, 137, 7, + 208, 6, -1, 59, 51, 136, 203, 137, 7, 208, + 6, -1, 51, 136, 203, 137, 7, 208, 6, -1, + 60, 51, 136, 172, 137, 7, 208, 6, -1, 66, + 205, 143, 175, 144, -1, 65, 143, 205, 142, 205, + 142, 203, 144, 143, 175, 144, -1, 67, 205, 143, + 175, 144, -1, 68, 143, 205, 142, 203, 144, 143, + 175, 144, -1, 177, -1, 176, -1, 174, -1, -1, + 176, 173, -1, 176, 43, 143, 210, 144, 6, -1, + 176, 46, 143, 210, 144, 6, -1, 176, 49, 143, + 210, 144, 6, -1, 176, 51, 143, 210, 144, 6, + -1, 70, 143, 176, 144, -1, 70, 4, 138, 203, + 139, 6, -1, 78, 4, 138, 203, 139, 6, -1, + 79, 4, 138, 203, 139, 6, -1, 73, 143, 176, + 144, -1, 73, 4, 138, 203, 139, 6, -1, 73, + 4, 6, -1, 73, 4, 4, 6, -1, 91, 211, + 143, 176, 144, -1, 107, 214, 6, -1, 108, 214, + 6, -1, 107, 143, 176, 144, -1, 108, 143, 176, + 144, -1, 4, 215, 6, -1, 4, 4, 138, 203, + 139, 214, 6, -1, 4, 4, 4, 138, 203, 139, + 6, -1, 4, 203, 6, -1, 64, 136, 4, 137, + 140, 4, 6, -1, 85, 4, 6, -1, 98, 6, + -1, 40, 6, -1, 40, 143, 203, 142, 203, 142, + 203, 142, 203, 142, 203, 142, 203, 144, 6, -1, + 41, 6, -1, 93, 136, 203, 8, 203, 137, -1, + 93, 136, 203, 8, 203, 8, 203, 137, -1, 93, + 4, 94, 143, 203, 8, 203, 144, -1, 93, 4, + 94, 143, 203, 8, 203, 8, 203, 144, -1, 95, + -1, 106, 4, -1, 104, -1, 105, 4, 6, -1, + 96, 136, 203, 137, -1, 97, -1, 69, 205, 143, + 176, 144, -1, 69, 143, 205, 142, 205, 142, 203, + 144, 143, 176, 144, -1, 69, 143, 205, 142, 205, + 142, 205, 142, 203, 144, 143, 176, 144, -1, -1, + 69, 205, 143, 176, 184, 198, 144, -1, -1, 69, + 143, 205, 142, 205, 142, 203, 144, 143, 176, 185, + 198, 144, -1, -1, 69, 143, 205, 142, 205, 142, + 205, 142, 203, 144, 143, 176, 186, 198, 144, -1, + -1, 69, 143, 176, 187, 198, 144, -1, -1, 69, + 4, 138, 203, 139, 143, 176, 188, 198, 144, -1, + 69, 43, 143, 203, 142, 205, 144, 6, -1, 69, + 46, 143, 203, 142, 205, 144, 6, -1, 69, 49, + 143, 203, 142, 205, 144, 6, -1, 69, 43, 143, + 203, 142, 205, 142, 205, 142, 203, 144, 6, -1, + 69, 46, 143, 203, 142, 205, 142, 205, 142, 203, + 144, 6, -1, 69, 49, 143, 203, 142, 205, 142, + 205, 142, 203, 144, 6, -1, 69, 43, 143, 203, + 142, 205, 142, 205, 142, 205, 142, 203, 144, 6, + -1, 69, 46, 143, 203, 142, 205, 142, 205, 142, + 205, 142, 203, 144, 6, -1, 69, 49, 143, 203, + 142, 205, 142, 205, 142, 205, 142, 203, 144, 6, + -1, -1, 69, 43, 143, 203, 142, 205, 144, 189, + 143, 198, 144, 6, -1, -1, 69, 46, 143, 203, + 142, 205, 144, 190, 143, 198, 144, 6, -1, -1, + 69, 49, 143, 203, 142, 205, 144, 191, 143, 198, + 144, 6, -1, -1, 69, 43, 143, 203, 142, 205, + 142, 205, 142, 203, 144, 192, 143, 198, 144, 6, + -1, -1, 69, 46, 143, 203, 142, 205, 142, 205, + 142, 203, 144, 193, 143, 198, 144, 6, -1, -1, + 69, 49, 143, 203, 142, 205, 142, 205, 142, 203, + 144, 194, 143, 198, 144, 6, -1, -1, 69, 43, + 143, 203, 142, 205, 142, 205, 142, 205, 142, 203, + 144, 195, 143, 198, 144, 6, -1, -1, 69, 46, + 143, 203, 142, 205, 142, 205, 142, 205, 142, 203, + 144, 196, 143, 198, 144, 6, -1, -1, 69, 49, + 143, 203, 142, 205, 142, 205, 142, 205, 142, 203, + 144, 197, 143, 198, 144, 6, -1, 199, -1, 198, + 199, -1, 76, 143, 203, 144, 6, -1, 76, 143, + 208, 142, 208, 144, 6, -1, 76, 143, 208, 142, + 208, 142, 208, 144, 6, -1, 72, 6, -1, 77, + 136, 203, 137, 7, 208, 61, 203, 6, -1, 58, + 46, 208, 7, 203, 6, -1, 58, 46, 208, 7, + 203, 61, 63, 203, 6, -1, 58, 46, 208, 7, + 203, 61, 62, 203, 6, -1, 58, 49, 143, 203, + 144, 7, 208, 6, -1, 58, 49, 143, 203, 144, + 7, 208, 4, 6, -1, 55, 49, 143, 203, 144, + 7, 208, 6, -1, 58, 51, 143, 203, 144, 7, + 208, 6, -1, 72, 49, 208, 7, 203, 6, -1, + 72, 49, 208, 6, -1, 43, 143, 210, 144, 94, + 49, 143, 203, 144, 6, -1, 46, 143, 210, 144, + 94, 49, 143, 203, 144, 6, -1, 46, 143, 210, + 144, 94, 51, 143, 203, 144, 6, -1, 49, 143, + 210, 144, 94, 51, 143, 203, 144, 6, -1, 74, + 6, -1, 204, -1, 136, 203, 137, -1, 127, 203, + -1, 126, 203, -1, 131, 203, -1, 203, 127, 203, + -1, 203, 126, 203, -1, 203, 128, 203, -1, 203, + 129, 203, -1, 203, 130, 203, -1, 203, 135, 203, + -1, 203, 122, 203, -1, 203, 123, 203, -1, 203, + 125, 203, -1, 203, 124, 203, -1, 203, 121, 203, + -1, 203, 120, 203, -1, 203, 119, 203, -1, 203, + 118, 203, -1, 203, 117, 203, 8, 203, -1, 14, + 136, 203, 137, -1, 15, 136, 203, 137, -1, 16, + 136, 203, 137, -1, 17, 136, 203, 137, -1, 18, + 136, 203, 137, -1, 19, 136, 203, 137, -1, 20, + 136, 203, 137, -1, 21, 136, 203, 137, -1, 22, + 136, 203, 137, -1, 24, 136, 203, 137, -1, 25, + 136, 203, 142, 203, 137, -1, 26, 136, 203, 137, + -1, 27, 136, 203, 137, -1, 28, 136, 203, 137, + -1, 29, 136, 203, 137, -1, 30, 136, 203, 137, + -1, 31, 136, 203, 137, -1, 32, 136, 203, 142, + 203, 137, -1, 33, 136, 203, 142, 203, 137, -1, + 34, 136, 203, 142, 203, 137, -1, 23, 136, 203, + 137, -1, 14, 138, 203, 139, -1, 15, 138, 203, + 139, -1, 16, 138, 203, 139, -1, 17, 138, 203, + 139, -1, 18, 138, 203, 139, -1, 19, 138, 203, + 139, -1, 20, 138, 203, 139, -1, 21, 138, 203, + 139, -1, 22, 138, 203, 139, -1, 24, 138, 203, + 139, -1, 25, 138, 203, 142, 203, 139, -1, 26, + 138, 203, 139, -1, 27, 138, 203, 139, -1, 28, + 138, 203, 139, -1, 29, 138, 203, 139, -1, 30, + 138, 203, 139, -1, 31, 138, 203, 139, -1, 32, + 138, 203, 142, 203, 139, -1, 33, 138, 203, 142, + 203, 139, -1, 34, 138, 203, 142, 203, 139, -1, + 23, 138, 203, 139, -1, 3, -1, 9, -1, 10, + -1, 11, -1, 110, -1, 111, -1, 112, -1, 4, + -1, 4, 145, 143, 203, 144, -1, 4, 138, 203, + 139, -1, 141, 4, 138, 139, -1, 4, 170, -1, + 4, 138, 203, 139, 170, -1, 4, 140, 4, -1, + 4, 138, 203, 139, 140, 4, -1, 4, 140, 4, + 170, -1, 4, 138, 203, 139, 140, 4, 170, -1, + 109, 136, 5, 142, 203, 137, -1, 206, -1, 127, + 205, -1, 126, 205, -1, 205, 127, 205, -1, 205, + 126, 205, -1, 143, 203, 142, 203, 142, 203, 142, + 203, 142, 203, 144, -1, 143, 203, 142, 203, 142, + 203, 142, 203, 144, -1, 143, 203, 142, 203, 142, + 203, 144, -1, 136, 203, 142, 203, 142, 203, 137, + -1, 208, -1, 207, 142, 208, -1, 203, -1, 209, + -1, 143, 144, -1, 143, 210, 144, -1, 127, 143, + 210, 144, -1, 203, 128, 143, 210, 144, -1, 127, + 209, -1, 203, 128, 209, -1, 203, 8, 203, -1, + 203, 8, 203, 8, 203, -1, 43, 143, 203, 144, + -1, 174, -1, 177, -1, 183, -1, 4, 138, 139, + -1, 4, 138, 143, 210, 144, 139, -1, 203, -1, + 209, -1, 210, 142, 203, -1, 210, 142, 209, -1, + 143, 203, 142, 203, 142, 203, 142, 203, 144, -1, + 143, 203, 142, 203, 142, 203, 144, -1, 4, -1, + 4, 140, 91, 140, 4, -1, 143, 213, 144, -1, + 4, 138, 203, 139, 140, 92, -1, 211, -1, 213, + 142, 211, -1, 215, -1, 4, -1, 5, -1, 42, + -1, 37, 136, 214, 142, 214, 137, -1, 38, 136, + 214, 137, -1, 39, 136, 214, 137, -1, 36, 136, + 214, 137, -1, 36, 136, 214, 142, 210, 137, -1, + 36, 136, 4, 140, 4, 137, -1, 36, 136, 4, + 138, 203, 139, 140, 4, 137, -1 }; -static const short yydefgoto[] = { 1228, - 2, 55, 642, 56, 57, 386, 940, 946, 567, 727, - 1066, 1187, 568, 1155, 1213, 569, 1189, 570, 571, 731, - 572, 121, 209, 58, 502, 529, 299, 515, 516, 300, - 62, 63, 64, 65, 66, 301, 705, 1127, 1170, 530, - 992, 995, 998, 1001, 1139, 1143, 1147, 1179, 1182, 1185, - 701, 702, 68, 69, 70, 318, 124, 336, 166, 844, - 845, 320, 304, 191, 637, 761, 201, 202 +/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ +static const yytype_uint16 yyrline[] = +{ + 0, 146, 146, 147, 152, 154, 158, 159, 160, 161, + 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, + 172, 176, 180, 187, 192, 207, 220, 249, 256, 267, + 273, 274, 275, 276, 277, 278, 282, 284, 289, 291, + 297, 487, 296, 515, 520, 529, 528, 542, 547, 556, + 555, 569, 575, 586, 585, 594, 603, 604, 605, 606, + 607, 611, 612, 619, 650, 689, 743, 760, 778, 789, + 806, 813, 827, 844, 870, 897, 911, 928, 942, 959, + 979, 1002, 1012, 1027, 1031, 1043, 1065, 1082, 1099, 1110, + 1120, 1123, 1131, 1195, 1217, 1235, 1253, 1271, 1297, 1315, + 1341, 1361, 1385, 1409, 1435, 1452, 1471, 1489, 1528, 1533, + 1538, 1544, 1566, 1588, 1604, 1624, 1641, 1658, 1679, 1684, + 1689, 1694, 1702, 1703, 1704, 1709, 1712, 1716, 1739, 1762, + 1785, 1813, 1825, 1831, 1837, 1849, 1858, 1868, 1884, 1903, + 1917, 1923, 1929, 1938, 1952, 2002, 2017, 2032, 2052, 2062, + 2084, 2088, 2093, 2098, 2110, 2125, 2141, 2167, 2194, 2226, + 2233, 2238, 2244, 2248, 2257, 2265, 2273, 2282, 2281, 2294, + 2293, 2306, 2305, 2318, 2317, 2329, 2328, 2344, 2351, 2358, + 2365, 2372, 2379, 2386, 2393, 2400, 2408, 2407, 2419, 2418, + 2430, 2429, 2441, 2440, 2452, 2451, 2463, 2462, 2474, 2473, + 2485, 2484, 2496, 2495, 2510, 2513, 2519, 2528, 2550, 2574, + 2578, 2602, 2620, 2638, 2656, 2685, 2720, 2725, 2752, 2766, + 2785, 2791, 2797, 2800, 2809, 2819, 2820, 2821, 2822, 2823, + 2824, 2825, 2826, 2827, 2834, 2835, 2836, 2837, 2838, 2839, + 2840, 2841, 2842, 2843, 2844, 2845, 2846, 2847, 2848, 2849, + 2850, 2851, 2852, 2853, 2854, 2855, 2856, 2857, 2858, 2859, + 2860, 2861, 2862, 2863, 2864, 2865, 2867, 2868, 2869, 2870, + 2871, 2872, 2873, 2874, 2875, 2876, 2877, 2878, 2879, 2880, + 2881, 2882, 2883, 2884, 2885, 2886, 2887, 2896, 2897, 2898, + 2899, 2900, 2901, 2902, 2906, 2922, 2937, 2957, 2971, 2984, + 3007, 3025, 3043, 3061, 3079, 3087, 3091, 3095, 3099, 3103, + 3110, 3114, 3118, 3122, 3129, 3134, 3142, 3147, 3151, 3156, + 3160, 3168, 3179, 3187, 3195, 3201, 3212, 3232, 3242, 3252, + 3262, 3279, 3306, 3311, 3315, 3319, 3332, 3336, 3348, 3355, + 3377, 3381, 3396, 3401, 3408, 3412, 3419, 3423, 3431, 3439, + 3453, 3467, 3471, 3490, 3512 }; +#endif -static const short yypact[] = { 2752, - 40, 2829,-32768, 1880, 93, 61, -6, 7, 165, -51, - 53, 57, -31, 132, 136, -34, 182, 186, 268, -17, - 276, 363, 375, 490, 288, 750, 202, 267, 382, 382, - 296, 35, 12, 391, 14, 449, 339, 463, 484, 502, - 403, 411, 423, 26, 37,-32768, 428,-32768, 524,-32768, - 560, 573, 21, 29,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768, 20, 31, 548,-32768,-32768,-32768, -104, -69, 128, - 253, 289, 374, 436, 458, 517, 532, 555, 559, 574, - 581, 599, 621, 628, 640, 641, 667, 675, 470, 475, - 485, 488,-32768, 513,-32768,-32768,-32768,-32768,-32768,-32768, --32768, 2175, 2175, 2175,-32768,-32768, 2175, 1674, 11, 576, - 2175, 631, 1947,-32768, 648, 660, 2175, 670,-32768, 2175, --32768, 2175, 2014, 2175, 2175, 552, 2175, 2014, 2175, 2175, - 558, 2014, 2175, 2175, 1284, 566, 2175, 562, 577, 582, - 1284, 578, 583, 593, 594, 598, 614, 617, 749, 382, - 382, 382, 2175, 2175, -33,-32768, 174, 382, 627, 625, - 630, 637, 1845, 393, 634,-32768, 1284, 41,-32768,-32768, - 1284, 1284, 661, 664, 801, 2175, 2175, 2175, 679, 2175, - 680, 723, 2175, 2175,-32768, 824,-32768,-32768,-32768,-32768, - 825,-32768,-32768, 837, 718, 2175, 856, 739,-32768, 382, --32768, 873, 2175, 2175, 2175, 2175, 2175, 2175, 2175, 2175, - 2175, 2175, 2175, 2175, 2175, 2175, 2175, 2175, 2175, 2175, - 2175, 2175, 2175, 2175, 2175, 2175, 2175, 2175, 2175, 2175, - 2175, 2175, 2175, 2175, 2175, 2175, 2175, 2175, 2175, 2175, - 2175, 2175, 2175, 2175, 519, 588, 588, 588, 875, 571, - 751, 751, 751, 5063, 43, 2014, 2842, 69, 748, 877, - 754, 1986,-32768,-32768, 2175, 2175, 2175, 2175, 2175, 2175, - 2175, 2175, 2175, 2175, 2175, 2175, 2175, 2175, 2175,-32768, --32768, 2106, -83, 3596, 5084, 629, 753, 2014,-32768,-32768, --32768, 2507,-32768, 70, 5105, 5126, 2175, 5147, 312, 5168, - 5189, 2175, 506, 5210, 5231, 1414, 1153, 2537, 885,-32768, - 2175, 5252, 2175, 2175, 2175, 886, 2175, 2175, 2175, 2138, - 2138, 2138, 2138, 762, -36,-32768,-32768, 3622, 3648, 382, - 382, 606, 606, 254, 2175, 2175, 2175, 2175, 1845, 1845, - 2175, 2893, 309,-32768, 2175, 690, 68, 889,-32768, 2175, - 1051, 890, 891, 2175, 2175,-32768, 5273, 5294, 5315, 805, - 3674,-32768, 763, 2558, 5336,-32768, 1190,-32768, 1321,-32768, - 2175, 4350, 166, 2175, 441, 10,-32768, 5357, 4373, 5378, - 4396, 5399, 4419, 5420, 4442, 5441, 4465, 5462, 4488, 5483, - 4511, 5504, 4534, 5525, 4557, 5546, 4580, 5567, 4603, 3700, - 3726, 5588, 4626, 5609, 4649, 5630, 4672, 5651, 4695, 5672, - 4718, 5693, 4741, 3752, 3778, 3804, 3830, 3856, 3882, 677, - -60, 765, 772, 774, 768, 2175,-32768, 1284, 1284, 674, - 261, 548, 2175, 901, 904, 32, 776,-32768, 2581, 830, - 1476, 662, 662, 557, 557, 557, 557, 448, 448, 751, - 751, 751, 751,-32768, 64, 2014, 2175, 905, 1709, 2175, - 751,-32768, 2175, 2014, 2014, 817, 906, 909, 5714, 910, - 826, 915, 917, 5735, 831, 919, 920, 2014,-32768, 684, - 1544, 2175, 5756, 921, 2655, 5777, 5798, 2175, 2954, 2982, - 5819, 802, 6071,-32768, 803, 804, 806, 798, 382, 2175, - 2175,-32768,-32768,-32768, 800, 2893,-32768, 818, 2175, 4764, - 3908, 3934, 3960, 3570, 126, 227, 2, 203,-32768, 592, - 382, 1451, 4787,-32768,-32768, 2175,-32768, 4810,-32768, 1284, - 1284, 4833, 4856, 930, 933, 936, 827, 2175, 1702, 2175, - 2175,-32768,-32768,-32768, 4879, 265,-32768, 3010,-32768,-32768, - 832, 833, 823,-32768, 834, 960,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768, 2175, 2175,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 2175, 2175, - 2175, 2175, 2175, 2175, 2175, 963,-32768, 2014, 588,-32768, --32768, 2175, 4902, 962, 965, 835,-32768, 17, 2175, 966, - 967, 2269,-32768, 968, 841, 26, 970,-32768, 2175,-32768, - 858, 588, 326, 3986, 382,-32768, 2014, 3038, 2600, 751, --32768, 2507,-32768, 929, 1284, 1284, 973, 1284, 773, 1284, - 1284, 975, 932, 1284, 1284, 688,-32768, 2014, 2299, 977, - 847, 979, 980, 982, 1522, 983, 984, 999, 1000, 1001, - 1005, 1008, 1016, 371, 4012, 4038,-32768,-32768, 3066, 883, - 382, 382, 382, 2014, 2014, 2014, 2014, 1031, 900, 908, - -24,-32768, 407,-32768, 592, 1034, 2320, 1036, 1037, 1038, - 1039, 1040, 1284, 1284, 1284, 1043, 4064,-32768, 2625, 1811, - 1046, 1045,-32768, 1048,-32768, 15, 925, 2175, 2175, 1284, - 922, 2175,-32768, 5840, 4925, 5861, 4948, 5882, 4971, 5903, - 4994, 5017, 926, 347, 927, 5924, 127,-32768,-32768, 13, - 298, 931, 1054, 2343,-32768,-32768,-32768, 26, 2175,-32768, - 689,-32768, 6071,-32768, 1059, 76, 2175, 77, 698,-32768, - 2175, 934, 63, 152, 1284, 1063, 935, 937, 1064, 1065, - 1284, 939, 1068, 1072,-32768, 699,-32768, 1074, 2175, 1284, - 1284, 1284,-32768, 534, 1284, 1284, 1284, 1284, 1284, 1284, - 1284, 616, 2175, 2175, 2175, 942,-32768, 282, 315, 322, - 702, 707, 710, 711,-32768, 1284, 2175,-32768,-32768, 1845, - -21,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1075, 1076, - 993,-32768, 2175, 2175, 2175,-32768,-32768, 166,-32768, 1079, - 2175, 4090, 4116, 715,-32768, 2175, 5945,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768, 951,-32768,-32768,-32768,-32768, - 1284, 548, 2175, 1081, 1084, 32,-32768, 1083, 5040, 26, --32768,-32768,-32768, 588, 4142,-32768, 956, 6071, 2175,-32768, - 382,-32768, 382, 1085,-32768, 2175, 2175,-32768,-32768, 1086, - 2175,-32768,-32768,-32768, 1088, 4168, 1100, 1103, 1106, 2175, - 2175, 851, 1107, 1109, 1110, 1113, 1115, 1116,-32768, 2138, - 3094, 5966, 2870, 606, 2893, 382, 1117, 382, 1119, 382, - 1121, 1122, 1123, 1124, 1126, 880, 996, 5987, 3122, 461, --32768,-32768,-32768, 1284, 2898, 911, 6008,-32768,-32768, 395, - 6071, 2175, 2175, 1284, 997, 719, 6071, 1284, 1132, 1134, - 1135, 2362,-32768, 1136, 1138,-32768, 1007,-32768, 1139, 2175, --32768, 3150, 169, 188,-32768, 3178, 3206,-32768, 3234, 1142, - 2175,-32768,-32768,-32768, 2389, 2419, 1143,-32768,-32768,-32768, --32768,-32768,-32768,-32768, 2440, 1145, 1015,-32768, 2175,-32768, - 1019, 592, 478,-32768, 1017, 481,-32768, 1021, 483,-32768, - 1022,-32768,-32768,-32768,-32768, 1155, 1284, 1158, 1050, 2175, - 1102, 2175,-32768, 2175,-32768,-32768,-32768, 2175, 4194, 4220, --32768, 1284, 2175, 1183, 1186, 1061,-32768,-32768,-32768, 26, --32768, 1105,-32768, 4246, 1188,-32768,-32768, 1189, 1192, 1193, - 1194, 4272,-32768,-32768,-32768,-32768,-32768, 606, 2926,-32768, - 134, 1845, 592, 1845, 592, 1845, 592,-32768, 722, 1284, --32768, 3262, 2175, 3290, 3318, 1066, 6071, 2175, 2175, 726, - 6071,-32768,-32768,-32768, 1195,-32768, 2175,-32768,-32768,-32768, --32768,-32768, 1200, 1067, 2175,-32768,-32768, 3346, 510, 242, - 3374, 512, 284, 3402, 518, 290, 1284, 1201, 1147, 2271, - 1071, 2463,-32768,-32768, 2175, 6029, 4298, 38,-32768, 4324, - 1073,-32768, 3430, 1205, 2175, 1206, 1207, 2175, 1208, 1209, - 2175, 1210, 1078,-32768, 2175,-32768, 592,-32768,-32768, 727, --32768, 2175,-32768, 1284, 2175, 1219,-32768,-32768, 1087, 3458, --32768,-32768, 1089, 3486,-32768,-32768, 1090, 3514,-32768, 1220, - 2482, 302, 2291, 1223, 1092, 6050, 732, 3542, 1108, 592, - 1237, 592, 1242, 592, 1245,-32768,-32768,-32768,-32768, 592, --32768, 588,-32768, 1114, 1247, 1249, 318,-32768, 1118, 338, --32768, 1125, 341,-32768, 1128, 356, 733,-32768, 1129, 1284, --32768, 1130, 1255, 592, 1256, 592, 1258, 592,-32768, 588, - 1262, 588, 736, 1264,-32768, 399,-32768, 406,-32768, 409, --32768,-32768, 737,-32768, 1265,-32768, 1266, 1267, 1274, 588, - 1275,-32768,-32768,-32768,-32768,-32768,-32768, 1282, 1283,-32768 +#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", "tPi", "tMPI_Rank", "tMPI_Size", "tEuclidian", + "tCoordinates", "tExp", "tLog", "tLog10", "tSqrt", "tSin", "tAsin", + "tCos", "tAcos", "tTan", "tRand", "tAtan", "tAtan2", "tSinh", "tCosh", + "tTanh", "tFabs", "tFloor", "tCeil", "tFmod", "tModulo", "tHypot", + "tPrintf", "tSprintf", "tStrCat", "tStrPrefix", "tStrRelative", + "tBoundingBox", "tDraw", "tToday", "tPoint", "tCircle", "tEllipse", + "tLine", "tSphere", "tPolarSphere", "tSurface", "tSpline", "tVolume", + "tCharacteristic", "tLength", "tParametric", "tElliptic", "tPlane", + "tRuled", "tTransfinite", "tComplex", "tPhysical", "tUsing", "tBump", + "tProgression", "tPlugin", "tRotate", "tTranslate", "tSymmetry", + "tDilate", "tExtrude", "tDuplicata", "tLoop", "tRecombine", "tDelete", + "tCoherence", "tAttractor", "tLayers", "tHole", "tAlias", + "tAliasWithOptions", "tText2D", "tText3D", "tInterpolationScheme", + "tTime", "tGrain", "tCombine", "tBSpline", "tBezier", "tNurbs", "tOrder", + "tKnots", "tColor", "tColorTable", "tFor", "tIn", "tEndFor", "tIf", + "tEndIf", "tExit", "tField", "tThreshold", "tStructured", "tLatLon", + "tGrad", "tReturn", "tCall", "tFunction", "tShow", "tHide", "tGetValue", + "tGMSH_MAJOR_VERSION", "tGMSH_MINOR_VERSION", "tGMSH_PATCH_VERSION", + "tAFFECTDIVIDE", "tAFFECTTIMES", "tAFFECTMINUS", "tAFFECTPLUS", "'?'", + "tOR", "tAND", "tNOTEQUAL", "tEQUAL", "'<'", "'>'", "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", "Grain", "NumericAffectation", "NumericIncrement", + "Affectation", "PhysicalId", "Shape", "Transform", "MultipleShape", + "ListOfShapes", "Duplicata", "Delete", "Colorify", "Visibility", + "Command", "Loop", "Extrude", "@6", "@7", "@8", "@9", "@10", "@11", + "@12", "@13", "@14", "@15", "@16", "@17", "@18", "@19", + "ExtrudeParameters", "ExtrudeParameter", "Transfinite", "Embedding", + "Coherence", "FExpr", "FExpr_Single", "VExpr", "VExpr_Single", + "RecursiveListOfListOfDouble", "ListOfDouble", "FExpr_Multi", + "RecursiveListOfDouble", "ColorExpr", "ListOfColor", + "RecursiveListOfColor", "StringExprVar", "StringExpr", 0 }; +#endif -static const short yypgoto[] = {-32768, --32768,-32768, 489,-32768,-32768, 731,-32768, 180,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768, -251, 4,-32768, 66, 1289, 0, -333, -172, 9, --32768,-32768,-32768,-32768,-32768, 1294,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - -700, -640,-32768,-32768,-32768, -1,-32768, 98,-32768, -999, - -139, 235, 23, -614, 420,-32768, -54, 5 +# 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, 63, 372, 373, + 374, 375, 60, 62, 376, 377, 43, 45, 42, 47, + 37, 33, 378, 379, 380, 94, 40, 41, 91, 93, + 46, 35, 44, 123, 125, 126 +}; +# endif + +/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ +static const yytype_uint8 yyr1[] = +{ + 0, 146, 147, 147, 148, 148, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 150, 150, 151, 151, 151, 151, 152, 152, 153, + 153, 153, 153, 153, 153, 153, 154, 154, 155, 155, + 157, 158, 156, 159, 159, 161, 160, 162, 162, 164, + 163, 165, 165, 167, 166, 168, 169, 169, 169, 169, + 169, 170, 170, 171, 171, 171, 171, 171, 171, 171, + 171, 171, 171, 171, 171, 171, 171, 171, 171, 171, + 171, 171, 171, 172, 172, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, + 173, 173, 173, 173, 173, 173, 173, 173, 174, 174, + 174, 174, 175, 175, 175, 176, 176, 176, 176, 176, + 176, 177, 177, 177, 177, 178, 178, 178, 178, 179, + 180, 180, 180, 180, 181, 181, 181, 181, 181, 181, + 181, 181, 181, 181, 182, 182, 182, 182, 182, 182, + 182, 182, 182, 182, 183, 183, 183, 184, 183, 185, + 183, 186, 183, 187, 183, 188, 183, 183, 183, 183, + 183, 183, 183, 183, 183, 183, 189, 183, 190, 183, + 191, 183, 192, 183, 193, 183, 194, 183, 195, 183, + 196, 183, 197, 183, 198, 198, 199, 199, 199, 199, + 199, 200, 200, 200, 200, 200, 200, 200, 200, 200, + 201, 201, 201, 201, 202, 203, 203, 203, 203, 203, + 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, + 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, + 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, + 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, + 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, + 203, 203, 203, 203, 203, 203, 203, 204, 204, 204, + 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, + 204, 204, 204, 204, 204, 205, 205, 205, 205, 205, + 206, 206, 206, 206, 207, 207, 208, 208, 208, 208, + 208, 208, 209, 209, 209, 209, 209, 209, 209, 209, + 209, 209, 210, 210, 210, 210, 211, 211, 211, 211, + 212, 212, 213, 213, 214, 214, 215, 215, 215, 215, + 215, 215, 215, 215, 215 }; +/* 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, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 2, 5, 7, 7, 9, 6, 8, 0, + 2, 2, 2, 2, 2, 2, 1, 3, 1, 3, + 0, 0, 10, 1, 3, 0, 13, 1, 3, 0, + 15, 8, 14, 0, 6, 6, 1, 1, 1, 1, + 1, 1, 1, 4, 7, 9, 6, 6, 3, 6, + 4, 6, 9, 6, 9, 5, 8, 8, 11, 6, + 9, 9, 9, 1, 1, 7, 8, 9, 8, 9, + 8, 5, 6, 6, 7, 7, 7, 9, 7, 9, + 17, 7, 7, 11, 8, 8, 8, 8, 3, 4, + 10, 7, 7, 8, 8, 8, 7, 8, 5, 11, + 5, 9, 1, 1, 1, 0, 2, 6, 6, 6, + 6, 4, 6, 6, 6, 4, 6, 3, 4, 5, + 3, 3, 4, 4, 3, 7, 7, 3, 7, 3, + 2, 2, 15, 2, 6, 8, 8, 10, 1, 2, + 1, 3, 4, 1, 5, 11, 13, 0, 7, 0, + 13, 0, 15, 0, 6, 0, 10, 8, 8, 8, + 12, 12, 12, 14, 14, 14, 0, 12, 0, 12, + 0, 12, 0, 16, 0, 16, 0, 16, 0, 18, + 0, 18, 0, 18, 1, 2, 5, 7, 9, 2, + 9, 6, 9, 9, 8, 9, 8, 8, 6, 4, + 10, 10, 10, 10, 2, 1, 3, 2, 2, 2, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 5, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 6, 4, 4, 4, 4, + 4, 4, 6, 6, 6, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 6, 4, 4, 4, + 4, 4, 4, 6, 6, 6, 4, 1, 1, 1, + 1, 1, 1, 1, 1, 5, 4, 4, 2, 5, + 3, 6, 4, 7, 6, 1, 2, 2, 3, 3, + 11, 9, 7, 7, 1, 3, 1, 1, 2, 3, + 4, 5, 2, 3, 3, 5, 4, 1, 1, 1, + 3, 6, 1, 1, 3, 3, 9, 7, 1, 5, + 3, 6, 1, 3, 1, 1, 1, 1, 6, 4, + 4, 4, 6, 6, 9 +}; -#define YYLAST 6201 - - -static const short yytable[] = { 204, - 352, 60, 123, 356, 821, 319, 361, 122, 125, 518, - 61, 326, 129, 560, 268, 175, 443, 178, 560, 627, - 751, 760, 1070, 205, 198, 199, 213, 377, 214, 189, - 379, 146, 198, 199, 210, 635, 141, 357, 169, 136, - 192, 362, 363, 1133, 358, 3, 359, 698, 465, 438, - 698, 699, 700, 466, 699, 700, 99, 100, 101, 102, - 819, 215, 103, 216, 99, 100, 101, 102, 880, 640, - 103, 617, 141, 535, 536, 442, 618, 170, 212, 132, - 171, 873, 876, 172, 340, 341, 133, 340, 341, 561, - 562, 563, 564, 565, 561, 562, 563, 564, 565, 137, - 509, 269, 270, 142, 342, 126, 138, 752, 753, 127, - 261, 262, 263, 147, 818, 264, 267, 931, 881, 272, - 108, 109, 110, 111, 128, 292, 165, 167, 294, 174, - 295, 302, 305, 306, 1157, 308, 302, 310, 311, 696, - 302, 314, 315, 868, 130, 322, 115, 116, 566, 176, - 439, 179, 206, 840, 207, 161, 162, 882, 200, 208, - 309, 338, 339, 190, 313, 163, 203, 193, 211, 636, - 131, 339, 173, 360, 1036, 1134, 108, 109, 110, 111, - 819, 532, 641, 134, 367, 368, 369, 135, 371, 629, - 1203, 374, 375, 1037, 641, 115, 116, 340, 341, 549, - 431, 432, 433, 434, 382, 698, 475, 883, 476, 699, - 700, 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, 115, 116, 958, 132, 335, 217, 337, - 218, 722, 139, 694, 302, 344, 140, 627, 198, 199, - 353, 444, 1087, 449, 450, 451, 452, 453, 454, 455, - 456, 457, 458, 459, 460, 461, 462, 463, 440, 340, - 341, 1051, 115, 116, 340, 341, 471, 136, 624, 625, - 99, 100, 101, 102, 862, 479, 103, 385, 340, 341, - 484, 343, 143, 698, 471, 302, 144, 699, 700, 493, - 145, 495, 496, 497, 148, 499, 500, 501, 503, 503, - 503, 503, 159, 144, 504, 504, 504, 504, 154, 490, - 697, 514, 514, 520, 521, 522, 523, 261, 262, 524, - 517, 517, 1090, 533, 1093, 698, 1096, 137, 538, 699, - 700, 698, 542, 543, 695, 699, 700, 303, 108, 109, - 110, 111, 303, 698, 340, 341, 303, 699, 700, 555, - 1116, 181, 558, 219, 182, 220, 557, 115, 116, 698, - 519, 115, 116, 699, 700, 628, 505, 506, 507, 722, - 709, 710, 340, 341, 160, 108, 109, 110, 111, 698, - 819, 149, 698, 699, 700, 1075, 699, 700, 916, 221, - 917, 222, 1119, 150, 115, 116, 1152, 698, 1122, 340, - 341, 699, 700, 168, 623, 340, 341, 512, 513, 177, - 1168, 632, 340, 341, 630, 531, 631, 337, 475, 819, - 481, 918, 819, 919, 180, 819, 1193, 766, 920, 1177, - 921, 1180, 475, 1183, 302, 644, 183, 623, 648, 1186, - 698, 649, 650, 652, 699, 700, 1195, 698, 858, 1197, - 698, 699, 700, 475, 699, 700, 302, 184, 643, 650, - 669, 340, 341, 1206, 1199, 1208, 675, 1210, 861, 863, - 303, 724, 161, 162, 223, 185, 224, 803, 685, 686, - 666, 819, 163, 340, 341, 773, 774, 689, 776, 164, - 779, 780, 430, 199, 783, 784, 1017, 340, 341, 195, - 354, 1018, 472, 186, 707, 151, 819, 1217, 152, 819, - 153, 187, 819, 820, 1218, 819, 717, 1219, 719, 720, - 472, 303, 199, 188, 99, 100, 101, 102, 194, 723, - 103, 340, 341, 196, 745, 819, 225, 819, 226, 819, - 286, 287, 288, 829, 830, 831, 197, 289, 559, 271, - 991, 340, 341, 99, 100, 101, 102, 765, 227, 103, - 228, 198, 199, 734, 735, 900, 901, 1010, 340, 341, - 255, 340, 341, 340, 341, 256, 684, 736, 737, 738, - 739, 740, 741, 742, 1052, 257, 302, 1054, 258, 1056, - 746, 909, 910, 99, 100, 101, 102, 754, 703, 103, - 340, 341, 340, 341, 915, 884, 273, 763, 340, 341, - 744, 890, 475, 259, 485, 302, 1115, 229, 1118, 230, - 897, 898, 899, 290, 1121, 902, 903, 904, 905, 906, - 907, 908, 231, 698, 232, 291, 302, 699, 700, 769, - 28, 29, 30, 31, 293, 33, 927, 284, 285, 286, - 287, 288, 307, 38, 39, 233, 289, 234, 312, 235, - 786, 236, 302, 302, 302, 302, 321, 115, 116, 323, - 303, 5, 6, 436, 237, 207, 238, 324, 651, 653, - 208, 239, 325, 240, 1084, 327, 811, 812, 813, 814, - 328, 950, 303, 329, 330, 651, 842, 843, 331, 241, - 847, 242, 525, 11, 12, 526, 14, 15, 527, 17, - 528, 19, 768, 20, 332, 22, 23, 333, 25, 26, - 723, 243, 334, 244, 864, 115, 116, 869, 245, 345, - 246, 469, 346, 207, 37, 875, 355, 347, 208, 878, - 247, 249, 248, 250, 348, 41, 42, 43, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 896, 808, 809, - 810, 289, 155, 364, 1011, 156, 365, 251, 157, 252, - 158, 911, 912, 913, 1021, 253, 366, 254, 1025, 615, - 475, 616, 626, 370, 926, 928, 373, 372, 929, 959, - 475, 777, 667, 778, 475, 870, 785, 871, 534, 376, - 378, 935, 936, 937, 475, 475, 877, 894, 475, 941, - 922, 938, 380, 475, 947, 923, 475, 475, 924, 925, - 381, 944, 303, 945, 977, 1023, 978, 1024, 1097, 383, - 1098, 952, 944, 1023, 1108, 1154, 951, 1059, 944, 1200, - 1174, 1201, 944, 1220, 1215, 1221, 384, 962, 387, 435, - 289, 303, 445, 446, 966, 967, 447, 473, 1100, 969, - 470, 492, 498, 508, 537, 547, 540, 541, 975, 976, - 550, 619, 303, 620, 622, 621, 633, 634, 985, 638, - 654, 645, 655, 514, 986, 656, 658, 930, 1014, 659, - 1099, 660, 517, 661, 663, 664, 665, 671, 303, 303, - 303, 303, 683, 679, 680, 681, 713, 682, 687, 714, - 1019, 1020, 715, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 1153, 688, 1123, 1034, 289, - 730, 716, 728, 729, 732, 733, 743, 748, 750, 1042, - 749, 755, 756, 759, 758, 762, 764, 772, 963, 775, - 964, 781, 782, 788, 789, 790, 791, 1049, 792, 795, - 796, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 491, 287, 288, 797, 798, 799, 1062, 289, - 1064, 800, 1065, 993, 801, 996, 1067, 999, 1006, 802, - 807, 1071, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 815, 816, 817, 822, - 289, 824, 825, 826, 827, 828, 832, 514, 838, 1015, - 1088, 837, 1091, 839, 1094, 841, 517, 857, 859, 846, - 866, 1102, 5, 6, 872, 865, 1106, 1107, 885, 888, - 889, 879, 886, 892, 887, 1110, 891, 893, 895, 914, - 932, 933, 934, 1113, 939, 949, 953, 954, 956, 961, - 965, 968, 970, 525, 11, 12, 526, 14, 15, 527, - 17, 528, 19, 947, 20, 972, 22, 23, 973, 25, - 26, 974, 979, 1140, 980, 981, 1144, 1188, 982, 1148, - 983, 984, 994, 1151, 997, 37, 1000, 1002, 1003, 1004, - 1156, 1005, 1007, 1158, 1022, 1026, 41, 42, 43, 1027, - 1028, 1032, 1030, 1031, 1033, 1211, 1041, 1214, 1045, 1089, - 1047, 1092, 1048, 1095, 1053, 71, 296, 1050, 1055, 1057, - 1058, 75, 76, 77, 1060, 1226, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 1061, 1072, 539, - 1063, 1073, 1074, 1078, 1079, 297, 1076, 1080, 1081, 1082, - 1109, 5, 6, 1105, 1111, 1112, 1124, 1125, 1128, 1136, - 1138, 1141, 1142, 1145, 1146, 1149, 1150, 28, 29, 30, - 31, 32, 33, 1159, 1160, 1166, 1162, 1164, 1171, 1172, - 38, 39, 525, 11, 12, 526, 14, 15, 527, 17, - 528, 19, 1178, 20, 1176, 22, 23, 1181, 25, 26, - 1184, 1190, 1191, 1192, 874, 1194, 104, 105, 106, 107, - 1205, 1207, 1196, 1209, 37, 1198, 1202, 1212, 1204, 1216, - 1222, 1223, 1224, 112, 298, 41, 42, 43, 114, 1225, - 1227, 1229, 1230, 117, 1130, 955, 71, 296, 120, 726, - 59, 489, 75, 76, 77, 67, 0, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 0, 0, - 0, 0, 0, 0, 0, 0, 297, 0, 553, 0, - 0, 0, 5, 6, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 28, 29, - 30, 31, 32, 33, 0, 0, 0, 0, 0, 0, - 0, 38, 39, 525, 11, 12, 526, 14, 15, 527, - 17, 528, 19, 0, 20, 0, 22, 23, 0, 25, - 26, 0, 0, 0, 0, 0, 0, 104, 105, 106, - 107, 0, 0, 0, 0, 37, 0, 0, 0, 0, - 0, 0, 0, 0, 112, 316, 41, 42, 43, 114, - 0, 0, 0, 0, 117, 0, 71, 296, 0, 120, - 0, 317, 75, 76, 77, 0, 0, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 0, 0, - 0, 0, 0, 0, 0, 0, 297, 0, 0, 554, - 0, 0, 5, 6, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 28, 29, - 30, 31, 32, 33, 0, 0, 0, 0, 0, 0, - 0, 38, 39, 525, 11, 12, 526, 14, 15, 527, - 17, 528, 19, 0, 20, 0, 22, 23, 0, 25, - 26, 0, 0, 0, 0, 0, 0, 104, 105, 106, - 107, 0, 0, 0, 0, 37, 0, 793, 0, 0, - 0, 0, 0, 0, 112, 298, 41, 42, 43, 114, - 0, 0, 0, 0, 117, 0, 71, 296, 0, 120, - 0, 488, 75, 76, 77, 0, 0, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 0, 0, - 0, 0, 794, 0, 0, 0, 297, 0, 0, 704, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 28, 29, - 30, 31, 32, 33, 0, 0, 0, 0, 0, 0, - 0, 38, 39, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 104, 105, 106, - 107, 289, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 112, 298, 0, 0, 0, 114, - 0, 0, 0, 0, 117, 0, 71, 260, 0, 120, - 0, 668, 75, 76, 77, 0, 0, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 0, 0, - 0, 71, 260, 5, 6, 0, 0, 75, 76, 77, - 0, 0, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 0, 525, 11, 12, 526, 14, 15, - 527, 17, 528, 19, 0, 20, 0, 22, 23, 0, - 25, 26, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 37, 104, 105, 106, - 107, 0, 0, 0, 0, 0, 0, 41, 42, 43, - 0, 0, 0, 0, 112, 113, 0, 0, 0, 114, - 0, 0, 0, 0, 117, 0, 0, 265, 0, 120, - 0, 266, 104, 105, 106, 107, 0, 0, 835, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 112, - 113, 0, 0, 0, 114, 0, 0, 0, 0, 117, - 718, 0, 646, 0, 120, 0, 647, 71, 260, 0, - 0, 0, 0, 75, 76, 77, 0, 0, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 0, - 0, 0, 71, 72, 73, 0, 74, 0, 75, 76, - 77, 0, 0, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 0, 99, 100, 101, 102, 0, - 0, 103, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, - 289, 0, 836, 0, 0, 0, 0, 0, 104, 105, - 106, 107, 274, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 349, 350, 0, 0, 0, - 114, 0, 0, 0, 0, 351, 0, 0, 0, 0, - 120, 0, 164, 104, 105, 106, 107, 108, 109, 110, - 111, 448, 0, 0, 0, 0, 0, 0, 0, 0, - 112, 113, 0, 0, 0, 114, 115, 116, 0, 0, - 117, 0, 118, 0, 119, 120, 71, 296, 0, 0, - 0, 0, 75, 76, 77, 0, 0, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 0, 0, - 0, 0, 0, 0, 0, 0, 297, 0, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 0, 0, 0, 0, 289, 0, 28, 29, - 30, 31, 32, 33, 0, 0, 0, 0, 0, 0, - 0, 38, 39, 0, 0, 0, 0, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 464, 0, 0, 0, 289, 0, 104, 105, 106, - 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 112, 298, 0, 0, 0, 114, - 71, 260, 199, 0, 117, 0, 75, 76, 77, 120, - 0, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 0, 99, 100, 101, 102, 71, 260, 103, - 0, 0, 0, 75, 76, 77, 0, 0, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 0, - 0, 0, 0, 0, 0, 0, 0, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 0, - 0, 104, 105, 106, 107, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 112, 113, - 0, 0, 0, 114, 0, 0, 0, 0, 117, 0, - 0, 0, 0, 120, 757, 0, 0, 0, 104, 105, - 106, 107, 5, 6, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 112, 113, 0, 0, 0, - 114, 0, 5, 6, 787, 117, 0, 0, 0, 0, - 120, 0, 0, 525, 11, 12, 526, 14, 15, 527, - 17, 528, 19, 0, 20, 823, 22, 23, 0, 25, - 26, 0, 0, 525, 11, 12, 526, 14, 15, 527, - 17, 528, 19, 0, 20, 37, 22, 23, 867, 25, - 26, 0, 0, 0, 0, 0, 41, 42, 43, 0, - 0, 0, 0, 0, 0, 37, 0, 1029, 0, 0, - 0, 0, 0, 0, 0, 0, 41, 42, 43, 0, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 1043, 0, 0, 0, 289, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1126, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 1044, 0, 0, 0, 289, 1169, - 0, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 1046, 0, 0, 0, 289, - 0, 0, 0, 0, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 1129, 0, - 0, 0, 289, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 1167, 0, 0, - 0, 289, 0, 0, 0, 0, 0, 0, 0, 0, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 473, 0, 0, 0, 289, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 473, 0, 0, 0, 289, 0, - 0, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 551, 0, 0, 0, 289, - 0, 0, 0, 0, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 639, 0, - 0, 0, 289, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 771, 0, 0, - 0, 289, 0, 0, 0, 0, 0, 0, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 474, - 287, 288, 834, 0, 0, 0, 289, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 491, - 287, 288, 0, 0, 0, 0, 289, 0, 0, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 0, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, - 289, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 0, 0, 0, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 0, -3, 1, 0, 289, -3, 0, 0, 0, 0, - 0, 0, 0, -3, -3, 0, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 0, 0, 0, 0, 289, 0, -3, 0, 0, 0, - 0, -3, -3, 672, -3, -3, -3, -3, -3, -3, - -3, -3, -3, -3, 0, -3, -3, -3, -3, -3, - -3, -3, 0, 0, 0, -3, -3, -3, -3, -3, - -3, -3, 0, -3, -3, -3, -3, 0, 0, -3, - -3, 0, 4, 0, 0, 0, -3, -3, -3, -3, - 5, 6, -3, 0, -3, 0, -3, -3, -3, -3, - -3, -3, -3, -3, -3, 0, 0, 0, 0, 0, - 0, 0, 0, 7, 0, 0, 0, 0, 8, 9, - 0, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 0, 20, 21, 22, 23, 24, 25, 26, 0, - 0, 0, 27, 28, 29, 30, 31, 32, 33, 0, - 34, 35, 36, 37, 5, 6, 38, 39, 0, 0, - 0, 0, 0, 40, 41, 42, 43, 0, 0, 44, - 0, 45, 0, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 0, 0, 0, 525, 11, 12, 526, 14, - 15, 527, 17, 528, 19, 0, 20, 0, 22, 23, - 0, 25, 26, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 37, 0, 0, - 0, 289, 0, 0, 0, 441, 0, 0, 41, 42, - 43, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 0, 0, 0, 989, 0, 990, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 0, 0, 0, 1012, 0, 1013, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 0, - 0, 0, 1085, 0, 1086, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, - 0, 0, 676, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 0, 0, 0, 0, 0, 0, 0, - 677, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 0, 0, 0, 0, 0, 725, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 0, 0, 0, 0, 0, 770, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 0, - 0, 0, 0, 0, 806, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, - 0, 0, 987, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 0, 0, 0, 0, 0, 0, 0, - 1009, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 0, 0, 0, 0, 0, 1035, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 0, 0, 0, 0, 0, 1038, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 0, - 0, 0, 0, 0, 1039, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, - 0, 0, 1040, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 0, 0, 0, 0, 0, 0, 0, - 1101, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 0, 0, 0, 0, 0, 1103, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 0, 0, 0, 0, 0, 1104, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 0, - 0, 0, 0, 0, 1114, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, - 0, 0, 1117, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 0, 0, 0, 0, 0, 0, 0, - 1120, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 0, 0, 0, 0, 0, 1137, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 0, 0, 0, 0, 0, 1161, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 0, - 0, 0, 0, 0, 1163, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, - 0, 0, 1165, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 0, 0, 0, 0, 0, 0, 0, - 1175, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 437, 0, 0, 0, 0, 510, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 0, - 0, 0, 467, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 0, 0, 0, 0, 0, 510, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 0, 0, 0, 511, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, - 548, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 0, 0, 0, 595, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 0, - 0, 0, 596, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 0, 0, 0, 0, 0, 609, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 0, 0, 0, 610, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, - 611, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 0, 0, 0, 612, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 0, - 0, 0, 613, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 0, 0, 0, 0, 0, 614, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 0, 0, 0, 691, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, - 692, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 0, 0, 0, 693, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 0, - 0, 0, 767, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 0, 0, 0, 0, 0, 804, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 0, 0, 0, 805, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, - 833, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 0, 0, 0, 942, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 0, - 0, 0, 943, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 0, 0, 0, 0, 0, 960, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 0, 0, 0, 971, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, - 1068, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 0, 0, 0, 1069, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 0, - 0, 0, 1077, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 0, 0, 0, 0, 0, 1083, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 0, 0, 0, 1132, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 0, 0, 0, 0, 0, - 1135, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 556, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 0, 0, 289, 0, 0, 0, 574, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 576, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 0, 0, 0, 0, 289, 0, - 0, 0, 578, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 0, 0, 580, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 0, 0, 0, 0, 289, 0, 0, 0, 582, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 584, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, - 289, 0, 0, 0, 586, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 0, 0, 588, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 0, 0, 0, 0, 289, 0, 0, 0, - 590, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 592, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 0, 0, 289, 0, 0, 0, 594, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 598, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 0, 0, 0, 0, 289, 0, - 0, 0, 600, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 0, 0, 602, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 0, 0, 0, 0, 289, 0, 0, 0, 604, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 606, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, - 289, 0, 0, 0, 608, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 0, 0, 690, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 0, 0, 0, 0, 289, 0, 0, 0, - 706, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 708, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 0, 0, 289, 0, 0, 0, 711, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 0, 0, 712, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 0, 0, 0, 0, 289, 0, - 0, 0, 721, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 0, 0, 747, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 0, 0, 0, 0, 289, 0, 0, 0, 849, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 0, - 0, 851, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, - 289, 0, 0, 0, 853, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 0, 0, 855, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 0, 0, 0, 0, 289, 0, 0, 0, - 856, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 0, 0, 957, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 0, 0, 289, 0, 437, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 468, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 0, 0, 0, 0, 289, 0, 477, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 478, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 0, 0, 0, 0, 289, 0, 480, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 482, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 0, 0, 0, 0, 289, 0, - 483, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 486, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, - 289, 0, 487, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 494, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 0, 0, 289, 0, 544, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 545, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 0, 0, 0, 0, 289, 0, 546, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 552, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 0, 0, 0, 0, 289, 0, 573, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 575, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 0, 0, 0, 0, 289, 0, - 577, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 579, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, - 289, 0, 581, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 583, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 0, 0, 289, 0, 585, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 587, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 0, 0, 0, 0, 289, 0, 589, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 591, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 0, 0, 0, 0, 289, 0, 593, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 597, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 0, 0, 0, 0, 289, 0, - 599, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 601, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, - 289, 0, 603, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 605, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 0, 0, 289, 0, 607, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 657, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 0, 0, 0, 0, 289, 0, 662, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 670, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 0, 0, 0, 0, 289, 0, 673, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 674, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 0, 0, 0, 0, 289, 0, - 678, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 848, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, - 289, 0, 850, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 0, 0, 0, - 0, 289, 0, 852, 275, 276, 277, 278, 279, 280, - 281, 282, 283, 284, 285, 286, 287, 288, 0, 0, - 0, 0, 289, 0, 854, 275, 276, 277, 278, 279, - 280, 281, 282, 283, 284, 285, 286, 287, 288, 0, - 0, 0, 0, 289, 0, 860, 275, 276, 277, 278, - 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, - 0, 0, 0, 0, 289, 0, 948, 275, 276, 277, - 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, - 288, 0, 0, 0, 0, 289, 0, 988, 275, 276, - 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, - 287, 288, 0, 0, 0, 0, 289, 0, 1008, 275, - 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, - 286, 287, 288, 0, 0, 0, 0, 289, 0, 1016, - 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, - 285, 286, 287, 288, 0, 0, 0, 0, 289, 0, - 1131, 275, 276, 277, 278, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 0, 0, 0, 0, 289, - 0, 1173, 275, 276, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 0, 0, 0, 0, - 289 +/* 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, 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, 158, 0, + 163, 0, 0, 0, 160, 0, 0, 0, 0, 5, + 7, 6, 8, 9, 10, 11, 12, 13, 14, 20, + 19, 15, 16, 17, 18, 287, 294, 346, 56, 288, + 289, 290, 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, 347, 0, 291, + 292, 293, 60, 59, 58, 57, 0, 0, 0, 62, + 61, 0, 0, 0, 0, 0, 0, 0, 225, 0, + 0, 0, 0, 151, 0, 153, 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, + 305, 0, 0, 0, 0, 0, 0, 125, 0, 0, + 125, 0, 0, 125, 224, 0, 0, 0, 0, 0, + 0, 0, 338, 0, 0, 0, 0, 0, 150, 0, + 0, 0, 159, 0, 345, 346, 125, 0, 344, 125, + 0, 0, 0, 0, 0, 298, 0, 29, 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, 294, 228, 227, 229, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, + 147, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 144, 108, 0, 0, + 0, 0, 294, 0, 0, 327, 328, 329, 332, 333, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 316, 0, 317, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 307, 306, 0, 0, 0, 0, 125, + 125, 0, 0, 0, 0, 0, 0, 0, 0, 173, + 0, 125, 0, 0, 0, 0, 137, 0, 0, 0, + 0, 0, 0, 149, 0, 0, 0, 0, 0, 125, + 0, 0, 0, 0, 0, 161, 0, 0, 140, 0, + 141, 0, 0, 300, 0, 0, 0, 70, 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, + 345, 0, 0, 0, 0, 0, 0, 226, 0, 0, + 0, 0, 56, 0, 0, 0, 0, 0, 63, 0, + 243, 242, 241, 240, 236, 237, 239, 238, 231, 230, + 232, 233, 234, 235, 109, 0, 0, 0, 0, 0, + 0, 227, 322, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 318, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 83, 84, 0, 0, 0, 0, + 0, 0, 0, 309, 308, 124, 0, 123, 122, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 126, 0, 0, 167, 0, 131, 219, 0, 138, + 0, 135, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 162, 0, 0, 0, 142, 143, + 0, 296, 302, 0, 29, 40, 0, 0, 0, 53, + 0, 0, 30, 31, 32, 33, 34, 35, 245, 266, + 246, 267, 247, 268, 248, 269, 249, 270, 250, 271, + 251, 272, 252, 273, 253, 274, 265, 286, 254, 275, + 0, 0, 256, 277, 257, 278, 258, 279, 259, 280, + 260, 281, 261, 282, 0, 0, 0, 0, 0, 0, + 0, 0, 351, 0, 0, 349, 350, 0, 0, 0, + 0, 0, 56, 0, 0, 0, 0, 0, 75, 0, + 0, 0, 0, 297, 0, 23, 21, 0, 0, 0, + 0, 330, 0, 0, 324, 232, 323, 334, 335, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 91, 0, 319, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 118, 120, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 204, 0, + 164, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 139, 0, 0, 0, 0, 0, + 0, 0, 299, 0, 295, 0, 0, 0, 0, 0, + 0, 0, 27, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 296, 66, 67, 0, + 0, 0, 0, 0, 69, 71, 73, 0, 0, 342, + 0, 79, 244, 22, 0, 0, 0, 0, 0, 326, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 320, 0, 93, 0, 0, 0, + 0, 0, 211, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 125, 0, 0, 0, + 0, 0, 0, 0, 209, 0, 0, 174, 205, 0, + 0, 132, 218, 136, 0, 92, 133, 134, 0, 0, + 0, 339, 0, 0, 0, 154, 0, 0, 0, 146, + 301, 145, 0, 0, 0, 0, 0, 314, 0, 0, + 255, 276, 262, 283, 263, 284, 264, 285, 0, 353, + 352, 348, 304, 0, 56, 0, 0, 0, 0, 64, + 0, 0, 0, 340, 24, 25, 0, 0, 85, 0, + 325, 0, 96, 0, 98, 0, 0, 94, 0, 0, + 111, 112, 0, 0, 95, 116, 321, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 148, 0, 0, 0, 0, 125, 175, 0, 186, + 0, 188, 0, 190, 0, 0, 0, 0, 316, 0, + 0, 0, 0, 168, 0, 101, 102, 0, 0, 0, + 0, 0, 0, 0, 303, 28, 0, 36, 0, 0, + 0, 0, 0, 38, 0, 0, 0, 0, 0, 76, + 0, 0, 77, 0, 343, 0, 0, 331, 0, 0, + 0, 104, 0, 0, 113, 0, 0, 0, 216, 106, + 107, 0, 0, 0, 214, 217, 115, 86, 105, 114, + 117, 0, 0, 0, 313, 0, 312, 0, 0, 0, + 177, 0, 0, 178, 0, 0, 179, 0, 127, 128, + 129, 130, 0, 0, 0, 0, 0, 0, 0, 0, + 337, 0, 156, 155, 88, 90, 0, 41, 0, 0, + 0, 315, 0, 0, 0, 0, 0, 65, 72, 74, + 0, 80, 0, 26, 0, 0, 97, 99, 0, 0, + 0, 0, 0, 213, 212, 215, 81, 82, 125, 0, + 121, 0, 0, 0, 0, 0, 0, 0, 206, 0, + 0, 125, 0, 87, 0, 0, 0, 89, 0, 37, + 0, 0, 0, 39, 54, 55, 354, 0, 341, 0, + 220, 221, 222, 223, 110, 0, 0, 0, 311, 176, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 169, 0, 0, 336, 157, 0, 0, 0, + 0, 78, 0, 0, 119, 0, 192, 0, 0, 194, + 0, 0, 196, 0, 0, 0, 207, 0, 165, 0, + 125, 103, 0, 45, 0, 51, 0, 0, 0, 310, + 180, 0, 0, 187, 181, 0, 0, 189, 182, 0, + 0, 191, 0, 0, 0, 171, 0, 0, 0, 0, + 0, 0, 0, 198, 0, 200, 0, 202, 208, 210, + 170, 166, 0, 42, 0, 49, 0, 0, 0, 0, + 183, 0, 0, 184, 0, 0, 185, 0, 0, 0, + 43, 0, 0, 152, 0, 0, 0, 0, 0, 0, + 0, 172, 0, 0, 0, 0, 0, 193, 0, 195, + 0, 197, 0, 44, 46, 0, 47, 0, 100, 0, + 0, 0, 0, 0, 52, 199, 201, 203, 48, 50 }; -static const short yycheck[] = { 54, - 173, 2, 4, 176, 705, 145, 179, 4, 4, 343, - 2, 151, 6, 4, 4, 4, 268, 4, 4, 7, - 4, 636, 1022, 4, 4, 5, 131, 200, 133, 4, - 203, 49, 4, 5, 4, 4, 71, 177, 4, 71, - 4, 181, 182, 6, 4, 6, 6, 72, 132, 7, - 72, 76, 77, 137, 76, 77, 36, 37, 38, 39, - 701, 131, 42, 133, 36, 37, 38, 39, 6, 6, - 42, 132, 71, 6, 7, 7, 137, 43, 74, 131, - 46, 6, 6, 49, 121, 122, 138, 121, 122, 80, - 81, 82, 83, 84, 80, 81, 82, 83, 84, 131, - 137, 91, 92, 138, 138, 13, 138, 91, 92, 49, - 112, 113, 114, 131, 139, 117, 118, 139, 56, 121, - 108, 109, 110, 111, 131, 127, 29, 30, 130, 32, - 132, 133, 134, 135, 1134, 137, 138, 139, 140, 138, - 142, 143, 144, 758, 138, 147, 127, 128, 139, 138, - 108, 138, 133, 139, 135, 121, 122, 6, 138, 140, - 138, 163, 164, 138, 142, 131, 138, 131, 138, 138, - 6, 173, 138, 133, 6, 138, 108, 109, 110, 111, - 821, 354, 119, 131, 186, 187, 188, 131, 190, 441, - 1190, 193, 194, 6, 119, 127, 128, 121, 122, 372, - 255, 256, 257, 258, 206, 72, 137, 56, 139, 76, - 77, 213, 214, 215, 216, 217, 218, 219, 220, 221, - 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, - 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, - 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, - 252, 253, 254, 127, 128, 870, 131, 160, 131, 162, - 133, 135, 131, 138, 266, 168, 131, 7, 4, 5, - 173, 268, 139, 275, 276, 277, 278, 279, 280, 281, - 282, 283, 284, 285, 286, 287, 288, 289, 266, 121, - 122, 992, 127, 128, 121, 122, 298, 71, 438, 439, - 36, 37, 38, 39, 7, 307, 42, 210, 121, 122, - 312, 138, 131, 72, 316, 317, 131, 76, 77, 321, - 53, 323, 324, 325, 49, 327, 328, 329, 330, 331, - 332, 333, 131, 131, 330, 331, 332, 333, 51, 317, - 138, 342, 343, 345, 346, 347, 348, 349, 350, 351, - 342, 343, 1053, 355, 1055, 72, 1057, 131, 360, 76, - 77, 72, 364, 365, 138, 76, 77, 133, 108, 109, - 110, 111, 138, 72, 121, 122, 142, 76, 77, 381, - 139, 43, 384, 131, 46, 133, 383, 127, 128, 72, - 137, 127, 128, 76, 77, 135, 331, 332, 333, 135, - 540, 541, 121, 122, 138, 108, 109, 110, 111, 72, - 1051, 49, 72, 76, 77, 1030, 76, 77, 137, 131, - 139, 133, 139, 49, 127, 128, 1127, 72, 139, 121, - 122, 76, 77, 138, 436, 121, 122, 340, 341, 49, - 139, 443, 121, 122, 441, 137, 442, 350, 137, 1090, - 139, 137, 1093, 139, 6, 1096, 139, 132, 137, 1160, - 139, 1162, 137, 1164, 466, 467, 4, 469, 470, 1170, - 72, 473, 474, 475, 76, 77, 139, 72, 132, 139, - 72, 76, 77, 137, 76, 77, 488, 4, 466, 491, - 492, 121, 122, 1194, 139, 1196, 498, 1198, 750, 751, - 266, 556, 121, 122, 131, 4, 133, 137, 510, 511, - 488, 1152, 131, 121, 122, 655, 656, 519, 658, 138, - 660, 661, 4, 5, 664, 665, 132, 121, 122, 6, - 138, 137, 298, 131, 536, 46, 1177, 139, 49, 1180, - 51, 131, 1183, 137, 139, 1186, 548, 139, 550, 551, - 316, 317, 5, 131, 36, 37, 38, 39, 131, 556, - 42, 121, 122, 4, 619, 1206, 131, 1208, 133, 1210, - 123, 124, 125, 713, 714, 715, 4, 130, 138, 4, - 914, 121, 122, 36, 37, 38, 39, 642, 131, 42, - 133, 4, 5, 595, 596, 62, 63, 137, 121, 122, - 131, 121, 122, 121, 122, 131, 509, 609, 610, 611, - 612, 613, 614, 615, 137, 131, 618, 137, 131, 137, - 622, 6, 7, 36, 37, 38, 39, 629, 531, 42, - 121, 122, 121, 122, 807, 775, 6, 639, 121, 122, - 618, 781, 137, 131, 139, 647, 137, 131, 137, 133, - 790, 791, 792, 6, 137, 795, 796, 797, 798, 799, - 800, 801, 131, 72, 133, 6, 668, 76, 77, 647, - 65, 66, 67, 68, 5, 70, 816, 121, 122, 123, - 124, 125, 131, 78, 79, 131, 130, 133, 131, 131, - 668, 133, 694, 695, 696, 697, 131, 127, 128, 138, - 466, 12, 13, 133, 131, 135, 133, 131, 474, 475, - 140, 131, 131, 133, 1048, 138, 694, 695, 696, 697, - 138, 861, 488, 131, 131, 491, 728, 729, 131, 131, - 732, 133, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 645, 54, 131, 56, 57, 131, 59, 60, - 747, 131, 4, 133, 751, 127, 128, 759, 131, 133, - 133, 133, 138, 135, 75, 767, 133, 138, 140, 771, - 131, 131, 133, 133, 138, 86, 87, 88, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 789, 691, 692, - 693, 130, 43, 133, 934, 46, 133, 131, 49, 133, - 51, 803, 804, 805, 944, 131, 6, 133, 948, 133, - 137, 135, 139, 135, 816, 817, 94, 138, 820, 874, - 137, 49, 139, 51, 137, 137, 139, 139, 139, 6, - 6, 833, 834, 835, 137, 137, 139, 139, 137, 841, - 139, 838, 6, 137, 846, 139, 137, 137, 139, 139, - 133, 137, 618, 139, 4, 137, 6, 139, 137, 4, - 139, 863, 137, 137, 139, 139, 862, 1007, 137, 137, - 139, 139, 137, 137, 139, 139, 138, 879, 6, 5, - 130, 647, 135, 7, 886, 887, 133, 8, 1061, 891, - 138, 7, 7, 132, 6, 91, 7, 7, 900, 901, - 138, 137, 668, 132, 137, 132, 6, 4, 910, 134, - 94, 7, 7, 914, 910, 7, 7, 820, 8, 94, - 1060, 7, 914, 7, 94, 7, 7, 7, 694, 695, - 696, 697, 135, 132, 132, 132, 7, 132, 139, 7, - 942, 943, 7, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 1128, 139, 1097, 960, 130, - 138, 135, 131, 131, 131, 6, 4, 6, 134, 971, - 6, 6, 6, 133, 7, 6, 119, 49, 881, 7, - 883, 7, 51, 7, 138, 7, 7, 989, 7, 7, - 7, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 7, 7, 7, 1010, 130, - 1012, 7, 1014, 916, 7, 918, 1018, 920, 139, 4, - 138, 1023, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 6, 138, 131, 6, - 130, 6, 6, 6, 6, 6, 4, 1048, 4, 139, - 1052, 6, 1054, 6, 1056, 131, 1048, 132, 132, 138, - 7, 1063, 12, 13, 6, 135, 1068, 1069, 6, 6, - 6, 138, 138, 6, 138, 1077, 138, 6, 5, 138, - 6, 6, 90, 1085, 6, 135, 6, 4, 6, 134, - 6, 6, 5, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 1105, 54, 6, 56, 57, 6, 59, - 60, 6, 6, 1115, 6, 6, 1118, 1172, 6, 1121, - 6, 6, 6, 1125, 6, 75, 6, 6, 6, 6, - 1132, 6, 137, 1135, 138, 4, 86, 87, 88, 6, - 6, 135, 7, 6, 6, 1200, 5, 1202, 6, 1052, - 6, 1054, 138, 1056, 138, 3, 4, 139, 138, 138, - 6, 9, 10, 11, 7, 1220, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 138, 6, 139, - 89, 6, 132, 6, 6, 43, 92, 6, 6, 6, - 6, 12, 13, 138, 5, 139, 6, 61, 138, 137, - 6, 6, 6, 6, 6, 6, 139, 65, 66, 67, - 68, 69, 70, 5, 138, 6, 138, 138, 6, 138, - 78, 79, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 6, 54, 137, 56, 57, 6, 59, 60, - 6, 138, 6, 5, 766, 138, 104, 105, 106, 107, - 6, 6, 138, 6, 75, 138, 138, 6, 139, 6, - 6, 6, 6, 121, 122, 86, 87, 88, 126, 6, - 6, 0, 0, 131, 1105, 866, 3, 4, 136, 559, - 2, 139, 9, 10, 11, 2, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, - -1, -1, -1, -1, -1, -1, 43, -1, 139, -1, - -1, -1, 12, 13, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, - 67, 68, 69, 70, -1, -1, -1, -1, -1, -1, - -1, 78, 79, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, -1, 54, -1, 56, 57, -1, 59, - 60, -1, -1, -1, -1, -1, -1, 104, 105, 106, - 107, -1, -1, -1, -1, 75, -1, -1, -1, -1, - -1, -1, -1, -1, 121, 122, 86, 87, 88, 126, - -1, -1, -1, -1, 131, -1, 3, 4, -1, 136, - -1, 138, 9, 10, 11, -1, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, - -1, -1, -1, -1, -1, -1, 43, -1, -1, 139, - -1, -1, 12, 13, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, - 67, 68, 69, 70, -1, -1, -1, -1, -1, -1, - -1, 78, 79, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, -1, 54, -1, 56, 57, -1, 59, - 60, -1, -1, -1, -1, -1, -1, 104, 105, 106, - 107, -1, -1, -1, -1, 75, -1, 6, -1, -1, - -1, -1, -1, -1, 121, 122, 86, 87, 88, 126, - -1, -1, -1, -1, 131, -1, 3, 4, -1, 136, - -1, 138, 9, 10, 11, -1, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, - -1, -1, 61, -1, -1, -1, 43, -1, -1, 139, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, 65, 66, - 67, 68, 69, 70, -1, -1, -1, -1, -1, -1, - -1, 78, 79, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 104, 105, 106, - 107, 130, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 121, 122, -1, -1, -1, 126, - -1, -1, -1, -1, 131, -1, 3, 4, -1, 136, - -1, 138, 9, 10, 11, -1, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, - -1, 3, 4, 12, 13, -1, -1, 9, 10, 11, - -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 33, 34, -1, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, -1, 54, -1, 56, 57, -1, - 59, 60, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 75, 104, 105, 106, - 107, -1, -1, -1, -1, -1, -1, 86, 87, 88, - -1, -1, -1, -1, 121, 122, -1, -1, -1, 126, - -1, -1, -1, -1, 131, -1, -1, 134, -1, 136, - -1, 138, 104, 105, 106, 107, -1, -1, 8, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 121, - 122, -1, -1, -1, 126, -1, -1, -1, -1, 131, - 139, -1, 134, -1, 136, -1, 138, 3, 4, -1, - -1, -1, -1, 9, 10, 11, -1, -1, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, - -1, -1, 3, 4, 5, -1, 7, -1, 9, 10, - 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, -1, 36, 37, 38, 39, -1, - -1, 42, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, -1, -1, -1, -1, - 130, -1, 132, -1, -1, -1, -1, -1, 104, 105, - 106, 107, 6, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 121, 122, -1, -1, -1, - 126, -1, -1, -1, -1, 131, -1, -1, -1, -1, - 136, -1, 138, 104, 105, 106, 107, 108, 109, 110, - 111, 6, -1, -1, -1, -1, -1, -1, -1, -1, - 121, 122, -1, -1, -1, 126, 127, 128, -1, -1, - 131, -1, 133, -1, 135, 136, 3, 4, -1, -1, - -1, -1, 9, 10, 11, -1, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, - -1, -1, -1, -1, -1, -1, 43, -1, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, -1, -1, -1, -1, 130, -1, 65, 66, - 67, 68, 69, 70, -1, -1, -1, -1, -1, -1, - -1, 78, 79, -1, -1, -1, -1, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 6, -1, -1, -1, 130, -1, 104, 105, 106, - 107, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 121, 122, -1, -1, -1, 126, - 3, 4, 5, -1, 131, -1, 9, 10, 11, 136, - -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, -1, 36, 37, 38, 39, 3, 4, 42, - -1, -1, -1, 9, 10, 11, -1, -1, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, - -1, -1, -1, -1, -1, -1, -1, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, -1, - -1, 104, 105, 106, 107, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 121, 122, - -1, -1, -1, 126, -1, -1, -1, -1, 131, -1, - -1, -1, -1, 136, 6, -1, -1, -1, 104, 105, - 106, 107, 12, 13, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 121, 122, -1, -1, -1, - 126, -1, 12, 13, 6, 131, -1, -1, -1, -1, - 136, -1, -1, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, -1, 54, 6, 56, 57, -1, 59, - 60, -1, -1, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, -1, 54, 75, 56, 57, 6, 59, - 60, -1, -1, -1, -1, -1, 86, 87, 88, -1, - -1, -1, -1, -1, -1, 75, -1, 6, -1, -1, - -1, -1, -1, -1, -1, -1, 86, 87, 88, -1, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 6, -1, -1, -1, 130, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 139, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 6, -1, -1, -1, 130, 139, - -1, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 6, -1, -1, -1, 130, - -1, -1, -1, -1, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 6, -1, - -1, -1, 130, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 6, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, -1, -1, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 8, -1, -1, -1, 130, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 8, -1, -1, -1, 130, -1, - -1, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 8, -1, -1, -1, 130, - -1, -1, -1, -1, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 8, -1, - -1, -1, 130, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 8, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 8, -1, -1, -1, 130, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, -1, -1, -1, -1, 130, -1, -1, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, -1, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, -1, -1, -1, -1, - 130, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, -1, -1, -1, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - -1, 0, 1, -1, 130, 4, -1, -1, -1, -1, - -1, -1, -1, 12, 13, -1, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - -1, -1, -1, -1, 130, -1, 35, -1, -1, -1, - -1, 40, 41, 139, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, -1, 54, 55, 56, 57, 58, - 59, 60, -1, -1, -1, 64, 65, 66, 67, 68, - 69, 70, -1, 72, 73, 74, 75, -1, -1, 78, - 79, -1, 4, -1, -1, -1, 85, 86, 87, 88, - 12, 13, 91, -1, 93, -1, 95, 96, 97, 98, - 99, 100, 101, 102, 103, -1, -1, -1, -1, -1, - -1, -1, -1, 35, -1, -1, -1, -1, 40, 41, - -1, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, -1, 54, 55, 56, 57, 58, 59, 60, -1, - -1, -1, 64, 65, 66, 67, 68, 69, 70, -1, - 72, 73, 74, 75, 12, 13, 78, 79, -1, -1, - -1, -1, -1, 85, 86, 87, 88, -1, -1, 91, - -1, 93, -1, 95, 96, 97, 98, 99, 100, 101, - 102, 103, -1, -1, -1, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, -1, 54, -1, 56, 57, - -1, 59, 60, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 75, -1, -1, - -1, 130, -1, -1, -1, 134, -1, -1, 86, 87, - 88, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, -1, -1, -1, 137, -1, 139, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, -1, -1, -1, 137, -1, 139, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, -1, - -1, -1, 137, -1, 139, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, -1, -1, -1, -1, -1, - -1, -1, 139, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, -1, -1, - 139, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, -1, -1, -1, -1, -1, 139, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, -1, -1, -1, -1, -1, 139, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, -1, - -1, -1, -1, -1, 139, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, -1, -1, -1, -1, -1, - -1, -1, 139, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, -1, -1, - 139, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, -1, -1, -1, -1, -1, 139, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, -1, -1, -1, -1, -1, 139, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, -1, - -1, -1, -1, -1, 139, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, -1, -1, -1, -1, -1, - -1, -1, 139, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, -1, -1, - 139, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, -1, -1, -1, -1, -1, 139, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, -1, -1, -1, -1, -1, 139, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, -1, - -1, -1, -1, -1, 139, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, -1, -1, -1, -1, -1, - -1, -1, 139, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, -1, -1, - 139, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, -1, -1, -1, -1, -1, 139, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, -1, -1, -1, -1, -1, 139, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, -1, - -1, -1, -1, -1, 139, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, -1, -1, -1, -1, -1, - -1, -1, 139, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, -1, -1, - 139, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, 132, -1, -1, -1, -1, 137, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, -1, - -1, -1, 137, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, 137, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, -1, -1, -1, 137, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, -1, -1, -1, -1, -1, - 137, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, -1, -1, -1, 137, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, -1, - -1, -1, 137, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, 137, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, -1, -1, -1, 137, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, -1, -1, -1, -1, -1, - 137, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, -1, -1, -1, 137, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, -1, - -1, -1, 137, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, 137, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, -1, -1, -1, 137, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, -1, -1, -1, -1, -1, - 137, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, -1, -1, -1, 137, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, -1, - -1, -1, 137, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, 137, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, -1, -1, -1, 137, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, -1, -1, -1, -1, -1, - 137, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, -1, -1, -1, 137, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, -1, - -1, -1, 137, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, 137, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, -1, -1, -1, 137, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, -1, -1, -1, -1, -1, - 137, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, -1, -1, -1, 137, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, -1, - -1, -1, 137, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, -1, -1, -1, -1, -1, 137, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, -1, -1, -1, 137, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, -1, -1, -1, -1, -1, - 137, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, 134, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, -1, -1, - -1, -1, 130, -1, -1, -1, 134, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, 134, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, -1, -1, -1, -1, 130, -1, - -1, -1, 134, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, -1, -1, 134, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - -1, -1, -1, -1, 130, -1, -1, -1, 134, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, 134, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, -1, -1, -1, -1, - 130, -1, -1, -1, 134, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, -1, -1, 134, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, -1, -1, -1, -1, 130, -1, -1, -1, - 134, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, 134, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, -1, -1, - -1, -1, 130, -1, -1, -1, 134, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, 134, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, -1, -1, -1, -1, 130, -1, - -1, -1, 134, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, -1, -1, 134, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - -1, -1, -1, -1, 130, -1, -1, -1, 134, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, 134, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, -1, -1, -1, -1, - 130, -1, -1, -1, 134, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, -1, -1, 134, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, -1, -1, -1, -1, 130, -1, -1, -1, - 134, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, 134, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, -1, -1, - -1, -1, 130, -1, -1, -1, 134, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, -1, -1, 134, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, -1, -1, -1, -1, 130, -1, - -1, -1, 134, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, -1, -1, 134, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - -1, -1, -1, -1, 130, -1, -1, -1, 134, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, -1, - -1, 134, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, -1, -1, -1, -1, - 130, -1, -1, -1, 134, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, -1, -1, 134, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, -1, -1, -1, -1, 130, -1, -1, -1, - 134, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, -1, -1, 134, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, -1, -1, - -1, -1, 130, -1, 132, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, 132, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - -1, -1, -1, -1, 130, -1, 132, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, 132, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, -1, -1, -1, -1, 130, -1, 132, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, 132, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, -1, -1, -1, -1, 130, -1, - 132, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, 132, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, -1, -1, -1, -1, - 130, -1, 132, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, 132, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, -1, -1, - -1, -1, 130, -1, 132, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, 132, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - -1, -1, -1, -1, 130, -1, 132, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, 132, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, -1, -1, -1, -1, 130, -1, 132, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, 132, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, -1, -1, -1, -1, 130, -1, - 132, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, 132, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, -1, -1, -1, -1, - 130, -1, 132, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, 132, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, -1, -1, - -1, -1, 130, -1, 132, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, 132, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - -1, -1, -1, -1, 130, -1, 132, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, 132, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, -1, -1, -1, -1, 130, -1, 132, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, 132, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, -1, -1, -1, -1, 130, -1, - 132, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, 132, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, -1, -1, -1, -1, - 130, -1, 132, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, 132, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, -1, -1, - -1, -1, 130, -1, 132, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, 132, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - -1, -1, -1, -1, 130, -1, 132, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, 132, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, -1, -1, -1, -1, 130, -1, 132, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, 132, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, -1, -1, -1, -1, 130, -1, - 132, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, 132, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, -1, -1, -1, -1, - 130, -1, 132, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, -1, -1, -1, - -1, 130, -1, 132, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, -1, -1, - -1, -1, 130, -1, 132, 112, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, -1, - -1, -1, -1, 130, -1, 132, 112, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - -1, -1, -1, -1, 130, -1, 132, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, -1, -1, -1, -1, 130, -1, 132, 112, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, -1, -1, -1, -1, 130, -1, 132, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, -1, -1, -1, -1, 130, -1, 132, - 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, -1, -1, -1, -1, 130, -1, - 132, 112, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, -1, -1, -1, -1, 130, - -1, 132, 112, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, -1, -1, -1, -1, - 130 +/* YYDEFGOTO[NTERM-NUM]. */ +static const yytype_int16 yydefgoto[] = +{ + -1, 2, 3, 59, 657, 60, 61, 396, 966, 972, + 582, 746, 1098, 1219, 583, 1187, 1245, 584, 1221, 585, + 586, 750, 587, 125, 215, 62, 513, 541, 305, 526, + 527, 306, 66, 67, 68, 69, 70, 307, 721, 1159, + 1202, 542, 1018, 1021, 1024, 1027, 1171, 1175, 1179, 1211, + 1214, 1217, 717, 718, 72, 73, 74, 325, 128, 343, + 170, 866, 867, 327, 310, 194, 652, 780, 207, 208 }; -/* -*-C-*- Note some compilers choke on comments on `#line' lines. */ -#line 3 "/usr/share/bison.simple" -/* This file comes from bison-1.28. */ -/* Skeleton output parser for bison, - Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc. +/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing + STATE-NUM. */ +#define YYPACT_NINF -1044 +static const yytype_int16 yypact[] = +{ + 3030, 40, 71, 3107, -1044, -1044, 2273, 73, 43, -18, + 25, 121, -96, -6, 14, 4, 124, 130, -49, 134, + 164, 160, -26, 272, 279, 314, 334, 305, 652, 235, + 245, -75, -75, 266, 30, 2, 377, 11, 426, 392, + 450, 469, 481, 345, 354, 370, 16, 44, -1044, 383, + -1044, 464, 421, 427, -1044, 534, 10, 21, 28, -1044, + -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, + -1044, -1044, -1044, -1044, -1044, -1044, 15, 24, 304, -1044, + -1044, -1044, 51, 120, 307, 308, 326, 357, 367, 425, + 429, 435, 448, 473, 477, 558, 564, 578, 581, 623, + 634, 644, 655, 405, 406, 410, 444, -1044, 447, -1044, + -1044, -1044, -1044, -1044, -1044, -1044, 2483, 2483, 2483, -1044, + -1044, 2483, 2033, 13, 583, 2483, 556, 900, -1044, 597, + 625, 2483, 629, -1044, 2483, -1044, 2483, 2412, 2483, 2483, + 502, 2483, 2412, 2483, 2483, 519, 2412, 2483, 2483, 1422, + 524, 2483, 511, 540, 550, 1692, 538, 544, 577, 584, + 600, 603, 608, 729, -75, -75, -75, 2483, 2483, -71, + -1044, 168, -75, 611, 619, 620, 632, 2238, 177, 612, + -1044, 1692, 32, -1044, -1044, 1557, 616, 638, 777, 2483, + 2483, 2483, 657, 2483, 651, 707, 2483, 2483, -1044, 680, + 687, 818, -1044, 693, -1044, -1044, -1044, 826, -1044, -1044, + 830, 703, 2483, 842, 716, -1044, -75, -1044, 850, 2483, + 2483, 2483, 2483, 2483, 2483, 2483, 2483, 2483, 2483, 2483, + 2483, 2483, 2483, 2483, 2483, 2483, 2483, 2483, 2483, 2483, + 2483, 2483, 2483, 2483, 2483, 2483, 2483, 2483, 2483, 2483, + 2483, 2483, 2483, 2483, 2483, 2483, 2483, 2483, 2483, 2483, + 2483, 646, 673, 673, 673, 863, 559, 743, 743, 743, + 5358, 77, 2412, 3119, 158, 741, 887, 764, 1100, -1044, + -1044, 2483, 2483, 2483, 2483, 2483, 2483, 2483, 2483, 2483, + 2483, 2483, 2483, 2483, 2483, 2483, -1044, -1044, 1137, -34, + 3891, 5379, 607, 758, 2412, -1044, -1044, -1044, 1485, -1044, + 654, 5400, 5421, 2483, 5442, 658, 5463, 5484, 2483, 691, + 5505, 5526, 1692, 1827, 1266, 1620, 908, -1044, 2483, 5547, + 2483, 2483, 2483, 912, 2483, 2483, 2483, 2541, 2541, 2541, + 2541, 783, 250, -1044, -1044, 3917, 3943, -75, -75, 690, + 690, 323, 2483, 2483, 2483, 2483, 2238, 2238, 2483, 3175, + 433, -1044, 2483, 678, 76, 915, -1044, 2483, 2587, 786, + 916, 2483, 2483, -1044, 5568, 5589, 5610, 834, 3969, -1044, + 785, 1755, 5631, 2483, 2483, -1044, 2483, 2651, -1044, 2673, + -1044, 2483, 4645, 268, 2483, 218, 7, -1044, 5652, 4668, + 5673, 4691, 5694, 4714, 5715, 4737, 5736, 4760, 5757, 4783, + 5778, 4806, 5799, 4829, 5820, 4852, 5841, 4875, 5862, 4898, + 3995, 4021, 5883, 4921, 5904, 4944, 5925, 4967, 5946, 4990, + 5967, 5013, 5988, 5036, 4047, 4073, 4099, 4125, 4151, 4177, + 699, 254, 784, 792, 793, 790, 2483, -1044, 1692, 1692, + 698, 62, 304, 2483, 927, 930, 26, 796, -1044, 1890, + 685, 993, 1056, 1056, 660, 660, 660, 660, 518, 518, + 743, 743, 743, 743, -1044, -4, 2412, 2483, 929, 2097, + 2483, 743, -1044, 2483, 2412, 2412, 843, 935, 936, 6009, + 937, 852, 940, 941, 6030, 856, 944, 945, 947, 2412, + -1044, 708, 1962, 2483, 6051, 948, 2928, 6072, 6093, 2483, + 3249, 3277, 6114, 817, 933, -1044, 819, 820, 821, 822, + -75, 2483, 2483, -1044, -1044, -1044, 815, 3175, -1044, 816, + 2483, 5059, 4203, 4229, 4255, 3865, -62, 54, -47, -8, + 862, -1044, 192, -75, 2737, 5082, -1044, -1044, 2483, -1044, + 5105, -1044, 2483, 1692, 5128, 5151, 972, 973, 975, 844, + 2483, 2759, 2483, 2483, -1044, 6135, 6156, 6177, -1044, -1044, + 5174, 368, -1044, 3305, -1044, -1044, 849, 851, 845, -1044, + 853, 980, -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, + -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, + -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, + 2483, 2483, -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, + -1044, -1044, -1044, -1044, 2483, 2483, 2483, 2483, 2483, 2483, + 2483, 986, -1044, 2412, 673, -1044, -1044, 2483, 5197, 985, + 1002, 870, -1044, 23, 2483, 1005, 1007, 1349, -1044, 1008, + 878, 16, 1026, -1044, 2483, -1044, 910, 673, 288, 4281, + -75, -1044, 2412, 3333, 2876, 743, -1044, 1485, -1044, 988, + 1692, 1692, 1031, 1692, 802, 1692, 1692, 1032, 989, 1692, + 1692, -1044, 713, -1044, 2412, 1385, 1034, 899, 1037, 1038, + 1039, 848, 1040, 1042, 1057, 1058, 1066, 1067, 1071, 1076, + 443, 4307, 4333, -1044, -1044, 3361, 939, -75, -75, -75, + 2412, 2412, 2412, 2412, 1078, 942, 950, -23, -1044, 466, + -1044, 192, 1082, 1520, 1084, 6198, 1085, 1086, 1087, 1692, + 1692, 1692, 1090, 4359, -1044, 2898, 877, 1091, 1092, 1093, + 1095, 1098, -1044, 1097, -1044, 17, 961, 2483, 2483, 1692, + 962, 2483, -1044, 6219, 5220, 6240, 5243, 6261, 5266, 6282, + 5289, 5312, 970, 291, 971, 6303, -90, -1044, -1044, 95, + 353, 969, 1103, 1655, -1044, -1044, -1044, 16, 2483, -1044, + 718, -1044, 933, -1044, 1105, 35, 2483, 56, 722, -1044, + 2483, 981, 29, 39, 1692, 1123, 987, 990, 1125, 1129, + 1692, 994, 1132, 1133, -1044, 723, -1044, 1135, 2483, 1692, + 1692, 1692, -1044, 414, 1692, 1692, 1692, 1692, 1692, 1692, + 1692, 505, 2483, 2483, 2483, 998, -1044, -20, 180, 365, + 731, 732, 735, 740, -1044, 1692, 2483, -1044, -1044, 2238, + 221, -1044, -1044, -1044, 1140, -1044, -1044, -1044, 1138, 1143, + 1060, -1044, 2483, 2483, 2483, -1044, 1692, 1146, 1148, -1044, + 268, -1044, 1149, 2483, 4385, 4411, 744, -1044, 2483, 6324, + -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, 1014, -1044, + -1044, -1044, -1044, 1692, 304, 2483, 1150, 1153, 26, -1044, + 1152, 5335, 16, -1044, -1044, -1044, 673, 4437, -1044, 1021, + 933, 2483, -1044, -75, -1044, -75, 1155, -1044, 2483, 2483, + -1044, -1044, 1157, 2483, -1044, -1044, -1044, 1159, 4463, 1160, + 1161, 1162, 2483, 2483, 883, 1164, 1166, 1169, 1171, 1181, + 1182, -1044, 2541, 3389, 6345, 3165, 690, 3175, -75, 1183, + -75, 1186, -75, 1187, 1189, 1191, 1192, 1193, 294, 1023, + 6366, 3417, 468, -1044, 1692, -1044, -1044, 1692, 3193, 545, + 6387, 1194, 1195, 1692, -1044, -1044, 316, 933, 2483, 2483, + 1692, 1059, 748, 933, 1692, 1199, 1198, 1202, 1790, -1044, + 1225, 1203, -1044, 1094, -1044, 1227, 2483, -1044, 3445, 72, + 74, -1044, 3473, 3501, -1044, 3529, 1231, 2483, -1044, -1044, + -1044, 2062, 2199, 1232, -1044, -1044, -1044, -1044, -1044, -1044, + -1044, 2339, 1233, 1099, -1044, 2483, -1044, 1096, 192, 470, + -1044, 1101, 491, -1044, 1102, 500, -1044, 1104, -1044, -1044, + -1044, -1044, 1235, 1692, 1230, 1106, 2483, 1237, 1179, 2483, + -1044, 2483, -1044, -1044, -1044, -1044, 1240, -1044, 2483, 4489, + 4515, -1044, 1692, 2483, 1242, 1244, 1114, -1044, -1044, -1044, + 16, -1044, 1209, -1044, 4541, 1247, -1044, -1044, 1265, 1267, + 1268, 1272, 4567, -1044, -1044, -1044, -1044, -1044, 690, 3221, + -1044, 238, 2238, 192, 2238, 192, 2238, 192, -1044, 751, + 1692, -1044, 3557, -1044, 2483, 3585, 3613, -1044, 1163, 933, + 2483, 2483, 755, 933, -1044, -1044, -1044, 1296, -1044, 2483, + -1044, -1044, -1044, -1044, -1044, 1298, 1167, 2483, -1044, -1044, + 3641, 503, 240, 3669, 510, 292, 3697, 514, 298, 1692, + 1299, 1243, 2823, 1165, 2835, -1044, -1044, 2483, 6408, 4593, + 31, -1044, 4619, 1168, -1044, 3725, 1301, 2483, 1306, 1308, + 2483, 1310, 1312, 2483, 1313, 1176, -1044, 2483, -1044, 192, + -1044, -1044, 756, -1044, 2483, -1044, 1692, 2483, 1316, -1044, + -1044, 1180, 3753, -1044, -1044, 1184, 3781, -1044, -1044, 1185, + 3809, -1044, 1318, 2855, 384, 2845, 1319, 1196, 6429, 763, + 3837, 1188, 192, 1320, 192, 1323, 192, 1331, -1044, -1044, + -1044, -1044, 192, -1044, 673, -1044, 1197, 1332, 1317, 412, + -1044, 1200, 438, -1044, 1204, 446, -1044, 1205, 457, 768, + -1044, 1206, 1692, -1044, 1207, 1335, 192, 1336, 192, 1340, + 192, -1044, 673, 1346, 673, 769, 1348, -1044, 460, -1044, + 463, -1044, 472, -1044, -1044, 772, -1044, 1350, -1044, 1351, + 1352, 1354, 673, 1355, -1044, -1044, -1044, -1044, -1044, -1044 +}; - 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. +/* YYPGOTO[NTERM-NUM]. */ +static const yytype_int16 yypgoto[] = +{ + -1044, -1044, -1044, -1044, 579, -1044, -1044, 788, -1044, 226, + -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, + -1044, -1044, -1044, -270, 1, -1044, 60, 1362, 5, -347, + -167, 9, -1044, -1044, -1044, -1044, -1044, 1364, -1044, -1044, + -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, -1044, + -1044, -1044, -628, -688, -1044, -1044, -1044, -5, -1044, 231, + -1044, -1043, 396, 159, 115, -633, 480, -1044, -58, -1 +}; - 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. +/* 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 -5 +static const yytype_int16 yytable[] = +{ + 210, 127, 655, 529, 453, 129, 179, 126, 64, 1102, + 359, 575, 65, 363, 202, 182, 368, 274, 779, 211, + 192, 575, 145, 150, 145, 204, 205, 770, 216, 838, + 650, 133, 204, 205, 173, 902, 365, 1165, 366, 387, + 136, 895, 389, 119, 120, 904, 4, 137, 195, 714, + 741, 165, 166, 715, 716, 347, 348, 103, 104, 105, + 106, 167, 898, 107, 103, 104, 105, 106, 168, 642, + 107, 5, 349, 174, 136, 140, 175, 218, 1066, 176, + 1067, 710, 547, 548, 448, 903, 130, 576, 577, 578, + 579, 580, 131, 840, 146, 905, 712, 576, 577, 578, + 579, 580, 642, 475, 275, 276, 347, 348, 476, 203, + 151, 267, 268, 269, 771, 772, 270, 273, 132, 656, + 278, 837, 938, 1189, 939, 140, 298, 135, 148, 300, + 138, 301, 308, 311, 312, 713, 314, 308, 316, 317, + 141, 308, 320, 321, 890, 180, 329, 142, 119, 120, + 139, 581, 838, 212, 183, 213, 165, 166, 656, 193, + 214, 862, 345, 346, 206, 452, 167, 217, 134, 651, + 367, 209, 346, 177, 1166, 112, 113, 114, 115, 1235, + 196, 644, 347, 348, 374, 375, 376, 219, 378, 220, + 141, 381, 382, 449, 544, 119, 120, 711, 347, 348, + 347, 348, 643, 441, 442, 443, 444, 392, 112, 113, + 114, 115, 561, 149, 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, 221, 315, 222, 984, + 143, 319, 169, 171, 714, 178, 144, 308, 715, 716, + 147, 112, 113, 114, 115, 454, 459, 460, 461, 462, + 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, + 473, 119, 120, 714, 347, 348, 309, 715, 716, 481, + 148, 309, 483, 347, 348, 309, 347, 348, 489, 205, + 714, 350, 714, 494, 715, 716, 715, 716, 481, 308, + 361, 152, 940, 504, 941, 506, 507, 508, 153, 510, + 511, 512, 514, 514, 514, 514, 515, 515, 515, 515, + 103, 104, 105, 106, 347, 348, 107, 531, 532, 533, + 534, 267, 268, 535, 525, 525, 158, 545, 528, 528, + 884, 574, 550, 154, 714, 953, 554, 555, 715, 716, + 714, 163, 204, 205, 715, 716, 347, 348, 565, 566, + 155, 567, 1119, 156, 1148, 157, 570, 450, 164, 573, + 1081, 632, 520, 838, 572, 342, 633, 344, 516, 517, + 518, 119, 120, 351, 103, 104, 105, 106, 360, 172, + 107, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 502, 293, 294, 785, 181, 1107, 880, 295, + 485, 309, 184, 485, 838, 185, 1151, 838, 1032, 501, + 838, 638, 1154, 223, 225, 224, 226, 395, 647, 347, + 348, 646, 645, 1047, 186, 1122, 714, 1125, 1048, 1128, + 715, 716, 227, 482, 228, 530, 112, 113, 114, 115, + 198, 308, 659, 187, 638, 663, 922, 923, 664, 665, + 667, 189, 482, 309, 714, 188, 119, 120, 715, 716, + 190, 347, 348, 229, 308, 230, 838, 665, 685, 883, + 885, 119, 120, 231, 691, 232, 191, 942, 741, 943, + 714, 931, 932, 743, 715, 716, 701, 702, 714, 197, + 199, 838, 715, 716, 838, 705, 200, 838, 1200, 714, + 838, 1184, 714, 715, 716, 714, 715, 716, 201, 715, + 716, 261, 262, 723, 714, 326, 263, 725, 715, 716, + 838, 333, 838, 1041, 838, 733, 1225, 735, 736, 347, + 348, 233, 279, 234, 1209, 235, 1212, 236, 1215, 347, + 348, 237, 742, 238, 1218, 543, 764, 364, 523, 524, + 264, 370, 1227, 265, 239, 822, 240, 277, 344, 1017, + 1229, 658, 347, 348, 347, 348, 347, 348, 1238, 784, + 1240, 1231, 1242, 296, 1249, 753, 754, 1250, 839, 241, + 1036, 242, 1082, 243, 682, 244, 1251, 347, 348, 755, + 756, 757, 758, 759, 760, 761, 347, 348, 308, 347, + 348, 297, 765, 1084, 299, 309, 347, 348, 313, 773, + 347, 348, 1086, 666, 668, 1147, 292, 293, 294, 782, + 440, 205, 1150, 295, 330, 318, 1153, 308, 309, 937, + 328, 666, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 331, 204, 205, 308, + 295, 334, 103, 104, 105, 106, 332, 335, 107, 1042, + 7, 8, 119, 120, 245, 159, 246, 446, 160, 213, + 247, 161, 248, 162, 214, 308, 308, 308, 308, 103, + 104, 105, 106, 336, 249, 107, 250, 251, 498, 252, + 337, 536, 13, 14, 537, 16, 17, 538, 19, 539, + 21, 1116, 22, 341, 24, 25, 338, 27, 28, 339, + 119, 120, 864, 865, 340, 479, 869, 213, 763, 352, + 362, 700, 214, 39, 371, 30, 31, 32, 33, 253, + 35, 254, 353, 354, 43, 44, 45, 742, 40, 41, + 255, 886, 256, 891, 719, 355, 372, 788, 52, 53, + 257, 897, 258, 373, 540, 900, 290, 291, 292, 293, + 294, 259, 309, 260, 379, 295, 485, 377, 486, 805, + 485, 380, 491, 918, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 383, 933, 934, 935, + 295, 309, 546, 384, 385, 830, 831, 832, 833, 386, + 948, 950, 388, 485, 951, 495, 390, 630, 985, 631, + 485, 391, 641, 309, 639, 640, 393, 958, 959, 960, + 485, 796, 683, 797, 812, 485, 397, 804, 967, 394, + 892, 964, 893, 973, 485, 485, 899, 916, 445, 309, + 309, 309, 309, 485, 485, 944, 945, 485, 295, 946, + 978, 455, 485, 977, 947, 854, 970, 1003, 971, 1004, + 1053, 787, 1054, 1129, 456, 1130, 988, 970, 1053, 1140, + 1186, 480, 457, 992, 993, 970, 280, 1206, 995, 813, + 1232, 970, 1233, 1247, 1252, 503, 1253, 1001, 1002, 509, + 519, 549, 552, 553, 1132, 559, 634, 1011, 562, 635, + 636, 1012, 637, 648, 649, 653, 660, 669, 827, 828, + 829, 525, 670, 671, 673, 528, 674, 675, 676, 726, + 678, 679, 680, 681, 695, 687, 696, 697, 698, 703, + 704, 203, 699, 1049, 1050, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 729, + 730, 1064, 731, 295, 732, 747, 752, 748, 749, 751, + 762, 767, 1072, 1185, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 768, 769, + 1079, 774, 295, 775, 855, 777, 778, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 1092, 781, 783, 1095, 295, 1096, 791, 794, 800, + 801, 807, 808, 1099, 809, 810, 811, 814, 1103, 815, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 816, 817, 792, 793, 295, 795, + 952, 798, 799, 818, 819, 802, 803, 1120, 820, 1123, + 821, 1126, 826, 525, 834, 835, 836, 528, 841, 1134, + 843, 845, 846, 847, 851, 1138, 1139, 863, 856, 857, + 858, 859, 860, 861, 1142, 868, 458, 879, 881, 887, + 888, 894, 1145, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 901, 848, 849, 850, 295, 907, + 908, 910, 973, 909, 989, 911, 990, 913, 914, 915, + 917, 936, 1172, 474, 955, 1176, 1220, 954, 1180, 956, + 957, 962, 1183, 963, 975, 965, 979, 980, 982, 1188, + 987, 991, 1190, 994, 996, 1033, 998, 999, 1000, 1019, + 1005, 1022, 1006, 1025, 1243, 1007, 1246, 1008, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 1009, 1010, 1020, + 906, 295, 1023, 1026, 1258, 1028, 912, 1029, 1030, 1031, + 1044, 1045, 1052, 1056, 1057, 919, 920, 921, 1058, 1061, + 924, 925, 926, 927, 928, 929, 930, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 949, 1060, 1063, 1062, 295, 1071, 1090, 1075, 1077, + 1080, 1088, 1078, 1093, 1083, 1085, 1097, 1087, 1104, 1091, + 1105, 1106, 961, 1110, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 1094, 75, + 302, 1111, 295, 1112, 1113, 79, 80, 81, 1114, 976, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 1108, 1141, 1143, 1157, 1156, 1137, 1170, 1160, 303, + 1168, 1144, 1173, 1121, 1174, 1124, 1177, 1127, 1178, 1181, + 1182, 1191, 1224, 1192, 1198, 1203, 1210, 1194, 1196, 1213, + 1208, 30, 31, 32, 33, 34, 35, 1216, 1223, 1204, + 1222, 1237, 1239, 1226, 40, 41, 1241, 1228, 1230, 1234, + 1037, 1236, 1244, 1038, 1248, 776, 1254, 1255, 1256, 1046, + 1257, 1259, 745, 1162, 896, 63, 1051, 71, 981, 0, + 1055, 0, 0, 0, 0, 108, 109, 110, 111, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 806, 116, 304, 0, 0, 0, 118, 0, 0, + 0, 0, 121, 0, 0, 0, 0, 124, 0, 0, + 500, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 75, 302, 0, 0, 1089, + 0, 79, 80, 81, 0, 0, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 0, 0, 0, + 0, 0, 0, 0, 0, 303, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 1131, 30, 31, 32, + 33, 34, 35, 483, 0, 0, 0, 0, 0, 0, + 40, 41, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 322, 0, 0, 0, 1155, 842, 0, 0, 0, + 0, 108, 109, 110, 111, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 116, 323, + 0, 0, 0, 118, 0, 0, 0, 0, 121, 0, + 75, 302, 0, 124, 0, 324, 79, 80, 81, 0, + 0, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, + 101, 102, 0, 0, 0, 0, 0, 0, 0, 0, + 303, 0, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 484, 293, 294, 0, 0, 0, 0, + 295, 0, 30, 31, 32, 33, 34, 35, 483, 0, + 0, 0, 0, 0, 0, 40, 41, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 369, 0, 0, 0, + 0, 889, 0, 0, 0, 0, 108, 109, 110, 111, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 116, 323, 0, 0, 0, 118, 0, + 0, 0, 0, 121, 0, 75, 302, 0, 124, 0, + 324, 79, 80, 81, 0, 0, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 0, 0, 0, + 0, 0, 0, 0, 0, 303, 0, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 502, 293, + 294, 0, 0, 0, 0, 295, 0, 30, 31, 32, + 33, 34, 35, 563, 0, 0, 0, 0, 0, 0, + 40, 41, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 1059, 0, 0, 0, + 0, 108, 109, 110, 111, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 116, 323, + 0, 0, 0, 118, 0, 0, 0, 0, 121, 0, + 75, 302, 0, 124, 0, 324, 79, 80, 81, 0, + 0, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, + 101, 102, 0, 0, 0, 0, 0, 0, 0, 0, + 303, 0, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 30, 31, 32, 33, 34, 35, 654, 0, + 0, 0, 0, 0, 0, 40, 41, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 108, 109, 110, 111, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 116, 304, 0, 0, 0, 118, 0, + 0, 0, 0, 121, 0, 75, 302, 0, 124, 0, + 499, 79, 80, 81, 0, 0, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 0, 0, 0, + 0, 0, 0, 0, 0, 303, 0, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 30, 31, 32, + 33, 34, 35, 0, 0, 0, 75, 266, 0, 0, + 40, 41, 79, 80, 81, 0, 0, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 1073, 0, + 0, 108, 109, 110, 111, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 116, 304, + 0, 0, 0, 118, 0, 0, 0, 0, 121, 0, + 75, 266, 0, 124, 0, 684, 79, 80, 81, 0, + 0, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, + 101, 102, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 108, 109, 110, 111, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, + 117, 0, 0, 0, 118, 0, 0, 0, 0, 121, + 0, 0, 271, 0, 124, 0, 272, 0, 0, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 0, 0, 0, 0, 1074, 108, 109, 110, 111, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 116, 117, 0, 0, 0, 118, 0, + 0, 0, 0, 121, 0, 0, 661, 0, 124, 0, + 662, 75, 266, 0, 0, 0, 0, 79, 80, 81, + 0, 0, 82, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 0, 0, 0, 75, 76, 77, 0, + 78, 0, 79, 80, 81, 0, 0, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 0, 103, + 104, 105, 106, 0, 0, 107, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 1076, 0, 108, 109, 110, + 111, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 356, 357, 0, 0, 0, 118, + 0, 0, 0, 0, 358, 0, 0, 0, 0, 124, + 0, 168, 108, 109, 110, 111, 112, 113, 114, 115, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, + 117, 0, 0, 0, 118, 0, 119, 120, 0, 121, + 0, 122, 0, 123, 124, 75, 302, 0, 0, 0, + 0, 79, 80, 81, 0, 0, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 0, 0, 0, + 0, 0, 0, 0, 0, 303, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 30, 31, 32, + 33, 34, 35, 0, 0, 0, 75, 266, 0, 0, + 40, 41, 79, 80, 81, 0, 0, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 0, 0, + 0, 108, 109, 110, 111, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 116, 304, + 0, 0, 0, 118, 75, 266, 205, 0, 121, 0, + 79, 80, 81, 124, 0, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 0, 103, 104, 105, + 106, 0, 0, 107, 0, 0, 0, 0, 0, 0, + 0, 0, 108, 109, 110, 111, 0, 0, 0, 7, + 8, 0, 0, 0, 0, 0, 0, 0, 0, 116, + 117, 0, 0, 0, 118, 0, 0, 0, 0, 121, + 0, 0, 0, 0, 124, 0, 0, 0, 0, 0, + 536, 13, 14, 537, 16, 17, 538, 19, 539, 21, + 0, 22, 0, 24, 25, 0, 27, 28, 0, 0, + 108, 109, 110, 111, 0, 0, 0, 0, 0, 0, + 0, 0, 39, 7, 8, 0, 0, 116, 117, 0, + 0, 0, 118, 43, 44, 45, 0, 121, 0, 0, + 0, 0, 124, 0, 0, 7, 8, 52, 53, 0, + 0, 0, 0, 540, 536, 13, 14, 537, 16, 17, + 538, 19, 539, 21, 0, 22, 0, 24, 25, 0, + 27, 28, 0, 0, 0, 0, 536, 13, 14, 537, + 16, 17, 538, 19, 539, 21, 39, 22, 0, 24, + 25, 551, 27, 28, 0, 0, 0, 43, 44, 45, + 0, 0, 0, 0, 0, 0, 0, 0, 39, 7, + 8, 52, 53, 0, 0, 0, 0, 540, 0, 43, + 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 7, 8, 52, 53, 0, 0, 0, 0, 540, + 536, 13, 14, 537, 16, 17, 538, 19, 539, 21, + 0, 22, 0, 24, 25, 568, 27, 28, 0, 0, + 0, 0, 536, 13, 14, 537, 16, 17, 538, 19, + 539, 21, 39, 22, 0, 24, 25, 569, 27, 28, + 0, 0, 0, 43, 44, 45, 0, 0, 0, 0, + 0, 0, 0, 0, 39, 7, 8, 52, 53, 0, + 0, 1161, 0, 540, 0, 43, 44, 45, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 7, 8, 52, + 53, 1199, 0, 0, 0, 540, 536, 13, 14, 537, + 16, 17, 538, 19, 539, 21, 0, 22, 0, 24, + 25, 720, 27, 28, 790, 0, 0, 0, 536, 13, + 14, 537, 16, 17, 538, 19, 539, 21, 39, 22, + 0, 24, 25, 734, 27, 28, 853, 0, 0, 43, + 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, + 39, 0, 0, 52, 53, 0, 0, 0, 0, 540, + 0, 43, 44, 45, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 52, 53, 0, 0, 0, + 0, 540, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 1158, 0, 0, + 295, 0, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 1201, + 295, 0, 0, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + -4, 1, 0, 295, -4, 0, 0, 0, 0, 0, + 0, 0, -4, -4, 0, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, -4, 0, 0, 0, 0, + -4, -4, 688, -4, -4, -4, -4, -4, -4, -4, + -4, -4, -4, 0, -4, -4, -4, -4, -4, -4, + -4, 0, 0, 0, -4, -4, -4, -4, -4, -4, + -4, 0, -4, -4, -4, -4, 0, 0, -4, -4, + 0, 6, 0, 0, 0, -4, -4, -4, -4, 7, + 8, -4, 0, -4, 0, -4, -4, -4, -4, 0, + -4, -4, 0, 0, -4, -4, -4, -4, -4, 0, + 0, 0, 9, 0, 0, 0, 0, 10, 11, 0, + 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 0, 22, 23, 24, 25, 26, 27, 28, 0, 0, + 0, 29, 30, 31, 32, 33, 34, 35, 0, 36, + 37, 38, 39, 0, 0, 40, 41, 7, 8, 0, + 0, 0, 42, 43, 44, 45, 0, 0, 46, 0, + 47, 0, 48, 49, 50, 51, 0, 52, 53, 0, + 0, 54, 55, 56, 57, 58, 0, 0, 536, 13, + 14, 537, 16, 17, 538, 19, 539, 21, 0, 22, + 0, 24, 25, 0, 27, 28, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 39, 0, 0, 0, 295, 0, 0, 0, 451, 0, + 0, 43, 44, 45, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 52, 53, 0, 0, 0, + 0, 540, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 1015, 0, 1016, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 1039, 0, 1040, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 1117, 0, 1118, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 0, 0, 692, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, + 0, 693, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 0, 0, 744, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 0, 0, 789, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 0, 0, 825, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 0, 0, 1013, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, + 0, 1035, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 0, 0, 1065, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 0, 0, 1068, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 0, 0, 1069, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 0, 0, 1070, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, + 0, 1133, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 0, 0, 1135, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 0, 0, 1136, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 0, 0, 1146, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 0, 0, 1149, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, + 0, 1152, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 0, 0, 1169, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 0, 0, 1193, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 0, 0, 1195, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 0, 0, 1197, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, + 0, 1207, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 447, 0, 0, 0, 0, 521, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 477, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 521, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 522, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 560, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 610, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 611, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 624, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 625, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 626, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 627, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 628, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 629, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 707, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 708, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 709, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 786, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 823, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 824, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 852, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 968, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 969, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 986, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 997, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 1100, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 0, 0, 0, 1101, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 0, 0, 0, 1109, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 0, 0, 0, 1115, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 0, 0, 0, 1164, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 0, 0, + 0, 1167, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 571, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 589, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 591, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 593, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 595, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 597, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 599, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 601, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 603, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 605, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 607, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 609, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 613, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 615, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 617, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 619, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 621, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 623, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 706, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 722, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 724, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 0, 0, 727, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 0, 0, + 728, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 0, 0, 740, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 0, 0, 766, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 0, 0, 871, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 0, 0, 873, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 0, 0, 875, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 0, 0, 877, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 0, + 0, 878, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 0, 0, 983, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 447, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 478, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 487, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 488, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 490, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 492, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 493, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 496, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 497, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 505, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 556, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 557, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 558, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 564, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 588, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 590, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 592, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 594, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 596, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 598, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 600, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 602, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 604, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 606, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 608, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 612, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 614, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 616, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 618, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 620, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 622, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 672, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 677, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 686, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 689, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 690, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 694, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 737, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 738, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 739, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 844, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 870, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 0, 0, 0, 0, 295, 0, 872, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 0, 0, 0, 0, 295, 0, 874, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 0, 0, 0, 0, 295, 0, 876, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 0, 0, 0, 0, 295, 0, + 882, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 0, 0, 0, 0, 295, + 0, 974, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 0, 0, 0, 0, + 295, 0, 1014, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 0, 0, 0, + 0, 295, 0, 1034, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 0, 0, + 0, 0, 295, 0, 1043, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 0, + 0, 0, 0, 295, 0, 1163, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 0, 0, 0, 0, 295, 0, 1205 +}; - 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., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - -/* As a special exception, when this file is copied by Bison into a - Bison output file, you may use that output file without restriction. - This special exception was added by the Free Software Foundation - in version 1.24 of Bison. */ - -/* This is the parser code that is written into each bison parser - when the %semantic_parser declaration is not specified in the grammar. - It was written by Richard Stallman by simplifying the hairy parser - used when %semantic_parser is specified. */ - -#ifndef YYSTACK_USE_ALLOCA -#ifdef alloca -#define YYSTACK_USE_ALLOCA -#else /* alloca not defined */ -#ifdef __GNUC__ -#define YYSTACK_USE_ALLOCA -#define alloca __builtin_alloca -#else /* not GNU C. */ -#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi) || (defined (__sun) && defined (__i386)) -#define YYSTACK_USE_ALLOCA -#include <alloca.h> -#else /* not sparc */ -/* We think this test detects Watcom and Microsoft C. */ -/* This used to test MSDOS, but that is a bad idea - since that symbol is in the user namespace. */ -#if (defined (_MSDOS) || defined (_MSDOS_)) && !defined (__TURBOC__) -#if 0 /* No need for malloc.h, which pollutes the namespace; - instead, just don't use alloca. */ -#include <malloc.h> -#endif -#else /* not MSDOS, or __TURBOC__ */ -#if defined(_AIX) -/* I don't know what this was needed for, but it pollutes the namespace. - So I turned it off. rms, 2 May 1997. */ -/* #include <malloc.h> */ - #pragma alloca -#define YYSTACK_USE_ALLOCA -#else /* not MSDOS, or __TURBOC__, or _AIX */ -#if 0 -#ifdef __hpux /* haible@ilog.fr says this works for HPUX 9.05 and up, - and on HPUX 10. Eventually we can turn this on. */ -#define YYSTACK_USE_ALLOCA -#define alloca __builtin_alloca -#endif /* __hpux */ -#endif -#endif /* not _AIX */ -#endif /* not MSDOS, or __TURBOC__ */ -#endif /* not sparc */ -#endif /* not GNU C */ -#endif /* alloca not defined */ -#endif /* YYSTACK_USE_ALLOCA not defined */ - -#ifdef YYSTACK_USE_ALLOCA -#define YYSTACK_ALLOC alloca -#else -#define YYSTACK_ALLOC malloc -#endif +static const yytype_int16 yycheck[] = +{ + 58, 6, 6, 350, 274, 6, 4, 6, 3, 1052, + 177, 4, 3, 180, 4, 4, 183, 4, 651, 4, + 4, 4, 71, 49, 71, 4, 5, 4, 4, 717, + 4, 6, 4, 5, 4, 6, 4, 6, 6, 206, + 136, 6, 209, 133, 134, 6, 6, 143, 4, 72, + 140, 126, 127, 76, 77, 126, 127, 36, 37, 38, + 39, 136, 6, 42, 36, 37, 38, 39, 143, 7, + 42, 0, 143, 43, 136, 71, 46, 78, 6, 49, + 6, 143, 6, 7, 7, 56, 13, 80, 81, 82, + 83, 84, 49, 721, 143, 56, 143, 80, 81, 82, + 83, 84, 7, 137, 91, 92, 126, 127, 142, 99, + 136, 116, 117, 118, 91, 92, 121, 122, 136, 123, + 125, 144, 142, 1166, 144, 71, 131, 6, 136, 134, + 136, 136, 137, 138, 139, 143, 141, 142, 143, 144, + 136, 146, 147, 148, 777, 143, 151, 143, 133, 134, + 136, 144, 840, 138, 143, 140, 126, 127, 123, 143, + 145, 144, 167, 168, 143, 7, 136, 143, 143, 143, + 138, 143, 177, 143, 143, 113, 114, 115, 116, 1222, + 136, 451, 126, 127, 189, 190, 191, 136, 193, 138, + 136, 196, 197, 116, 361, 133, 134, 143, 126, 127, + 126, 127, 140, 261, 262, 263, 264, 212, 113, 114, + 115, 116, 379, 53, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, + 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 260, 136, 142, 138, 892, + 136, 146, 31, 32, 72, 34, 136, 272, 76, 77, + 136, 113, 114, 115, 116, 274, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 133, 134, 72, 126, 127, 137, 76, 77, 304, + 136, 142, 8, 126, 127, 146, 126, 127, 313, 5, + 72, 143, 72, 318, 76, 77, 76, 77, 323, 324, + 143, 49, 142, 328, 144, 330, 331, 332, 49, 334, + 335, 336, 337, 338, 339, 340, 337, 338, 339, 340, + 36, 37, 38, 39, 126, 127, 42, 352, 353, 354, + 355, 356, 357, 358, 349, 350, 51, 362, 349, 350, + 7, 143, 367, 49, 72, 144, 371, 372, 76, 77, + 72, 136, 4, 5, 76, 77, 126, 127, 383, 384, + 46, 386, 144, 49, 144, 51, 391, 272, 143, 394, + 1018, 137, 142, 1081, 393, 164, 142, 166, 338, 339, + 340, 133, 134, 172, 36, 37, 38, 39, 177, 143, + 42, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, 137, 49, 1060, 137, 135, + 142, 272, 6, 142, 1122, 43, 144, 1125, 144, 324, + 1128, 446, 144, 136, 136, 138, 138, 216, 453, 126, + 127, 452, 451, 137, 4, 1083, 72, 1085, 142, 1087, + 76, 77, 136, 304, 138, 142, 113, 114, 115, 116, + 6, 476, 477, 4, 479, 480, 62, 63, 483, 484, + 485, 136, 323, 324, 72, 4, 133, 134, 76, 77, + 136, 126, 127, 136, 499, 138, 1184, 502, 503, 769, + 770, 133, 134, 136, 509, 138, 136, 142, 140, 144, + 72, 6, 7, 571, 76, 77, 521, 522, 72, 136, + 99, 1209, 76, 77, 1212, 530, 99, 1215, 144, 72, + 1218, 1159, 72, 76, 77, 72, 76, 77, 4, 76, + 77, 136, 136, 548, 72, 149, 136, 552, 76, 77, + 1238, 155, 1240, 8, 1242, 560, 144, 562, 563, 126, + 127, 136, 6, 138, 1192, 136, 1194, 138, 1196, 126, + 127, 136, 571, 138, 1202, 142, 634, 181, 347, 348, + 136, 185, 144, 136, 136, 142, 138, 4, 357, 936, + 144, 476, 126, 127, 126, 127, 126, 127, 1226, 657, + 1228, 144, 1230, 6, 144, 610, 611, 144, 142, 136, + 142, 138, 142, 136, 499, 138, 144, 126, 127, 624, + 625, 626, 627, 628, 629, 630, 126, 127, 633, 126, + 127, 6, 637, 142, 5, 476, 126, 127, 136, 644, + 126, 127, 142, 484, 485, 142, 128, 129, 130, 654, + 4, 5, 142, 135, 143, 136, 142, 662, 499, 826, + 136, 502, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 136, 4, 5, 684, + 135, 143, 36, 37, 38, 39, 136, 143, 42, 144, + 12, 13, 133, 134, 136, 43, 138, 138, 46, 140, + 136, 49, 138, 51, 145, 710, 711, 712, 713, 36, + 37, 38, 39, 136, 136, 42, 138, 136, 322, 138, + 136, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 1078, 54, 4, 56, 57, 136, 59, 60, 136, + 133, 134, 747, 748, 136, 138, 751, 140, 633, 138, + 138, 520, 145, 75, 138, 65, 66, 67, 68, 136, + 70, 138, 143, 143, 86, 87, 88, 766, 78, 79, + 136, 770, 138, 778, 543, 143, 138, 662, 100, 101, + 136, 786, 138, 6, 106, 790, 126, 127, 128, 129, + 130, 136, 633, 138, 143, 135, 142, 140, 144, 684, + 142, 94, 144, 808, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 136, 822, 823, 824, + 135, 662, 144, 136, 6, 710, 711, 712, 713, 136, + 835, 836, 6, 142, 839, 144, 6, 138, 896, 140, + 142, 138, 144, 684, 448, 449, 4, 852, 853, 854, + 142, 49, 144, 51, 6, 142, 6, 144, 863, 143, + 142, 860, 144, 868, 142, 142, 144, 144, 5, 710, + 711, 712, 713, 142, 142, 144, 144, 142, 135, 144, + 885, 140, 142, 884, 144, 8, 142, 4, 144, 6, + 142, 660, 144, 142, 7, 144, 901, 142, 142, 144, + 144, 143, 138, 908, 909, 142, 6, 144, 913, 61, + 142, 142, 144, 144, 142, 7, 144, 922, 923, 7, + 137, 6, 136, 7, 1091, 91, 142, 932, 143, 137, + 137, 932, 142, 6, 4, 139, 7, 94, 707, 708, + 709, 936, 7, 7, 7, 936, 94, 7, 7, 553, + 94, 7, 7, 6, 137, 7, 137, 137, 137, 144, + 144, 99, 140, 968, 969, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 7, + 7, 986, 7, 135, 140, 136, 6, 136, 143, 136, + 4, 6, 997, 1160, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, 6, 139, + 1015, 6, 135, 6, 137, 7, 138, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, 1036, 6, 123, 1039, 135, 1041, 49, 7, 7, + 51, 7, 143, 1048, 7, 7, 7, 7, 1053, 7, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 7, 7, 670, 671, 135, 673, + 839, 675, 676, 7, 7, 679, 680, 1082, 7, 1084, + 4, 1086, 143, 1078, 6, 143, 136, 1078, 6, 1094, + 6, 6, 6, 6, 4, 1100, 1101, 136, 7, 7, + 7, 6, 4, 6, 1109, 143, 6, 137, 137, 140, + 7, 6, 1117, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 143, 729, 730, 731, 135, 6, + 143, 6, 1137, 143, 903, 6, 905, 143, 6, 6, + 5, 143, 1147, 6, 6, 1150, 1204, 7, 1153, 6, + 90, 5, 1157, 5, 140, 6, 6, 4, 6, 1164, + 139, 6, 1167, 6, 5, 142, 6, 6, 6, 938, + 6, 940, 6, 942, 1232, 6, 1234, 6, 122, 123, + 124, 125, 126, 127, 128, 129, 130, 6, 6, 6, + 794, 135, 6, 6, 1252, 6, 800, 6, 6, 6, + 6, 6, 143, 4, 6, 809, 810, 811, 6, 6, + 814, 815, 816, 817, 818, 819, 820, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, 835, 7, 6, 140, 135, 5, 7, 6, 6, + 144, 6, 143, 6, 143, 143, 6, 143, 6, 143, + 6, 137, 856, 6, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, 89, 3, + 4, 6, 135, 6, 6, 9, 10, 11, 6, 883, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 92, 6, 5, 61, 6, 143, 6, 143, 43, + 142, 144, 6, 1082, 6, 1084, 6, 1086, 6, 6, + 144, 5, 5, 143, 6, 6, 6, 143, 143, 6, + 142, 65, 66, 67, 68, 69, 70, 6, 6, 143, + 143, 6, 6, 143, 78, 79, 6, 143, 143, 143, + 954, 144, 6, 957, 6, 6, 6, 6, 6, 963, + 6, 6, 574, 1137, 785, 3, 970, 3, 888, -1, + 974, -1, -1, -1, -1, 109, 110, 111, 112, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 6, 126, 127, -1, -1, -1, 131, -1, -1, + -1, -1, 136, -1, -1, -1, -1, 141, -1, -1, + 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 3, 4, -1, -1, 1033, + -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, -1, -1, -1, + -1, -1, -1, -1, -1, 43, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, 1090, 65, 66, 67, + 68, 69, 70, 8, -1, -1, -1, -1, -1, -1, + 78, 79, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, 99, -1, -1, -1, 1129, 6, -1, -1, -1, + -1, 109, 110, 111, 112, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 126, 127, + -1, -1, -1, 131, -1, -1, -1, -1, 136, -1, + 3, 4, -1, 141, -1, 143, 9, 10, 11, -1, + -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, -1, -1, -1, -1, -1, -1, -1, -1, + 43, -1, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, 65, 66, 67, 68, 69, 70, 8, -1, + -1, -1, -1, -1, -1, 78, 79, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, -1, -1, -1, -1, 135, 99, -1, -1, -1, + -1, 6, -1, -1, -1, -1, 109, 110, 111, 112, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 126, 127, -1, -1, -1, 131, -1, + -1, -1, -1, 136, -1, 3, 4, -1, 141, -1, + 143, 9, 10, 11, -1, -1, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, -1, -1, -1, + -1, -1, -1, -1, -1, 43, -1, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, -1, -1, -1, -1, 135, -1, 65, 66, 67, + 68, 69, 70, 8, -1, -1, -1, -1, -1, -1, + 78, 79, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, -1, -1, 6, -1, -1, -1, + -1, 109, 110, 111, 112, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 126, 127, + -1, -1, -1, 131, -1, -1, -1, -1, 136, -1, + 3, 4, -1, 141, -1, 143, 9, 10, 11, -1, + -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, -1, -1, -1, -1, -1, -1, -1, -1, + 43, -1, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, 65, 66, 67, 68, 69, 70, 8, -1, + -1, -1, -1, -1, -1, 78, 79, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, -1, -1, -1, -1, 135, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 109, 110, 111, 112, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 126, 127, -1, -1, -1, 131, -1, + -1, -1, -1, 136, -1, 3, 4, -1, 141, -1, + 143, 9, 10, 11, -1, -1, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, -1, -1, -1, + -1, -1, -1, -1, -1, 43, -1, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, -1, -1, -1, -1, 135, -1, 65, 66, 67, + 68, 69, 70, -1, -1, -1, 3, 4, -1, -1, + 78, 79, 9, 10, 11, -1, -1, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 6, -1, + -1, 109, 110, 111, 112, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 126, 127, + -1, -1, -1, 131, -1, -1, -1, -1, 136, -1, + 3, 4, -1, 141, -1, 143, 9, 10, 11, -1, + -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 109, 110, 111, 112, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 126, + 127, -1, -1, -1, 131, -1, -1, -1, -1, 136, + -1, -1, 139, -1, 141, -1, 143, -1, -1, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, -1, -1, -1, -1, 135, -1, -1, + -1, -1, -1, -1, -1, 6, 109, 110, 111, 112, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 126, 127, -1, -1, -1, 131, -1, + -1, -1, -1, 136, -1, -1, 139, -1, 141, -1, + 143, 3, 4, -1, -1, -1, -1, 9, 10, 11, + -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, 3, 4, 5, -1, + 7, -1, 9, 10, 11, -1, -1, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, -1, 36, + 37, 38, 39, -1, -1, 42, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 6, -1, 109, 110, 111, + 112, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 126, 127, -1, -1, -1, 131, + -1, -1, -1, -1, 136, -1, -1, -1, -1, 141, + -1, 143, 109, 110, 111, 112, 113, 114, 115, 116, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 126, + 127, -1, -1, -1, 131, -1, 133, 134, -1, 136, + -1, 138, -1, 140, 141, 3, 4, -1, -1, -1, + -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, -1, -1, -1, + -1, -1, -1, -1, -1, 43, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, 65, 66, 67, + 68, 69, 70, -1, -1, -1, 3, 4, -1, -1, + 78, 79, 9, 10, 11, -1, -1, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, + -1, 109, 110, 111, 112, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 126, 127, + -1, -1, -1, 131, 3, 4, 5, -1, 136, -1, + 9, 10, 11, 141, -1, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, -1, 36, 37, 38, + 39, -1, -1, 42, -1, -1, -1, -1, -1, -1, + -1, -1, 109, 110, 111, 112, -1, -1, -1, 12, + 13, -1, -1, -1, -1, -1, -1, -1, -1, 126, + 127, -1, -1, -1, 131, -1, -1, -1, -1, 136, + -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + -1, 54, -1, 56, 57, -1, 59, 60, -1, -1, + 109, 110, 111, 112, -1, -1, -1, -1, -1, -1, + -1, -1, 75, 12, 13, -1, -1, 126, 127, -1, + -1, -1, 131, 86, 87, 88, -1, 136, -1, -1, + -1, -1, 141, -1, -1, 12, 13, 100, 101, -1, + -1, -1, -1, 106, 43, 44, 45, 46, 47, 48, + 49, 50, 51, 52, -1, 54, -1, 56, 57, -1, + 59, 60, -1, -1, -1, -1, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 75, 54, -1, 56, + 57, 144, 59, 60, -1, -1, -1, 86, 87, 88, + -1, -1, -1, -1, -1, -1, -1, -1, 75, 12, + 13, 100, 101, -1, -1, -1, -1, 106, -1, 86, + 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 12, 13, 100, 101, -1, -1, -1, -1, 106, + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + -1, 54, -1, 56, 57, 144, 59, 60, -1, -1, + -1, -1, 43, 44, 45, 46, 47, 48, 49, 50, + 51, 52, 75, 54, -1, 56, 57, 144, 59, 60, + -1, -1, -1, 86, 87, 88, -1, -1, -1, -1, + -1, -1, -1, -1, 75, 12, 13, 100, 101, -1, + -1, 6, -1, 106, -1, 86, 87, 88, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 12, 13, 100, + 101, 6, -1, -1, -1, 106, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, -1, 54, -1, 56, + 57, 144, 59, 60, 8, -1, -1, -1, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 75, 54, + -1, 56, 57, 144, 59, 60, 8, -1, -1, 86, + 87, 88, -1, -1, -1, -1, -1, -1, -1, -1, + 75, -1, -1, 100, 101, -1, -1, -1, -1, 106, + -1, 86, 87, 88, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 100, 101, -1, -1, -1, + -1, 106, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, 144, -1, -1, + 135, -1, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, 144, + 135, -1, -1, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 130, -1, -1, -1, + -1, 135, -1, -1, -1, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, -1, + 0, 1, -1, 135, 4, -1, -1, -1, -1, -1, + -1, -1, 12, 13, -1, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, -1, + -1, -1, -1, 135, -1, 35, -1, -1, -1, -1, + 40, 41, 144, 43, 44, 45, 46, 47, 48, 49, + 50, 51, 52, -1, 54, 55, 56, 57, 58, 59, + 60, -1, -1, -1, 64, 65, 66, 67, 68, 69, + 70, -1, 72, 73, 74, 75, -1, -1, 78, 79, + -1, 4, -1, -1, -1, 85, 86, 87, 88, 12, + 13, 91, -1, 93, -1, 95, 96, 97, 98, -1, + 100, 101, -1, -1, 104, 105, 106, 107, 108, -1, + -1, -1, 35, -1, -1, -1, -1, 40, 41, -1, + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + -1, 54, 55, 56, 57, 58, 59, 60, -1, -1, + -1, 64, 65, 66, 67, 68, 69, 70, -1, 72, + 73, 74, 75, -1, -1, 78, 79, 12, 13, -1, + -1, -1, 85, 86, 87, 88, -1, -1, 91, -1, + 93, -1, 95, 96, 97, 98, -1, 100, 101, -1, + -1, 104, 105, 106, 107, 108, -1, -1, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, -1, 54, + -1, 56, 57, -1, 59, 60, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + 75, -1, -1, -1, 135, -1, -1, -1, 139, -1, + -1, 86, 87, 88, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 100, 101, -1, -1, -1, + -1, 106, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, -1, -1, -1, 142, -1, 144, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + -1, -1, -1, -1, -1, 142, -1, 144, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, -1, -1, + -1, -1, -1, 142, -1, 144, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, + -1, -1, -1, 144, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, -1, -1, -1, -1, -1, -1, + -1, 144, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, -1, -1, -1, -1, -1, 144, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + -1, -1, -1, -1, -1, -1, -1, 144, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, -1, -1, + -1, -1, -1, -1, -1, 144, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, + -1, -1, -1, 144, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, -1, -1, -1, -1, -1, -1, + -1, 144, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, -1, -1, -1, -1, -1, 144, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + -1, -1, -1, -1, -1, -1, -1, 144, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, -1, -1, + -1, -1, -1, -1, -1, 144, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, + -1, -1, -1, 144, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, -1, -1, -1, -1, -1, -1, + -1, 144, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, -1, -1, -1, -1, -1, 144, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + -1, -1, -1, -1, -1, -1, -1, 144, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, -1, -1, + -1, -1, -1, -1, -1, 144, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, + -1, -1, -1, 144, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, -1, -1, -1, -1, -1, -1, + -1, 144, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, -1, -1, -1, -1, -1, 144, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + -1, -1, -1, -1, -1, -1, -1, 144, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, -1, -1, + -1, -1, -1, -1, -1, 144, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, + -1, -1, -1, 144, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, -1, -1, -1, -1, -1, -1, + -1, 144, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, 137, -1, -1, -1, -1, 142, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, -1, -1, + -1, -1, -1, 142, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, -1, -1, -1, -1, -1, 142, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + -1, -1, -1, -1, -1, 142, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, + -1, 142, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, -1, -1, -1, 142, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, -1, -1, + -1, -1, -1, 142, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, -1, -1, -1, -1, -1, 142, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + -1, -1, -1, -1, -1, 142, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, + -1, 142, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, -1, -1, -1, 142, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, -1, -1, + -1, -1, -1, 142, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, -1, -1, -1, -1, -1, 142, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + -1, -1, -1, -1, -1, 142, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, + -1, 142, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, -1, -1, -1, 142, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, -1, -1, + -1, -1, -1, 142, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, -1, -1, -1, -1, -1, 142, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + -1, -1, -1, -1, -1, 142, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, + -1, 142, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, -1, -1, -1, 142, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, -1, -1, + -1, -1, -1, 142, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, -1, -1, -1, -1, -1, 142, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + -1, -1, -1, -1, -1, 142, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, + -1, 142, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, -1, -1, -1, 142, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, -1, -1, + -1, -1, -1, 142, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, -1, -1, -1, -1, -1, 142, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + -1, -1, -1, -1, -1, 142, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, -1, -1, + -1, 142, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, 139, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, -1, + -1, -1, -1, 135, -1, -1, -1, 139, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, -1, -1, + 139, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, -1, -1, -1, -1, 135, + -1, -1, -1, 139, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, -1, -1, 139, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, -1, -1, -1, -1, 135, -1, -1, -1, 139, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + -1, -1, 139, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 130, -1, -1, -1, + -1, 135, -1, -1, -1, 139, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, 139, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, -1, -1, -1, -1, 135, -1, -1, + -1, 139, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, 139, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, -1, + -1, -1, -1, 135, -1, -1, -1, 139, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, -1, -1, + 139, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, -1, -1, -1, -1, 135, + -1, -1, -1, 139, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, -1, -1, 139, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, -1, -1, -1, -1, 135, -1, -1, -1, 139, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + -1, -1, 139, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 130, -1, -1, -1, + -1, 135, -1, -1, -1, 139, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, 139, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, -1, -1, -1, -1, 135, -1, -1, + -1, 139, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, 139, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, -1, + -1, -1, -1, 135, -1, -1, -1, 139, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, -1, -1, + 139, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, -1, -1, -1, -1, 135, + -1, -1, -1, 139, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, -1, -1, 139, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, -1, -1, -1, -1, 135, -1, -1, -1, 139, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + -1, -1, 139, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 130, -1, -1, -1, + -1, 135, -1, -1, -1, 139, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, -1, -1, 139, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, -1, -1, -1, -1, 135, -1, -1, + -1, 139, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, -1, -1, 139, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, -1, + -1, -1, -1, 135, -1, 137, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, 137, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, -1, -1, -1, -1, 135, -1, 137, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, 137, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, -1, -1, -1, -1, 135, -1, 137, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + 137, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, -1, -1, -1, -1, 135, + -1, 137, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, 137, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 130, -1, -1, -1, + -1, 135, -1, 137, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, 137, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, -1, + -1, -1, -1, 135, -1, 137, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, 137, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, -1, -1, -1, -1, 135, -1, 137, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, 137, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, -1, -1, -1, -1, 135, -1, 137, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + 137, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, -1, -1, -1, -1, 135, + -1, 137, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, 137, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 130, -1, -1, -1, + -1, 135, -1, 137, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, 137, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, -1, + -1, -1, -1, 135, -1, 137, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, 137, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, -1, -1, -1, -1, 135, -1, 137, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, 137, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, -1, -1, -1, -1, 135, -1, 137, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + 137, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, -1, -1, -1, -1, 135, + -1, 137, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, 137, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 130, -1, -1, -1, + -1, 135, -1, 137, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, 137, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, -1, + -1, -1, -1, 135, -1, 137, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, 137, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, -1, -1, -1, -1, 135, -1, 137, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, 137, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, -1, -1, -1, -1, 135, -1, 137, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + 137, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, -1, -1, -1, -1, 135, + -1, 137, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, 137, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 130, -1, -1, -1, + -1, 135, -1, 137, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, 137, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, -1, + -1, -1, -1, 135, -1, 137, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, 137, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, -1, -1, -1, -1, 135, -1, 137, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, -1, -1, -1, -1, 135, -1, 137, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, -1, -1, -1, -1, 135, -1, 137, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, -1, -1, -1, -1, 135, -1, + 137, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, -1, -1, -1, -1, 135, + -1, 137, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, -1, -1, -1, -1, + 135, -1, 137, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, 128, 129, 130, -1, -1, -1, + -1, 135, -1, 137, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, -1, -1, + -1, -1, 135, -1, 137, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, -1, + -1, -1, -1, 135, -1, 137, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + -1, -1, -1, -1, 135, -1, 137 +}; -/* Note: there must be only one dollar sign in this file. - It is replaced by the list of actions, each action - as one case of the switch. */ +/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing + symbol of state STATE-NUM. */ +static const yytype_uint8 yystos[] = +{ + 0, 1, 147, 148, 6, 0, 4, 12, 13, 35, + 40, 41, 43, 44, 45, 46, 47, 48, 49, 50, + 51, 52, 54, 55, 56, 57, 58, 59, 60, 64, + 65, 66, 67, 68, 69, 70, 72, 73, 74, 75, + 78, 79, 85, 86, 87, 88, 91, 93, 95, 96, + 97, 98, 100, 101, 104, 105, 106, 107, 108, 149, + 151, 152, 171, 173, 174, 177, 178, 179, 180, 181, + 182, 183, 200, 201, 202, 3, 4, 5, 7, 9, + 10, 11, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 36, 37, 38, 39, 42, 109, 110, + 111, 112, 113, 114, 115, 116, 126, 127, 131, 133, + 134, 136, 138, 140, 141, 169, 170, 203, 204, 215, + 13, 49, 136, 6, 143, 6, 136, 143, 136, 136, + 71, 136, 143, 136, 136, 71, 143, 136, 136, 53, + 49, 136, 49, 49, 49, 46, 49, 51, 51, 43, + 46, 49, 51, 136, 143, 126, 127, 136, 143, 205, + 206, 205, 143, 4, 43, 46, 49, 143, 205, 4, + 143, 49, 4, 143, 6, 43, 4, 4, 4, 136, + 136, 136, 4, 143, 211, 4, 136, 136, 6, 99, + 99, 4, 4, 99, 4, 5, 143, 214, 215, 143, + 214, 4, 138, 140, 145, 170, 4, 143, 215, 136, + 138, 136, 138, 136, 138, 136, 138, 136, 138, 136, + 138, 136, 138, 136, 138, 136, 138, 136, 138, 136, + 138, 136, 138, 136, 138, 136, 138, 136, 138, 136, + 138, 136, 138, 136, 138, 136, 138, 136, 138, 136, + 138, 136, 136, 136, 136, 136, 4, 203, 203, 203, + 203, 139, 143, 203, 4, 91, 92, 4, 203, 6, + 6, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, 135, 6, 6, 203, 5, + 203, 203, 4, 43, 127, 174, 177, 183, 203, 209, + 210, 203, 203, 136, 203, 210, 203, 203, 136, 210, + 203, 203, 99, 127, 143, 203, 208, 209, 136, 203, + 143, 136, 136, 208, 143, 143, 136, 136, 136, 136, + 136, 4, 205, 205, 205, 203, 203, 126, 127, 143, + 143, 205, 138, 143, 143, 143, 126, 127, 136, 176, + 205, 143, 138, 176, 208, 4, 6, 138, 176, 99, + 208, 138, 138, 6, 203, 203, 203, 140, 203, 143, + 94, 203, 203, 136, 136, 6, 136, 176, 6, 176, + 6, 138, 203, 4, 143, 205, 153, 6, 203, 203, + 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, + 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, + 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, + 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, + 4, 214, 214, 214, 214, 5, 138, 137, 7, 116, + 210, 139, 7, 169, 170, 140, 7, 138, 6, 203, + 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, + 203, 203, 203, 203, 6, 137, 142, 142, 137, 138, + 143, 203, 209, 8, 128, 142, 144, 137, 137, 203, + 137, 144, 137, 137, 203, 144, 137, 137, 208, 143, + 144, 210, 128, 7, 203, 137, 203, 203, 203, 7, + 203, 203, 203, 172, 203, 215, 172, 172, 172, 137, + 142, 142, 142, 205, 205, 174, 175, 176, 177, 175, + 142, 203, 203, 203, 203, 203, 43, 46, 49, 51, + 106, 173, 187, 142, 176, 203, 144, 6, 7, 6, + 203, 144, 136, 7, 203, 203, 137, 137, 137, 91, + 142, 176, 143, 8, 137, 203, 203, 203, 144, 144, + 203, 139, 170, 203, 143, 4, 80, 81, 82, 83, + 84, 144, 156, 160, 163, 165, 166, 168, 137, 139, + 137, 139, 137, 139, 137, 139, 137, 139, 137, 139, + 137, 139, 137, 139, 137, 139, 137, 139, 137, 139, + 142, 142, 137, 139, 137, 139, 137, 139, 137, 139, + 137, 139, 137, 139, 142, 142, 142, 142, 142, 142, + 138, 140, 137, 142, 142, 137, 137, 142, 203, 208, + 208, 144, 7, 140, 169, 170, 215, 203, 6, 4, + 4, 143, 212, 139, 8, 6, 123, 150, 210, 203, + 7, 139, 143, 203, 203, 203, 209, 203, 209, 94, + 7, 7, 137, 7, 94, 7, 7, 137, 94, 7, + 7, 6, 210, 144, 143, 203, 137, 7, 144, 137, + 137, 203, 144, 144, 137, 137, 137, 137, 137, 140, + 205, 203, 203, 144, 144, 203, 139, 142, 142, 142, + 143, 143, 143, 143, 72, 76, 77, 198, 199, 205, + 144, 184, 139, 203, 139, 203, 208, 139, 139, 7, + 7, 7, 140, 203, 144, 203, 203, 137, 137, 137, + 139, 140, 170, 214, 144, 153, 157, 136, 136, 143, + 167, 136, 6, 203, 203, 203, 203, 203, 203, 203, + 203, 203, 4, 210, 214, 203, 139, 6, 6, 139, + 4, 91, 92, 203, 6, 6, 6, 7, 138, 211, + 213, 6, 203, 123, 214, 137, 142, 205, 210, 144, + 8, 49, 208, 208, 7, 208, 49, 51, 208, 208, + 7, 51, 208, 208, 144, 210, 6, 7, 143, 7, + 7, 7, 6, 61, 7, 7, 7, 7, 7, 7, + 7, 4, 142, 142, 142, 144, 143, 205, 205, 205, + 210, 210, 210, 210, 6, 143, 136, 144, 199, 142, + 198, 6, 6, 6, 137, 6, 6, 6, 208, 208, + 208, 4, 142, 8, 8, 137, 7, 7, 7, 6, + 4, 6, 144, 136, 203, 203, 207, 208, 143, 203, + 137, 139, 137, 139, 137, 139, 137, 139, 139, 137, + 137, 137, 137, 169, 7, 169, 170, 140, 7, 6, + 211, 203, 142, 144, 6, 6, 150, 203, 6, 144, + 203, 143, 6, 56, 6, 56, 208, 6, 143, 143, + 6, 6, 208, 143, 6, 6, 144, 5, 203, 208, + 208, 208, 62, 63, 208, 208, 208, 208, 208, 208, + 208, 6, 7, 203, 203, 203, 143, 176, 142, 144, + 142, 144, 142, 144, 144, 144, 144, 144, 203, 208, + 203, 203, 205, 144, 7, 6, 6, 90, 203, 203, + 203, 208, 5, 5, 170, 6, 154, 203, 142, 142, + 142, 144, 155, 203, 137, 140, 208, 215, 203, 6, + 4, 212, 6, 139, 211, 214, 142, 139, 203, 205, + 205, 6, 203, 203, 6, 203, 5, 142, 6, 6, + 6, 203, 203, 4, 6, 6, 6, 6, 6, 6, + 6, 203, 215, 144, 137, 142, 144, 175, 188, 205, + 6, 189, 205, 6, 190, 205, 6, 191, 6, 6, + 6, 6, 144, 142, 137, 144, 142, 208, 208, 142, + 144, 8, 144, 137, 6, 6, 208, 137, 142, 203, + 203, 208, 143, 142, 144, 208, 4, 6, 6, 6, + 7, 6, 140, 6, 203, 144, 6, 6, 144, 144, + 144, 5, 203, 6, 6, 6, 6, 6, 143, 203, + 144, 198, 142, 143, 142, 143, 142, 143, 6, 208, + 7, 143, 203, 6, 89, 203, 203, 6, 158, 203, + 142, 142, 207, 203, 6, 6, 137, 211, 92, 142, + 6, 6, 6, 6, 6, 142, 175, 142, 144, 144, + 203, 205, 198, 203, 205, 198, 203, 205, 198, 142, + 144, 208, 176, 144, 203, 144, 144, 143, 203, 203, + 144, 6, 203, 5, 144, 203, 144, 142, 144, 144, + 142, 144, 144, 142, 144, 208, 6, 61, 144, 185, + 143, 6, 155, 137, 142, 6, 143, 142, 142, 144, + 6, 192, 203, 6, 6, 193, 203, 6, 6, 194, + 203, 6, 144, 203, 198, 176, 144, 161, 203, 207, + 203, 5, 143, 144, 143, 144, 143, 144, 6, 6, + 144, 144, 186, 6, 143, 137, 144, 144, 142, 198, + 6, 195, 198, 6, 196, 198, 6, 197, 198, 159, + 214, 164, 143, 6, 5, 144, 143, 144, 143, 144, + 143, 144, 142, 144, 143, 207, 144, 6, 198, 6, + 198, 6, 198, 214, 6, 162, 214, 144, 6, 144, + 144, 144, 142, 144, 6, 6, 6, 6, 214, 6 +}; #define yyerrok (yyerrstatus = 0) #define yyclearin (yychar = YYEMPTY) -#define YYEMPTY -2 +#define YYEMPTY (-2) #define YYEOF 0 + #define YYACCEPT goto yyacceptlab -#define YYABORT goto yyabortlab -#define YYERROR goto yyerrlab1 -/* Like YYERROR except do call yyerror. - This remains here temporarily to ease the - transition to the new meaning of YYERROR, for GCC. +#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) \ + +#define YYBACKUP(Token, Value) \ do \ if (yychar == YYEMPTY && yylen == 1) \ - { yychar = (token), yylval = (value); \ - yychar1 = YYTRANSLATE (yychar); \ - YYPOPSTACK; \ + { \ + yychar = (Token); \ + yylval = (Value); \ + yytoken = YYTRANSLATE (yychar); \ + YYPOPSTACK (1); \ goto yybackup; \ } \ else \ - { yyerror ("syntax error: cannot back up"); YYERROR; } \ -while (0) + { \ + yyerror (YY_("syntax error: cannot back up")); \ + YYERROR; \ + } \ +while (YYID (0)) + #define YYTERROR 1 #define YYERRCODE 256 -#ifndef YYPURE -#define YYLEX yylex() + +/* 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 -#ifdef YYPURE -#ifdef YYLSP_NEEDED -#ifdef YYLEX_PARAM -#define YYLEX yylex(&yylval, &yylloc, YYLEX_PARAM) -#else -#define YYLEX yylex(&yylval, &yylloc) + +/* 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 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 -#else /* not YYLSP_NEEDED */ + + +/* YYLEX -- calling `yylex' with the right arguments. */ + #ifdef YYLEX_PARAM -#define YYLEX yylex(&yylval, YYLEX_PARAM) +# define YYLEX yylex (YYLEX_PARAM) #else -#define YYLEX yylex(&yylval) +# define YYLEX yylex () #endif -#endif /* not YYLSP_NEEDED */ + +/* 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; + } +} -/* If nonreentrant, generate the variables here */ -#ifndef YYPURE +/*--------------------------------. +| Print this symbol on YYOUTPUT. | +`--------------------------------*/ -int yychar; /* the lookahead symbol */ -YYSTYPE yylval; /* the semantic value of the */ - /* lookahead symbol */ +#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]); -#ifdef YYLSP_NEEDED -YYLTYPE yylloc; /* location data for the lookahead */ - /* symbol */ + 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)) + -int yynerrs; /* number of parse errors so far */ -#endif /* not YYPURE */ +/*------------------------------------------------. +| Report that the YYRULE is going to be reduced. | +`------------------------------------------------*/ -#if YYDEBUG != 0 -int yydebug; /* nonzero means print parse trace */ -/* Since this is uninitialized, it does not stop multiple parsers - from coexisting. */ +#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 indicates the initial size of the parser's stacks */ +/* YYINITDEPTH -- initial size of the parser's stacks. */ #ifndef YYINITDEPTH -#define YYINITDEPTH 200 +# define YYINITDEPTH 200 #endif -/* YYMAXDEPTH is the maximum size the stacks can grow to - (effective only if the built-in stack extension method is used). */ +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only + if the built-in stack extension method is used). -#if YYMAXDEPTH == 0 -#undef YYMAXDEPTH -#endif + 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 +# define YYMAXDEPTH 10000 #endif + -/* Define __yy_memcpy. Note that the size argument - should be passed with type unsigned int, because that is what the non-GCC - definitions require. With GCC, __builtin_memcpy takes an arg - of type size_t, but it can handle unsigned int. */ - -#if __GNUC__ > 1 /* GNU C and GNU C++ define this. */ -#define __yy_memcpy(TO,FROM,COUNT) __builtin_memcpy(TO,FROM,COUNT) -#else /* not GNU C or C++ */ -#ifndef __cplusplus - -/* This is the most reliable way to avoid incompatibilities - in available built-in functions on various systems. */ -static void -__yy_memcpy (to, from, count) - char *to; - char *from; - unsigned int count; + +#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 { - register char *f = from; - register char *t = to; - register int i = count; + char *yyd = yydest; + const char *yys = yysrc; - while (i-- > 0) - *t++ = *f++; + 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: ; + } -#else /* __cplusplus */ + if (! yyres) + return yystrlen (yystr); -/* This is the most reliable way to avoid incompatibilities - in available built-in functions on various systems. */ -static void -__yy_memcpy (char *to, char *from, unsigned int count) + 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) { - register char *t = to; - register char *f = from; - register int i = count; + int yyn = yypact[yystate]; - while (i-- > 0) - *t++ = *f++; + 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 -#endif +{ + YYUSE (yyvaluep); + + if (!yymsg) + yymsg = "Deleting"; + YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); + + switch (yytype) + { + + default: + break; + } +} -#line 217 "/usr/share/bison.simple" -/* The user can define YYPARSE_PARAM as the name of an argument to be passed - into yyparse. The argument should have type void *. - It should actually point to an object. - Grammar actions can access the variable by casting it - to the proper pointer type. */ +/* Prevent warnings from -Wmissing-prototypes. */ #ifdef YYPARSE_PARAM -#ifdef __cplusplus -#define YYPARSE_PARAM_ARG void *YYPARSE_PARAM -#define YYPARSE_PARAM_DECL -#else /* not __cplusplus */ -#define YYPARSE_PARAM_ARG YYPARSE_PARAM -#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM; -#endif /* not __cplusplus */ -#else /* not YYPARSE_PARAM */ -#define YYPARSE_PARAM_ARG -#define YYPARSE_PARAM_DECL -#endif /* not YYPARSE_PARAM */ - -/* Prevent warning if -Wstrict-prototypes. */ -#ifdef __GNUC__ -#ifdef YYPARSE_PARAM -int yyparse (void *); +#if defined __STDC__ || defined __cplusplus +int yyparse (void *YYPARSE_PARAM); #else -int yyparse (void); +int yyparse (); #endif +#else /* ! YYPARSE_PARAM */ +#if defined __STDC__ || defined __cplusplus +int yyparse (void); +#else +int yyparse (); #endif +#endif /* ! YYPARSE_PARAM */ + -int -yyparse(YYPARSE_PARAM_ARG) - YYPARSE_PARAM_DECL -{ - register int yystate; - register int yyn; - register short *yyssp; - register YYSTYPE *yyvsp; - int yyerrstatus; /* number of tokens to shift before error messages enabled */ - int yychar1 = 0; /* lookahead token as an internal (translated) token number */ - short yyssa[YYINITDEPTH]; /* the state stack */ - YYSTYPE yyvsa[YYINITDEPTH]; /* the semantic value stack */ +/* The look-ahead symbol. */ +int yychar; - short *yyss = yyssa; /* refer to the stacks thru separate pointers */ - YYSTYPE *yyvs = yyvsa; /* to allow yyoverflow to reallocate them elsewhere */ +/* The semantic value of the look-ahead symbol. */ +YYSTYPE yylval; -#ifdef YYLSP_NEEDED - YYLTYPE yylsa[YYINITDEPTH]; /* the location stack */ - YYLTYPE *yyls = yylsa; - YYLTYPE *yylsp; +/* Number of syntax errors so far. */ +int yynerrs; -#define YYPOPSTACK (yyvsp--, yyssp--, yylsp--) + + +/*----------. +| yyparse. | +`----------*/ + +#ifdef YYPARSE_PARAM +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +int +yyparse (void *YYPARSE_PARAM) #else -#define YYPOPSTACK (yyvsp--, yyssp--) +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 () - int yystacksize = YYINITDEPTH; - int yyfree_stacks = 0; - -#ifdef YYPURE - int yychar; - YYSTYPE yylval; - int yynerrs; -#ifdef YYLSP_NEEDED - YYLTYPE yylloc; #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 - YYSTYPE yyval; /* the variable used to return */ - /* semantic values from the action */ - /* routines */ + /* Three stacks and their tools: + `yyss': related to states, + `yyvs': related to semantic values, + `yyls': related to locations. - int yylen; + Refer to the stacks thru separate pointers, to allow yyoverflow + to reallocate them elsewhere. */ -#if YYDEBUG != 0 - if (yydebug) - fprintf(stderr, "Starting parse\n"); -#endif + /* 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; @@ -2493,372 +3544,339 @@ yyparse(YYPARSE_PARAM_ARG) so that they stay on the same level as the state stack. The wasted elements are never initialized. */ - yyssp = yyss - 1; + yyssp = yyss; yyvsp = yyvs; -#ifdef YYLSP_NEEDED - yylsp = yyls; -#endif -/* Push a new state, which is found in yystate . */ -/* In all cases, when you get here, the value and location stacks - have just been pushed. so pushing a state here evens the stacks. */ -yynewstate: + goto yysetstate; - *++yyssp = yystate; +/*------------------------------------------------------------. +| 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++; - if (yyssp >= yyss + yystacksize - 1) - { - /* 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; - short *yyss1 = yyss; -#ifdef YYLSP_NEEDED - YYLTYPE *yyls1 = yyls; -#endif + yysetstate: + *yyssp = yystate; + if (yyss + yystacksize - 1 <= yyssp) + { /* Get the current used size of the three stacks, in elements. */ - int size = yyssp - yyss + 1; + YYSIZE_T yysize = yyssp - yyss + 1; #ifdef yyoverflow - /* Each stack pointer address is followed by the size of - the data in use in that stack, in bytes. */ -#ifdef YYLSP_NEEDED - /* This used to be a conditional around just the two extra args, - but that might be undefined if yyoverflow is a macro. */ - yyoverflow("parser stack overflow", - &yyss1, size * sizeof (*yyssp), - &yyvs1, size * sizeof (*yyvsp), - &yyls1, size * sizeof (*yylsp), - &yystacksize); -#else - yyoverflow("parser stack overflow", - &yyss1, size * sizeof (*yyssp), - &yyvs1, size * sizeof (*yyvsp), - &yystacksize); -#endif + { + /* 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; - yyss = yyss1; yyvs = yyvs1; -#ifdef YYLSP_NEEDED - yyls = yyls1; -#endif + + /* 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 (yystacksize >= YYMAXDEPTH) - { - yyerror("parser stack overflow"); - if (yyfree_stacks) - { - free (yyss); - free (yyvs); -#ifdef YYLSP_NEEDED - free (yyls); -#endif - } - return 2; - } + if (YYMAXDEPTH <= yystacksize) + goto yyexhaustedlab; yystacksize *= 2; - if (yystacksize > YYMAXDEPTH) + if (YYMAXDEPTH < yystacksize) yystacksize = YYMAXDEPTH; -#ifndef YYSTACK_USE_ALLOCA - yyfree_stacks = 1; -#endif - yyss = (short *) YYSTACK_ALLOC (yystacksize * sizeof (*yyssp)); - __yy_memcpy ((char *)yyss, (char *)yyss1, - size * (unsigned int) sizeof (*yyssp)); - yyvs = (YYSTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yyvsp)); - __yy_memcpy ((char *)yyvs, (char *)yyvs1, - size * (unsigned int) sizeof (*yyvsp)); -#ifdef YYLSP_NEEDED - yyls = (YYLTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yylsp)); - __yy_memcpy ((char *)yyls, (char *)yyls1, - size * (unsigned int) sizeof (*yylsp)); -#endif + + { + 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 + size - 1; - yyvsp = yyvs + size - 1; -#ifdef YYLSP_NEEDED - yylsp = yyls + size - 1; -#endif + yyssp = yyss + yysize - 1; + yyvsp = yyvs + yysize - 1; -#if YYDEBUG != 0 - if (yydebug) - fprintf(stderr, "Stack size increased to %d\n", yystacksize); -#endif - if (yyssp >= yyss + yystacksize - 1) + YYDPRINTF ((stderr, "Stack size increased to %lu\n", + (unsigned long int) yystacksize)); + + if (yyss + yystacksize - 1 <= yyssp) YYABORT; } -#if YYDEBUG != 0 - if (yydebug) - fprintf(stderr, "Entering state %d\n", yystate); -#endif + YYDPRINTF ((stderr, "Entering state %d\n", yystate)); goto yybackup; - yybackup: -/* Do appropriate processing given the current state. */ -/* Read a lookahead token if we need one and don't already have one. */ -/* yyresume: */ +/*-----------. +| yybackup. | +`-----------*/ +yybackup: - /* First try to decide what to do without reference to lookahead token. */ + /* 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 == YYFLAG) + if (yyn == YYPACT_NINF) goto yydefault; - /* Not known => get a lookahead token if don't already have one. */ - - /* yychar is either YYEMPTY or YYEOF - or a valid token in external form. */ + /* 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) { -#if YYDEBUG != 0 - if (yydebug) - fprintf(stderr, "Reading a token: "); -#endif + YYDPRINTF ((stderr, "Reading a token: ")); yychar = YYLEX; } - /* Convert token to internal form (in yychar1) for indexing tables with */ - - if (yychar <= 0) /* This means end of input. */ + if (yychar <= YYEOF) { - yychar1 = 0; - yychar = YYEOF; /* Don't call YYLEX any more */ - -#if YYDEBUG != 0 - if (yydebug) - fprintf(stderr, "Now at end of input.\n"); -#endif + yychar = yytoken = YYEOF; + YYDPRINTF ((stderr, "Now at end of input.\n")); } else { - yychar1 = YYTRANSLATE(yychar); - -#if YYDEBUG != 0 - if (yydebug) - { - fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]); - /* Give the individual parser a way to print the precise meaning - of a token, for further debugging info. */ -#ifdef YYPRINT - YYPRINT (stderr, yychar, yylval); -#endif - fprintf (stderr, ")\n"); - } -#endif + yytoken = YYTRANSLATE (yychar); + YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); } - yyn += yychar1; - if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1) + /* 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]; - - /* yyn is what to do for this token type in this state. - Negative => reduce, -yyn is rule number. - Positive => shift, yyn is new state. - New state is final state => don't bother to shift, - just return success. - 0, or most negative number => error. */ - - if (yyn < 0) + if (yyn <= 0) { - if (yyn == YYFLAG) + if (yyn == 0 || yyn == YYTABLE_NINF) goto yyerrlab; yyn = -yyn; goto yyreduce; } - else if (yyn == 0) - goto yyerrlab; if (yyn == YYFINAL) YYACCEPT; - /* Shift the lookahead token. */ + /* Count tokens shifted since error; after three, turn off error + status. */ + if (yyerrstatus) + yyerrstatus--; -#if YYDEBUG != 0 - if (yydebug) - fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]); -#endif + /* Shift the look-ahead token. */ + YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); - /* Discard the token being shifted unless it is eof. */ + /* Discard the shifted token unless it is eof. */ if (yychar != YYEOF) yychar = YYEMPTY; + yystate = yyn; *++yyvsp = yylval; -#ifdef YYLSP_NEEDED - *++yylsp = yylloc; -#endif - - /* count tokens shifted since error; after three, turn off error status. */ - if (yyerrstatus) yyerrstatus--; - yystate = yyn; goto yynewstate; -/* Do the default action for the current state. */ -yydefault: +/*-----------------------------------------------------------. +| yydefault -- do the default action for the current state. | +`-----------------------------------------------------------*/ +yydefault: yyn = yydefact[yystate]; if (yyn == 0) goto yyerrlab; + goto yyreduce; + -/* Do a reduction. yyn is the number of a rule to reduce with. */ +/*-----------------------------. +| yyreduce -- Do a reduction. | +`-----------------------------*/ yyreduce: + /* yyn is the number of a rule to reduce with. */ yylen = yyr2[yyn]; - if (yylen > 0) - yyval = yyvsp[1-yylen]; /* implement default value of the action */ -#if YYDEBUG != 0 - if (yydebug) - { - int i; + /* If YYLEN is nonzero, implement the default value of the action: + `$$ = $1'. - fprintf (stderr, "Reducing via rule %d (line %d), ", - yyn, yyrline[yyn]); + 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]; - /* Print the symbols being reduced, and their result. */ - for (i = yyprhs[yyn]; yyrhs[i] > 0; i++) - fprintf (stderr, "%s ", yytname[yyrhs[i]]); - fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]); - } -#endif + YY_REDUCE_PRINT (yyn); + switch (yyn) + { + case 3: +#line 147 "Gmsh.y" + { yyerrok; return 1; ;} + break; - switch (yyn) { - -case 2: -#line 145 "Gmsh.y" -{ yyerrok; return 1; ; - break;} -case 5: -#line 156 "Gmsh.y" -{ return 1; ; - break;} -case 6: -#line 157 "Gmsh.y" -{ return 1; ; - break;} -case 7: + case 6: #line 158 "Gmsh.y" -{ return 1; ; - break;} -case 8: + { return 1; ;} + break; + + case 7: #line 159 "Gmsh.y" -{ return 1; ; - break;} -case 9: + { return 1; ;} + break; + + case 8: #line 160 "Gmsh.y" -{ List_Delete(yyvsp[0].l); return 1; ; - break;} -case 10: + { return 1; ;} + break; + + case 9: #line 161 "Gmsh.y" -{ List_Delete(yyvsp[0].l); return 1; ; - break;} -case 11: + { return 1; ;} + break; + + case 10: #line 162 "Gmsh.y" -{ return 1; ; - break;} -case 12: + { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} + break; + + case 11: #line 163 "Gmsh.y" -{ return 1; ; - break;} -case 13: + { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} + break; + + case 12: #line 164 "Gmsh.y" -{ return 1; ; - break;} -case 14: + { return 1; ;} + break; + + case 13: #line 165 "Gmsh.y" -{ List_Delete(yyvsp[0].l); return 1; ; - break;} -case 15: + { return 1; ;} + break; + + case 14: #line 166 "Gmsh.y" -{ return 1; ; - break;} -case 16: + { return 1; ;} + break; + + case 15: #line 167 "Gmsh.y" -{ return 1; ; - break;} -case 17: + { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} + break; + + case 16: #line 168 "Gmsh.y" -{ return 1; ; - break;} -case 18: + { return 1; ;} + break; + + case 17: #line 169 "Gmsh.y" -{ return 1; ; - break;} -case 19: + { return 1; ;} + break; + + case 18: #line 170 "Gmsh.y" -{ return 1; ; - break;} -case 20: -#line 175 "Gmsh.y" -{ - yyval.c = "w"; - ; - break;} -case 21: -#line 179 "Gmsh.y" -{ - yyval.c = "a"; - ; - break;} -case 22: -#line 186 "Gmsh.y" -{ - Msg(DIRECT, yyvsp[-2].c); - Free(yyvsp[-2].c); - ; - break;} -case 23: -#line 191 "Gmsh.y" -{ + { return 1; ;} + break; + + case 19: +#line 171 "Gmsh.y" + { return 1; ;} + break; + + case 20: +#line 172 "Gmsh.y" + { return 1; ;} + break; + + case 21: +#line 177 "Gmsh.y" + { + (yyval.c) = "w"; + ;} + break; + + case 22: +#line 181 "Gmsh.y" + { + (yyval.c) = "a"; + ;} + break; + + case 23: +#line 188 "Gmsh.y" + { + Msg(DIRECT, (yyvsp[(3) - (5)].c)); + Free((yyvsp[(3) - (5)].c)); + ;} + break; + + case 24: +#line 193 "Gmsh.y" + { char tmpstring[1024]; - FixRelativePath(yyvsp[-1].c, tmpstring); - FILE *fp = fopen(tmpstring, yyvsp[-2].c); + FixRelativePath((yyvsp[(6) - (7)].c), tmpstring); + FILE *fp = fopen(tmpstring, (yyvsp[(5) - (7)].c)); if(!fp){ yymsg(GERROR, "Unable to open file '%s'", tmpstring); } else{ - fprintf(fp, "%s\n", yyvsp[-4].c); + fprintf(fp, "%s\n", (yyvsp[(3) - (7)].c)); fclose(fp); } - Free(yyvsp[-4].c); - Free(yyvsp[-1].c); - ; - break;} -case 24: -#line 206 "Gmsh.y" -{ + Free((yyvsp[(3) - (7)].c)); + Free((yyvsp[(6) - (7)].c)); + ;} + break; + + case 25: +#line 208 "Gmsh.y" + { char tmpstring[1024]; - int i = PrintListOfDouble(yyvsp[-4].c, yyvsp[-2].l, tmpstring); + int i = PrintListOfDouble((yyvsp[(3) - (7)].c), (yyvsp[(5) - (7)].l), tmpstring); if(i < 0) yymsg(GERROR, "Too few arguments in Printf"); else if(i > 0) yymsg(GERROR, "%d extra argument%s in Printf", i, (i>1)?"s":""); else Msg(DIRECT, tmpstring); - Free(yyvsp[-4].c); - List_Delete(yyvsp[-2].l); - ; - break;} -case 25: -#line 219 "Gmsh.y" -{ + Free((yyvsp[(3) - (7)].c)); + List_Delete((yyvsp[(5) - (7)].l)); + ;} + break; + + case 26: +#line 221 "Gmsh.y" + { char tmpstring[1024]; - int i = PrintListOfDouble(yyvsp[-6].c, yyvsp[-4].l, tmpstring); + int i = PrintListOfDouble((yyvsp[(3) - (9)].c), (yyvsp[(5) - (9)].l), tmpstring); if(i < 0) yymsg(GERROR, "Too few arguments in Printf"); else if(i > 0) yymsg(GERROR, "%d extra argument%s in Printf", i, (i>1)?"s":""); else{ char tmpstring2[1024]; - FixRelativePath(yyvsp[-1].c, tmpstring2); - FILE *fp = fopen(tmpstring2, yyvsp[-2].c); + FixRelativePath((yyvsp[(8) - (9)].c), tmpstring2); + FILE *fp = fopen(tmpstring2, (yyvsp[(7) - (9)].c)); if(!fp){ yymsg(GERROR, "Unable to open file '%s'", tmpstring2); } @@ -2867,249 +3885,258 @@ case 25: fclose(fp); } } - Free(yyvsp[-6].c); - Free(yyvsp[-1].c); - List_Delete(yyvsp[-4].l); - ; - break;} -case 26: -#line 248 "Gmsh.y" -{ - if(!strcmp(yyvsp[-5].c, "View") && !CheckViewErrorFlags(View)){ - EndView(View, 0, yyname, yyvsp[-4].c); - } - Free(yyvsp[-5].c); Free(yyvsp[-4].c); - ; - break;} -case 27: -#line 255 "Gmsh.y" -{ - if(!strcmp(yyvsp[-7].c, "View") && !CheckViewErrorFlags(View)){ - EndView(View, 0, yyname, yyvsp[-6].c); - } - Free(yyvsp[-7].c); Free(yyvsp[-6].c); Free(yyvsp[-5].c); - ; - break;} -case 28: -#line 265 "Gmsh.y" -{ + Free((yyvsp[(3) - (9)].c)); + Free((yyvsp[(8) - (9)].c)); + List_Delete((yyvsp[(5) - (9)].l)); + ;} + break; + + case 27: +#line 250 "Gmsh.y" + { + if(!strcmp((yyvsp[(1) - (6)].c), "View") && !CheckViewErrorFlags(View)){ + EndView(View, 0, yyname, (yyvsp[(2) - (6)].c)); + } + Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(2) - (6)].c)); + ;} + break; + + case 28: +#line 257 "Gmsh.y" + { + if(!strcmp((yyvsp[(1) - (8)].c), "View") && !CheckViewErrorFlags(View)){ + EndView(View, 0, yyname, (yyvsp[(2) - (8)].c)); + } + Free((yyvsp[(1) - (8)].c)); Free((yyvsp[(2) - (8)].c)); Free((yyvsp[(3) - (8)].c)); + ;} + break; + + case 29: +#line 267 "Gmsh.y" + { View = BeginView(1); for(int i = 0; i < VIEW_NB_ELEMENT_TYPES; i++){ ViewErrorFlags[i] = 0; } - ; - break;} -case 35: -#line 281 "Gmsh.y" -{ ViewCoord[ViewCoordIdx] = yyvsp[0].d; ViewCoordIdx++; ; - break;} -case 36: + ;} + break; + + case 36: #line 283 "Gmsh.y" -{ ViewCoord[ViewCoordIdx] = yyvsp[0].d; ViewCoordIdx++; ; - break;} -case 37: -#line 288 "Gmsh.y" -{ if(ViewValueList) List_Add(ViewValueList, &yyvsp[0].d); ; - break;} -case 38: + { ViewCoord[ViewCoordIdx] = (yyvsp[(1) - (1)].d); ViewCoordIdx++; ;} + break; + + case 37: +#line 285 "Gmsh.y" + { ViewCoord[ViewCoordIdx] = (yyvsp[(3) - (3)].d); ViewCoordIdx++; ;} + break; + + case 38: #line 290 "Gmsh.y" -{ if(ViewValueList) List_Add(ViewValueList, &yyvsp[0].d); ; - break;} -case 39: -#line 295 "Gmsh.y" -{ - if(!strcmp(yyvsp[0].c, "SP")){ + { if(ViewValueList) List_Add(ViewValueList, &(yyvsp[(1) - (1)].d)); ;} + break; + + case 39: +#line 292 "Gmsh.y" + { if(ViewValueList) List_Add(ViewValueList, &(yyvsp[(3) - (3)].d)); ;} + break; + + case 40: +#line 297 "Gmsh.y" + { + if(!strcmp((yyvsp[(1) - (1)].c), "SP")){ ViewElementIdx = 0; ViewNumNodes = 1; ViewNumComp = 1; ViewValueList = View->SP; ViewNumList = &View->NbSP; } - else if(!strcmp(yyvsp[0].c, "VP")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VP")){ ViewElementIdx = 1; ViewNumNodes = 1; ViewNumComp = 3; ViewValueList = View->VP; ViewNumList = &View->NbVP; } - else if(!strcmp(yyvsp[0].c, "TP")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TP")){ ViewElementIdx = 2; ViewNumNodes = 1; ViewNumComp = 9; ViewValueList = View->TP; ViewNumList = &View->NbTP; } - else if(!strcmp(yyvsp[0].c, "SL")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "SL")){ ViewElementIdx = 3; ViewNumNodes = 2; ViewNumComp = 1; ViewValueList = View->SL; ViewNumList = &View->NbSL; } - else if(!strcmp(yyvsp[0].c, "VL")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VL")){ ViewElementIdx = 4; ViewNumNodes = 2; ViewNumComp = 3; ViewValueList = View->VL; ViewNumList = &View->NbVL; } - else if(!strcmp(yyvsp[0].c, "TL")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TL")){ ViewElementIdx = 5; ViewNumNodes = 2; ViewNumComp = 9; ViewValueList = View->TL; ViewNumList = &View->NbTL; } - else if(!strcmp(yyvsp[0].c, "ST")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "ST")){ ViewElementIdx = 6; ViewNumNodes = 3; ViewNumComp = 1; ViewValueList = View->ST; ViewNumList = &View->NbST; } - else if(!strcmp(yyvsp[0].c, "VT")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VT")){ ViewElementIdx = 7; ViewNumNodes = 3; ViewNumComp = 3; ViewValueList = View->VT; ViewNumList = &View->NbVT; } - else if(!strcmp(yyvsp[0].c, "TT")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TT")){ ViewElementIdx = 8; ViewNumNodes = 3; ViewNumComp = 9; ViewValueList = View->TT; ViewNumList = &View->NbTT; } - else if(!strcmp(yyvsp[0].c, "SQ")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "SQ")){ ViewElementIdx = 9; ViewNumNodes = 4; ViewNumComp = 1; ViewValueList = View->SQ; ViewNumList = &View->NbSQ; } - else if(!strcmp(yyvsp[0].c, "VQ")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VQ")){ ViewElementIdx = 10; ViewNumNodes = 4; ViewNumComp = 3; ViewValueList = View->VQ; ViewNumList = &View->NbVQ; } - else if(!strcmp(yyvsp[0].c, "TQ")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TQ")){ ViewElementIdx = 11; ViewNumNodes = 4; ViewNumComp = 9; ViewValueList = View->TQ; ViewNumList = &View->NbTQ; } - else if(!strcmp(yyvsp[0].c, "SS")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "SS")){ ViewElementIdx = 12; ViewNumNodes = 4; ViewNumComp = 1; ViewValueList = View->SS; ViewNumList = &View->NbSS; } - else if(!strcmp(yyvsp[0].c, "VS")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VS")){ ViewElementIdx = 13; ViewNumNodes = 4; ViewNumComp = 3; ViewValueList = View->VS; ViewNumList = &View->NbVS; } - else if(!strcmp(yyvsp[0].c, "TS")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TS")){ ViewElementIdx = 14; ViewNumNodes = 4; ViewNumComp = 9; ViewValueList = View->TS; ViewNumList = &View->NbTS; } - else if(!strcmp(yyvsp[0].c, "SH")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "SH")){ ViewElementIdx = 15; ViewNumNodes = 8; ViewNumComp = 1; ViewValueList = View->SH; ViewNumList = &View->NbSH; } - else if(!strcmp(yyvsp[0].c, "VH")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VH")){ ViewElementIdx = 16; ViewNumNodes = 8; ViewNumComp = 3; ViewValueList = View->VH; ViewNumList = &View->NbVH; } - else if(!strcmp(yyvsp[0].c, "TH")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TH")){ ViewElementIdx = 17; ViewNumNodes = 8; ViewNumComp = 9; ViewValueList = View->TH; ViewNumList = &View->NbTH; } - else if(!strcmp(yyvsp[0].c, "SI")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "SI")){ ViewElementIdx = 18; ViewNumNodes = 6; ViewNumComp = 1; ViewValueList = View->SI; ViewNumList = &View->NbSI; } - else if(!strcmp(yyvsp[0].c, "VI")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VI")){ ViewElementIdx = 19; ViewNumNodes = 6; ViewNumComp = 3; ViewValueList = View->VI; ViewNumList = &View->NbVI; } - else if(!strcmp(yyvsp[0].c, "TI")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TI")){ ViewElementIdx = 20; ViewNumNodes = 6; ViewNumComp = 9; ViewValueList = View->TI; ViewNumList = &View->NbTI; } - else if(!strcmp(yyvsp[0].c, "SY")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "SY")){ ViewElementIdx = 21; ViewNumNodes = 5; ViewNumComp = 1; ViewValueList = View->SY; ViewNumList = &View->NbSY; } - else if(!strcmp(yyvsp[0].c, "VY")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VY")){ ViewElementIdx = 22; ViewNumNodes = 5; ViewNumComp = 3; ViewValueList = View->VY; ViewNumList = &View->NbVY; } - else if(!strcmp(yyvsp[0].c, "TY")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TY")){ ViewElementIdx = 23; ViewNumNodes = 5; ViewNumComp = 9; ViewValueList = View->TY; ViewNumList = &View->NbTY; } - else if(!strcmp(yyvsp[0].c, "SL2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "SL2")){ ViewElementIdx = 3; ViewNumNodes = 3; ViewNumComp = 1; ViewValueList = View->SL2; ViewNumList = &View->NbSL2; } - else if(!strcmp(yyvsp[0].c, "VL2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VL2")){ ViewElementIdx = 4; ViewNumNodes = 3; ViewNumComp = 3; ViewValueList = View->VL2; ViewNumList = &View->NbVL2; } - else if(!strcmp(yyvsp[0].c, "TL2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TL2")){ ViewElementIdx = 5; ViewNumNodes = 3; ViewNumComp = 9; ViewValueList = View->TL2; ViewNumList = &View->NbTL2; } - else if(!strcmp(yyvsp[0].c, "ST2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "ST2")){ ViewElementIdx = 6; ViewNumNodes = 6; ViewNumComp = 1; ViewValueList = View->ST2; ViewNumList = &View->NbST2; } - else if(!strcmp(yyvsp[0].c, "VT2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VT2")){ ViewElementIdx = 7; ViewNumNodes = 6; ViewNumComp = 3; ViewValueList = View->VT2; ViewNumList = &View->NbVT2; } - else if(!strcmp(yyvsp[0].c, "TT2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TT2")){ ViewElementIdx = 8; ViewNumNodes = 6; ViewNumComp = 9; ViewValueList = View->TT2; ViewNumList = &View->NbTT2; } - else if(!strcmp(yyvsp[0].c, "SQ2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "SQ2")){ ViewElementIdx = 9; ViewNumNodes = 9; ViewNumComp = 1; ViewValueList = View->SQ2; ViewNumList = &View->NbSQ2; } - else if(!strcmp(yyvsp[0].c, "VQ2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VQ2")){ ViewElementIdx = 10; ViewNumNodes = 9; ViewNumComp = 3; ViewValueList = View->VQ2; ViewNumList = &View->NbVQ2; } - else if(!strcmp(yyvsp[0].c, "TQ2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TQ2")){ ViewElementIdx = 11; ViewNumNodes = 9; ViewNumComp = 9; ViewValueList = View->TQ2; ViewNumList = &View->NbTQ2; } - else if(!strcmp(yyvsp[0].c, "SS2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "SS2")){ ViewElementIdx = 12; ViewNumNodes = 10; ViewNumComp = 1; ViewValueList = View->SS2; ViewNumList = &View->NbSS2; } - else if(!strcmp(yyvsp[0].c, "VS2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VS2")){ ViewElementIdx = 13; ViewNumNodes = 10; ViewNumComp = 3; ViewValueList = View->VS2; ViewNumList = &View->NbVS2; } - else if(!strcmp(yyvsp[0].c, "TS2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TS2")){ ViewElementIdx = 14; ViewNumNodes = 10; ViewNumComp = 9; ViewValueList = View->TS2; ViewNumList = &View->NbTS2; } - else if(!strcmp(yyvsp[0].c, "SH2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "SH2")){ ViewElementIdx = 15; ViewNumNodes = 27; ViewNumComp = 1; ViewValueList = View->SH2; ViewNumList = &View->NbSH2; } - else if(!strcmp(yyvsp[0].c, "VH2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VH2")){ ViewElementIdx = 16; ViewNumNodes = 27; ViewNumComp = 3; ViewValueList = View->VH2; ViewNumList = &View->NbVH2; } - else if(!strcmp(yyvsp[0].c, "TH2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TH2")){ ViewElementIdx = 17; ViewNumNodes = 27; ViewNumComp = 9; ViewValueList = View->TH2; ViewNumList = &View->NbTH2; } - else if(!strcmp(yyvsp[0].c, "SI2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "SI2")){ ViewElementIdx = 18; ViewNumNodes = 18; ViewNumComp = 1; ViewValueList = View->SI2; ViewNumList = &View->NbSI2; } - else if(!strcmp(yyvsp[0].c, "VI2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VI2")){ ViewElementIdx = 19; ViewNumNodes = 18; ViewNumComp = 3; ViewValueList = View->VI2; ViewNumList = &View->NbVI2; } - else if(!strcmp(yyvsp[0].c, "TI2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TI2")){ ViewElementIdx = 20; ViewNumNodes = 18; ViewNumComp = 9; ViewValueList = View->TI2; ViewNumList = &View->NbTI2; } - else if(!strcmp(yyvsp[0].c, "SY2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "SY2")){ ViewElementIdx = 21; ViewNumNodes = 14; ViewNumComp = 1; ViewValueList = View->SY2; ViewNumList = &View->NbSY2; } - else if(!strcmp(yyvsp[0].c, "VY2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "VY2")){ ViewElementIdx = 22; ViewNumNodes = 14; ViewNumComp = 3; ViewValueList = View->VY2; ViewNumList = &View->NbVY2; } - else if(!strcmp(yyvsp[0].c, "TY2")){ + else if(!strcmp((yyvsp[(1) - (1)].c), "TY2")){ ViewElementIdx = 23; ViewNumNodes = 14; ViewNumComp = 9; ViewValueList = View->TY2; ViewNumList = &View->NbTY2; } else{ - yymsg(GERROR, "Unknown element type '%s'", yyvsp[0].c); + yymsg(GERROR, "Unknown element type '%s'", (yyvsp[(1) - (1)].c)); ViewElementIdx = -1; ViewNumNodes = 0; ViewNumComp = 0; ViewValueList = NULL; ViewNumList = NULL; } - Free(yyvsp[0].c); + Free((yyvsp[(1) - (1)].c)); ViewCoordIdx = 0; - ; - break;} -case 40: -#line 485 "Gmsh.y" -{ + ;} + break; + + case 41: +#line 487 "Gmsh.y" + { if(ViewValueList){ if(ViewCoordIdx != 3 * ViewNumNodes){ yymsg(GERROR, "Wrong number of node coordinates (%d != %d)", @@ -3125,585 +4152,629 @@ case 40: } ViewNumListTmp = List_Nbr(ViewValueList); } - ; - break;} -case 41: -#line 503 "Gmsh.y" -{ + ;} + break; + + case 42: +#line 505 "Gmsh.y" + { if(ViewValueList){ if((List_Nbr(ViewValueList) - ViewNumListTmp) % (ViewNumComp * ViewNumNodes)) ViewErrorFlags[ViewElementIdx]++; (*ViewNumList)++; } - ; - break;} -case 42: -#line 514 "Gmsh.y" -{ - for(int i = 0; i < (int)strlen(yyvsp[0].c)+1; i++) List_Add(View->T2C, &yyvsp[0].c[i]); - Free(yyvsp[0].c); - ; - break;} -case 43: -#line 519 "Gmsh.y" -{ - for(int i = 0; i < (int)strlen(yyvsp[0].c)+1; i++) List_Add(View->T2C, &yyvsp[0].c[i]); - Free(yyvsp[0].c); - ; - break;} -case 44: -#line 527 "Gmsh.y" -{ - List_Add(View->T2D, &yyvsp[-5].d); List_Add(View->T2D, &yyvsp[-3].d); - List_Add(View->T2D, &yyvsp[-1].d); + ;} + break; + + case 43: +#line 516 "Gmsh.y" + { + for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c))+1; i++) List_Add(View->T2C, &(yyvsp[(1) - (1)].c)[i]); + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 44: +#line 521 "Gmsh.y" + { + for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c))+1; i++) List_Add(View->T2C, &(yyvsp[(3) - (3)].c)[i]); + Free((yyvsp[(3) - (3)].c)); + ;} + break; + + case 45: +#line 529 "Gmsh.y" + { + List_Add(View->T2D, &(yyvsp[(3) - (8)].d)); List_Add(View->T2D, &(yyvsp[(5) - (8)].d)); + List_Add(View->T2D, &(yyvsp[(7) - (8)].d)); double d = List_Nbr(View->T2C); List_Add(View->T2D, &d); - ; - break;} -case 45: -#line 534 "Gmsh.y" -{ + ;} + break; + + case 46: +#line 536 "Gmsh.y" + { View->NbT2++; - ; - break;} -case 46: -#line 541 "Gmsh.y" -{ - for(int i = 0; i < (int)strlen(yyvsp[0].c)+1; i++) List_Add(View->T3C, &yyvsp[0].c[i]); - Free(yyvsp[0].c); - ; - break;} -case 47: -#line 546 "Gmsh.y" -{ - for(int i = 0; i < (int)strlen(yyvsp[0].c)+1; i++) List_Add(View->T3C, &yyvsp[0].c[i]); - Free(yyvsp[0].c); - ; - break;} -case 48: -#line 554 "Gmsh.y" -{ - List_Add(View->T3D, &yyvsp[-7].d); List_Add(View->T3D, &yyvsp[-5].d); - List_Add(View->T3D, &yyvsp[-3].d); List_Add(View->T3D, &yyvsp[-1].d); + ;} + break; + + case 47: +#line 543 "Gmsh.y" + { + for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c))+1; i++) List_Add(View->T3C, &(yyvsp[(1) - (1)].c)[i]); + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 48: +#line 548 "Gmsh.y" + { + for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c))+1; i++) List_Add(View->T3C, &(yyvsp[(3) - (3)].c)[i]); + Free((yyvsp[(3) - (3)].c)); + ;} + break; + + case 49: +#line 556 "Gmsh.y" + { + List_Add(View->T3D, &(yyvsp[(3) - (10)].d)); List_Add(View->T3D, &(yyvsp[(5) - (10)].d)); + List_Add(View->T3D, &(yyvsp[(7) - (10)].d)); List_Add(View->T3D, &(yyvsp[(9) - (10)].d)); double d = List_Nbr(View->T3C); List_Add(View->T3D, &d); - ; - break;} -case 49: -#line 561 "Gmsh.y" -{ + ;} + break; + + case 50: +#line 563 "Gmsh.y" + { View->NbT3++; - ; - break;} -case 50: -#line 569 "Gmsh.y" -{ - View->adaptive = new Adaptive_Post_View(View, yyvsp[-5].l, yyvsp[-2].l); - ; - break;} -case 51: -#line 577 "Gmsh.y" -{ - View->adaptive = new Adaptive_Post_View(View, yyvsp[-11].l, yyvsp[-8].l, yyvsp[-5].l, yyvsp[-2].l); - ; - break;} -case 52: -#line 584 "Gmsh.y" -{ + ;} + break; + + case 51: +#line 571 "Gmsh.y" + { + View->adaptive = new Adaptive_Post_View(View, (yyvsp[(3) - (8)].l), (yyvsp[(6) - (8)].l)); + ;} + break; + + case 52: +#line 579 "Gmsh.y" + { + View->adaptive = new Adaptive_Post_View(View, (yyvsp[(3) - (14)].l), (yyvsp[(6) - (14)].l), (yyvsp[(9) - (14)].l), (yyvsp[(12) - (14)].l)); + ;} + break; + + case 53: +#line 586 "Gmsh.y" + { ViewValueList = View->Time; - ; - break;} -case 53: -#line 588 "Gmsh.y" -{ - ; - break;} -case 54: -#line 593 "Gmsh.y" -{ - (*View->Grains) [(int)yyvsp[-3].d] = yyvsp[-1].l; - ; - break;} -case 55: -#line 601 "Gmsh.y" -{ yyval.i = 0; ; - break;} -case 56: -#line 602 "Gmsh.y" -{ yyval.i = 1; ; - break;} -case 57: + ;} + break; + + case 54: +#line 590 "Gmsh.y" + { + ;} + break; + + case 55: +#line 595 "Gmsh.y" + { + (*View->Grains) [(int)(yyvsp[(3) - (6)].d)] = (yyvsp[(5) - (6)].l); + ;} + break; + + case 56: #line 603 "Gmsh.y" -{ yyval.i = 2; ; - break;} -case 58: + { (yyval.i) = 0; ;} + break; + + case 57: #line 604 "Gmsh.y" -{ yyval.i = 3; ; - break;} -case 59: + { (yyval.i) = 1; ;} + break; + + case 58: #line 605 "Gmsh.y" -{ yyval.i = 4; ; - break;} -case 60: -#line 609 "Gmsh.y" -{ yyval.i = 1; ; - break;} -case 61: -#line 610 "Gmsh.y" -{ yyval.i = -1; ; - break;} -case 62: -#line 618 "Gmsh.y" -{ + { (yyval.i) = 2; ;} + break; + + case 59: +#line 606 "Gmsh.y" + { (yyval.i) = 3; ;} + break; + + case 60: +#line 607 "Gmsh.y" + { (yyval.i) = 4; ;} + break; + + case 61: +#line 611 "Gmsh.y" + { (yyval.i) = 1; ;} + break; + + case 62: +#line 612 "Gmsh.y" + { (yyval.i) = -1; ;} + break; + + case 63: +#line 620 "Gmsh.y" + { Symbol TheSymbol; - TheSymbol.Name = yyvsp[-3].c; + TheSymbol.Name = (yyvsp[(1) - (4)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))){ - if(!yyvsp[-2].i){ + if(!(yyvsp[(2) - (4)].i)){ TheSymbol.val = List_Create(1, 1, sizeof(double)); - List_Put(TheSymbol.val, 0, &yyvsp[-1].d); + List_Put(TheSymbol.val, 0, &(yyvsp[(3) - (4)].d)); Tree_Add(Symbol_T, &TheSymbol); } else{ - yymsg(GERROR, "Unknown variable '%s'", yyvsp[-3].c); - Free(yyvsp[-3].c); + yymsg(GERROR, "Unknown variable '%s'", (yyvsp[(1) - (4)].c)); + Free((yyvsp[(1) - (4)].c)); } } else{ double *pd = (double*)List_Pointer_Fast(pSymbol->val, 0); - switch(yyvsp[-2].i){ - case 0 : *pd = yyvsp[-1].d; break; - case 1 : *pd += yyvsp[-1].d; break; - case 2 : *pd -= yyvsp[-1].d; break; - case 3 : *pd *= yyvsp[-1].d; break; + switch((yyvsp[(2) - (4)].i)){ + case 0 : *pd = (yyvsp[(3) - (4)].d); break; + case 1 : *pd += (yyvsp[(3) - (4)].d); break; + case 2 : *pd -= (yyvsp[(3) - (4)].d); break; + case 3 : *pd *= (yyvsp[(3) - (4)].d); break; case 4 : - if(yyvsp[-1].d) *pd /= yyvsp[-1].d; - else yymsg(GERROR, "Division by zero in '%s /= %g'", yyvsp[-3].c, yyvsp[-1].d); + if((yyvsp[(3) - (4)].d)) *pd /= (yyvsp[(3) - (4)].d); + else yymsg(GERROR, "Division by zero in '%s /= %g'", (yyvsp[(1) - (4)].c), (yyvsp[(3) - (4)].d)); break; } - Free(yyvsp[-3].c); + Free((yyvsp[(1) - (4)].c)); } - ; - break;} -case 63: -#line 649 "Gmsh.y" -{ + ;} + break; + + case 64: +#line 651 "Gmsh.y" + { Symbol TheSymbol; - TheSymbol.Name = yyvsp[-6].c; + TheSymbol.Name = (yyvsp[(1) - (7)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))){ - if(!yyvsp[-2].i){ + if(!(yyvsp[(5) - (7)].i)){ TheSymbol.val = List_Create(5, 5, sizeof(double)); - List_Put(TheSymbol.val, (int)yyvsp[-4].d, &yyvsp[-1].d); + List_Put(TheSymbol.val, (int)(yyvsp[(3) - (7)].d), &(yyvsp[(6) - (7)].d)); Tree_Add(Symbol_T, &TheSymbol); } else{ - yymsg(GERROR, "Unknown variable '%s'", yyvsp[-6].c); - Free(yyvsp[-6].c); + yymsg(GERROR, "Unknown variable '%s'", (yyvsp[(1) - (7)].c)); + Free((yyvsp[(1) - (7)].c)); } } else{ double *pd; - if((pd = (double*)List_Pointer_Test(pSymbol->val, (int)yyvsp[-4].d))){ - switch(yyvsp[-2].i){ - case 0 : *pd = yyvsp[-1].d; break; - case 1 : *pd += yyvsp[-1].d; break; - case 2 : *pd -= yyvsp[-1].d; break; - case 3 : *pd *= yyvsp[-1].d; break; + if((pd = (double*)List_Pointer_Test(pSymbol->val, (int)(yyvsp[(3) - (7)].d)))){ + switch((yyvsp[(5) - (7)].i)){ + case 0 : *pd = (yyvsp[(6) - (7)].d); break; + case 1 : *pd += (yyvsp[(6) - (7)].d); break; + case 2 : *pd -= (yyvsp[(6) - (7)].d); break; + case 3 : *pd *= (yyvsp[(6) - (7)].d); break; case 4 : - if(yyvsp[-1].d) *pd /= yyvsp[-1].d; - else yymsg(GERROR, "Division by zero in '%s[%d] /= %g'", yyvsp[-6].c, (int)yyvsp[-4].d, yyvsp[-1].d); + if((yyvsp[(6) - (7)].d)) *pd /= (yyvsp[(6) - (7)].d); + else yymsg(GERROR, "Division by zero in '%s[%d] /= %g'", (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].d)); break; } } else{ - if(!yyvsp[-2].i) - List_Put(pSymbol->val, (int)yyvsp[-4].d, &yyvsp[-1].d); + if(!(yyvsp[(5) - (7)].i)) + List_Put(pSymbol->val, (int)(yyvsp[(3) - (7)].d), &(yyvsp[(6) - (7)].d)); else - yymsg(GERROR, "Uninitialized variable '%s[%d]'", yyvsp[-6].c, (int)yyvsp[-4].d); + yymsg(GERROR, "Uninitialized variable '%s[%d]'", (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d)); } - Free(yyvsp[-6].c); + Free((yyvsp[(1) - (7)].c)); } - ; - break;} -case 64: -#line 688 "Gmsh.y" -{ - if(List_Nbr(yyvsp[-5].l) != List_Nbr(yyvsp[-1].l)){ + ;} + break; + + case 65: +#line 690 "Gmsh.y" + { + if(List_Nbr((yyvsp[(4) - (9)].l)) != List_Nbr((yyvsp[(8) - (9)].l))){ yymsg(GERROR, "Incompatible array dimensions in affectation"); - Free(yyvsp[-8].c); + Free((yyvsp[(1) - (9)].c)); } else{ Symbol TheSymbol; - TheSymbol.Name = yyvsp[-8].c; + TheSymbol.Name = (yyvsp[(1) - (9)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))){ - if(!yyvsp[-2].i){ + if(!(yyvsp[(7) - (9)].i)){ TheSymbol.val = List_Create(5, 5, sizeof(double)); - for(int i = 0; i < List_Nbr(yyvsp[-5].l); i++){ - List_Put(TheSymbol.val, (int)(*(double*)List_Pointer(yyvsp[-5].l, i)), - (double*)List_Pointer(yyvsp[-1].l, i)); + for(int i = 0; i < List_Nbr((yyvsp[(4) - (9)].l)); i++){ + List_Put(TheSymbol.val, (int)(*(double*)List_Pointer((yyvsp[(4) - (9)].l), i)), + (double*)List_Pointer((yyvsp[(8) - (9)].l), i)); } Tree_Add(Symbol_T, &TheSymbol); } else{ - yymsg(GERROR, "Unknown variable '%s'", yyvsp[-8].c); - Free(yyvsp[-8].c); + yymsg(GERROR, "Unknown variable '%s'", (yyvsp[(1) - (9)].c)); + Free((yyvsp[(1) - (9)].c)); } } else{ - for(int i = 0; i < List_Nbr(yyvsp[-5].l); i++){ - int j = (int)(*(double*)List_Pointer(yyvsp[-5].l, i)); - double d = *(double*)List_Pointer(yyvsp[-1].l, i); + for(int i = 0; i < List_Nbr((yyvsp[(4) - (9)].l)); i++){ + int j = (int)(*(double*)List_Pointer((yyvsp[(4) - (9)].l), i)); + double d = *(double*)List_Pointer((yyvsp[(8) - (9)].l), i); double *pd; if((pd = (double*)List_Pointer_Test(pSymbol->val, j))){ - switch(yyvsp[-2].i){ + switch((yyvsp[(7) - (9)].i)){ case 0 : *pd = d; break; case 1 : *pd += d; break; case 2 : *pd -= d; break; case 3 : *pd *= d; break; case 4 : - if(yyvsp[-1].l) *pd /= d; - else yymsg(GERROR, "Division by zero in '%s[%d] /= %g'", yyvsp[-8].c, j, d); + if((yyvsp[(8) - (9)].l)) *pd /= d; + else yymsg(GERROR, "Division by zero in '%s[%d] /= %g'", (yyvsp[(1) - (9)].c), j, d); break; } } else{ - if(!yyvsp[-2].i) + if(!(yyvsp[(7) - (9)].i)) List_Put(pSymbol->val, j, &d); else - yymsg(GERROR, "Uninitialized variable '%s[%d]'", yyvsp[-8].c, j); + yymsg(GERROR, "Uninitialized variable '%s[%d]'", (yyvsp[(1) - (9)].c), j); } } - Free(yyvsp[-8].c); + Free((yyvsp[(1) - (9)].c)); } } - List_Delete(yyvsp[-5].l); - List_Delete(yyvsp[-1].l); - ; - break;} -case 65: -#line 742 "Gmsh.y" -{ + List_Delete((yyvsp[(4) - (9)].l)); + List_Delete((yyvsp[(8) - (9)].l)); + ;} + break; + + case 66: +#line 744 "Gmsh.y" + { Symbol TheSymbol; - TheSymbol.Name = yyvsp[-5].c; + TheSymbol.Name = (yyvsp[(1) - (6)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))){ TheSymbol.val = List_Create(5, 5, sizeof(double)); - List_Copy(yyvsp[-1].l, TheSymbol.val); + List_Copy((yyvsp[(5) - (6)].l), TheSymbol.val); Tree_Add(Symbol_T, &TheSymbol); } else{ List_Reset(pSymbol->val); - List_Copy(yyvsp[-1].l, pSymbol->val); - Free(yyvsp[-5].c); - } - List_Delete(yyvsp[-1].l); - ; - break;} -case 66: -#line 759 "Gmsh.y" -{ + List_Copy((yyvsp[(5) - (6)].l), pSymbol->val); + Free((yyvsp[(1) - (6)].c)); + } + List_Delete((yyvsp[(5) - (6)].l)); + ;} + break; + + case 67: +#line 761 "Gmsh.y" + { // appends to the list Symbol TheSymbol; - TheSymbol.Name = yyvsp[-5].c; + TheSymbol.Name = (yyvsp[(1) - (6)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))){ TheSymbol.val = List_Create(5, 5, sizeof(double)); - List_Copy(yyvsp[-1].l, TheSymbol.val); + List_Copy((yyvsp[(5) - (6)].l), TheSymbol.val); Tree_Add(Symbol_T, &TheSymbol); } else{ - for(int i = 0; i < List_Nbr(yyvsp[-1].l); i++) - List_Add(pSymbol->val, List_Pointer(yyvsp[-1].l, i)); - Free(yyvsp[-5].c); - } - List_Delete(yyvsp[-1].l); - ; - break;} -case 67: -#line 777 "Gmsh.y" -{ + for(int i = 0; i < List_Nbr((yyvsp[(5) - (6)].l)); i++) + List_Add(pSymbol->val, List_Pointer((yyvsp[(5) - (6)].l), i)); + Free((yyvsp[(1) - (6)].c)); + } + List_Delete((yyvsp[(5) - (6)].l)); + ;} + break; + + case 68: +#line 779 "Gmsh.y" + { Symbol TheSymbol; - TheSymbol.Name = yyvsp[-2].c; + TheSymbol.Name = (yyvsp[(1) - (3)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) - yymsg(GERROR, "Unknown variable '%s'", yyvsp[-2].c); + yymsg(GERROR, "Unknown variable '%s'", (yyvsp[(1) - (3)].c)); else - *(double*)List_Pointer_Fast(pSymbol->val, 0) += yyvsp[-1].i; - Free(yyvsp[-2].c); - ; - break;} -case 68: -#line 788 "Gmsh.y" -{ + *(double*)List_Pointer_Fast(pSymbol->val, 0) += (yyvsp[(2) - (3)].i); + Free((yyvsp[(1) - (3)].c)); + ;} + break; + + case 69: +#line 790 "Gmsh.y" + { Symbol TheSymbol; - TheSymbol.Name = yyvsp[-5].c; + TheSymbol.Name = (yyvsp[(1) - (6)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) - yymsg(GERROR, "Unknown variable '%s'", yyvsp[-5].c); + yymsg(GERROR, "Unknown variable '%s'", (yyvsp[(1) - (6)].c)); else{ double *pd; - if((pd = (double*)List_Pointer_Test(pSymbol->val, (int)yyvsp[-3].d))) - *pd += yyvsp[-1].i; + if((pd = (double*)List_Pointer_Test(pSymbol->val, (int)(yyvsp[(3) - (6)].d)))) + *pd += (yyvsp[(5) - (6)].i); else - yymsg(GERROR, "Uninitialized variable '%s[%d]'", yyvsp[-5].c, (int)yyvsp[-3].d); - } - Free(yyvsp[-5].c); - ; - break;} -case 69: -#line 805 "Gmsh.y" -{ + yymsg(GERROR, "Uninitialized variable '%s[%d]'", (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d)); + } + Free((yyvsp[(1) - (6)].c)); + ;} + break; + + case 70: +#line 807 "Gmsh.y" + { Msg(WARNING, "Named string expressions not implemented yet"); - ; - break;} -case 70: -#line 812 "Gmsh.y" -{ + ;} + break; + + case 71: +#line 814 "Gmsh.y" + { char* (*pStrOpt)(int num, int action, char *value); StringXString *pStrCat; - if(!(pStrCat = Get_StringOptionCategory(yyvsp[-5].c))) - yymsg(GERROR, "Unknown string option class '%s'", yyvsp[-5].c); + if(!(pStrCat = Get_StringOptionCategory((yyvsp[(1) - (6)].c)))) + yymsg(GERROR, "Unknown string option class '%s'", (yyvsp[(1) - (6)].c)); else{ - if(!(pStrOpt = (char *(*) (int, int, char *))Get_StringOption(yyvsp[-3].c, pStrCat))) - yymsg(GERROR, "Unknown string option '%s.%s'", yyvsp[-5].c, yyvsp[-3].c); + if(!(pStrOpt = (char *(*) (int, int, char *))Get_StringOption((yyvsp[(3) - (6)].c), pStrCat))) + yymsg(GERROR, "Unknown string option '%s.%s'", (yyvsp[(1) - (6)].c), (yyvsp[(3) - (6)].c)); else - pStrOpt(0, GMSH_SET|GMSH_GUI, yyvsp[-1].c); - } - Free(yyvsp[-5].c); Free(yyvsp[-3].c); //FIXME: somtimes leak $5 - ; - break;} -case 71: -#line 826 "Gmsh.y" -{ + pStrOpt(0, GMSH_SET|GMSH_GUI, (yyvsp[(5) - (6)].c)); + } + Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(3) - (6)].c)); //FIXME: somtimes leak $5 + ;} + break; + + case 72: +#line 828 "Gmsh.y" + { char* (*pStrOpt)(int num, int action, char *value); StringXString *pStrCat; - if(!(pStrCat = Get_StringOptionCategory(yyvsp[-8].c))) - yymsg(GERROR, "Unknown string option class '%s'", yyvsp[-8].c); + if(!(pStrCat = Get_StringOptionCategory((yyvsp[(1) - (9)].c)))) + yymsg(GERROR, "Unknown string option class '%s'", (yyvsp[(1) - (9)].c)); else{ - if(!(pStrOpt = (char *(*) (int, int, char *))Get_StringOption(yyvsp[-3].c, pStrCat))) - yymsg(GERROR, "Unknown string option '%s[%d].%s'", yyvsp[-8].c, (int)yyvsp[-6].d, yyvsp[-3].c); + if(!(pStrOpt = (char *(*) (int, int, char *))Get_StringOption((yyvsp[(6) - (9)].c), pStrCat))) + yymsg(GERROR, "Unknown string option '%s[%d].%s'", (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c)); else - pStrOpt((int)yyvsp[-6].d, GMSH_SET|GMSH_GUI, yyvsp[-1].c); + pStrOpt((int)(yyvsp[(3) - (9)].d), GMSH_SET|GMSH_GUI, (yyvsp[(8) - (9)].c)); } - Free(yyvsp[-8].c); Free(yyvsp[-3].c); //FIXME: somtimes leak $8 - ; - break;} -case 72: -#line 843 "Gmsh.y" -{ + Free((yyvsp[(1) - (9)].c)); Free((yyvsp[(6) - (9)].c)); //FIXME: somtimes leak $8 + ;} + break; + + case 73: +#line 845 "Gmsh.y" + { double (*pNumOpt)(int num, int action, double value); StringXNumber *pNumCat; - if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))) - yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-5].c); + if(!(pNumCat = Get_NumberOptionCategory((yyvsp[(1) - (6)].c)))) + yymsg(GERROR, "Unknown numeric option class '%s'", (yyvsp[(1) - (6)].c)); else{ - if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption(yyvsp[-3].c, pNumCat))) - yymsg(GERROR, "Unknown numeric option '%s.%s'", yyvsp[-5].c, yyvsp[-3].c); + if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption((yyvsp[(3) - (6)].c), pNumCat))) + yymsg(GERROR, "Unknown numeric option '%s.%s'", (yyvsp[(1) - (6)].c), (yyvsp[(3) - (6)].c)); else{ double d = 0; - switch(yyvsp[-2].i){ - case 0 : d = yyvsp[-1].d; break; - case 1 : d = pNumOpt(0, GMSH_GET, 0) + yyvsp[-1].d; break; - case 2 : d = pNumOpt(0, GMSH_GET, 0) - yyvsp[-1].d; break; - case 3 : d = pNumOpt(0, GMSH_GET, 0) * yyvsp[-1].d; break; + switch((yyvsp[(4) - (6)].i)){ + case 0 : d = (yyvsp[(5) - (6)].d); break; + case 1 : d = pNumOpt(0, GMSH_GET, 0) + (yyvsp[(5) - (6)].d); break; + case 2 : d = pNumOpt(0, GMSH_GET, 0) - (yyvsp[(5) - (6)].d); break; + case 3 : d = pNumOpt(0, GMSH_GET, 0) * (yyvsp[(5) - (6)].d); break; case 4 : - if(yyvsp[-1].d) d = pNumOpt(0, GMSH_GET, 0) / yyvsp[-1].d; - else yymsg(GERROR, "Division by zero in '%s.%s /= %g'", yyvsp[-5].c, yyvsp[-3].c, yyvsp[-1].d); + if((yyvsp[(5) - (6)].d)) d = pNumOpt(0, GMSH_GET, 0) / (yyvsp[(5) - (6)].d); + else yymsg(GERROR, "Division by zero in '%s.%s /= %g'", (yyvsp[(1) - (6)].c), (yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); break; } pNumOpt(0, GMSH_SET|GMSH_GUI, d); } } - Free(yyvsp[-5].c); Free(yyvsp[-3].c); - ; - break;} -case 73: -#line 869 "Gmsh.y" -{ + Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(3) - (6)].c)); + ;} + break; + + case 74: +#line 871 "Gmsh.y" + { double (*pNumOpt)(int num, int action, double value); StringXNumber *pNumCat; - if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-8].c))) - yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-8].c); + if(!(pNumCat = Get_NumberOptionCategory((yyvsp[(1) - (9)].c)))) + yymsg(GERROR, "Unknown numeric option class '%s'", (yyvsp[(1) - (9)].c)); else{ - if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption(yyvsp[-3].c, pNumCat))) - yymsg(GERROR, "Unknown numeric option '%s[%d].%s'", yyvsp[-8].c, (int)yyvsp[-6].d, yyvsp[-3].c); + if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption((yyvsp[(6) - (9)].c), pNumCat))) + yymsg(GERROR, "Unknown numeric option '%s[%d].%s'", (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c)); else{ double d = 0; - switch(yyvsp[-2].i){ - case 0 : d = yyvsp[-1].d; break; - case 1 : d = pNumOpt((int)yyvsp[-6].d, GMSH_GET, 0) + yyvsp[-1].d; break; - case 2 : d = pNumOpt((int)yyvsp[-6].d, GMSH_GET, 0) - yyvsp[-1].d; break; - case 3 : d = pNumOpt((int)yyvsp[-6].d, GMSH_GET, 0) * yyvsp[-1].d; break; + switch((yyvsp[(7) - (9)].i)){ + case 0 : d = (yyvsp[(8) - (9)].d); break; + case 1 : d = pNumOpt((int)(yyvsp[(3) - (9)].d), GMSH_GET, 0) + (yyvsp[(8) - (9)].d); break; + case 2 : d = pNumOpt((int)(yyvsp[(3) - (9)].d), GMSH_GET, 0) - (yyvsp[(8) - (9)].d); break; + case 3 : d = pNumOpt((int)(yyvsp[(3) - (9)].d), GMSH_GET, 0) * (yyvsp[(8) - (9)].d); break; case 4 : - if(yyvsp[-1].d) d = pNumOpt((int)yyvsp[-6].d, GMSH_GET, 0) / yyvsp[-1].d; + if((yyvsp[(8) - (9)].d)) d = pNumOpt((int)(yyvsp[(3) - (9)].d), GMSH_GET, 0) / (yyvsp[(8) - (9)].d); else yymsg(GERROR, "Division by zero in '%s[%d].%s /= %g'", - yyvsp[-8].c, (int)yyvsp[-6].d, yyvsp[-3].c, yyvsp[-1].d); + (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), (yyvsp[(8) - (9)].d)); break; } - pNumOpt((int)yyvsp[-6].d, GMSH_SET|GMSH_GUI, d); + pNumOpt((int)(yyvsp[(3) - (9)].d), GMSH_SET|GMSH_GUI, d); } } - Free(yyvsp[-8].c); Free(yyvsp[-3].c); - ; - break;} -case 74: -#line 896 "Gmsh.y" -{ + Free((yyvsp[(1) - (9)].c)); Free((yyvsp[(6) - (9)].c)); + ;} + break; + + case 75: +#line 898 "Gmsh.y" + { double (*pNumOpt)(int num, int action, double value); StringXNumber *pNumCat; - if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-4].c))) - yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-4].c); + if(!(pNumCat = Get_NumberOptionCategory((yyvsp[(1) - (5)].c)))) + yymsg(GERROR, "Unknown numeric option class '%s'", (yyvsp[(1) - (5)].c)); else{ - if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption(yyvsp[-2].c, pNumCat))) - yymsg(GERROR, "Unknown numeric option '%s.%s'", yyvsp[-4].c, yyvsp[-2].c); + if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption((yyvsp[(3) - (5)].c), pNumCat))) + yymsg(GERROR, "Unknown numeric option '%s.%s'", (yyvsp[(1) - (5)].c), (yyvsp[(3) - (5)].c)); else - pNumOpt(0, GMSH_SET|GMSH_GUI, pNumOpt(0, GMSH_GET, 0)+yyvsp[-1].i); + pNumOpt(0, GMSH_SET|GMSH_GUI, pNumOpt(0, GMSH_GET, 0)+(yyvsp[(4) - (5)].i)); } - Free(yyvsp[-4].c); Free(yyvsp[-2].c); - ; - break;} -case 75: -#line 910 "Gmsh.y" -{ + Free((yyvsp[(1) - (5)].c)); Free((yyvsp[(3) - (5)].c)); + ;} + break; + + case 76: +#line 912 "Gmsh.y" + { double (*pNumOpt)(int num, int action, double value); StringXNumber *pNumCat; - if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-7].c))) - yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-7].c); + if(!(pNumCat = Get_NumberOptionCategory((yyvsp[(1) - (8)].c)))) + yymsg(GERROR, "Unknown numeric option class '%s'", (yyvsp[(1) - (8)].c)); else{ - if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption(yyvsp[-2].c, pNumCat))) - yymsg(GERROR, "Unknown numeric option '%s[%d].%s'", yyvsp[-7].c, (int)yyvsp[-5].d, yyvsp[-2].c); + if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption((yyvsp[(6) - (8)].c), pNumCat))) + yymsg(GERROR, "Unknown numeric option '%s[%d].%s'", (yyvsp[(1) - (8)].c), (int)(yyvsp[(3) - (8)].d), (yyvsp[(6) - (8)].c)); else - pNumOpt((int)yyvsp[-5].d, GMSH_SET|GMSH_GUI, pNumOpt((int)yyvsp[-5].d, GMSH_GET, 0)+yyvsp[-1].i); + pNumOpt((int)(yyvsp[(3) - (8)].d), GMSH_SET|GMSH_GUI, pNumOpt((int)(yyvsp[(3) - (8)].d), GMSH_GET, 0)+(yyvsp[(7) - (8)].i)); } - Free(yyvsp[-7].c); Free(yyvsp[-2].c); - ; - break;} -case 76: -#line 927 "Gmsh.y" -{ + Free((yyvsp[(1) - (8)].c)); Free((yyvsp[(6) - (8)].c)); + ;} + break; + + case 77: +#line 929 "Gmsh.y" + { unsigned int (*pColOpt)(int num, int action, unsigned int value); StringXColor *pColCat; - if(!(pColCat = Get_ColorOptionCategory(yyvsp[-7].c))) - yymsg(GERROR, "Unknown color option class '%s'", yyvsp[-7].c); + if(!(pColCat = Get_ColorOptionCategory((yyvsp[(1) - (8)].c)))) + yymsg(GERROR, "Unknown color option class '%s'", (yyvsp[(1) - (8)].c)); else{ - if(!(pColOpt = (unsigned int (*) (int, int, unsigned int))Get_ColorOption(yyvsp[-3].c, pColCat))) - yymsg(GERROR, "Unknown color option '%s.Color.%s'", yyvsp[-7].c, yyvsp[-3].c); + if(!(pColOpt = (unsigned int (*) (int, int, unsigned int))Get_ColorOption((yyvsp[(5) - (8)].c), pColCat))) + yymsg(GERROR, "Unknown color option '%s.Color.%s'", (yyvsp[(1) - (8)].c), (yyvsp[(5) - (8)].c)); else - pColOpt(0, GMSH_SET|GMSH_GUI, yyvsp[-1].u); + pColOpt(0, GMSH_SET|GMSH_GUI, (yyvsp[(7) - (8)].u)); } - Free(yyvsp[-7].c); Free(yyvsp[-3].c); - ; - break;} -case 77: -#line 941 "Gmsh.y" -{ + Free((yyvsp[(1) - (8)].c)); Free((yyvsp[(5) - (8)].c)); + ;} + break; + + case 78: +#line 943 "Gmsh.y" + { unsigned int (*pColOpt)(int num, int action, unsigned int value); StringXColor *pColCat; - if(!(pColCat = Get_ColorOptionCategory(yyvsp[-10].c))) - yymsg(GERROR, "Unknown color option class '%s'", yyvsp[-10].c); + if(!(pColCat = Get_ColorOptionCategory((yyvsp[(1) - (11)].c)))) + yymsg(GERROR, "Unknown color option class '%s'", (yyvsp[(1) - (11)].c)); else{ - if(!(pColOpt = (unsigned int (*) (int, int, unsigned int))Get_ColorOption(yyvsp[-3].c, pColCat))) - yymsg(GERROR, "Unknown color option '%s[%d].Color.%s'", yyvsp[-10].c, (int)yyvsp[-8].d, yyvsp[-3].c); + if(!(pColOpt = (unsigned int (*) (int, int, unsigned int))Get_ColorOption((yyvsp[(8) - (11)].c), pColCat))) + yymsg(GERROR, "Unknown color option '%s[%d].Color.%s'", (yyvsp[(1) - (11)].c), (int)(yyvsp[(3) - (11)].d), (yyvsp[(8) - (11)].c)); else - pColOpt((int)yyvsp[-8].d, GMSH_SET|GMSH_GUI, yyvsp[-1].u); + pColOpt((int)(yyvsp[(3) - (11)].d), GMSH_SET|GMSH_GUI, (yyvsp[(10) - (11)].u)); } - Free(yyvsp[-10].c); Free(yyvsp[-3].c); - ; - break;} -case 78: -#line 958 "Gmsh.y" -{ + Free((yyvsp[(1) - (11)].c)); Free((yyvsp[(8) - (11)].c)); + ;} + break; + + case 79: +#line 960 "Gmsh.y" + { GmshColorTable *ct = Get_ColorTable(0); if(!ct) yymsg(GERROR, "View[%d] does not exist", 0); else{ - ct->size = List_Nbr(yyvsp[-1].l); + ct->size = List_Nbr((yyvsp[(5) - (6)].l)); if(ct->size > COLORTABLE_NBMAX_COLOR) yymsg(GERROR, "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[-1].l, i, &ct->table[i]); + 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[-5].c); - List_Delete(yyvsp[-1].l); - ; - break;} -case 79: -#line 978 "Gmsh.y" -{ - GmshColorTable *ct = Get_ColorTable((int)yyvsp[-6].d); + Free((yyvsp[(1) - (6)].c)); + List_Delete((yyvsp[(5) - (6)].l)); + ;} + break; + + case 80: +#line 980 "Gmsh.y" + { + GmshColorTable *ct = Get_ColorTable((int)(yyvsp[(3) - (9)].d)); if(!ct) - yymsg(GERROR, "View[%d] does not exist", (int)yyvsp[-6].d); + yymsg(GERROR, "View[%d] does not exist", (int)(yyvsp[(3) - (9)].d)); else{ - ct->size = List_Nbr(yyvsp[-1].l); + ct->size = List_Nbr((yyvsp[(8) - (9)].l)); if(ct->size > COLORTABLE_NBMAX_COLOR) yymsg(GERROR, "Too many (%d>%d) colors in View[%d].ColorTable", - ct->size, COLORTABLE_NBMAX_COLOR, (int)yyvsp[-6].d); + ct->size, COLORTABLE_NBMAX_COLOR, (int)(yyvsp[(3) - (9)].d)); else - for(int i = 0; i < ct->size; i++) List_Read(yyvsp[-1].l, i, &ct->table[i]); + 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[-8].c); - List_Delete(yyvsp[-1].l); - ; - break;} -case 80: -#line 1001 "Gmsh.y" -{ + Free((yyvsp[(1) - (9)].c)); + List_Delete((yyvsp[(8) - (9)].l)); + ;} + break; + + case 81: +#line 1003 "Gmsh.y" + { try { - GMSH_PluginManager::instance()->setPluginOption(yyvsp[-6].c, yyvsp[-3].c, yyvsp[-1].d); + GMSH_PluginManager::instance()->setPluginOption((yyvsp[(3) - (9)].c), (yyvsp[(6) - (9)].c), (yyvsp[(8) - (9)].d)); } catch (...) { - yymsg(GERROR, "Unknown option '%s' or plugin '%s'", yyvsp[-3].c, yyvsp[-6].c); + yymsg(GERROR, "Unknown option '%s' or plugin '%s'", (yyvsp[(6) - (9)].c), (yyvsp[(3) - (9)].c)); } - Free(yyvsp[-6].c); Free(yyvsp[-3].c); - ; - break;} -case 81: -#line 1011 "Gmsh.y" -{ + Free((yyvsp[(3) - (9)].c)); Free((yyvsp[(6) - (9)].c)); + ;} + break; + + case 82: +#line 1013 "Gmsh.y" + { try { - GMSH_PluginManager::instance()->setPluginOption(yyvsp[-6].c, yyvsp[-3].c, yyvsp[-1].c); + GMSH_PluginManager::instance()->setPluginOption((yyvsp[(3) - (9)].c), (yyvsp[(6) - (9)].c), (yyvsp[(8) - (9)].c)); } catch (...) { - yymsg(GERROR, "Unknown option '%s' or plugin '%s'", yyvsp[-3].c, yyvsp[-6].c); - } - Free(yyvsp[-6].c); Free(yyvsp[-3].c); // FIXME: sometimes leak $8 - ; - break;} -case 82: -#line 1026 "Gmsh.y" -{ - yyval.i = (int)yyvsp[0].d; - ; - break;} -case 83: -#line 1030 "Gmsh.y" -{ - yyval.i = GMODEL->setPhysicalName(std::string(yyvsp[0].c), ++THEM->MaxPhysicalNum); - Free(yyvsp[0].c); - ; - break;} -case 84: -#line 1042 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d; + yymsg(GERROR, "Unknown option '%s' or plugin '%s'", (yyvsp[(6) - (9)].c), (yyvsp[(3) - (9)].c)); + } + Free((yyvsp[(3) - (9)].c)); Free((yyvsp[(6) - (9)].c)); // FIXME: sometimes leak $8 + ;} + break; + + case 83: +#line 1028 "Gmsh.y" + { + (yyval.i) = (int)(yyvsp[(1) - (1)].d); + ;} + break; + + case 84: +#line 1032 "Gmsh.y" + { + (yyval.i) = GMODEL->setPhysicalName(std::string((yyvsp[(1) - (1)].c)), ++THEM->MaxPhysicalNum); + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 85: +#line 1044 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); if(FindPoint(num)){ yymsg(GERROR, "Point %d already exists", num); } else{ - double x = CTX.geom.scaling_factor * yyvsp[-1].v[0]; - double y = CTX.geom.scaling_factor * yyvsp[-1].v[1]; - double z = CTX.geom.scaling_factor * yyvsp[-1].v[2]; - double lc = CTX.geom.scaling_factor * yyvsp[-1].v[3]; + double x = CTX.geom.scaling_factor * (yyvsp[(6) - (7)].v)[0]; + double y = CTX.geom.scaling_factor * (yyvsp[(6) - (7)].v)[1]; + double z = CTX.geom.scaling_factor * (yyvsp[(6) - (7)].v)[2]; + double lc = CTX.geom.scaling_factor * (yyvsp[(6) - (7)].v)[3]; Vertex *v; if(!myGmshSurface) v = Create_Vertex(num, x, y, z, lc, 1.0); @@ -3712,284 +4783,334 @@ case 84: Tree_Add(THEM->Points, &v); AddToTemporaryBoundingBox(v->Pos.X, v->Pos.Y, v->Pos.Z); } - yyval.s.Type = MSH_POINT; - yyval.s.Num = num; - ; - break;} -case 85: -#line 1064 "Gmsh.y" -{ - int num = (int)yyvsp[-4].i; + (yyval.s).Type = MSH_POINT; + (yyval.s).Num = num; + ;} + break; + + case 86: +#line 1066 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_POINT)){ yymsg(GERROR, "Physical point %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (8)].l)); PhysicalGroup *p = Create_PhysicalGroup(num, MSH_PHYSICAL_POINT, temp); List_Delete(temp); List_Add(THEM->PhysicalGroups, &p); } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_PHYSICAL_POINT; - yyval.s.Num = num; - ; - break;} -case 86: -#line 1080 "Gmsh.y" -{ - double pars[] = { CTX.lc/10, CTX.lc/100., CTX.lc/20, 10, 3 }; - for(int i = 0; i < List_Nbr(yyvsp[-1].l); i++){ + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_PHYSICAL_POINT; + (yyval.s).Num = num; + ;} + break; + + case 87: +#line 1082 "Gmsh.y" + { + AttractorField *att = new AttractorField(); + for(int i = 0; i < List_Nbr((yyvsp[(8) - (9)].l)); i++){ + double d; + List_Read((yyvsp[(8) - (9)].l), i, &d); + Vertex *v = FindPoint((int)d); + if(v) + att->addPoint(v->Pos.X, v->Pos.Y, v->Pos.Z); + else{ + GVertex *gv = GMODEL->vertexByTag((int)d); + if(gv) + att->addPoint(gv->x(), gv->y(), gv->z()); + } + } + att->buildFastSearchStructures(); + fields.insert(att,(int)(yyvsp[(5) - (9)].d)); + ;} + break; + + case 88: +#line 1099 "Gmsh.y" + { + double pars[]={0,CTX.lc/10,CTX.lc,CTX.lc/100,CTX.lc/20}; + for (int i=0;i<List_Nbr((yyvsp[(7) - (8)].l));i++){ + if(i>4) + yymsg(GERROR,"Too many parameters for Thresold Field (max=5)"); + else + List_Read((yyvsp[(7) - (8)].l),i,&pars[i]); + } + Field *field=new ThresholdField(fields.get((int)pars[0]),pars[1],pars[2],pars[3],pars[4]); + fields.insert(field,(int)(yyvsp[(4) - (8)].d)); + ;} + break; + + case 89: +#line 1110 "Gmsh.y" + { + std::list<Field*> *flist=new std::list<Field*>; + flist->resize(0); + for(int i = 0; i < List_Nbr((yyvsp[(8) - (9)].l)); i++){ + double id; + List_Read((yyvsp[(8) - (9)].l), i, &id); + flist->push_front(fields.get((int)id)); + } + fields.insert(new FunctionField(flist,(yyvsp[(7) - (9)].c)),(int)(yyvsp[(4) - (9)].d)); + ;} + break; + + case 90: +#line 1120 "Gmsh.y" + { + fields.insert(new StructuredField((yyvsp[(7) - (8)].c)),(int)(yyvsp[(4) - (8)].d)); + ;} + break; + + case 91: +#line 1123 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ + double id; + List_Read((yyvsp[(4) - (5)].l), i, &id); + BGMAddField(fields.get((int)id)); + } + ;} + break; + + case 92: +#line 1132 "Gmsh.y" + { + double pars[] = { CTX.lc/10, CTX.lc/100., CTX.lc/20, 1, 3 }; + for(int i = 0; i < List_Nbr((yyvsp[(5) - (6)].l)); i++){ if(i > 4) yymsg(GERROR, "Too many paramaters for attractor line (max = 5)"); else - List_Read(yyvsp[-1].l, i, &pars[i]); + List_Read((yyvsp[(5) - (6)].l), i, &pars[i]); } // treshold attractor: first parameter is the treshold, next two // are the in and out size fields, last is transition factor - Attractor *att = tresholdAttractor::New(pars[0], pars[1], pars[2], pars[4]); - for(int i = 0; i < List_Nbr(yyvsp[-3].l); i++){ + AttractorField *attractor= new AttractorField(); + fields.insert(attractor); + Field *threshold=new ThresholdField(attractor,pars[0],pars[0]*pars[4],pars[1],pars[2]); + fields.insert(threshold); + BGMAddField(threshold); + for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; - List_Read(yyvsp[-3].l, i, &d); + List_Read((yyvsp[(3) - (6)].l), i, &d); Vertex *v = FindPoint((int)d); if(v) - att->addPoint(v->Pos.X, v->Pos.Y, v->Pos.Z); + attractor->addPoint(v->Pos.X, v->Pos.Y, v->Pos.Z); else{ GVertex *gv = GMODEL->vertexByTag((int)d); if(gv) - att->addPoint(gv->x(), gv->y(), gv->z()); - } - } - att->buildFastSearchStructures(); - // dummy values - yyval.s.Type = 0; - yyval.s.Num = 0; - ; - break;} -case 87: -#line 1109 "Gmsh.y" -{ - double pars[] = { CTX.lc/10, CTX.lc/100., CTX.lc/20, 10, 3 }; - for(int i = 0; i < List_Nbr(yyvsp[-1].l); i++){ - if(i > 4) - yymsg(GERROR, "Too many paramaters for attractor line (max = 5)"); - else - List_Read(yyvsp[-1].l, i, &pars[i]); - } - // treshold attractor: first parameter is the treshold, next two - // are the in and out size fields, last is transition factor - Attractor *att = tresholdAttractor::New(pars[0], pars[1], pars[2], pars[4]); - for(int i = 0; i < List_Nbr(yyvsp[-3].l); i++){ - double d; - List_Read(yyvsp[-3].l, i, &d); - Curve *c = FindCurve((int)d); - if(c){ - buildListOfPoints(att, c, (int)pars[3]); - } - else{ - GEdge *ge = GMODEL->edgeByTag((int)d); - if(ge){ - buildListOfPoints(att, ge, (int)pars[3]); - } + attractor->addPoint(gv->x(), gv->y(), gv->z()); } } - att->buildFastSearchStructures(); + attractor->buildFastSearchStructures(); // dummy values - yyval.s.Type = 0; - yyval.s.Num = 0; - ; - break;} -case 88: -#line 1140 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[-3].l); i++){ + (yyval.s).Type = 0; + (yyval.s).Num = 0; + ;} + break; + + case 93: +#line 1196 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; - List_Read(yyvsp[-3].l, i, &d); + List_Read((yyvsp[(3) - (6)].l), i, &d); Vertex *v = FindPoint((int)d); if(v) - v->lc = yyvsp[-1].d; + v->lc = (yyvsp[(5) - (6)].d); else{ GVertex *gv = GMODEL->vertexByTag((int)d); if(gv) - gv->setPrescribedMeshSizeAtVertex(yyvsp[-1].d); + gv->setPrescribedMeshSizeAtVertex((yyvsp[(5) - (6)].d)); } } - List_Delete(yyvsp[-3].l); + List_Delete((yyvsp[(3) - (6)].l)); // dummy values - yyval.s.Type = 0; - yyval.s.Num = 0; - ; - break;} -case 89: -#line 1162 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d; + (yyval.s).Type = 0; + (yyval.s).Num = 0; + ;} + break; + + case 94: +#line 1218 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ yymsg(GERROR, "Curve %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(6) - (7)].l)); Curve *c = Create_Curve(num, MSH_SEGM_LINE, 1, temp, NULL, -1, -1, 0., 1.); Tree_Add(THEM->Curves, &c); CreateReversedCurve(c); List_Delete(temp); } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_SEGM_LINE; - yyval.s.Num = num; - ; - break;} -case 90: -#line 1180 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d; + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_SEGM_LINE; + (yyval.s).Num = num; + ;} + break; + + case 95: +#line 1236 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ yymsg(GERROR, "Curve %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(6) - (7)].l)); Curve *c = Create_Curve(num, MSH_SEGM_SPLN, 3, temp, NULL, -1, -1, 0., 1.); Tree_Add(THEM->Curves, &c); CreateReversedCurve(c); List_Delete(temp); } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_SEGM_SPLN; - yyval.s.Num = num; - ; - break;} -case 91: -#line 1198 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d; + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_SEGM_SPLN; + (yyval.s).Num = num; + ;} + break; + + case 96: +#line 1254 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ yymsg(GERROR, "Curve %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(6) - (7)].l)); Curve *c = Create_Curve(num, MSH_SEGM_CIRC, 2, temp, NULL, -1, -1, 0., 1.); Tree_Add(THEM->Curves, &c); CreateReversedCurve(c); List_Delete(temp); } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_SEGM_CIRC; - yyval.s.Num = num; - ; - break;} -case 92: -#line 1216 "Gmsh.y" -{ - int num = (int)yyvsp[-6].d; + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_SEGM_CIRC; + (yyval.s).Num = num; + ;} + break; + + case 97: +#line 1272 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (9)].d); if(FindCurve(num)){ yymsg(GERROR, "Curve %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-3].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(6) - (9)].l)); Curve *c = Create_Curve(num, MSH_SEGM_CIRC, 2, temp, NULL, -1, -1, 0., 1.); - c->Circle.n[0] = yyvsp[-1].v[0]; - c->Circle.n[1] = yyvsp[-1].v[1]; - c->Circle.n[2] = yyvsp[-1].v[2]; + c->Circle.n[0] = (yyvsp[(8) - (9)].v)[0]; + c->Circle.n[1] = (yyvsp[(8) - (9)].v)[1]; + c->Circle.n[2] = (yyvsp[(8) - (9)].v)[2]; End_Curve(c); Tree_Add(THEM->Curves, &c); Curve *rc = CreateReversedCurve(c); - rc->Circle.n[0] = yyvsp[-1].v[0]; - rc->Circle.n[1] = yyvsp[-1].v[1]; - rc->Circle.n[2] = yyvsp[-1].v[2]; + rc->Circle.n[0] = (yyvsp[(8) - (9)].v)[0]; + rc->Circle.n[1] = (yyvsp[(8) - (9)].v)[1]; + rc->Circle.n[2] = (yyvsp[(8) - (9)].v)[2]; End_Curve(rc); List_Delete(temp); } - List_Delete(yyvsp[-3].l); - yyval.s.Type = MSH_SEGM_CIRC; - yyval.s.Num = num; - ; - break;} -case 93: -#line 1242 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d; + List_Delete((yyvsp[(6) - (9)].l)); + (yyval.s).Type = MSH_SEGM_CIRC; + (yyval.s).Num = num; + ;} + break; + + case 98: +#line 1298 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ yymsg(GERROR, "Curve %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(6) - (7)].l)); Curve *c = Create_Curve(num, MSH_SEGM_ELLI, 2, temp, NULL, -1, -1, 0., 1.); Tree_Add(THEM->Curves, &c); CreateReversedCurve(c); List_Delete(temp); } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_SEGM_ELLI; - yyval.s.Num = num; - ; - break;} -case 94: -#line 1260 "Gmsh.y" -{ - int num = (int)yyvsp[-6].d; + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_SEGM_ELLI; + (yyval.s).Num = num; + ;} + break; + + case 99: +#line 1316 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (9)].d); if(FindCurve(num)){ yymsg(GERROR, "Curve %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-3].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(6) - (9)].l)); Curve *c = Create_Curve(num, MSH_SEGM_ELLI, 2, temp, NULL, -1, -1, 0., 1.); - c->Circle.n[0] = yyvsp[-1].v[0]; - c->Circle.n[1] = yyvsp[-1].v[1]; - c->Circle.n[2] = yyvsp[-1].v[2]; + c->Circle.n[0] = (yyvsp[(8) - (9)].v)[0]; + c->Circle.n[1] = (yyvsp[(8) - (9)].v)[1]; + c->Circle.n[2] = (yyvsp[(8) - (9)].v)[2]; End_Curve(c); Tree_Add(THEM->Curves, &c); Curve *rc = CreateReversedCurve(c); - rc->Circle.n[0] = yyvsp[-1].v[0]; - rc->Circle.n[1] = yyvsp[-1].v[1]; - rc->Circle.n[2] = yyvsp[-1].v[2]; + rc->Circle.n[0] = (yyvsp[(8) - (9)].v)[0]; + rc->Circle.n[1] = (yyvsp[(8) - (9)].v)[1]; + rc->Circle.n[2] = (yyvsp[(8) - (9)].v)[2]; End_Curve(c); List_Delete(temp); } - List_Delete(yyvsp[-3].l); - yyval.s.Type = MSH_SEGM_ELLI; - yyval.s.Num = num; - ; - break;} -case 95: -#line 1287 "Gmsh.y" -{ - int num = (int)yyvsp[-14].d; + List_Delete((yyvsp[(6) - (9)].l)); + (yyval.s).Type = MSH_SEGM_ELLI; + (yyval.s).Num = num; + ;} + break; + + case 100: +#line 1343 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (17)].d); if(FindCurve(num)){ yymsg(GERROR, "Curve %d already exists", num); } else{ Curve *c = Create_Curve(num, MSH_SEGM_PARAMETRIC, 2, NULL, NULL, - -1, -1, yyvsp[-10].d, yyvsp[-8].d); - strcpy(c->functu, yyvsp[-6].c); - strcpy(c->functv, yyvsp[-4].c); - strcpy(c->functw, yyvsp[-2].c); + -1, -1, (yyvsp[(7) - (17)].d), (yyvsp[(9) - (17)].d)); + strcpy(c->functu, (yyvsp[(11) - (17)].c)); + strcpy(c->functv, (yyvsp[(13) - (17)].c)); + strcpy(c->functw, (yyvsp[(15) - (17)].c)); Tree_Add(THEM->Curves, &c); CreateReversedCurve(c); } - Free(yyvsp[-6].c); Free(yyvsp[-4].c); Free(yyvsp[-2].c); - yyval.s.Type = MSH_SEGM_PARAMETRIC; - yyval.s.Num = num; - ; - break;} -case 96: -#line 1306 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d; - if(List_Nbr(yyvsp[-1].l) < 4){ + Free((yyvsp[(11) - (17)].c)); Free((yyvsp[(13) - (17)].c)); Free((yyvsp[(15) - (17)].c)); + (yyval.s).Type = MSH_SEGM_PARAMETRIC; + (yyval.s).Num = num; + ;} + break; + + case 101: +#line 1362 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + if(List_Nbr((yyvsp[(6) - (7)].l)) < 4){ yymsg(GERROR, "Too few control points for BSpline %d (%d < 4)", num, - List_Nbr(yyvsp[-1].l)); + List_Nbr((yyvsp[(6) - (7)].l))); } else{ if(FindCurve(num)){ yymsg(GERROR, "Curve %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(6) - (7)].l)); Curve *c = Create_Curve(num, MSH_SEGM_BSPLN, 2, temp, NULL, -1, -1, 0., 1.); Tree_Add(THEM->Curves, &c); @@ -3997,25 +5118,26 @@ case 96: List_Delete(temp); } } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_SEGM_BSPLN; - yyval.s.Num = num; - ; - break;} -case 97: -#line 1330 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d; - if(List_Nbr(yyvsp[-1].l) < 4){ + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_SEGM_BSPLN; + (yyval.s).Num = num; + ;} + break; + + case 102: +#line 1386 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); + if(List_Nbr((yyvsp[(6) - (7)].l)) < 4){ yymsg(GERROR, "Too few control points for Bezier curve %d (%d < 4)", num, - List_Nbr(yyvsp[-1].l)); + List_Nbr((yyvsp[(6) - (7)].l))); } else{ if(FindCurve(num)){ yymsg(GERROR, "Curve %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(6) - (7)].l)); Curve *c = Create_Curve(num, MSH_SEGM_BEZIER, 2, temp, NULL, -1, -1, 0., 1.); Tree_Add(THEM->Curves, &c); @@ -4023,106 +5145,111 @@ case 97: List_Delete(temp); } } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_SEGM_BEZIER; - yyval.s.Num = num; - ; - break;} -case 98: -#line 1354 "Gmsh.y" -{ - int num = (int)yyvsp[-8].d; - if(List_Nbr(yyvsp[-5].l) + (int)yyvsp[-1].d + 1 != List_Nbr(yyvsp[-3].l)){ + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_SEGM_BEZIER; + (yyval.s).Num = num; + ;} + break; + + case 103: +#line 1410 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (11)].d); + if(List_Nbr((yyvsp[(6) - (11)].l)) + (int)(yyvsp[(10) - (11)].d) + 1 != List_Nbr((yyvsp[(8) - (11)].l))){ yymsg(GERROR, "Wrong definition of Nurbs Curve %d: " "got %d knots, need N + D + 1 = %d + %d + 1 = %d", - (int)yyvsp[-8].d, List_Nbr(yyvsp[-3].l), List_Nbr(yyvsp[-5].l), (int)yyvsp[-1].d, List_Nbr(yyvsp[-5].l) + (int)yyvsp[-1].d + 1); + (int)(yyvsp[(3) - (11)].d), List_Nbr((yyvsp[(8) - (11)].l)), List_Nbr((yyvsp[(6) - (11)].l)), (int)(yyvsp[(10) - (11)].d), List_Nbr((yyvsp[(6) - (11)].l)) + (int)(yyvsp[(10) - (11)].d) + 1); } else{ if(FindCurve(num)){ yymsg(GERROR, "Curve %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-5].l); - Curve *c = Create_Curve(num, MSH_SEGM_NURBS, (int)yyvsp[-1].d, temp, yyvsp[-3].l, + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(6) - (11)].l)); + Curve *c = Create_Curve(num, MSH_SEGM_NURBS, (int)(yyvsp[(10) - (11)].d), temp, (yyvsp[(8) - (11)].l), -1, -1, 0., 1.); Tree_Add(THEM->Curves, &c); CreateReversedCurve(c); List_Delete(temp); } } - List_Delete(yyvsp[-5].l); - List_Delete(yyvsp[-3].l); - yyval.s.Type = MSH_SEGM_NURBS; - yyval.s.Num = num; - ; - break;} -case 99: -#line 1380 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d; + List_Delete((yyvsp[(6) - (11)].l)); + List_Delete((yyvsp[(8) - (11)].l)); + (yyval.s).Type = MSH_SEGM_NURBS; + (yyval.s).Num = num; + ;} + break; + + case 104: +#line 1436 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].d); if(FindEdgeLoop(num)){ yymsg(GERROR, "Line loop %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (8)].l)); sortEdgesInLoop(num, temp); EdgeLoop *l = Create_EdgeLoop(num, temp); Tree_Add(THEM->EdgeLoops, &l); List_Delete(temp); } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_SEGM_LOOP; - yyval.s.Num = num; - ; - break;} -case 100: -#line 1397 "Gmsh.y" -{ - int num = (int)yyvsp[-4].i; + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_SEGM_LOOP; + (yyval.s).Num = num; + ;} + break; + + case 105: +#line 1453 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_LINE)){ yymsg(GERROR, "Physical line %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (8)].l)); PhysicalGroup *p = Create_PhysicalGroup(num, MSH_PHYSICAL_LINE, temp); List_Delete(temp); List_Add(THEM->PhysicalGroups, &p); } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_PHYSICAL_LINE; - yyval.s.Num = num; - ; - break;} -case 101: -#line 1416 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d; + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_PHYSICAL_LINE; + (yyval.s).Num = num; + ;} + break; + + case 106: +#line 1472 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].d); if(FindSurface(num)){ yymsg(GERROR, "Surface %d already exists", num); } else{ Surface *s = Create_Surface(num, MSH_SURF_PLAN); - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (8)].l)); setSurfaceGeneratrices(s, temp); List_Delete(temp); End_Surface(s); Tree_Add(THEM->Surfaces, &s); } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_SURF_PLAN; - yyval.s.Num = num; - ; - break;} -case 102: -#line 1434 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d, type = 0; + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_SURF_PLAN; + (yyval.s).Num = num; + ;} + break; + + case 107: +#line 1490 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].d), type = 0; if(FindSurface(num)){ yymsg(GERROR, "Surface %d already exists", num); } else{ double d; - List_Read(yyvsp[-1].l, 0, &d); + List_Read((yyvsp[(7) - (8)].l), 0, &d); EdgeLoop *el = FindEdgeLoop((int)fabs(d)); if(!el){ yymsg(GERROR, "Unknown line loop %d", (int)d); @@ -4141,49 +5268,53 @@ case 102: type = MSH_SURF_PLAN; } Surface *s = Create_Surface(num, type); - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (8)].l)); setSurfaceGeneratrices(s, temp); List_Delete(temp); End_Surface(s); Tree_Add(THEM->Surfaces, &s); } } - List_Delete(yyvsp[-1].l); - yyval.s.Type = type; - yyval.s.Num = num; - ; - break;} -case 103: -#line 1473 "Gmsh.y" -{ + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = type; + (yyval.s).Num = num; + ;} + break; + + case 108: +#line 1529 "Gmsh.y" + { myGmshSurface = 0; - ; - break;} -case 104: -#line 1478 "Gmsh.y" -{ - myGmshSurface = gmshSurface :: surfaceByTag ( (int) yyvsp[-1].d); - ; - break;} -case 105: -#line 1483 "Gmsh.y" -{ - int num = (int)yyvsp[-6].d, type = 0; - myGmshSurface = gmshParametricSurface::NewParametricSurface ((int)yyvsp[-6].d,yyvsp[-3].c,yyvsp[-2].c,yyvsp[-1].c); - ; - break;} -case 106: -#line 1489 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d, type = 0; - if (List_Nbr(yyvsp[-1].l) != 2){ + ;} + break; + + case 109: +#line 1534 "Gmsh.y" + { + myGmshSurface = gmshSurface :: surfaceByTag ( (int) (yyvsp[(3) - (4)].d)); + ;} + break; + + case 110: +#line 1539 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (10)].d), type = 0; + myGmshSurface = gmshParametricSurface::NewParametricSurface ((int)(yyvsp[(4) - (10)].d),(yyvsp[(7) - (10)].c),(yyvsp[(8) - (10)].c),(yyvsp[(9) - (10)].c)); + ;} + break; + + case 111: +#line 1545 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d), type = 0; + if (List_Nbr((yyvsp[(6) - (7)].l)) != 2){ yymsg(GERROR, "Sphere %d has to be defined using 2 points (center + " - "any point) and not %d", num, List_Nbr(yyvsp[-1].l)); + "any point) and not %d", num, List_Nbr((yyvsp[(6) - (7)].l))); } else{ double p1,p2; - List_Read(yyvsp[-1].l, 0, &p1); - List_Read(yyvsp[-1].l, 1, &p2); + List_Read((yyvsp[(6) - (7)].l), 0, &p1); + List_Read((yyvsp[(6) - (7)].l), 1, &p2); Vertex *v1 = FindPoint((int)p1); Vertex *v2 = FindPoint((int)p2); if(!v1) yymsg(GERROR, "Sphere %d : unknown point %d", num, (int)p1); @@ -4194,20 +5325,21 @@ case 106: (v2->Pos.Y - v1->Pos.Y) * (v2->Pos.Y - v1->Pos.Y) + (v2->Pos.Z - v1->Pos.Z) * (v2->Pos.Z - v1->Pos.Z))); } - ; - break;} -case 107: -#line 1511 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d, type = 0; - if (List_Nbr(yyvsp[-1].l) != 2){ + ;} + break; + + case 112: +#line 1567 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d), type = 0; + if (List_Nbr((yyvsp[(6) - (7)].l)) != 2){ yymsg(GERROR, "PolarSphere %d has to be defined using 2 points (center + " - "any point) and not %d", num, List_Nbr(yyvsp[-1].l)); + "any point) and not %d", num, List_Nbr((yyvsp[(6) - (7)].l))); } else{ double p1,p2; - List_Read(yyvsp[-1].l, 0, &p1); - List_Read(yyvsp[-1].l, 1, &p2); + List_Read((yyvsp[(6) - (7)].l), 0, &p1); + List_Read((yyvsp[(6) - (7)].l), 1, &p2); Vertex *v1 = FindPoint((int)p1); Vertex *v2 = FindPoint((int)p2); if(!v1) yymsg(GERROR, "PolarSphere %d : unknown point %d", num, (int)p1); @@ -4218,334 +5350,360 @@ case 107: (v2->Pos.Y - v1->Pos.Y) * (v2->Pos.Y - v1->Pos.Y) + (v2->Pos.Z - v1->Pos.Z) * (v2->Pos.Z - v1->Pos.Z))); } - ; - break;} -case 108: -#line 1533 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d; + ;} + break; + + case 113: +#line 1589 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].d); if(FindSurfaceLoop(num)){ yymsg(GERROR, "Surface loop %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (8)].l)); SurfaceLoop *l = Create_SurfaceLoop(num, temp); Tree_Add(THEM->SurfaceLoops, &l); List_Delete(temp); } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_SURF_LOOP; - yyval.s.Num = num; - ; - break;} -case 109: -#line 1549 "Gmsh.y" -{ - int num = (int)yyvsp[-4].i; + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_SURF_LOOP; + (yyval.s).Num = num; + ;} + break; + + case 114: +#line 1605 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_SURFACE)){ yymsg(GERROR, "Physical surface %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (8)].l)); PhysicalGroup *p = Create_PhysicalGroup(num, MSH_PHYSICAL_SURFACE, temp); List_Delete(temp); List_Add(THEM->PhysicalGroups, &p); } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_PHYSICAL_SURFACE; - yyval.s.Num = num; - ; - break;} -case 110: -#line 1569 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d; + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_PHYSICAL_SURFACE; + (yyval.s).Num = num; + ;} + break; + + case 115: +#line 1625 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].d); if(FindVolume(num)){ yymsg(GERROR, "Volume %d already exists", num); } else{ Volume *v = Create_Volume(num, MSH_VOLUME); - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (8)].l)); setVolumeSurfaces(v, temp); List_Delete(temp); Tree_Add(THEM->Volumes, &v); } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_VOLUME; - yyval.s.Num = num; - ; - break;} -case 111: -#line 1586 "Gmsh.y" -{ - int num = (int)yyvsp[-4].d; + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_VOLUME; + (yyval.s).Num = num; + ;} + break; + + case 116: +#line 1642 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (7)].d); if(FindVolume(num)){ yymsg(GERROR, "Volume %d already exists", num); } else{ Volume *v = Create_Volume(num, MSH_VOLUME); - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(6) - (7)].l)); setVolumeSurfaces(v, temp); List_Delete(temp); Tree_Add(THEM->Volumes, &v); } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_VOLUME; - yyval.s.Num = num; - ; - break;} -case 112: -#line 1603 "Gmsh.y" -{ - int num = (int)yyvsp[-4].i; + List_Delete((yyvsp[(6) - (7)].l)); + (yyval.s).Type = MSH_VOLUME; + (yyval.s).Num = num; + ;} + break; + + case 117: +#line 1659 "Gmsh.y" + { + int num = (int)(yyvsp[(4) - (8)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_VOLUME)){ yymsg(GERROR, "Physical volume %d already exists", num); } else{ - List_T *temp = ListOfDouble2ListOfInt(yyvsp[-1].l); + List_T *temp = ListOfDouble2ListOfInt((yyvsp[(7) - (8)].l)); PhysicalGroup *p = Create_PhysicalGroup(num, MSH_PHYSICAL_VOLUME, temp); List_Delete(temp); List_Add(THEM->PhysicalGroups, &p); } - List_Delete(yyvsp[-1].l); - yyval.s.Type = MSH_PHYSICAL_VOLUME; - yyval.s.Num = num; - ; - break;} -case 113: -#line 1624 "Gmsh.y" -{ - TranslateShapes(yyvsp[-3].v[0], yyvsp[-3].v[1], yyvsp[-3].v[2], yyvsp[-1].l); - yyval.l = yyvsp[-1].l; - ; - break;} -case 114: -#line 1629 "Gmsh.y" -{ - RotateShapes(yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], yyvsp[-4].d, yyvsp[-1].l); - yyval.l = yyvsp[-1].l; - ; - break;} -case 115: -#line 1634 "Gmsh.y" -{ - SymmetryShapes(yyvsp[-3].v[0], yyvsp[-3].v[1], yyvsp[-3].v[2], yyvsp[-3].v[3], yyvsp[-1].l); - yyval.l = yyvsp[-1].l; - ; - break;} -case 116: -#line 1639 "Gmsh.y" -{ - DilatShapes(yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], yyvsp[-4].d, yyvsp[-1].l); - yyval.l = yyvsp[-1].l; - ; - break;} -case 117: -#line 1646 "Gmsh.y" -{ yyval.l = yyvsp[0].l; ; - break;} -case 118: -#line 1647 "Gmsh.y" -{ yyval.l = yyvsp[0].l; ; - break;} -case 119: -#line 1648 "Gmsh.y" -{ yyval.l = yyvsp[0].l; ; - break;} -case 120: -#line 1653 "Gmsh.y" -{ - yyval.l = List_Create(3, 3, sizeof(Shape)); - ; - break;} -case 121: -#line 1657 "Gmsh.y" -{ - List_Add(yyval.l, &yyvsp[0].s); - ; - break;} -case 122: -#line 1661 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[-2].l); i++){ + List_Delete((yyvsp[(7) - (8)].l)); + (yyval.s).Type = MSH_PHYSICAL_VOLUME; + (yyval.s).Num = num; + ;} + break; + + case 118: +#line 1680 "Gmsh.y" + { + TranslateShapes((yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], (yyvsp[(4) - (5)].l)); + (yyval.l) = (yyvsp[(4) - (5)].l); + ;} + break; + + case 119: +#line 1685 "Gmsh.y" + { + RotateShapes((yyvsp[(3) - (11)].v)[0], (yyvsp[(3) - (11)].v)[1], (yyvsp[(3) - (11)].v)[2], (yyvsp[(5) - (11)].v)[0], (yyvsp[(5) - (11)].v)[1], (yyvsp[(5) - (11)].v)[2], (yyvsp[(7) - (11)].d), (yyvsp[(10) - (11)].l)); + (yyval.l) = (yyvsp[(10) - (11)].l); + ;} + break; + + case 120: +#line 1690 "Gmsh.y" + { + SymmetryShapes((yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], (yyvsp[(2) - (5)].v)[3], (yyvsp[(4) - (5)].l)); + (yyval.l) = (yyvsp[(4) - (5)].l); + ;} + break; + + case 121: +#line 1695 "Gmsh.y" + { + DilatShapes((yyvsp[(3) - (9)].v)[0], (yyvsp[(3) - (9)].v)[1], (yyvsp[(3) - (9)].v)[2], (yyvsp[(5) - (9)].d), (yyvsp[(8) - (9)].l)); + (yyval.l) = (yyvsp[(8) - (9)].l); + ;} + break; + + case 122: +#line 1702 "Gmsh.y" + { (yyval.l) = (yyvsp[(1) - (1)].l); ;} + break; + + case 123: +#line 1703 "Gmsh.y" + { (yyval.l) = (yyvsp[(1) - (1)].l); ;} + break; + + case 124: +#line 1704 "Gmsh.y" + { (yyval.l) = (yyvsp[(1) - (1)].l); ;} + break; + + case 125: +#line 1709 "Gmsh.y" + { + (yyval.l) = List_Create(3, 3, sizeof(Shape)); + ;} + break; + + case 126: +#line 1713 "Gmsh.y" + { + List_Add((yyval.l), &(yyvsp[(2) - (2)].s)); + ;} + break; + + case 127: +#line 1717 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; - List_Read(yyvsp[-2].l, i, &d); + List_Read((yyvsp[(4) - (6)].l), i, &d); Shape TheShape; TheShape.Num = (int)d; Vertex *v = FindPoint(TheShape.Num); if(v){ TheShape.Type = MSH_POINT; - List_Add(yyval.l, &TheShape); + List_Add((yyval.l), &TheShape); } else{ GVertex *gv = GMODEL->vertexByTag(TheShape.Num); if(gv){ TheShape.Type = MSH_POINT_FROM_GMODEL; - List_Add(yyval.l, &TheShape); + List_Add((yyval.l), &TheShape); } else yymsg(WARNING, "Unknown point %d", TheShape.Num); } } - ; - break;} -case 123: -#line 1684 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[-2].l); i++){ + ;} + break; + + case 128: +#line 1740 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; - List_Read(yyvsp[-2].l, i, &d); + List_Read((yyvsp[(4) - (6)].l), i, &d); Shape TheShape; TheShape.Num = (int)d; Curve *c = FindCurve(TheShape.Num); if(c){ TheShape.Type = c->Typ; - List_Add(yyval.l, &TheShape); + List_Add((yyval.l), &TheShape); } else{ GEdge *ge = GMODEL->edgeByTag(TheShape.Num); if(ge){ TheShape.Type = MSH_SEGM_FROM_GMODEL; - List_Add(yyval.l, &TheShape); + List_Add((yyval.l), &TheShape); } else yymsg(WARNING, "Unknown curve %d", TheShape.Num); } } - ; - break;} -case 124: -#line 1707 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[-2].l); i++){ + ;} + break; + + case 129: +#line 1763 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; - List_Read(yyvsp[-2].l, i, &d); + List_Read((yyvsp[(4) - (6)].l), i, &d); Shape TheShape; TheShape.Num = (int)d; Surface *s = FindSurface(TheShape.Num); if(s){ TheShape.Type = s->Typ; - List_Add(yyval.l, &TheShape); + List_Add((yyval.l), &TheShape); } else{ GFace *gf = GMODEL->faceByTag(TheShape.Num); if(gf){ TheShape.Type = MSH_SURF_FROM_GMODEL; - List_Add(yyval.l, &TheShape); + List_Add((yyval.l), &TheShape); } else yymsg(WARNING, "Unknown surface %d", TheShape.Num); } } - ; - break;} -case 125: -#line 1730 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[-2].l); i++){ + ;} + break; + + case 130: +#line 1786 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; - List_Read(yyvsp[-2].l, i, &d); + List_Read((yyvsp[(4) - (6)].l), i, &d); Shape TheShape; TheShape.Num = (int)d; Volume *v = FindVolume(TheShape.Num); if(v){ TheShape.Type = v->Typ; - List_Add(yyval.l, &TheShape); + List_Add((yyval.l), &TheShape); } else{ GRegion *gr = GMODEL->regionByTag(TheShape.Num); if(gr){ TheShape.Type = MSH_VOLUME_FROM_GMODEL; - List_Add(yyval.l, &TheShape); + List_Add((yyval.l), &TheShape); } else yymsg(WARNING, "Unknown volume %d", TheShape.Num); } } - ; - break;} -case 126: -#line 1758 "Gmsh.y" -{ - yyval.l = List_Create(3, 3, sizeof(Shape)); - for(int i = 0; i < List_Nbr(yyvsp[-1].l); i++){ + ;} + break; + + case 131: +#line 1814 "Gmsh.y" + { + (yyval.l) = List_Create(3, 3, sizeof(Shape)); + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; - List_Read(yyvsp[-1].l, i, &TheShape); + List_Read((yyvsp[(3) - (4)].l), i, &TheShape); CopyShape(TheShape.Type, TheShape.Num, &TheShape.Num); - List_Add(yyval.l, &TheShape); + List_Add((yyval.l), &TheShape); } - List_Delete(yyvsp[-1].l); - ; - break;} -case 127: -#line 1770 "Gmsh.y" -{ - if(!strcmp(yyvsp[-4].c, "View")) AliasView((int)yyvsp[-2].d, 0); - Free(yyvsp[-4].c); - yyval.l = NULL; - ; - break;} -case 128: -#line 1776 "Gmsh.y" -{ - if(!strcmp(yyvsp[-4].c, "View")) AliasView((int)yyvsp[-2].d, 0); - Free(yyvsp[-4].c); - yyval.l = NULL; - ; - break;} -case 129: -#line 1782 "Gmsh.y" -{ - if(!strcmp(yyvsp[-4].c, "View")) AliasView((int)yyvsp[-2].d, 1); - Free(yyvsp[-4].c); - yyval.l = NULL; - ; - break;} -case 130: -#line 1794 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[-1].l); i++){ + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 132: +#line 1826 "Gmsh.y" + { + if(!strcmp((yyvsp[(2) - (6)].c), "View")) AliasView((int)(yyvsp[(4) - (6)].d), 0); + Free((yyvsp[(2) - (6)].c)); + (yyval.l) = NULL; + ;} + break; + + case 133: +#line 1832 "Gmsh.y" + { + if(!strcmp((yyvsp[(2) - (6)].c), "View")) AliasView((int)(yyvsp[(4) - (6)].d), 0); + Free((yyvsp[(2) - (6)].c)); + (yyval.l) = NULL; + ;} + break; + + case 134: +#line 1838 "Gmsh.y" + { + if(!strcmp((yyvsp[(2) - (6)].c), "View")) AliasView((int)(yyvsp[(4) - (6)].d), 1); + Free((yyvsp[(2) - (6)].c)); + (yyval.l) = NULL; + ;} + break; + + case 135: +#line 1850 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; - List_Read(yyvsp[-1].l, i, &TheShape); + List_Read((yyvsp[(3) - (4)].l), i, &TheShape); DeleteShape(TheShape.Type, TheShape.Num); } - List_Delete(yyvsp[-1].l); - ; - break;} -case 131: -#line 1803 "Gmsh.y" -{ - if(!strcmp(yyvsp[-4].c, "View")){ - RemoveViewByIndex((int)yyvsp[-2].d); + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 136: +#line 1859 "Gmsh.y" + { + if(!strcmp((yyvsp[(2) - (6)].c), "View")){ + RemoveViewByIndex((int)(yyvsp[(4) - (6)].d)); } else{ - yymsg(GERROR, "Unknown command 'Delete %s'", yyvsp[-4].c); + yymsg(GERROR, "Unknown command 'Delete %s'", (yyvsp[(2) - (6)].c)); } - Free(yyvsp[-4].c); - ; - break;} -case 132: -#line 1813 "Gmsh.y" -{ - if(!strcmp(yyvsp[-1].c, "Meshes") || !strcmp(yyvsp[-1].c, "All")){ + Free((yyvsp[(2) - (6)].c)); + ;} + break; + + case 137: +#line 1869 "Gmsh.y" + { + if(!strcmp((yyvsp[(2) - (3)].c), "Meshes") || !strcmp((yyvsp[(2) - (3)].c), "All")){ GMODEL->destroy(); THEM->destroy(); } - else if(!strcmp(yyvsp[-1].c, "Physicals")){ + else if(!strcmp((yyvsp[(2) - (3)].c), "Physicals")){ List_Action(THEM->PhysicalGroups, Free_PhysicalGroup); List_Reset(THEM->PhysicalGroups); GMODEL->deletePhysicalGroups(); } else{ - yymsg(GERROR, "Unknown command 'Delete %s'", yyvsp[-1].c); + yymsg(GERROR, "Unknown command 'Delete %s'", (yyvsp[(2) - (3)].c)); } - Free(yyvsp[-1].c); - ; - break;} -case 133: -#line 1829 "Gmsh.y" -{ - if(!strcmp(yyvsp[-2].c, "Empty") && !strcmp(yyvsp[-1].c, "Views")){ + Free((yyvsp[(2) - (3)].c)); + ;} + break; + + case 138: +#line 1885 "Gmsh.y" + { + if(!strcmp((yyvsp[(2) - (4)].c), "Empty") && !strcmp((yyvsp[(3) - (4)].c), "Views")){ for(int i = List_Nbr(CTX.post.list) - 1; i >= 0; i--){ Post_View *v = *(Post_View **) List_Pointer(CTX.post.list, i); if(v->empty()) @@ -4553,66 +5711,72 @@ case 133: } } else{ - yymsg(GERROR, "Unknown command 'Delete %s %s'", yyvsp[-2].c, yyvsp[-1].c); + yymsg(GERROR, "Unknown command 'Delete %s %s'", (yyvsp[(2) - (4)].c), (yyvsp[(3) - (4)].c)); } - Free(yyvsp[-2].c); Free(yyvsp[-1].c); - ; - break;} -case 134: -#line 1848 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[-1].l); i++){ + Free((yyvsp[(2) - (4)].c)); Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 139: +#line 1904 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ Shape TheShape; - List_Read(yyvsp[-1].l, i, &TheShape); - ColorShape(TheShape.Type, TheShape.Num, yyvsp[-3].u); - } - List_Delete(yyvsp[-1].l); - ; - break;} -case 135: -#line 1862 "Gmsh.y" -{ + List_Read((yyvsp[(4) - (5)].l), i, &TheShape); + ColorShape(TheShape.Type, TheShape.Num, (yyvsp[(2) - (5)].u)); + } + List_Delete((yyvsp[(4) - (5)].l)); + ;} + break; + + case 140: +#line 1918 "Gmsh.y" + { for(int i = 0; i < 4; i++) - VisibilityShape(yyvsp[-1].c, i, 1); - Free(yyvsp[-1].c); - ; - break;} -case 136: -#line 1868 "Gmsh.y" -{ + VisibilityShape((yyvsp[(2) - (3)].c), i, 1); + Free((yyvsp[(2) - (3)].c)); + ;} + break; + + case 141: +#line 1924 "Gmsh.y" + { for(int i = 0; i < 4; i++) - VisibilityShape(yyvsp[-1].c, i, 0); - Free(yyvsp[-1].c); - ; - break;} -case 137: -#line 1874 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[-1].l); i++){ + VisibilityShape((yyvsp[(2) - (3)].c), i, 0); + Free((yyvsp[(2) - (3)].c)); + ;} + break; + + case 142: +#line 1930 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; - List_Read(yyvsp[-1].l, i, &TheShape); + List_Read((yyvsp[(3) - (4)].l), i, &TheShape); VisibilityShape(TheShape.Type, TheShape.Num, 1); } - List_Delete(yyvsp[-1].l); - ; - break;} -case 138: -#line 1883 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[-1].l); i++){ + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 143: +#line 1939 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; - List_Read(yyvsp[-1].l, i, &TheShape); + List_Read((yyvsp[(3) - (4)].l), i, &TheShape); VisibilityShape(TheShape.Type, TheShape.Num, 0); } - List_Delete(yyvsp[-1].l); - ; - break;} -case 139: -#line 1897 "Gmsh.y" -{ - if(!strcmp(yyvsp[-2].c, "Include")){ + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 144: +#line 1953 "Gmsh.y" + { + if(!strcmp((yyvsp[(1) - (3)].c), "Include")){ char tmpstring[1024]; - FixRelativePath(yyvsp[-1].c, tmpstring); + FixRelativePath((yyvsp[(2) - (3)].c), tmpstring); // Warning: we *don't* close included files (to allow user // functions in these files). If you need to include many many // files and don't have functions in the files, use "Merge" @@ -4625,161 +5789,175 @@ case 139: SetBoundingBox(); Msg(STATUS2, "Read '%s'", tmpstring); } - else if(!strcmp(yyvsp[-2].c, "Print")){ + else if(!strcmp((yyvsp[(1) - (3)].c), "Print")){ #if defined(HAVE_FLTK) // make sure we have the latest data from THEM 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) GMODEL->importTHEM(); char tmpstring[1024]; - FixRelativePath(yyvsp[-1].c, tmpstring); + FixRelativePath((yyvsp[(2) - (3)].c), tmpstring); CreateOutputFile(tmpstring, CTX.print.format); #endif } - else if(!strcmp(yyvsp[-2].c, "Save")){ + else if(!strcmp((yyvsp[(1) - (3)].c), "Save")){ #if defined(HAVE_FLTK) GMODEL->importTHEM(); char tmpstring[1024]; - FixRelativePath(yyvsp[-1].c, tmpstring); + FixRelativePath((yyvsp[(2) - (3)].c), tmpstring); CreateOutputFile(tmpstring, CTX.mesh.format); #endif } - else if(!strcmp(yyvsp[-2].c, "Merge") || !strcmp(yyvsp[-2].c, "MergeWithBoundingBox")){ + else if(!strcmp((yyvsp[(1) - (3)].c), "Merge") || !strcmp((yyvsp[(1) - (3)].c), "MergeWithBoundingBox")){ // MergeWithBoundingBox is deprecated char tmpstring[1024]; - FixRelativePath(yyvsp[-1].c, tmpstring); + FixRelativePath((yyvsp[(2) - (3)].c), tmpstring); MergeFile(tmpstring, 1); } - else if(!strcmp(yyvsp[-2].c, "System")){ - SystemCall(yyvsp[-1].c); + else if(!strcmp((yyvsp[(1) - (3)].c), "System")){ + SystemCall((yyvsp[(2) - (3)].c)); } else{ - yymsg(GERROR, "Unknown command '%s'", yyvsp[-2].c); + yymsg(GERROR, "Unknown command '%s'", (yyvsp[(1) - (3)].c)); } - Free(yyvsp[-2].c); Free(yyvsp[-1].c); - ; - break;} -case 140: -#line 1947 "Gmsh.y" -{ - if(!strcmp(yyvsp[-6].c, "Save") && !strcmp(yyvsp[-5].c, "View")){ - Post_View **vv = (Post_View **)List_Pointer_Test(CTX.post.list, (int)yyvsp[-3].d); + Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(2) - (3)].c)); + ;} + break; + + case 145: +#line 2003 "Gmsh.y" + { + if(!strcmp((yyvsp[(1) - (7)].c), "Save") && !strcmp((yyvsp[(2) - (7)].c), "View")){ + Post_View **vv = (Post_View **)List_Pointer_Test(CTX.post.list, (int)(yyvsp[(4) - (7)].d)); if(vv){ char tmpstring[1024]; - FixRelativePath(yyvsp[-1].c, tmpstring); + FixRelativePath((yyvsp[(6) - (7)].c), tmpstring); WriteView(*vv, tmpstring, CTX.post.file_format, 0); } } else{ - yymsg(GERROR, "Unknown command '%s'", yyvsp[-6].c); + yymsg(GERROR, "Unknown command '%s'", (yyvsp[(1) - (7)].c)); } - Free(yyvsp[-6].c); Free(yyvsp[-5].c); Free(yyvsp[-1].c); - ; - break;} -case 141: -#line 1962 "Gmsh.y" -{ - if(!strcmp(yyvsp[-6].c, "Background") && !strcmp(yyvsp[-5].c, "Mesh") && !strcmp(yyvsp[-4].c, "View")){ - Post_View **vv = (Post_View **)List_Pointer_Test(CTX.post.list, (int)yyvsp[-2].d); - if(vv) BGMWithView(*vv); + Free((yyvsp[(1) - (7)].c)); Free((yyvsp[(2) - (7)].c)); Free((yyvsp[(6) - (7)].c)); + ;} + break; + + case 146: +#line 2018 "Gmsh.y" + { + if(!strcmp((yyvsp[(1) - (7)].c), "Background") && !strcmp((yyvsp[(2) - (7)].c), "Mesh") && !strcmp((yyvsp[(3) - (7)].c), "View")){ + Post_View **vv = (Post_View **)List_Pointer_Test(CTX.post.list, (int)(yyvsp[(5) - (7)].d)); + if(vv) { + Field *field=new PostViewField(*vv); + fields.insert(field); + BGMAddField(field); + } } else{ - yymsg(GERROR, "Unknown command '%s'", yyvsp[-6].c); + yymsg(GERROR, "Unknown command '%s'", (yyvsp[(1) - (7)].c)); } - Free(yyvsp[-6].c); Free(yyvsp[-5].c); Free(yyvsp[-4].c); - ; - break;} -case 142: -#line 1973 "Gmsh.y" -{ - if(!strcmp(yyvsp[-2].c, "Sleep")){ - SleepInSeconds(yyvsp[-1].d); + Free((yyvsp[(1) - (7)].c)); Free((yyvsp[(2) - (7)].c)); Free((yyvsp[(3) - (7)].c)); + ;} + break; + + case 147: +#line 2033 "Gmsh.y" + { + if(!strcmp((yyvsp[(1) - (3)].c), "Sleep")){ + SleepInSeconds((yyvsp[(2) - (3)].d)); } - else if(!strcmp(yyvsp[-2].c, "Remesh")){ + else if(!strcmp((yyvsp[(1) - (3)].c), "Remesh")){ Msg(GERROR, "Surface ReMeshing must be reinterfaced"); // ReMesh(); } - else if(!strcmp(yyvsp[-2].c, "Mesh")){ + else if(!strcmp((yyvsp[(1) - (3)].c), "Mesh")){ yymsg(GERROR, "Mesh directives are not (yet) allowed in scripts"); } - else if(!strcmp(yyvsp[-2].c, "Status")){ + else if(!strcmp((yyvsp[(1) - (3)].c), "Status")){ yymsg(GERROR, "Mesh directives are not (yet) allowed in scripts"); } else{ - yymsg(GERROR, "Unknown command '%s'", yyvsp[-2].c); + yymsg(GERROR, "Unknown command '%s'", (yyvsp[(1) - (3)].c)); } - Free(yyvsp[-2].c); - ; - break;} -case 143: -#line 1993 "Gmsh.y" -{ + Free((yyvsp[(1) - (3)].c)); + ;} + break; + + case 148: +#line 2053 "Gmsh.y" + { try { - GMSH_PluginManager::instance()->action(yyvsp[-4].c, yyvsp[-1].c, 0); + GMSH_PluginManager::instance()->action((yyvsp[(3) - (7)].c), (yyvsp[(6) - (7)].c), 0); } catch(...) { - yymsg(GERROR, "Unknown action '%s' or plugin '%s'", yyvsp[-1].c, yyvsp[-4].c); + yymsg(GERROR, "Unknown action '%s' or plugin '%s'", (yyvsp[(6) - (7)].c), (yyvsp[(3) - (7)].c)); } - Free(yyvsp[-4].c); Free(yyvsp[-1].c); - ; - break;} -case 144: -#line 2003 "Gmsh.y" -{ - if(!strcmp(yyvsp[-1].c, "ElementsFromAllViews")) + Free((yyvsp[(3) - (7)].c)); Free((yyvsp[(6) - (7)].c)); + ;} + break; + + case 149: +#line 2063 "Gmsh.y" + { + if(!strcmp((yyvsp[(2) - (3)].c), "ElementsFromAllViews")) CombineViews(0, 1, CTX.post.combine_remove_orig); - else if(!strcmp(yyvsp[-1].c, "ElementsFromVisibleViews")) + else if(!strcmp((yyvsp[(2) - (3)].c), "ElementsFromVisibleViews")) CombineViews(0, 0, CTX.post.combine_remove_orig); - else if(!strcmp(yyvsp[-1].c, "ElementsByViewName")) + else if(!strcmp((yyvsp[(2) - (3)].c), "ElementsByViewName")) CombineViews(0, 2, CTX.post.combine_remove_orig); - else if(!strcmp(yyvsp[-1].c, "TimeStepsFromAllViews")) + else if(!strcmp((yyvsp[(2) - (3)].c), "TimeStepsFromAllViews")) CombineViews(1, 1, CTX.post.combine_remove_orig); - else if(!strcmp(yyvsp[-1].c, "TimeStepsFromVisibleViews")) + else if(!strcmp((yyvsp[(2) - (3)].c), "TimeStepsFromVisibleViews")) CombineViews(1, 0, CTX.post.combine_remove_orig); - else if(!strcmp(yyvsp[-1].c, "TimeStepsByViewName")) + else if(!strcmp((yyvsp[(2) - (3)].c), "TimeStepsByViewName")) CombineViews(1, 2, CTX.post.combine_remove_orig); - else if(!strcmp(yyvsp[-1].c, "Views")) + else if(!strcmp((yyvsp[(2) - (3)].c), "Views")) CombineViews(0, 1, CTX.post.combine_remove_orig); - else if(!strcmp(yyvsp[-1].c, "TimeSteps")) + else if(!strcmp((yyvsp[(2) - (3)].c), "TimeSteps")) CombineViews(1, 2, CTX.post.combine_remove_orig); else yymsg(GERROR, "Unknown 'Combine' command"); - Free(yyvsp[-1].c); - ; - break;} -case 145: -#line 2025 "Gmsh.y" -{ + Free((yyvsp[(2) - (3)].c)); + ;} + break; + + case 150: +#line 2085 "Gmsh.y" + { exit(0); - ; - break;} -case 146: -#line 2029 "Gmsh.y" -{ + ;} + break; + + case 151: +#line 2089 "Gmsh.y" + { CTX.forced_bbox = 0; SetBoundingBox(); - ; - break;} -case 147: -#line 2034 "Gmsh.y" -{ + ;} + break; + + case 152: +#line 2094 "Gmsh.y" + { CTX.forced_bbox = 1; - SetBoundingBox(yyvsp[-12].d, yyvsp[-10].d, yyvsp[-8].d, yyvsp[-6].d, yyvsp[-4].d, yyvsp[-2].d); - ; - break;} -case 148: -#line 2039 "Gmsh.y" -{ + 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 153: +#line 2099 "Gmsh.y" + { #if defined(HAVE_FLTK) Draw(); #endif - ; - break;} -case 149: -#line 2051 "Gmsh.y" -{ - LoopControlVariablesTab[ImbricatedLoop][0] = yyvsp[-3].d; - LoopControlVariablesTab[ImbricatedLoop][1] = yyvsp[-1].d; + ;} + break; + + case 154: +#line 2111 "Gmsh.y" + { + LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (6)].d); + LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (6)].d); LoopControlVariablesTab[ImbricatedLoop][2] = 1.0; LoopControlVariablesNameTab[ImbricatedLoop] = NULL; fgetpos(yyin, &yyposImbricatedLoopsTab[ImbricatedLoop]); @@ -4789,15 +5967,16 @@ case 149: yymsg(GERROR, "Reached maximum number of imbricated loops"); ImbricatedLoop = MAX_RECUR_LOOPS-1; } - if(yyvsp[-3].d > yyvsp[-1].d) skip_until("For", "EndFor"); - ; - break;} -case 150: -#line 2066 "Gmsh.y" -{ - LoopControlVariablesTab[ImbricatedLoop][0] = yyvsp[-5].d; - LoopControlVariablesTab[ImbricatedLoop][1] = yyvsp[-3].d; - LoopControlVariablesTab[ImbricatedLoop][2] = yyvsp[-1].d; + if((yyvsp[(3) - (6)].d) > (yyvsp[(5) - (6)].d)) skip_until("For", "EndFor"); + ;} + break; + + case 155: +#line 2126 "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] = NULL; fgetpos(yyin, &yyposImbricatedLoopsTab[ImbricatedLoop]); yylinenoImbricatedLoopsTab[ImbricatedLoop] = yylineno; @@ -4806,27 +5985,28 @@ case 150: yymsg(GERROR, "Reached maximum number of imbricated loops"); ImbricatedLoop = MAX_RECUR_LOOPS-1; } - if((yyvsp[-1].d > 0. && yyvsp[-5].d > yyvsp[-3].d) || (yyvsp[-1].d < 0. && yyvsp[-5].d < yyvsp[-3].d)) + 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_until("For", "EndFor"); - ; - break;} -case 151: -#line 2082 "Gmsh.y" -{ - LoopControlVariablesTab[ImbricatedLoop][0] = yyvsp[-3].d; - LoopControlVariablesTab[ImbricatedLoop][1] = yyvsp[-1].d; + ;} + break; + + case 156: +#line 2142 "Gmsh.y" + { + LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (8)].d); + LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][2] = 1.0; - LoopControlVariablesNameTab[ImbricatedLoop] = yyvsp[-6].c; + LoopControlVariablesNameTab[ImbricatedLoop] = (yyvsp[(2) - (8)].c); Symbol TheSymbol; - TheSymbol.Name = yyvsp[-6].c; + TheSymbol.Name = (yyvsp[(2) - (8)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))){ TheSymbol.val = List_Create(1, 1, sizeof(double)); - List_Put(TheSymbol.val, 0, &yyvsp[-3].d); + List_Put(TheSymbol.val, 0, &(yyvsp[(5) - (8)].d)); Tree_Add(Symbol_T, &TheSymbol); } else{ - List_Write(pSymbol->val, 0, &yyvsp[-3].d); + List_Write(pSymbol->val, 0, &(yyvsp[(5) - (8)].d)); } fgetpos(yyin, &yyposImbricatedLoopsTab[ImbricatedLoop]); yylinenoImbricatedLoopsTab[ImbricatedLoop] = yylineno; @@ -4835,26 +6015,27 @@ case 151: yymsg(GERROR, "Reached maximum number of imbricated loops"); ImbricatedLoop = MAX_RECUR_LOOPS-1; } - if(yyvsp[-3].d > yyvsp[-1].d) skip_until("For", "EndFor"); - ; - break;} -case 152: -#line 2108 "Gmsh.y" -{ - LoopControlVariablesTab[ImbricatedLoop][0] = yyvsp[-5].d; - LoopControlVariablesTab[ImbricatedLoop][1] = yyvsp[-3].d; - LoopControlVariablesTab[ImbricatedLoop][2] = yyvsp[-1].d; - LoopControlVariablesNameTab[ImbricatedLoop] = yyvsp[-8].c; + if((yyvsp[(5) - (8)].d) > (yyvsp[(7) - (8)].d)) skip_until("For", "EndFor"); + ;} + break; + + case 157: +#line 2168 "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); Symbol TheSymbol; - TheSymbol.Name = yyvsp[-8].c; + TheSymbol.Name = (yyvsp[(2) - (10)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))){ TheSymbol.val = List_Create(1, 1, sizeof(double)); - List_Put(TheSymbol.val, 0, &yyvsp[-5].d); + List_Put(TheSymbol.val, 0, &(yyvsp[(5) - (10)].d)); Tree_Add(Symbol_T, &TheSymbol); } else{ - List_Write(pSymbol->val, 0, &yyvsp[-5].d); + List_Write(pSymbol->val, 0, &(yyvsp[(5) - (10)].d)); } fgetpos(yyin, &yyposImbricatedLoopsTab[ImbricatedLoop]); yylinenoImbricatedLoopsTab[ImbricatedLoop] = yylineno; @@ -4863,13 +6044,14 @@ case 152: yymsg(GERROR, "Reached maximum number of imbricated loops"); ImbricatedLoop = MAX_RECUR_LOOPS-1; } - if((yyvsp[-1].d > 0. && yyvsp[-5].d > yyvsp[-3].d) || (yyvsp[-1].d < 0. && yyvsp[-5].d < yyvsp[-3].d)) + 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_until("For", "EndFor"); - ; - break;} -case 153: -#line 2135 "Gmsh.y" -{ + ;} + break; + + case 158: +#line 2195 "Gmsh.y" + { if(ImbricatedLoop <= 0){ yymsg(GERROR, "Invalid For/EndFor loop"); ImbricatedLoop = 0; @@ -4899,547 +6081,603 @@ case 153: ImbricatedLoop--; } } - ; - break;} -case 154: -#line 2167 "Gmsh.y" -{ - if(!FunctionManager::Instance()->createFunction(yyvsp[0].c, yyin, yyname, yylineno)) - yymsg(GERROR, "Redefinition of function %s", yyvsp[0].c); + ;} + break; + + case 159: +#line 2227 "Gmsh.y" + { + if(!FunctionManager::Instance()->createFunction((yyvsp[(2) - (2)].c), yyin, yyname, yylineno)) + yymsg(GERROR, "Redefinition of function %s", (yyvsp[(2) - (2)].c)); skip_until(NULL, "Return"); //FIXME: wee leak $2 - ; - break;} -case 155: -#line 2174 "Gmsh.y" -{ + ;} + break; + + case 160: +#line 2234 "Gmsh.y" + { if(!FunctionManager::Instance()->leaveFunction(&yyin, yyname, yylineno)) yymsg(GERROR, "Error while exiting function"); - ; - break;} -case 156: -#line 2179 "Gmsh.y" -{ - if(!FunctionManager::Instance()->enterFunction(yyvsp[-1].c, &yyin, yyname, yylineno)) - yymsg(GERROR, "Unknown function %s", yyvsp[-1].c); + ;} + break; + + case 161: +#line 2239 "Gmsh.y" + { + if(!FunctionManager::Instance()->enterFunction((yyvsp[(2) - (3)].c), &yyin, yyname, yylineno)) + yymsg(GERROR, "Unknown function %s", (yyvsp[(2) - (3)].c)); //FIXME: wee leak $2 - ; - break;} -case 157: -#line 2185 "Gmsh.y" -{ - if(!yyvsp[-1].d) skip_until("If", "EndIf"); - ; - break;} -case 158: -#line 2189 "Gmsh.y" -{ - ; - break;} -case 159: -#line 2198 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShapes(TRANSLATE, yyvsp[-1].l, - yyvsp[-3].v[0], yyvsp[-3].v[1], yyvsp[-3].v[2], 0., 0., 0., 0., 0., 0., 0., - NULL, yyval.l); - List_Delete(yyvsp[-1].l); - ; - break;} -case 160: -#line 2206 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShapes(ROTATE, yyvsp[-1].l, - 0., 0., 0., yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], yyvsp[-4].d, - NULL, yyval.l); - List_Delete(yyvsp[-1].l); - ; - break;} -case 161: -#line 2214 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShapes(TRANSLATE_ROTATE, yyvsp[-1].l, - yyvsp[-10].v[0], yyvsp[-10].v[1], yyvsp[-10].v[2], yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], yyvsp[-4].d, - NULL, yyval.l); - List_Delete(yyvsp[-1].l); - ; - break;} -case 162: -#line 2222 "Gmsh.y" -{ + ;} + break; + + case 162: +#line 2245 "Gmsh.y" + { + if(!(yyvsp[(3) - (4)].d)) skip_until("If", "EndIf"); + ;} + break; + + case 163: +#line 2249 "Gmsh.y" + { + ;} + break; + + case 164: +#line 2258 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (5)].l), + (yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], 0., 0., 0., 0., 0., 0., 0., + NULL, (yyval.l)); + List_Delete((yyvsp[(4) - (5)].l)); + ;} + break; + + case 165: +#line 2266 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShapes(ROTATE, (yyvsp[(10) - (11)].l), + 0., 0., 0., (yyvsp[(3) - (11)].v)[0], (yyvsp[(3) - (11)].v)[1], (yyvsp[(3) - (11)].v)[2], (yyvsp[(5) - (11)].v)[0], (yyvsp[(5) - (11)].v)[1], (yyvsp[(5) - (11)].v)[2], (yyvsp[(7) - (11)].d), + NULL, (yyval.l)); + List_Delete((yyvsp[(10) - (11)].l)); + ;} + break; + + case 166: +#line 2274 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (13)].l), + (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[(7) - (13)].v)[0], (yyvsp[(7) - (13)].v)[1], (yyvsp[(7) - (13)].v)[2], (yyvsp[(9) - (13)].d), + NULL, (yyval.l)); + List_Delete((yyvsp[(12) - (13)].l)); + ;} + break; + + case 167: +#line 2282 "Gmsh.y" + { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - ; - break;} -case 163: -#line 2226 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShapes(TRANSLATE, yyvsp[-3].l, - yyvsp[-5].v[0], yyvsp[-5].v[1], yyvsp[-5].v[2], 0., 0., 0., 0., 0., 0., 0., - &extr, yyval.l); - List_Delete(yyvsp[-3].l); - ; - break;} -case 164: -#line 2234 "Gmsh.y" -{ + ;} + break; + + case 168: +#line 2286 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (7)].l), + (yyvsp[(2) - (7)].v)[0], (yyvsp[(2) - (7)].v)[1], (yyvsp[(2) - (7)].v)[2], 0., 0., 0., 0., 0., 0., 0., + &extr, (yyval.l)); + List_Delete((yyvsp[(4) - (7)].l)); + ;} + break; + + case 169: +#line 2294 "Gmsh.y" + { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - ; - break;} -case 165: -#line 2238 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShapes(ROTATE, yyvsp[-3].l, - 0., 0., 0., yyvsp[-10].v[0], yyvsp[-10].v[1], yyvsp[-10].v[2], yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].d, - &extr, yyval.l); - List_Delete(yyvsp[-3].l); - ; - break;} -case 166: -#line 2246 "Gmsh.y" -{ + ;} + break; + + case 170: +#line 2298 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShapes(ROTATE, (yyvsp[(10) - (13)].l), + 0., 0., 0., (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[(7) - (13)].d), + &extr, (yyval.l)); + List_Delete((yyvsp[(10) - (13)].l)); + ;} + break; + + case 171: +#line 2306 "Gmsh.y" + { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - ; - break;} -case 167: -#line 2250 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShapes(TRANSLATE_ROTATE, yyvsp[-3].l, - yyvsp[-12].v[0], yyvsp[-12].v[1], yyvsp[-12].v[2], yyvsp[-10].v[0], yyvsp[-10].v[1], yyvsp[-10].v[2], yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].d, - &extr, yyval.l); - List_Delete(yyvsp[-3].l); - ; - break;} -case 168: -#line 2258 "Gmsh.y" -{ + ;} + break; + + case 172: +#line 2310 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (15)].l), + (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[(7) - (15)].v)[0], (yyvsp[(7) - (15)].v)[1], (yyvsp[(7) - (15)].v)[2], (yyvsp[(9) - (15)].d), + &extr, (yyval.l)); + List_Delete((yyvsp[(12) - (15)].l)); + ;} + break; + + case 173: +#line 2318 "Gmsh.y" + { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - ; - break;} -case 169: -#line 2262 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShapes(BOUNDARY_LAYER, yyvsp[-3].l, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., - &extr, yyval.l); - List_Delete(yyvsp[-3].l); - ; - break;} -case 170: -#line 2269 "Gmsh.y" -{ + ;} + break; + + case 174: +#line 2322 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShapes(BOUNDARY_LAYER, (yyvsp[(3) - (6)].l), 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., + &extr, (yyval.l)); + List_Delete((yyvsp[(3) - (6)].l)); + ;} + break; + + case 175: +#line 2329 "Gmsh.y" + { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - ; - break;} -case 171: -#line 2273 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - extr.mesh.ViewIndex = yyvsp[-6].d; - ExtrudeShapes(BOUNDARY_LAYER, yyvsp[-3].l, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., - &extr, yyval.l); + ;} + break; + + case 176: +#line 2333 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + extr.mesh.ViewIndex = (int)(yyvsp[(4) - (10)].d); + ExtrudeShapes(BOUNDARY_LAYER, (yyvsp[(7) - (10)].l), 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., + &extr, (yyval.l)); extr.mesh.ViewIndex = -1; - Free(yyvsp[-8].c); - List_Delete(yyvsp[-3].l); - ; - break;} -case 172: -#line 2285 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE, MSH_POINT, (int)yyvsp[-4].d, - yyvsp[-2].v[0], yyvsp[-2].v[1], yyvsp[-2].v[2], 0., 0., 0., 0., 0., 0., 0., - NULL, yyval.l); - ; - break;} -case 173: -#line 2292 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)yyvsp[-4].d, - yyvsp[-2].v[0], yyvsp[-2].v[1], yyvsp[-2].v[2], 0., 0., 0., 0., 0., 0., 0., - NULL, yyval.l); - ; - break;} -case 174: -#line 2299 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)yyvsp[-4].d, - yyvsp[-2].v[0], yyvsp[-2].v[1], yyvsp[-2].v[2], 0., 0., 0., 0., 0., 0., 0., - NULL, yyval.l); - ; - break;} -case 175: -#line 2306 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(ROTATE, MSH_POINT, (int)yyvsp[-8].d, - 0., 0., 0., yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], yyvsp[-4].v[0], yyvsp[-4].v[1], yyvsp[-4].v[2], yyvsp[-2].d, - NULL, yyval.l); - ; - break;} -case 176: -#line 2313 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)yyvsp[-8].d, - 0., 0., 0., yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], yyvsp[-4].v[0], yyvsp[-4].v[1], yyvsp[-4].v[2], yyvsp[-2].d, - NULL, yyval.l); - ; - break;} -case 177: -#line 2320 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)yyvsp[-8].d, - 0., 0., 0., yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], yyvsp[-4].v[0], yyvsp[-4].v[1], yyvsp[-4].v[2], yyvsp[-2].d, - NULL, yyval.l); - ; - break;} -case 178: -#line 2327 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)yyvsp[-10].d, - yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], yyvsp[-4].v[0], yyvsp[-4].v[1], yyvsp[-4].v[2], yyvsp[-2].d, - NULL, yyval.l); - ; - break;} -case 179: -#line 2334 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)yyvsp[-10].d, - yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], yyvsp[-4].v[0], yyvsp[-4].v[1], yyvsp[-4].v[2], yyvsp[-2].d, - NULL, yyval.l); - ; - break;} -case 180: -#line 2341 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)yyvsp[-10].d, - yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], yyvsp[-4].v[0], yyvsp[-4].v[1], yyvsp[-4].v[2], yyvsp[-2].d, - NULL, yyval.l); - ; - break;} -case 181: -#line 2348 "Gmsh.y" -{ - extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - ; - break;} -case 182: + Free((yyvsp[(2) - (10)].c)); + List_Delete((yyvsp[(7) - (10)].l)); + ;} + break; + + case 177: +#line 2345 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (8)].d), + (yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0., + NULL, (yyval.l)); + ;} + break; + + case 178: #line 2352 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE, MSH_POINT, (int)yyvsp[-8].d, - yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], 0., 0., 0., 0., 0., 0., 0., - &extr, yyval.l); - ; - break;} -case 183: + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (8)].d), + (yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0., + NULL, (yyval.l)); + ;} + break; + + case 179: #line 2359 "Gmsh.y" -{ + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (8)].d), + (yyvsp[(6) - (8)].v)[0], (yyvsp[(6) - (8)].v)[1], (yyvsp[(6) - (8)].v)[2], 0., 0., 0., 0., 0., 0., 0., + NULL, (yyval.l)); + ;} + break; + + case 180: +#line 2366 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), + 0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d), + NULL, (yyval.l)); + ;} + break; + + case 181: +#line 2373 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), + 0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d), + NULL, (yyval.l)); + ;} + break; + + case 182: +#line 2380 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), + 0., 0., 0., (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], (yyvsp[(8) - (12)].v)[0], (yyvsp[(8) - (12)].v)[1], (yyvsp[(8) - (12)].v)[2], (yyvsp[(10) - (12)].d), + NULL, (yyval.l)); + ;} + break; + + case 183: +#line 2387 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (14)].d), + (yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d), + NULL, (yyval.l)); + ;} + break; + + case 184: +#line 2394 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (14)].d), + (yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d), + NULL, (yyval.l)); + ;} + break; + + case 185: +#line 2401 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (14)].d), + (yyvsp[(6) - (14)].v)[0], (yyvsp[(6) - (14)].v)[1], (yyvsp[(6) - (14)].v)[2], (yyvsp[(8) - (14)].v)[0], (yyvsp[(8) - (14)].v)[1], (yyvsp[(8) - (14)].v)[2], (yyvsp[(10) - (14)].v)[0], (yyvsp[(10) - (14)].v)[1], (yyvsp[(10) - (14)].v)[2], (yyvsp[(12) - (14)].d), + NULL, (yyval.l)); + ;} + break; + + case 186: +#line 2408 "Gmsh.y" + { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - ; - break;} -case 184: -#line 2363 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)yyvsp[-8].d, - yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], 0., 0., 0., 0., 0., 0., 0., - &extr, yyval.l); - ; - break;} -case 185: -#line 2370 "Gmsh.y" -{ + ;} + break; + + case 187: +#line 2412 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), + (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0., + &extr, (yyval.l)); + ;} + break; + + case 188: +#line 2419 "Gmsh.y" + { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - ; - break;} -case 186: -#line 2374 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)yyvsp[-8].d, - yyvsp[-6].v[0], yyvsp[-6].v[1], yyvsp[-6].v[2], 0., 0., 0., 0., 0., 0., 0., - &extr, yyval.l); - ; - break;} -case 187: -#line 2381 "Gmsh.y" -{ + ;} + break; + + case 189: +#line 2423 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), + (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0., + &extr, (yyval.l)); + ;} + break; + + case 190: +#line 2430 "Gmsh.y" + { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - ; - break;} -case 188: -#line 2385 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(ROTATE, MSH_POINT, (int)yyvsp[-12].d, - 0., 0., 0., yyvsp[-10].v[0], yyvsp[-10].v[1], yyvsp[-10].v[2], yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].d, - &extr, yyval.l); - ; - break;} -case 189: -#line 2392 "Gmsh.y" -{ + ;} + break; + + case 191: +#line 2434 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), + (yyvsp[(6) - (12)].v)[0], (yyvsp[(6) - (12)].v)[1], (yyvsp[(6) - (12)].v)[2], 0., 0., 0., 0., 0., 0., 0., + &extr, (yyval.l)); + ;} + break; + + case 192: +#line 2441 "Gmsh.y" + { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - ; - break;} -case 190: -#line 2396 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)yyvsp[-12].d, - 0., 0., 0., yyvsp[-10].v[0], yyvsp[-10].v[1], yyvsp[-10].v[2], yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].d, - &extr, yyval.l); - ; - break;} -case 191: -#line 2403 "Gmsh.y" -{ + ;} + break; + + case 193: +#line 2445 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (16)].d), + 0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d), + &extr, (yyval.l)); + ;} + break; + + case 194: +#line 2452 "Gmsh.y" + { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - ; - break;} -case 192: -#line 2407 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)yyvsp[-12].d, - 0., 0., 0., yyvsp[-10].v[0], yyvsp[-10].v[1], yyvsp[-10].v[2], yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].d, - &extr, yyval.l); - ; - break;} -case 193: -#line 2414 "Gmsh.y" -{ + ;} + break; + + case 195: +#line 2456 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (16)].d), + 0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d), + &extr, (yyval.l)); + ;} + break; + + case 196: +#line 2463 "Gmsh.y" + { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - ; - break;} -case 194: -#line 2418 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)yyvsp[-14].d, - yyvsp[-12].v[0], yyvsp[-12].v[1], yyvsp[-12].v[2], yyvsp[-10].v[0], yyvsp[-10].v[1], yyvsp[-10].v[2], yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].d, - &extr, yyval.l); - ; - break;} -case 195: -#line 2425 "Gmsh.y" -{ + ;} + break; + + case 197: +#line 2467 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (16)].d), + 0., 0., 0., (yyvsp[(6) - (16)].v)[0], (yyvsp[(6) - (16)].v)[1], (yyvsp[(6) - (16)].v)[2], (yyvsp[(8) - (16)].v)[0], (yyvsp[(8) - (16)].v)[1], (yyvsp[(8) - (16)].v)[2], (yyvsp[(10) - (16)].d), + &extr, (yyval.l)); + ;} + break; + + case 198: +#line 2474 "Gmsh.y" + { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - ; - break;} -case 196: -#line 2429 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)yyvsp[-14].d, - yyvsp[-12].v[0], yyvsp[-12].v[1], yyvsp[-12].v[2], yyvsp[-10].v[0], yyvsp[-10].v[1], yyvsp[-10].v[2], yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].d, - &extr, yyval.l); - ; - break;} -case 197: -#line 2436 "Gmsh.y" -{ + ;} + break; + + case 199: +#line 2478 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (18)].d), + (yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d), + &extr, (yyval.l)); + ;} + break; + + case 200: +#line 2485 "Gmsh.y" + { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; - ; - break;} -case 198: -#line 2440 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(Shape)); - ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)yyvsp[-14].d, - yyvsp[-12].v[0], yyvsp[-12].v[1], yyvsp[-12].v[2], yyvsp[-10].v[0], yyvsp[-10].v[1], yyvsp[-10].v[2], yyvsp[-8].v[0], yyvsp[-8].v[1], yyvsp[-8].v[2], yyvsp[-6].d, - &extr, yyval.l); - ; - break;} -case 199: -#line 2451 "Gmsh.y" -{ - ; - break;} -case 200: -#line 2454 "Gmsh.y" -{ - ; - break;} -case 201: -#line 2460 "Gmsh.y" -{ + ;} + break; + + case 201: +#line 2489 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (18)].d), + (yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d), + &extr, (yyval.l)); + ;} + break; + + case 202: +#line 2496 "Gmsh.y" + { + extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; + ;} + break; + + case 203: +#line 2500 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(Shape)); + ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (18)].d), + (yyvsp[(6) - (18)].v)[0], (yyvsp[(6) - (18)].v)[1], (yyvsp[(6) - (18)].v)[2], (yyvsp[(8) - (18)].v)[0], (yyvsp[(8) - (18)].v)[1], (yyvsp[(8) - (18)].v)[2], (yyvsp[(10) - (18)].v)[0], (yyvsp[(10) - (18)].v)[1], (yyvsp[(10) - (18)].v)[2], (yyvsp[(12) - (18)].d), + &extr, (yyval.l)); + ;} + break; + + case 204: +#line 2511 "Gmsh.y" + { + ;} + break; + + case 205: +#line 2514 "Gmsh.y" + { + ;} + break; + + case 206: +#line 2520 "Gmsh.y" + { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = 1; extr.mesh.NbElmLayer.clear(); extr.mesh.hLayer.clear(); - extr.mesh.NbElmLayer.push_back((int)fabs(yyvsp[-2].d)); + extr.mesh.NbElmLayer.push_back((int)fabs((yyvsp[(3) - (5)].d))); extr.mesh.hLayer.push_back(1.); - ; - break;} -case 202: -#line 2469 "Gmsh.y" -{ + ;} + break; + + case 207: +#line 2529 "Gmsh.y" + { double d; extr.mesh.ExtrudeMesh = true; - extr.mesh.NbLayer = List_Nbr(yyvsp[-4].l); - if(List_Nbr(yyvsp[-4].l) == List_Nbr(yyvsp[-2].l)){ + 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[-4].l); i++){ - List_Read(yyvsp[-4].l, i, &d); + for(int i = 0; i < List_Nbr((yyvsp[(3) - (7)].l)); i++){ + List_Read((yyvsp[(3) - (7)].l), i, &d); extr.mesh.NbElmLayer.push_back((d > 0) ? (int)d : 1); - List_Read(yyvsp[-2].l, i, &d); + List_Read((yyvsp[(5) - (7)].l), i, &d); extr.mesh.hLayer.push_back(d); } } else{ yymsg(GERROR, "Wrong layer definition {%d, %d}", - List_Nbr(yyvsp[-4].l), List_Nbr(yyvsp[-2].l)); - } - List_Delete(yyvsp[-4].l); - List_Delete(yyvsp[-2].l); - ; - break;} -case 203: -#line 2491 "Gmsh.y" -{ + 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 208: +#line 2551 "Gmsh.y" + { yymsg(WARNING, "Explicit region numbers in layers are deprecated"); double d; extr.mesh.ExtrudeMesh = true; - extr.mesh.NbLayer = List_Nbr(yyvsp[-6].l); - if(List_Nbr(yyvsp[-6].l) == List_Nbr(yyvsp[-4].l) && List_Nbr(yyvsp[-6].l) == List_Nbr(yyvsp[-2].l)){ + extr.mesh.NbLayer = List_Nbr((yyvsp[(3) - (9)].l)); + if(List_Nbr((yyvsp[(3) - (9)].l)) == List_Nbr((yyvsp[(5) - (9)].l)) && List_Nbr((yyvsp[(3) - (9)].l)) == List_Nbr((yyvsp[(7) - (9)].l))){ extr.mesh.NbElmLayer.clear(); extr.mesh.hLayer.clear(); - for(int i = 0; i < List_Nbr(yyvsp[-6].l); i++){ - List_Read(yyvsp[-6].l, i, &d); + for(int i = 0; i < List_Nbr((yyvsp[(3) - (9)].l)); i++){ + List_Read((yyvsp[(3) - (9)].l), i, &d); extr.mesh.NbElmLayer.push_back((d > 0) ? (int)d : 1); - List_Read(yyvsp[-2].l, i, &d); + List_Read((yyvsp[(7) - (9)].l), i, &d); extr.mesh.hLayer.push_back(d); } } else{ yymsg(GERROR, "Wrong layer definition {%d, %d, %d}", - List_Nbr(yyvsp[-6].l), List_Nbr(yyvsp[-4].l), List_Nbr(yyvsp[-2].l)); - } - List_Delete(yyvsp[-6].l); - List_Delete(yyvsp[-4].l); - List_Delete(yyvsp[-2].l); - ; - break;} -case 204: -#line 2515 "Gmsh.y" -{ + List_Nbr((yyvsp[(3) - (9)].l)), List_Nbr((yyvsp[(5) - (9)].l)), List_Nbr((yyvsp[(7) - (9)].l))); + } + List_Delete((yyvsp[(3) - (9)].l)); + List_Delete((yyvsp[(5) - (9)].l)); + List_Delete((yyvsp[(7) - (9)].l)); + ;} + break; + + case 209: +#line 2575 "Gmsh.y" + { extr.mesh.Recombine = true; - ; - break;} -case 205: -#line 2519 "Gmsh.y" -{ - int num = (int)yyvsp[-6].d; + ;} + break; + + case 210: +#line 2579 "Gmsh.y" + { + int num = (int)(yyvsp[(3) - (9)].d); if(FindSurface(num)){ yymsg(GERROR, "Surface %d already exists", num); } else{ Surface *s = Create_Surface(num, MSH_SURF_DISCRETE); Tree_Add(THEM->Surfaces, &s); - extr.mesh.Holes[num].first = yyvsp[-1].d; + extr.mesh.Holes[num].first = (yyvsp[(8) - (9)].d); extr.mesh.Holes[num].second.clear(); - for(int i = 0; i < List_Nbr(yyvsp[-3].l); i++){ + for(int i = 0; i < List_Nbr((yyvsp[(6) - (9)].l)); i++){ double d; - List_Read(yyvsp[-3].l, i, &d); + List_Read((yyvsp[(6) - (9)].l), i, &d); extr.mesh.Holes[num].second.push_back((int)d); } } - List_Delete(yyvsp[-3].l); - ; - break;} -case 206: -#line 2543 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[-3].l); i++){ + List_Delete((yyvsp[(6) - (9)].l)); + ;} + break; + + case 211: +#line 2603 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; - List_Read(yyvsp[-3].l, i, &d); + List_Read((yyvsp[(3) - (6)].l), i, &d); int j = (int)fabs(d); Curve *c = FindCurve(j); if(!c) yymsg(WARNING, "Unknown curve %d", j); else{ c->Method = TRANSFINI; - c->ipar[0] = (yyvsp[-1].d>2)?(int)yyvsp[-1].d:2; + c->ipar[0] = ((yyvsp[(5) - (6)].d)>2)?(int)(yyvsp[(5) - (6)].d):2; c->ipar[1] = sign(d); c->dpar[0] = 1.0; } } - List_Delete(yyvsp[-3].l); - ; - break;} -case 207: -#line 2561 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[-6].l); i++){ + List_Delete((yyvsp[(3) - (6)].l)); + ;} + break; + + case 212: +#line 2621 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(3) - (9)].l)); i++){ double d; - List_Read(yyvsp[-6].l, i, &d); + List_Read((yyvsp[(3) - (9)].l), i, &d); int j = (int)fabs(d); Curve *c = FindCurve(j); if(!c) yymsg(WARNING, "Unknown curve %d", j); else{ c->Method = TRANSFINI; - c->ipar[0] = (yyvsp[-4].d>2)?(int)yyvsp[-4].d:2; + c->ipar[0] = ((yyvsp[(5) - (9)].d)>2)?(int)(yyvsp[(5) - (9)].d):2; c->ipar[1] = sign(d); /* Progresion : code 1 ou -1 */ - c->dpar[0] = fabs(yyvsp[-1].d); + c->dpar[0] = fabs((yyvsp[(8) - (9)].d)); } } - List_Delete(yyvsp[-6].l); - ; - break;} -case 208: -#line 2579 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[-6].l); i++){ + List_Delete((yyvsp[(3) - (9)].l)); + ;} + break; + + case 213: +#line 2639 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(3) - (9)].l)); i++){ double d; - List_Read(yyvsp[-6].l, i, &d); + List_Read((yyvsp[(3) - (9)].l), i, &d); int j = (int)fabs(d); Curve *c = FindCurve(j); if(!c) yymsg(WARNING, "Unknown curve %d", j); else{ c->Method = TRANSFINI; - c->ipar[0] = (yyvsp[-4].d>2)?(int)yyvsp[-4].d:2; + c->ipar[0] = ((yyvsp[(5) - (9)].d)>2)?(int)(yyvsp[(5) - (9)].d):2; c->ipar[1] = 2*sign(d); /* Bump : code 2 ou -2 */ - c->dpar[0] = fabs(yyvsp[-1].d); + c->dpar[0] = fabs((yyvsp[(8) - (9)].d)); } } - List_Delete(yyvsp[-6].l); - ; - break;} -case 209: -#line 2597 "Gmsh.y" -{ - Surface *s = FindSurface((int)yyvsp[-4].d); + List_Delete((yyvsp[(3) - (9)].l)); + ;} + break; + + case 214: +#line 2657 "Gmsh.y" + { + Surface *s = FindSurface((int)(yyvsp[(4) - (8)].d)); if(!s) - yymsg(WARNING, "Unknown surface %d", (int)yyvsp[-4].d); + yymsg(WARNING, "Unknown surface %d", (int)(yyvsp[(4) - (8)].d)); else{ s->Method = TRANSFINI; s->Recombine_Dir = -1; - int k = List_Nbr(yyvsp[-1].l); + int k = List_Nbr((yyvsp[(7) - (8)].l)); if(k != 3 && k != 4){ yymsg(GERROR, "Wrong definition of Transfinite Surface %d: " - "%d points instead of 3 or 4" , (int)yyvsp[-4].d, k); + "%d points instead of 3 or 4" , (int)(yyvsp[(4) - (8)].d), k); } else{ List_Reset(s->TrsfPoints); for(int i = 0; i < k; i++){ double d; - List_Read(yyvsp[-1].l, i, &d); + List_Read((yyvsp[(7) - (8)].l), i, &d); int j = (int)fabs(d); Vertex *v = FindPoint(j); if(!v) @@ -5449,33 +6687,34 @@ case 209: } } } - List_Delete(yyvsp[-1].l); - ; - break;} -case 210: -#line 2626 "Gmsh.y" -{ - Surface *s = FindSurface((int)yyvsp[-5].d); + List_Delete((yyvsp[(7) - (8)].l)); + ;} + break; + + case 215: +#line 2686 "Gmsh.y" + { + Surface *s = FindSurface((int)(yyvsp[(4) - (9)].d)); if(!s) - yymsg(WARNING, "Unknown surface %d", (int)yyvsp[-5].d); + yymsg(WARNING, "Unknown surface %d", (int)(yyvsp[(4) - (9)].d)); else{ s->Method = TRANSFINI; - int k = List_Nbr(yyvsp[-2].l); + int k = List_Nbr((yyvsp[(7) - (9)].l)); if(k != 3 && k != 4){ yymsg(GERROR, "Wrong definition of Transfinite Surface %d: " - "%d points instead of 3 or 4" , (int)yyvsp[-5].d, k); + "%d points instead of 3 or 4" , (int)(yyvsp[(4) - (9)].d), k); } else{ List_Reset(s->TrsfPoints); - if (!strcmp(yyvsp[-1].c, "Right")) + if (!strcmp((yyvsp[(8) - (9)].c), "Right")) s->Recombine_Dir = 1; - else if (!strcmp(yyvsp[-1].c, "Left")) + else if (!strcmp((yyvsp[(8) - (9)].c), "Left")) s->Recombine_Dir = -1; else s->Recombine_Dir = 0; for(int i = 0; i < k; i++){ double d; - List_Read(yyvsp[-2].l, i, &d); + List_Read((yyvsp[(7) - (9)].l), i, &d); int j = (int)fabs(d); Vertex *v = FindPoint(j); if(!v) @@ -5485,34 +6724,36 @@ case 210: } } } - List_Delete(yyvsp[-2].l); - Free(yyvsp[-1].c); - ; - break;} -case 211: -#line 2661 "Gmsh.y" -{ + List_Delete((yyvsp[(7) - (9)].l)); + Free((yyvsp[(8) - (9)].c)); + ;} + break; + + case 216: +#line 2721 "Gmsh.y" + { yymsg(WARNING, "Elliptic Surface is deprecated: use Transfinite instead (with smoothing)"); - List_Delete(yyvsp[-1].l); - ; - break;} -case 212: -#line 2666 "Gmsh.y" -{ - Volume *v = FindVolume((int)yyvsp[-4].d); + List_Delete((yyvsp[(7) - (8)].l)); + ;} + break; + + case 217: +#line 2726 "Gmsh.y" + { + Volume *v = FindVolume((int)(yyvsp[(4) - (8)].d)); if(!v) - yymsg(WARNING, "Unknown volume %d", (int)yyvsp[-4].d); + yymsg(WARNING, "Unknown volume %d", (int)(yyvsp[(4) - (8)].d)); else{ v->Method = TRANSFINI; - int k = List_Nbr(yyvsp[-1].l); + int k = List_Nbr((yyvsp[(7) - (8)].l)); if(k != 6 && k != 8) yymsg(GERROR, "Wrong definition of Transfinite Volume %d: " - "%d points instead of 6 or 8" , (int)yyvsp[-4].d, k); + "%d points instead of 6 or 8" , (int)(yyvsp[(4) - (8)].d), k); else{ List_Reset(v->TrsfPoints); for(int i = 0; i < k; i++){ double d; - List_Read(yyvsp[-1].l, i, &d); + List_Read((yyvsp[(7) - (8)].l), i, &d); int j = (int)fabs(d); Vertex *vert = FindPoint(j); if(!vert) @@ -5522,1277 +6763,1409 @@ case 212: } } } - List_Delete(yyvsp[-1].l); - ; - break;} -case 213: -#line 2693 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[-3].l); i++){ + List_Delete((yyvsp[(7) - (8)].l)); + ;} + break; + + case 218: +#line 2753 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; - List_Read(yyvsp[-3].l, i, &d); + List_Read((yyvsp[(3) - (6)].l), i, &d); int j = (int)d; Surface *s = FindSurface(j); if(s){ s->Recombine = 1; - s->RecombineAngle = (yyvsp[-1].d > 0 && yyvsp[-1].d < 90) ? yyvsp[-1].d : 90; + s->RecombineAngle = ((yyvsp[(5) - (6)].d) > 0 && (yyvsp[(5) - (6)].d) < 90) ? (yyvsp[(5) - (6)].d) : 90; } } - List_Delete(yyvsp[-3].l); - ; - break;} -case 214: -#line 2707 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[-1].l); i++){ + List_Delete((yyvsp[(3) - (6)].l)); + ;} + break; + + case 219: +#line 2767 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ double d; - List_Read(yyvsp[-1].l, i, &d); + List_Read((yyvsp[(3) - (4)].l), i, &d); int j = (int)d; Surface *s = FindSurface(j); if(s){ s->Recombine = 1; } } - List_Delete(yyvsp[-1].l); - ; - break;} -case 215: -#line 2726 "Gmsh.y" -{ - Surface *s = FindSurface((int)yyvsp[-2].d); - if(s) - setSurfaceEmbeddedPoints(s, yyvsp[-7].l); - ; - break;} -case 216: -#line 2732 "Gmsh.y" -{ - Surface *s = FindSurface((int)yyvsp[-2].d); - if(s) - setSurfaceEmbeddedCurves(s, yyvsp[-7].l); - ; - break;} -case 217: -#line 2738 "Gmsh.y" -{ - ; - break;} -case 218: -#line 2741 "Gmsh.y" -{ - ; - break;} -case 219: -#line 2750 "Gmsh.y" -{ - ReplaceAllDuplicates(); - ; - break;} -case 220: -#line 2759 "Gmsh.y" -{ yyval.d = yyvsp[0].d; ; - break;} -case 221: -#line 2760 "Gmsh.y" -{ yyval.d = yyvsp[-1].d; ; - break;} -case 222: -#line 2761 "Gmsh.y" -{ yyval.d = -yyvsp[0].d; ; - break;} -case 223: -#line 2762 "Gmsh.y" -{ yyval.d = yyvsp[0].d; ; - break;} -case 224: -#line 2763 "Gmsh.y" -{ yyval.d = !yyvsp[0].d; ; - break;} -case 225: -#line 2764 "Gmsh.y" -{ yyval.d = yyvsp[-2].d - yyvsp[0].d; ; - break;} -case 226: -#line 2765 "Gmsh.y" -{ yyval.d = yyvsp[-2].d + yyvsp[0].d; ; - break;} -case 227: -#line 2766 "Gmsh.y" -{ yyval.d = yyvsp[-2].d * yyvsp[0].d; ; - break;} -case 228: -#line 2768 "Gmsh.y" -{ - if(!yyvsp[0].d) - yymsg(GERROR, "Division by zero in '%g / %g'", yyvsp[-2].d, yyvsp[0].d); - else - yyval.d = yyvsp[-2].d / yyvsp[0].d; - ; - break;} -case 229: -#line 2774 "Gmsh.y" -{ yyval.d = (int)yyvsp[-2].d % (int)yyvsp[0].d; ; - break;} -case 230: -#line 2775 "Gmsh.y" -{ yyval.d = pow(yyvsp[-2].d, yyvsp[0].d); ; - break;} -case 231: -#line 2776 "Gmsh.y" -{ yyval.d = yyvsp[-2].d < yyvsp[0].d; ; - break;} -case 232: -#line 2777 "Gmsh.y" -{ yyval.d = yyvsp[-2].d > yyvsp[0].d; ; - break;} -case 233: -#line 2778 "Gmsh.y" -{ yyval.d = yyvsp[-2].d <= yyvsp[0].d; ; - break;} -case 234: -#line 2779 "Gmsh.y" -{ yyval.d = yyvsp[-2].d >= yyvsp[0].d; ; - break;} -case 235: -#line 2780 "Gmsh.y" -{ yyval.d = yyvsp[-2].d == yyvsp[0].d; ; - break;} -case 236: -#line 2781 "Gmsh.y" -{ yyval.d = yyvsp[-2].d != yyvsp[0].d; ; - break;} -case 237: -#line 2782 "Gmsh.y" -{ yyval.d = yyvsp[-2].d && yyvsp[0].d; ; - break;} -case 238: -#line 2783 "Gmsh.y" -{ yyval.d = yyvsp[-2].d || yyvsp[0].d; ; - break;} -case 239: -#line 2784 "Gmsh.y" -{ yyval.d = yyvsp[-4].d? yyvsp[-2].d : yyvsp[0].d; ; - break;} -case 240: -#line 2785 "Gmsh.y" -{ yyval.d = exp(yyvsp[-1].d); ; - break;} -case 241: + List_Delete((yyvsp[(3) - (4)].l)); + ;} + break; + + case 220: #line 2786 "Gmsh.y" -{ yyval.d = log(yyvsp[-1].d); ; - break;} -case 242: -#line 2787 "Gmsh.y" -{ yyval.d = log10(yyvsp[-1].d); ; - break;} -case 243: -#line 2788 "Gmsh.y" -{ yyval.d = sqrt(yyvsp[-1].d); ; - break;} -case 244: -#line 2789 "Gmsh.y" -{ yyval.d = sin(yyvsp[-1].d); ; - break;} -case 245: -#line 2790 "Gmsh.y" -{ yyval.d = asin(yyvsp[-1].d); ; - break;} -case 246: -#line 2791 "Gmsh.y" -{ yyval.d = cos(yyvsp[-1].d); ; - break;} -case 247: + { + Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); + if(s) + setSurfaceEmbeddedPoints(s, (yyvsp[(3) - (10)].l)); + ;} + break; + + case 221: #line 2792 "Gmsh.y" -{ yyval.d = acos(yyvsp[-1].d); ; - break;} -case 248: -#line 2793 "Gmsh.y" -{ yyval.d = tan(yyvsp[-1].d); ; - break;} -case 249: -#line 2794 "Gmsh.y" -{ yyval.d = atan(yyvsp[-1].d); ; - break;} -case 250: -#line 2795 "Gmsh.y" -{ yyval.d = atan2(yyvsp[-3].d, yyvsp[-1].d);; - break;} -case 251: -#line 2796 "Gmsh.y" -{ yyval.d = sinh(yyvsp[-1].d); ; - break;} -case 252: -#line 2797 "Gmsh.y" -{ yyval.d = cosh(yyvsp[-1].d); ; - break;} -case 253: + { + Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); + if(s) + setSurfaceEmbeddedCurves(s, (yyvsp[(3) - (10)].l)); + ;} + break; + + case 222: #line 2798 "Gmsh.y" -{ yyval.d = tanh(yyvsp[-1].d); ; - break;} -case 254: -#line 2799 "Gmsh.y" -{ yyval.d = fabs(yyvsp[-1].d); ; - break;} -case 255: -#line 2800 "Gmsh.y" -{ yyval.d = floor(yyvsp[-1].d); ; - break;} -case 256: + { + ;} + break; + + case 223: #line 2801 "Gmsh.y" -{ yyval.d = ceil(yyvsp[-1].d); ; - break;} -case 257: -#line 2802 "Gmsh.y" -{ yyval.d = fmod(yyvsp[-3].d, yyvsp[-1].d); ; - break;} -case 258: -#line 2803 "Gmsh.y" -{ yyval.d = fmod(yyvsp[-3].d, yyvsp[-1].d); ; - break;} -case 259: -#line 2804 "Gmsh.y" -{ yyval.d = sqrt(yyvsp[-3].d*yyvsp[-3].d+yyvsp[-1].d*yyvsp[-1].d); ; - break;} -case 260: -#line 2805 "Gmsh.y" -{ yyval.d = yyvsp[-1].d*(double)rand()/(double)RAND_MAX; ; - break;} -case 261: -#line 2807 "Gmsh.y" -{ yyval.d = exp(yyvsp[-1].d); ; - break;} -case 262: -#line 2808 "Gmsh.y" -{ yyval.d = log(yyvsp[-1].d); ; - break;} -case 263: -#line 2809 "Gmsh.y" -{ yyval.d = log10(yyvsp[-1].d); ; - break;} -case 264: + { + ;} + break; + + case 224: #line 2810 "Gmsh.y" -{ yyval.d = sqrt(yyvsp[-1].d); ; - break;} -case 265: -#line 2811 "Gmsh.y" -{ yyval.d = sin(yyvsp[-1].d); ; - break;} -case 266: -#line 2812 "Gmsh.y" -{ yyval.d = asin(yyvsp[-1].d); ; - break;} -case 267: -#line 2813 "Gmsh.y" -{ yyval.d = cos(yyvsp[-1].d); ; - break;} -case 268: -#line 2814 "Gmsh.y" -{ yyval.d = acos(yyvsp[-1].d); ; - break;} -case 269: -#line 2815 "Gmsh.y" -{ yyval.d = tan(yyvsp[-1].d); ; - break;} -case 270: -#line 2816 "Gmsh.y" -{ yyval.d = atan(yyvsp[-1].d); ; - break;} -case 271: -#line 2817 "Gmsh.y" -{ yyval.d = atan2(yyvsp[-3].d, yyvsp[-1].d);; - break;} -case 272: -#line 2818 "Gmsh.y" -{ yyval.d = sinh(yyvsp[-1].d); ; - break;} -case 273: + { + ReplaceAllDuplicates(); + ;} + break; + + case 225: #line 2819 "Gmsh.y" -{ yyval.d = cosh(yyvsp[-1].d); ; - break;} -case 274: + { (yyval.d) = (yyvsp[(1) - (1)].d); ;} + break; + + case 226: #line 2820 "Gmsh.y" -{ yyval.d = tanh(yyvsp[-1].d); ; - break;} -case 275: + { (yyval.d) = (yyvsp[(2) - (3)].d); ;} + break; + + case 227: #line 2821 "Gmsh.y" -{ yyval.d = fabs(yyvsp[-1].d); ; - break;} -case 276: + { (yyval.d) = -(yyvsp[(2) - (2)].d); ;} + break; + + case 228: #line 2822 "Gmsh.y" -{ yyval.d = floor(yyvsp[-1].d); ; - break;} -case 277: + { (yyval.d) = (yyvsp[(2) - (2)].d); ;} + break; + + case 229: #line 2823 "Gmsh.y" -{ yyval.d = ceil(yyvsp[-1].d); ; - break;} -case 278: + { (yyval.d) = !(yyvsp[(2) - (2)].d); ;} + break; + + case 230: #line 2824 "Gmsh.y" -{ yyval.d = fmod(yyvsp[-3].d, yyvsp[-1].d); ; - break;} -case 279: + { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;} + break; + + case 231: #line 2825 "Gmsh.y" -{ yyval.d = fmod(yyvsp[-3].d, yyvsp[-1].d); ; - break;} -case 280: + { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;} + break; + + case 232: #line 2826 "Gmsh.y" -{ yyval.d = sqrt(yyvsp[-3].d*yyvsp[-3].d+yyvsp[-1].d*yyvsp[-1].d); ; - break;} -case 281: -#line 2827 "Gmsh.y" -{ yyval.d = yyvsp[-1].d*(double)rand()/(double)RAND_MAX; ; - break;} -case 282: + { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;} + break; + + case 233: +#line 2828 "Gmsh.y" + { + if(!(yyvsp[(3) - (3)].d)) + yymsg(GERROR, "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 234: +#line 2834 "Gmsh.y" + { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;} + break; + + case 235: +#line 2835 "Gmsh.y" + { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;} + break; + + case 236: #line 2836 "Gmsh.y" -{ yyval.d = yyvsp[0].d; ; - break;} -case 283: + { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;} + break; + + case 237: #line 2837 "Gmsh.y" -{ yyval.d = 3.141592653589793; ; - break;} -case 284: + { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;} + break; + + case 238: #line 2838 "Gmsh.y" -{ yyval.d = ParUtil::Instance()->rank(); ; - break;} -case 285: + { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;} + break; + + case 239: #line 2839 "Gmsh.y" -{ yyval.d = ParUtil::Instance()->size(); ; - break;} -case 286: + { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;} + break; + + case 240: #line 2840 "Gmsh.y" -{ yyval.d = Get_GmshMajorVersion(); ; - break;} -case 287: + { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;} + break; + + case 241: #line 2841 "Gmsh.y" -{ yyval.d = Get_GmshMinorVersion(); ; - break;} -case 288: + { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;} + break; + + case 242: #line 2842 "Gmsh.y" -{ yyval.d = Get_GmshPatchVersion(); ; - break;} -case 289: + { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;} + break; + + case 243: +#line 2843 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;} + break; + + case 244: +#line 2844 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (5)].d)? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;} + break; + + case 245: +#line 2845 "Gmsh.y" + { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} + break; + + case 246: +#line 2846 "Gmsh.y" + { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} + break; + + case 247: #line 2847 "Gmsh.y" -{ + { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} + break; + + case 248: +#line 2848 "Gmsh.y" + { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} + break; + + case 249: +#line 2849 "Gmsh.y" + { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} + break; + + case 250: +#line 2850 "Gmsh.y" + { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} + break; + + case 251: +#line 2851 "Gmsh.y" + { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} + break; + + case 252: +#line 2852 "Gmsh.y" + { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} + break; + + case 253: +#line 2853 "Gmsh.y" + { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} + break; + + case 254: +#line 2854 "Gmsh.y" + { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} + break; + + case 255: +#line 2855 "Gmsh.y" + { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} + break; + + case 256: +#line 2856 "Gmsh.y" + { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} + break; + + case 257: +#line 2857 "Gmsh.y" + { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} + break; + + case 258: +#line 2858 "Gmsh.y" + { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} + break; + + case 259: +#line 2859 "Gmsh.y" + { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} + break; + + case 260: +#line 2860 "Gmsh.y" + { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} + break; + + case 261: +#line 2861 "Gmsh.y" + { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} + break; + + case 262: +#line 2862 "Gmsh.y" + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} + break; + + case 263: +#line 2863 "Gmsh.y" + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} + break; + + case 264: +#line 2864 "Gmsh.y" + { (yyval.d) = sqrt((yyvsp[(3) - (6)].d)*(yyvsp[(3) - (6)].d)+(yyvsp[(5) - (6)].d)*(yyvsp[(5) - (6)].d)); ;} + break; + + case 265: +#line 2865 "Gmsh.y" + { (yyval.d) = (yyvsp[(3) - (4)].d)*(double)rand()/(double)RAND_MAX; ;} + break; + + case 266: +#line 2867 "Gmsh.y" + { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} + break; + + case 267: +#line 2868 "Gmsh.y" + { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} + break; + + case 268: +#line 2869 "Gmsh.y" + { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} + break; + + case 269: +#line 2870 "Gmsh.y" + { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} + break; + + case 270: +#line 2871 "Gmsh.y" + { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} + break; + + case 271: +#line 2872 "Gmsh.y" + { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} + break; + + case 272: +#line 2873 "Gmsh.y" + { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} + break; + + case 273: +#line 2874 "Gmsh.y" + { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} + break; + + case 274: +#line 2875 "Gmsh.y" + { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} + break; + + case 275: +#line 2876 "Gmsh.y" + { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} + break; + + case 276: +#line 2877 "Gmsh.y" + { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} + break; + + case 277: +#line 2878 "Gmsh.y" + { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} + break; + + case 278: +#line 2879 "Gmsh.y" + { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} + break; + + case 279: +#line 2880 "Gmsh.y" + { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} + break; + + case 280: +#line 2881 "Gmsh.y" + { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} + break; + + case 281: +#line 2882 "Gmsh.y" + { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} + break; + + case 282: +#line 2883 "Gmsh.y" + { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} + break; + + case 283: +#line 2884 "Gmsh.y" + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} + break; + + case 284: +#line 2885 "Gmsh.y" + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} + break; + + case 285: +#line 2886 "Gmsh.y" + { (yyval.d) = sqrt((yyvsp[(3) - (6)].d)*(yyvsp[(3) - (6)].d)+(yyvsp[(5) - (6)].d)*(yyvsp[(5) - (6)].d)); ;} + break; + + case 286: +#line 2887 "Gmsh.y" + { (yyval.d) = (yyvsp[(3) - (4)].d)*(double)rand()/(double)RAND_MAX; ;} + break; + + case 287: +#line 2896 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (1)].d); ;} + break; + + case 288: +#line 2897 "Gmsh.y" + { (yyval.d) = 3.141592653589793; ;} + break; + + case 289: +#line 2898 "Gmsh.y" + { (yyval.d) = ParUtil::Instance()->rank(); ;} + break; + + case 290: +#line 2899 "Gmsh.y" + { (yyval.d) = ParUtil::Instance()->size(); ;} + break; + + case 291: +#line 2900 "Gmsh.y" + { (yyval.d) = Get_GmshMajorVersion(); ;} + break; + + case 292: +#line 2901 "Gmsh.y" + { (yyval.d) = Get_GmshMinorVersion(); ;} + break; + + case 293: +#line 2902 "Gmsh.y" + { (yyval.d) = Get_GmshPatchVersion(); ;} + break; + + case 294: +#line 2907 "Gmsh.y" + { Symbol TheSymbol; - TheSymbol.Name = yyvsp[0].c; + TheSymbol.Name = (yyvsp[(1) - (1)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) { - yymsg(GERROR, "Unknown variable '%s'", yyvsp[0].c); - yyval.d = 0.; + yymsg(GERROR, "Unknown variable '%s'", (yyvsp[(1) - (1)].c)); + (yyval.d) = 0.; } else - yyval.d = *(double*)List_Pointer_Fast(pSymbol->val, 0); - Free(yyvsp[0].c); - ; - break;} -case 290: -#line 2863 "Gmsh.y" -{ + (yyval.d) = *(double*)List_Pointer_Fast(pSymbol->val, 0); + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 295: +#line 2923 "Gmsh.y" + { char tmpstring[1024]; - sprintf(tmpstring, "%s_%d", yyvsp[-4].c, (int)yyvsp[-1].d) ; + sprintf(tmpstring, "%s_%d", (yyvsp[(1) - (5)].c), (int)(yyvsp[(4) - (5)].d)) ; Symbol TheSymbol; TheSymbol.Name = tmpstring; Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) { yymsg(GERROR, "Unknown variable '%s'", tmpstring); - yyval.d = 0.; + (yyval.d) = 0.; } else - yyval.d = *(double*)List_Pointer_Fast(pSymbol->val, 0); - Free(yyvsp[-4].c); - ; - break;} -case 291: -#line 2878 "Gmsh.y" -{ + (yyval.d) = *(double*)List_Pointer_Fast(pSymbol->val, 0); + Free((yyvsp[(1) - (5)].c)); + ;} + break; + + case 296: +#line 2938 "Gmsh.y" + { Symbol TheSymbol; - TheSymbol.Name = yyvsp[-3].c; + TheSymbol.Name = (yyvsp[(1) - (4)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) { - yymsg(GERROR, "Unknown variable '%s'", yyvsp[-3].c); - yyval.d = 0.; + yymsg(GERROR, "Unknown variable '%s'", (yyvsp[(1) - (4)].c)); + (yyval.d) = 0.; } else{ double *pd; - if((pd = (double*)List_Pointer_Test(pSymbol->val, (int)yyvsp[-1].d))) - yyval.d = *pd; + if((pd = (double*)List_Pointer_Test(pSymbol->val, (int)(yyvsp[(3) - (4)].d)))) + (yyval.d) = *pd; else{ - yymsg(GERROR, "Uninitialized variable '%s[%d]'", yyvsp[-3].c, (int)yyvsp[-1].d); - yyval.d = 0.; + yymsg(GERROR, "Uninitialized variable '%s[%d]'", (yyvsp[(1) - (4)].c), (int)(yyvsp[(3) - (4)].d)); + (yyval.d) = 0.; } } - Free(yyvsp[-3].c); - ; - break;} -case 292: -#line 2898 "Gmsh.y" -{ + Free((yyvsp[(1) - (4)].c)); + ;} + break; + + case 297: +#line 2958 "Gmsh.y" + { Symbol TheSymbol; - TheSymbol.Name = yyvsp[-2].c; + TheSymbol.Name = (yyvsp[(2) - (4)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) { - yymsg(GERROR, "Unknown variable '%s'", yyvsp[-2].c); - yyval.d = 0.; + yymsg(GERROR, "Unknown variable '%s'", (yyvsp[(2) - (4)].c)); + (yyval.d) = 0.; } else{ - yyval.d = List_Nbr(pSymbol->val); + (yyval.d) = List_Nbr(pSymbol->val); } - Free(yyvsp[-2].c); - ; - break;} -case 293: -#line 2912 "Gmsh.y" -{ + Free((yyvsp[(2) - (4)].c)); + ;} + break; + + case 298: +#line 2972 "Gmsh.y" + { Symbol TheSymbol; - TheSymbol.Name = yyvsp[-1].c; + TheSymbol.Name = (yyvsp[(1) - (2)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) { - yymsg(GERROR, "Unknown variable '%s'", yyvsp[-1].c); - yyval.d = 0.; + yymsg(GERROR, "Unknown variable '%s'", (yyvsp[(1) - (2)].c)); + (yyval.d) = 0.; } else - yyval.d = (*(double*)List_Pointer_Fast(pSymbol->val, 0) += yyvsp[0].i); - Free(yyvsp[-1].c); - ; - break;} -case 294: -#line 2925 "Gmsh.y" -{ + (yyval.d) = (*(double*)List_Pointer_Fast(pSymbol->val, 0) += (yyvsp[(2) - (2)].i)); + Free((yyvsp[(1) - (2)].c)); + ;} + break; + + case 299: +#line 2985 "Gmsh.y" + { Symbol TheSymbol; - TheSymbol.Name = yyvsp[-4].c; + TheSymbol.Name = (yyvsp[(1) - (5)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) { - yymsg(GERROR, "Unknown variable '%s'", yyvsp[-4].c); - yyval.d = 0.; + yymsg(GERROR, "Unknown variable '%s'", (yyvsp[(1) - (5)].c)); + (yyval.d) = 0.; } else{ double *pd; - if((pd = (double*)List_Pointer_Test(pSymbol->val, (int)yyvsp[-2].d))) - yyval.d = (*pd += yyvsp[0].i); + if((pd = (double*)List_Pointer_Test(pSymbol->val, (int)(yyvsp[(3) - (5)].d)))) + (yyval.d) = (*pd += (yyvsp[(5) - (5)].i)); else{ - yymsg(GERROR, "Uninitialized variable '%s[%d]'", yyvsp[-4].c, (int)yyvsp[-2].d); - yyval.d = 0.; + yymsg(GERROR, "Uninitialized variable '%s[%d]'", (yyvsp[(1) - (5)].c), (int)(yyvsp[(3) - (5)].d)); + (yyval.d) = 0.; } } - Free(yyvsp[-4].c); - ; - break;} -case 295: -#line 2948 "Gmsh.y" -{ + Free((yyvsp[(1) - (5)].c)); + ;} + break; + + case 300: +#line 3008 "Gmsh.y" + { double (*pNumOpt)(int num, int action, double value); StringXNumber *pNumCat; - if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-2].c))){ - yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-2].c); - yyval.d = 0.; + if(!(pNumCat = Get_NumberOptionCategory((yyvsp[(1) - (3)].c)))){ + yymsg(GERROR, "Unknown numeric option class '%s'", (yyvsp[(1) - (3)].c)); + (yyval.d) = 0.; } else{ - if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption(yyvsp[0].c, pNumCat))){ - yymsg(GERROR, "Unknown numeric option '%s.%s'", yyvsp[-2].c, yyvsp[0].c); - yyval.d = 0.; + if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption((yyvsp[(3) - (3)].c), pNumCat))){ + yymsg(GERROR, "Unknown numeric option '%s.%s'", (yyvsp[(1) - (3)].c), (yyvsp[(3) - (3)].c)); + (yyval.d) = 0.; } else - yyval.d = pNumOpt(0, GMSH_GET, 0); + (yyval.d) = pNumOpt(0, GMSH_GET, 0); } - Free(yyvsp[-2].c); Free(yyvsp[0].c); - ; - break;} -case 296: -#line 2966 "Gmsh.y" -{ + Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(3) - (3)].c)); + ;} + break; + + case 301: +#line 3026 "Gmsh.y" + { double (*pNumOpt)(int num, int action, double value); StringXNumber *pNumCat; - if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))){ - yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-5].c); - yyval.d = 0.; + if(!(pNumCat = Get_NumberOptionCategory((yyvsp[(1) - (6)].c)))){ + yymsg(GERROR, "Unknown numeric option class '%s'", (yyvsp[(1) - (6)].c)); + (yyval.d) = 0.; } else{ - if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption(yyvsp[0].c, pNumCat))){ - yymsg(GERROR, "Unknown numeric option '%s[%d].%s'", yyvsp[-5].c, (int)yyvsp[-3].d, yyvsp[0].c); - yyval.d = 0.; + if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption((yyvsp[(6) - (6)].c), pNumCat))){ + yymsg(GERROR, "Unknown numeric option '%s[%d].%s'", (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c)); + (yyval.d) = 0.; } else - yyval.d = pNumOpt((int)yyvsp[-3].d, GMSH_GET, 0); + (yyval.d) = pNumOpt((int)(yyvsp[(3) - (6)].d), GMSH_GET, 0); } - Free(yyvsp[-5].c); Free(yyvsp[0].c); - ; - break;} -case 297: -#line 2984 "Gmsh.y" -{ + Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); + ;} + break; + + case 302: +#line 3044 "Gmsh.y" + { double (*pNumOpt)(int num, int action, double value); StringXNumber *pNumCat; - if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-3].c))){ - yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-3].c); - yyval.d = 0.; + if(!(pNumCat = Get_NumberOptionCategory((yyvsp[(1) - (4)].c)))){ + yymsg(GERROR, "Unknown numeric option class '%s'", (yyvsp[(1) - (4)].c)); + (yyval.d) = 0.; } else{ - if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption(yyvsp[-1].c, pNumCat))){ - yymsg(GERROR, "Unknown numeric option '%s.%s'", yyvsp[-3].c, yyvsp[-1].c); - yyval.d = 0.; + if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption((yyvsp[(3) - (4)].c), pNumCat))){ + yymsg(GERROR, "Unknown numeric option '%s.%s'", (yyvsp[(1) - (4)].c), (yyvsp[(3) - (4)].c)); + (yyval.d) = 0.; } else - yyval.d = pNumOpt(0, GMSH_SET|GMSH_GUI, pNumOpt(0, GMSH_GET, 0)+yyvsp[0].i); + (yyval.d) = pNumOpt(0, GMSH_SET|GMSH_GUI, pNumOpt(0, GMSH_GET, 0)+(yyvsp[(4) - (4)].i)); } - Free(yyvsp[-3].c); Free(yyvsp[-1].c); - ; - break;} -case 298: -#line 3002 "Gmsh.y" -{ + Free((yyvsp[(1) - (4)].c)); Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 303: +#line 3062 "Gmsh.y" + { double (*pNumOpt)(int num, int action, double value); StringXNumber *pNumCat; - if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-6].c))){ - yymsg(GERROR, "Unknown numeric option class '%s'", yyvsp[-6].c); - yyval.d = 0.; + if(!(pNumCat = Get_NumberOptionCategory((yyvsp[(1) - (7)].c)))){ + yymsg(GERROR, "Unknown numeric option class '%s'", (yyvsp[(1) - (7)].c)); + (yyval.d) = 0.; } else{ - if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption(yyvsp[-1].c, pNumCat))){ - yymsg(GERROR, "Unknown numeric option '%s[%d].%s'", yyvsp[-6].c, (int)yyvsp[-4].d, yyvsp[-1].c); - yyval.d = 0.; + if(!(pNumOpt = (double (*) (int, int, double))Get_NumberOption((yyvsp[(6) - (7)].c), pNumCat))){ + yymsg(GERROR, "Unknown numeric option '%s[%d].%s'", (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c)); + (yyval.d) = 0.; } else - yyval.d = pNumOpt((int)yyvsp[-4].d, GMSH_SET|GMSH_GUI, pNumOpt((int)yyvsp[-4].d, GMSH_GET, 0)+yyvsp[0].i); - } - Free(yyvsp[-6].c); Free(yyvsp[-1].c); - ; - break;} -case 299: -#line 3020 "Gmsh.y" -{ - yyval.d = GetValue(yyvsp[-3].c, yyvsp[-1].d); - Free(yyvsp[-3].c); - ; - break;} -case 300: -#line 3028 "Gmsh.y" -{ - memcpy(yyval.v, yyvsp[0].v, 5*sizeof(double)); - ; - break;} -case 301: -#line 3032 "Gmsh.y" -{ - for(int i = 0; i < 5; i++) yyval.v[i] = -yyvsp[0].v[i]; - ; - break;} -case 302: -#line 3036 "Gmsh.y" -{ - for(int i = 0; i < 5; i++) yyval.v[i] = yyvsp[0].v[i]; - ; - break;} -case 303: -#line 3040 "Gmsh.y" -{ - for(int i = 0; i < 5; i++) yyval.v[i] = yyvsp[-2].v[i] - yyvsp[0].v[i]; - ; - break;} -case 304: -#line 3044 "Gmsh.y" -{ - for(int i = 0; i < 5; i++) yyval.v[i] = yyvsp[-2].v[i] + yyvsp[0].v[i]; - ; - break;} -case 305: -#line 3051 "Gmsh.y" -{ - yyval.v[0] = yyvsp[-9].d; yyval.v[1] = yyvsp[-7].d; yyval.v[2] = yyvsp[-5].d; yyval.v[3] = yyvsp[-3].d; yyval.v[4] = yyvsp[-1].d; - ; - break;} -case 306: -#line 3055 "Gmsh.y" -{ - yyval.v[0] = yyvsp[-7].d; yyval.v[1] = yyvsp[-5].d; yyval.v[2] = yyvsp[-3].d; yyval.v[3] = yyvsp[-1].d; yyval.v[4] = 1.0; - ; - break;} -case 307: -#line 3059 "Gmsh.y" -{ - yyval.v[0] = yyvsp[-5].d; yyval.v[1] = yyvsp[-3].d; yyval.v[2] = yyvsp[-1].d; yyval.v[3] = 0.0; yyval.v[4] = 1.0; - ; - break;} -case 308: -#line 3063 "Gmsh.y" -{ - yyval.v[0] = yyvsp[-5].d; yyval.v[1] = yyvsp[-3].d; yyval.v[2] = yyvsp[-1].d; yyval.v[3] = 0.0; yyval.v[4] = 1.0; - ; - break;} -case 309: -#line 3070 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(List_T*)); - List_Add(yyval.l, &(yyvsp[0].l)); - ; - break;} -case 310: -#line 3075 "Gmsh.y" -{ - List_Add(yyval.l, &(yyvsp[0].l)); - ; - break;} -case 311: -#line 3083 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(double)); - List_Add(yyval.l, &(yyvsp[0].d)); - ; - break;} -case 312: + (yyval.d) = pNumOpt((int)(yyvsp[(3) - (7)].d), GMSH_SET|GMSH_GUI, pNumOpt((int)(yyvsp[(3) - (7)].d), GMSH_GET, 0)+(yyvsp[(7) - (7)].i)); + } + Free((yyvsp[(1) - (7)].c)); Free((yyvsp[(6) - (7)].c)); + ;} + break; + + case 304: +#line 3080 "Gmsh.y" + { + (yyval.d) = GetValue((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); + Free((yyvsp[(3) - (6)].c)); + ;} + break; + + case 305: #line 3088 "Gmsh.y" -{ - yyval.l = yyvsp[0].l; - ; - break;} -case 313: + { + memcpy((yyval.v), (yyvsp[(1) - (1)].v), 5*sizeof(double)); + ;} + break; + + case 306: #line 3092 "Gmsh.y" -{ + { + for(int i = 0; i < 5; i++) (yyval.v)[i] = -(yyvsp[(2) - (2)].v)[i]; + ;} + break; + + case 307: +#line 3096 "Gmsh.y" + { + for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; + ;} + break; + + case 308: +#line 3100 "Gmsh.y" + { + for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] - (yyvsp[(3) - (3)].v)[i]; + ;} + break; + + case 309: +#line 3104 "Gmsh.y" + { + for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] + (yyvsp[(3) - (3)].v)[i]; + ;} + break; + + case 310: +#line 3111 "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 311: +#line 3115 "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 312: +#line 3119 "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 313: +#line 3123 "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 314: +#line 3130 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(List_T*)); + List_Add((yyval.l), &((yyvsp[(1) - (1)].l))); + ;} + break; + + case 315: +#line 3135 "Gmsh.y" + { + List_Add((yyval.l), &((yyvsp[(3) - (3)].l))); + ;} + break; + + case 316: +#line 3143 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(double)); + List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); + ;} + break; + + case 317: +#line 3148 "Gmsh.y" + { + (yyval.l) = (yyvsp[(1) - (1)].l); + ;} + break; + + case 318: +#line 3152 "Gmsh.y" + { // creates an empty list - yyval.l = List_Create(2, 1, sizeof(double)); - ; - break;} -case 314: -#line 3097 "Gmsh.y" -{ - yyval.l = yyvsp[-1].l; - ; - break;} -case 315: -#line 3101 "Gmsh.y" -{ - yyval.l = yyvsp[-1].l; - for(int i = 0; i < List_Nbr(yyval.l); i++){ - double *pd = (double*)List_Pointer(yyval.l, i); + (yyval.l) = List_Create(2, 1, sizeof(double)); + ;} + break; + + case 319: +#line 3157 "Gmsh.y" + { + (yyval.l) = (yyvsp[(2) - (3)].l); + ;} + break; + + case 320: +#line 3161 "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 316: -#line 3109 "Gmsh.y" -{ - yyval.l = yyvsp[-1].l; - for(int i = 0; i < List_Nbr(yyval.l); i++){ - double *pd = (double*)List_Pointer(yyval.l, i); - (*pd) *= yyvsp[-4].d; - } - ; - break;} -case 317: -#line 3120 "Gmsh.y" -{ - yyval.l = yyvsp[0].l; - for(int i = 0; i < List_Nbr(yyval.l); i++){ - double *pd = (double*)List_Pointer(yyval.l, i); + ;} + break; + + case 321: +#line 3169 "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 322: +#line 3180 "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 318: -#line 3128 "Gmsh.y" -{ - yyval.l = yyvsp[0].l; - for(int i = 0; i < List_Nbr(yyval.l); i++){ - double *pd = (double*)List_Pointer(yyval.l, i); - (*pd) *= yyvsp[-2].d; - } - ; - break;} -case 319: -#line 3136 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(double)); - for(double d = yyvsp[-2].d; (yyvsp[-2].d < yyvsp[0].d) ? (d <= yyvsp[0].d) : (d >= yyvsp[0].d); (yyvsp[-2].d < yyvsp[0].d) ? (d += 1.) : (d -= 1.)) - List_Add(yyval.l, &d); - ; - break;} -case 320: -#line 3142 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(double)); - if(!yyvsp[0].d || (yyvsp[-4].d < yyvsp[-2].d && yyvsp[0].d < 0) || (yyvsp[-4].d > yyvsp[-2].d && yyvsp[0].d > 0)){ - yymsg(GERROR, "Wrong increment in '%g:%g:%g'", yyvsp[-4].d, yyvsp[-2].d, yyvsp[0].d); - List_Add(yyval.l, &(yyvsp[-4].d)); + ;} + break; + + case 323: +#line 3188 "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 324: +#line 3196 "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 325: +#line 3202 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(double)); + if(!(yyvsp[(5) - (5)].d) || ((yyvsp[(1) - (5)].d) < (yyvsp[(3) - (5)].d) && (yyvsp[(5) - (5)].d) < 0) || ((yyvsp[(1) - (5)].d) > (yyvsp[(3) - (5)].d) && (yyvsp[(5) - (5)].d) > 0)){ + yymsg(GERROR, "Wrong increment in '%g:%g:%g'", (yyvsp[(1) - (5)].d), (yyvsp[(3) - (5)].d), (yyvsp[(5) - (5)].d)); + List_Add((yyval.l), &((yyvsp[(1) - (5)].d))); } else - for(double d = yyvsp[-4].d; (yyvsp[0].d > 0) ? (d <= yyvsp[-2].d) : (d >= yyvsp[-2].d); d += yyvsp[0].d) - List_Add(yyval.l, &d); - ; - break;} -case 321: -#line 3153 "Gmsh.y" -{ + 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 326: +#line 3213 "Gmsh.y" + { // Returns the coordinates of a point and fills a list with it. // This allows to ensure e.g. that relative point positions are // always conserved - Vertex *v = FindPoint((int)yyvsp[-1].d); - yyval.l = List_Create(3, 1, sizeof(double)); + Vertex *v = FindPoint((int)(yyvsp[(3) - (4)].d)); + (yyval.l) = List_Create(3, 1, sizeof(double)); if(!v) { - yymsg(GERROR, "Unknown point '%d'", (int) yyvsp[-1].d); + yymsg(GERROR, "Unknown point '%d'", (int) (yyvsp[(3) - (4)].d)); double d = 0.0; - List_Add(yyval.l, &d); - List_Add(yyval.l, &d); - List_Add(yyval.l, &d); + List_Add((yyval.l), &d); + List_Add((yyval.l), &d); + List_Add((yyval.l), &d); } else{ - List_Add(yyval.l, &v->Pos.X); - List_Add(yyval.l, &v->Pos.Y); - List_Add(yyval.l, &v->Pos.Z); - } - ; - break;} -case 322: -#line 3173 "Gmsh.y" -{ - yyval.l = List_Create(List_Nbr(yyvsp[0].l), 1, sizeof(double)); - for(int i = 0; i < List_Nbr(yyvsp[0].l); i++){ - Shape *s = (Shape*) List_Pointer(yyvsp[0].l, i); + List_Add((yyval.l), &v->Pos.X); + List_Add((yyval.l), &v->Pos.Y); + List_Add((yyval.l), &v->Pos.Z); + } + ;} + break; + + case 327: +#line 3233 "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_Add((yyval.l), &d); } - List_Delete(yyvsp[0].l); - ; - break;} -case 323: -#line 3183 "Gmsh.y" -{ - yyval.l = List_Create(List_Nbr(yyvsp[0].l), 1, sizeof(double)); - for(int i = 0; i < List_Nbr(yyvsp[0].l); i++){ - Shape *s = (Shape*) List_Pointer(yyvsp[0].l, i); + List_Delete((yyvsp[(1) - (1)].l)); + ;} + break; + + case 328: +#line 3243 "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_Add((yyval.l), &d); } - List_Delete(yyvsp[0].l); - ; - break;} -case 324: -#line 3193 "Gmsh.y" -{ - yyval.l = List_Create(List_Nbr(yyvsp[0].l), 1, sizeof(double)); - for(int i = 0; i < List_Nbr(yyvsp[0].l); i++){ - Shape *s = (Shape*) List_Pointer(yyvsp[0].l, i); + List_Delete((yyvsp[(1) - (1)].l)); + ;} + break; + + case 329: +#line 3253 "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_Add((yyval.l), &d); } - List_Delete(yyvsp[0].l); - ; - break;} -case 325: -#line 3203 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(double)); + List_Delete((yyvsp[(1) - (1)].l)); + ;} + break; + + case 330: +#line 3263 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(double)); Symbol TheSymbol; - TheSymbol.Name = yyvsp[-2].c; + TheSymbol.Name = (yyvsp[(1) - (3)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) { - yymsg(GERROR, "Unknown variable '%s'", yyvsp[-2].c); + yymsg(GERROR, "Unknown variable '%s'", (yyvsp[(1) - (3)].c)); double d = 0.0; - List_Add(yyval.l, &d); + List_Add((yyval.l), &d); } else{ for(int i = 0; i < List_Nbr(pSymbol->val); i++) - List_Add(yyval.l, (double*)List_Pointer_Fast(pSymbol->val, i)); + List_Add((yyval.l), (double*)List_Pointer_Fast(pSymbol->val, i)); } - Free(yyvsp[-2].c); - ; - break;} -case 326: -#line 3220 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(double)); + Free((yyvsp[(1) - (3)].c)); + ;} + break; + + case 331: +#line 3280 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(double)); Symbol TheSymbol; - TheSymbol.Name = yyvsp[-5].c; + TheSymbol.Name = (yyvsp[(1) - (6)].c); Symbol *pSymbol; if(!(pSymbol = (Symbol*)Tree_PQuery(Symbol_T, &TheSymbol))) { - yymsg(GERROR, "Unknown variable '%s'", yyvsp[-5].c); + yymsg(GERROR, "Unknown variable '%s'", (yyvsp[(1) - (6)].c)); double d = 0.0; - List_Add(yyval.l, &d); + List_Add((yyval.l), &d); } else{ - for(int i = 0; i < List_Nbr(yyvsp[-2].l); i++){ - int j = (int)(*(double*)List_Pointer_Fast(yyvsp[-2].l, i)); + for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ + int j = (int)(*(double*)List_Pointer_Fast((yyvsp[(4) - (6)].l), i)); double *pd; if((pd = (double*)List_Pointer_Test(pSymbol->val, j))) - List_Add(yyval.l, pd); + List_Add((yyval.l), pd); else - yymsg(GERROR, "Uninitialized variable '%s[%d]'", yyvsp[-5].c, j); + yymsg(GERROR, "Uninitialized variable '%s[%d]'", (yyvsp[(1) - (6)].c), j); } } - Free(yyvsp[-5].c); - List_Delete(yyvsp[-2].l); - ; - break;} -case 327: -#line 3247 "Gmsh.y" -{ - yyval.l = List_Create(2, 1, sizeof(double)); - List_Add(yyval.l, &(yyvsp[0].d)); - ; - break;} -case 328: -#line 3252 "Gmsh.y" -{ - yyval.l = yyvsp[0].l; - ; - break;} -case 329: -#line 3256 "Gmsh.y" -{ - List_Add(yyval.l, &(yyvsp[0].d)); - ; - break;} -case 330: -#line 3260 "Gmsh.y" -{ - for(int i = 0; i < List_Nbr(yyvsp[0].l); i++){ + Free((yyvsp[(1) - (6)].c)); + List_Delete((yyvsp[(4) - (6)].l)); + ;} + break; + + case 332: +#line 3307 "Gmsh.y" + { + (yyval.l) = List_Create(2, 1, sizeof(double)); + List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); + ;} + break; + + case 333: +#line 3312 "Gmsh.y" + { + (yyval.l) = (yyvsp[(1) - (1)].l); + ;} + break; + + case 334: +#line 3316 "Gmsh.y" + { + List_Add((yyval.l), &((yyvsp[(3) - (3)].d))); + ;} + break; + + case 335: +#line 3320 "Gmsh.y" + { + for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ double d; - List_Read(yyvsp[0].l, i, &d); - List_Add(yyval.l, &d); - } - List_Delete(yyvsp[0].l); - ; - break;} -case 331: -#line 3273 "Gmsh.y" -{ - yyval.u = CTX.PACK_COLOR((int)yyvsp[-7].d, (int)yyvsp[-5].d, (int)yyvsp[-3].d, (int)yyvsp[-1].d); - ; - break;} -case 332: -#line 3277 "Gmsh.y" -{ - yyval.u = CTX.PACK_COLOR((int)yyvsp[-5].d, (int)yyvsp[-3].d, (int)yyvsp[-1].d, 255); - ; - break;} -case 333: -#line 3289 "Gmsh.y" -{ + List_Read((yyvsp[(3) - (3)].l), i, &d); + List_Add((yyval.l), &d); + } + List_Delete((yyvsp[(3) - (3)].l)); + ;} + break; + + case 336: +#line 3333 "Gmsh.y" + { + (yyval.u) = CTX.PACK_COLOR((int)(yyvsp[(2) - (9)].d), (int)(yyvsp[(4) - (9)].d), (int)(yyvsp[(6) - (9)].d), (int)(yyvsp[(8) - (9)].d)); + ;} + break; + + case 337: +#line 3337 "Gmsh.y" + { + (yyval.u) = CTX.PACK_COLOR((int)(yyvsp[(2) - (7)].d), (int)(yyvsp[(4) - (7)].d), (int)(yyvsp[(6) - (7)].d), 255); + ;} + break; + + case 338: +#line 3349 "Gmsh.y" + { int flag; - yyval.u = Get_ColorForString(ColorString, -1, yyvsp[0].c, &flag); - if(flag) yymsg(GERROR, "Unknown color '%s'", yyvsp[0].c); - Free(yyvsp[0].c); - ; - break;} -case 334: -#line 3296 "Gmsh.y" -{ + (yyval.u) = Get_ColorForString(ColorString, -1, (yyvsp[(1) - (1)].c), &flag); + if(flag) yymsg(GERROR, "Unknown color '%s'", (yyvsp[(1) - (1)].c)); + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 339: +#line 3356 "Gmsh.y" + { unsigned int (*pColOpt)(int num, int action, unsigned int value); StringXColor *pColCat; - if(!(pColCat = Get_ColorOptionCategory(yyvsp[-4].c))){ - yymsg(GERROR, "Unknown color option class '%s'", yyvsp[-4].c); - yyval.u = 0; + if(!(pColCat = Get_ColorOptionCategory((yyvsp[(1) - (5)].c)))){ + yymsg(GERROR, "Unknown color option class '%s'", (yyvsp[(1) - (5)].c)); + (yyval.u) = 0; } else{ - if(!(pColOpt = (unsigned int (*) (int, int, unsigned int))Get_ColorOption(yyvsp[0].c, pColCat))){ - yymsg(GERROR, "Unknown color option '%s.Color.%s'", yyvsp[-4].c, yyvsp[0].c); - yyval.u = 0; + if(!(pColOpt = (unsigned int (*) (int, int, unsigned int))Get_ColorOption((yyvsp[(5) - (5)].c), pColCat))){ + yymsg(GERROR, "Unknown color option '%s.Color.%s'", (yyvsp[(1) - (5)].c), (yyvsp[(5) - (5)].c)); + (yyval.u) = 0; } else{ - yyval.u = pColOpt(0, GMSH_GET, 0); + (yyval.u) = pColOpt(0, GMSH_GET, 0); } } - Free(yyvsp[-4].c); Free(yyvsp[0].c); - ; - break;} -case 335: -#line 3318 "Gmsh.y" -{ - yyval.l = yyvsp[-1].l; - ; - break;} -case 336: -#line 3322 "Gmsh.y" -{ - yyval.l = List_Create(256, 10, sizeof(unsigned int)); - GmshColorTable *ct = Get_ColorTable((int)yyvsp[-3].d); + Free((yyvsp[(1) - (5)].c)); Free((yyvsp[(5) - (5)].c)); + ;} + break; + + case 340: +#line 3378 "Gmsh.y" + { + (yyval.l) = (yyvsp[(2) - (3)].l); + ;} + break; + + case 341: +#line 3382 "Gmsh.y" + { + (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); + GmshColorTable *ct = Get_ColorTable((int)(yyvsp[(3) - (6)].d)); if(!ct) - yymsg(GERROR, "View[%d] does not exist", (int)yyvsp[-3].d); + yymsg(GERROR, "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]); + List_Add((yyval.l), &ct->table[i]); } - Free(yyvsp[-5].c); - ; - break;} -case 337: -#line 3337 "Gmsh.y" -{ - yyval.l = List_Create(256, 10, sizeof(unsigned int)); - List_Add(yyval.l, &(yyvsp[0].u)); - ; - break;} -case 338: -#line 3342 "Gmsh.y" -{ - List_Add(yyval.l, &(yyvsp[0].u)); - ; - break;} -case 339: -#line 3349 "Gmsh.y" -{ - yyval.c = yyvsp[0].c; - ; - break;} -case 340: -#line 3353 "Gmsh.y" -{ + Free((yyvsp[(1) - (6)].c)); + ;} + break; + + case 342: +#line 3397 "Gmsh.y" + { + (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); + List_Add((yyval.l), &((yyvsp[(1) - (1)].u))); + ;} + break; + + case 343: +#line 3402 "Gmsh.y" + { + List_Add((yyval.l), &((yyvsp[(3) - (3)].u))); + ;} + break; + + case 344: +#line 3409 "Gmsh.y" + { + (yyval.c) = (yyvsp[(1) - (1)].c); + ;} + break; + + case 345: +#line 3413 "Gmsh.y" + { Msg(WARNING, "Named string expressions not implemented yet"); - ; - break;} -case 341: -#line 3360 "Gmsh.y" -{ - yyval.c = yyvsp[0].c; - ; - break;} -case 342: -#line 3364 "Gmsh.y" -{ - yyval.c = (char *)Malloc(32*sizeof(char)); + ;} + break; + + case 346: +#line 3420 "Gmsh.y" + { + (yyval.c) = (yyvsp[(1) - (1)].c); + ;} + break; + + case 347: +#line 3424 "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 343: -#line 3372 "Gmsh.y" -{ - yyval.c = (char *)Malloc((strlen(yyvsp[-3].c)+strlen(yyvsp[-1].c)+1)*sizeof(char)); - strcpy(yyval.c, yyvsp[-3].c); - strcat(yyval.c, yyvsp[-1].c); - Free(yyvsp[-3].c); - Free(yyvsp[-1].c); - ; - break;} -case 344: -#line 3380 "Gmsh.y" -{ - yyval.c = (char *)Malloc((strlen(yyvsp[-1].c)+1)*sizeof(char)); + strcpy((yyval.c), ctime(&now)); + (yyval.c)[strlen((yyval.c)) - 1] = '\0'; + ;} + break; + + case 348: +#line 3432 "Gmsh.y" + { + (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (6)].c))+strlen((yyvsp[(5) - (6)].c))+1)*sizeof(char)); + strcpy((yyval.c), (yyvsp[(3) - (6)].c)); + strcat((yyval.c), (yyvsp[(5) - (6)].c)); + Free((yyvsp[(3) - (6)].c)); + Free((yyvsp[(5) - (6)].c)); + ;} + break; + + case 349: +#line 3440 "Gmsh.y" + { + (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c))+1)*sizeof(char)); int i; - for(i = strlen(yyvsp[-1].c)-1; i >= 0; i--){ - if(yyvsp[-1].c[i] == '.'){ - strncpy(yyval.c, yyvsp[-1].c, i); - yyval.c[i]='\0'; + 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[-1].c); - Free(yyvsp[-1].c); - ; - break;} -case 345: -#line 3394 "Gmsh.y" -{ - yyval.c = (char *)Malloc((strlen(yyvsp[-1].c)+1)*sizeof(char)); + if(i <= 0) strcpy((yyval.c), (yyvsp[(3) - (4)].c)); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 350: +#line 3454 "Gmsh.y" + { + (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c))+1)*sizeof(char)); int i; - for(i = strlen(yyvsp[-1].c)-1; i >= 0; i--){ - if(yyvsp[-1].c[i] == '/' || yyvsp[-1].c[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[-1].c); + strcpy((yyval.c), (yyvsp[(3) - (4)].c)); else - strcpy(yyval.c, &yyvsp[-1].c[i+1]); - Free(yyvsp[-1].c); - ; - break;} -case 346: -#line 3408 "Gmsh.y" -{ - yyval.c = yyvsp[-1].c; - ; - break;} -case 347: -#line 3412 "Gmsh.y" -{ + strcpy((yyval.c), &(yyvsp[(3) - (4)].c)[i+1]); + Free((yyvsp[(3) - (4)].c)); + ;} + break; + + case 351: +#line 3468 "Gmsh.y" + { + (yyval.c) = (yyvsp[(3) - (4)].c); + ;} + break; + + case 352: +#line 3472 "Gmsh.y" + { char tmpstring[1024]; - int i = PrintListOfDouble(yyvsp[-3].c, yyvsp[-1].l, tmpstring); + int i = PrintListOfDouble((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].l), tmpstring); if(i < 0){ yymsg(GERROR, "Too few arguments in Sprintf"); - yyval.c = yyvsp[-3].c; + (yyval.c) = (yyvsp[(3) - (6)].c); } else if(i > 0){ yymsg(GERROR, "%d extra argument%s in Sprintf", i, (i>1)?"s":""); - yyval.c = yyvsp[-3].c; + (yyval.c) = (yyvsp[(3) - (6)].c); } else{ - yyval.c = (char*)Malloc((strlen(tmpstring)+1)*sizeof(char)); - strcpy(yyval.c, tmpstring); - Free(yyvsp[-3].c); - } - List_Delete(yyvsp[-1].l); - ; - break;} -case 348: -#line 3431 "Gmsh.y" -{ + (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 353: +#line 3491 "Gmsh.y" + { char* (*pStrOpt)(int num, int action, char *value); StringXString *pStrCat; - if(!(pStrCat = Get_StringOptionCategory(yyvsp[-3].c))){ - yymsg(GERROR, "Unknown string option class '%s'", yyvsp[-3].c); - yyval.c = (char*)Malloc(sizeof(char)); - yyval.c[0] = '\0'; + if(!(pStrCat = Get_StringOptionCategory((yyvsp[(3) - (6)].c)))){ + yymsg(GERROR, "Unknown string option class '%s'", (yyvsp[(3) - (6)].c)); + (yyval.c) = (char*)Malloc(sizeof(char)); + (yyval.c)[0] = '\0'; } else{ - if(!(pStrOpt = (char *(*) (int, int, char *))Get_StringOption(yyvsp[-1].c, pStrCat))){ - yymsg(GERROR, "Unknown string option '%s.%s'", yyvsp[-3].c, yyvsp[-1].c); - yyval.c = (char*)Malloc(sizeof(char)); - yyval.c[0] = '\0'; + if(!(pStrOpt = (char *(*) (int, int, char *))Get_StringOption((yyvsp[(5) - (6)].c), pStrCat))){ + yymsg(GERROR, "Unknown string option '%s.%s'", (yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); + (yyval.c) = (char*)Malloc(sizeof(char)); + (yyval.c)[0] = '\0'; } else{ char *str = pStrOpt(0, GMSH_GET, NULL); - yyval.c = (char*)Malloc((strlen(str)+1)*sizeof(char)); - strcpy(yyval.c, str); + (yyval.c) = (char*)Malloc((strlen(str)+1)*sizeof(char)); + strcpy((yyval.c), str); } } - ; - break;} -case 349: -#line 3453 "Gmsh.y" -{ + ;} + break; + + case 354: +#line 3513 "Gmsh.y" + { char* (*pStrOpt)(int num, int action, char *value); StringXString *pStrCat; - if(!(pStrCat = Get_StringOptionCategory(yyvsp[-6].c))){ - yymsg(GERROR, "Unknown string option class '%s'", yyvsp[-6].c); - yyval.c = (char*)Malloc(sizeof(char)); - yyval.c[0] = '\0'; + if(!(pStrCat = Get_StringOptionCategory((yyvsp[(3) - (9)].c)))){ + yymsg(GERROR, "Unknown string option class '%s'", (yyvsp[(3) - (9)].c)); + (yyval.c) = (char*)Malloc(sizeof(char)); + (yyval.c)[0] = '\0'; } else{ - if(!(pStrOpt = (char *(*) (int, int, char *))Get_StringOption(yyvsp[-1].c, pStrCat))){ - yymsg(GERROR, "Unknown string option '%s[%d].%s'", yyvsp[-6].c, (int)yyvsp[-4].d, yyvsp[-1].c); - yyval.c = (char*)Malloc(sizeof(char)); - yyval.c[0] = '\0'; + if(!(pStrOpt = (char *(*) (int, int, char *))Get_StringOption((yyvsp[(8) - (9)].c), pStrCat))){ + yymsg(GERROR, "Unknown string option '%s[%d].%s'", (yyvsp[(3) - (9)].c), (int)(yyvsp[(5) - (9)].d), (yyvsp[(8) - (9)].c)); + (yyval.c) = (char*)Malloc(sizeof(char)); + (yyval.c)[0] = '\0'; } else{ - char *str = pStrOpt((int)yyvsp[-4].d, GMSH_GET, NULL); - yyval.c = (char*)Malloc((strlen(str)+1)*sizeof(char)); - strcpy(yyval.c, str); + char *str = pStrOpt((int)(yyvsp[(5) - (9)].d), GMSH_GET, NULL); + (yyval.c) = (char*)Malloc((strlen(str)+1)*sizeof(char)); + strcpy((yyval.c), str); } } - ; - break;} -} - /* the action file gets copied in in place of this dollarsign */ -#line 543 "/usr/share/bison.simple" - - yyvsp -= yylen; - yyssp -= yylen; -#ifdef YYLSP_NEEDED - yylsp -= yylen; -#endif + ;} + break; -#if YYDEBUG != 0 - if (yydebug) - { - short *ssp1 = yyss - 1; - fprintf (stderr, "state stack now"); - while (ssp1 != yyssp) - fprintf (stderr, " %d", *++ssp1); - fprintf (stderr, "\n"); + +/* Line 1267 of yacc.c. */ +#line 7955 "Gmsh.tab.cpp" + default: break; } -#endif + YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); + + YYPOPSTACK (yylen); + yylen = 0; + YY_STACK_PRINT (yyss, yyssp); *++yyvsp = yyval; -#ifdef YYLSP_NEEDED - yylsp++; - if (yylen == 0) - { - yylsp->first_line = yylloc.first_line; - yylsp->first_column = yylloc.first_column; - yylsp->last_line = (yylsp-1)->last_line; - yylsp->last_column = (yylsp-1)->last_column; - yylsp->text = 0; - } - else - { - yylsp->last_line = (yylsp+yylen-1)->last_line; - yylsp->last_column = (yylsp+yylen-1)->last_column; - } -#endif - /* 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. */ + /* 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 - YYNTBASE] + *yyssp; - if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp) + yystate = yypgoto[yyn - YYNTOKENS] + *yyssp; + if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp) yystate = yytable[yystate]; else - yystate = yydefgoto[yyn - YYNTBASE]; + yystate = yydefgoto[yyn - YYNTOKENS]; goto yynewstate; -yyerrlab: /* here on detecting error */ - if (! yyerrstatus) - /* If not already recovering from an error, report this error. */ +/*------------------------------------. +| 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; + } + } -#ifdef YYERROR_VERBOSE - yyn = yypact[yystate]; - - if (yyn > YYFLAG && yyn < YYLAST) - { - int size = 0; - char *msg; - int x, count; - - count = 0; - /* Start X at -yyn if nec to avoid negative indexes in yycheck. */ - for (x = (yyn < 0 ? -yyn : 0); - x < (sizeof(yytname) / sizeof(char *)); x++) - if (yycheck[x + yyn] == x) - size += strlen(yytname[x]) + 15, count++; - msg = (char *) malloc(size + 15); - if (msg != 0) - { - strcpy(msg, "parse error"); - - if (count < 5) - { - count = 0; - for (x = (yyn < 0 ? -yyn : 0); - x < (sizeof(yytname) / sizeof(char *)); x++) - if (yycheck[x + yyn] == x) - { - strcat(msg, count == 0 ? ", expecting `" : " or `"); - strcat(msg, yytname[x]); - strcat(msg, "'"); - count++; - } - } - yyerror(msg); - free(msg); - } - else - yyerror ("parse error; also virtual memory exceeded"); - } - else -#endif /* YYERROR_VERBOSE */ - yyerror("parse error"); + 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 } - goto yyerrlab1; -yyerrlab1: /* here on error raised explicitly by an action */ + if (yyerrstatus == 3) { - /* if just tried and failed to reuse lookahead token after an error, discard it. */ - - /* return failure if at end of input */ - if (yychar == YYEOF) - YYABORT; - -#if YYDEBUG != 0 - if (yydebug) - fprintf(stderr, "Discarding token %d (%s).\n", yychar, yytname[yychar1]); -#endif + /* If just tried and failed to reuse look-ahead token after an + error, discard it. */ - yychar = YYEMPTY; + 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 lookahead token - after shifting the error token. */ + /* Else will try to reuse look-ahead token after shifting the error + token. */ + goto yyerrlab1; - yyerrstatus = 3; /* Each real token shifted decrements this */ - goto yyerrhandle; +/*---------------------------------------------------. +| yyerrorlab -- error raised explicitly by YYERROR. | +`---------------------------------------------------*/ +yyerrorlab: -yyerrdefault: /* current state does not do anything special for the error token. */ + /* 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; -#if 0 - /* This is wrong; only states that explicitly want error tokens - should shift them. */ - yyn = yydefact[yystate]; /* If its default is to accept any token, ok. Otherwise pop it.*/ - if (yyn) goto yydefault; -#endif + /* 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; -yyerrpop: /* pop the current state because it cannot handle the error token */ - if (yyssp == yyss) YYABORT; - yyvsp--; - yystate = *--yyssp; -#ifdef YYLSP_NEEDED - yylsp--; -#endif +/*-------------------------------------------------------------. +| yyerrlab1 -- common code for both syntax error and YYERROR. | +`-------------------------------------------------------------*/ +yyerrlab1: + yyerrstatus = 3; /* Each real token shifted decrements this. */ -#if YYDEBUG != 0 - if (yydebug) + for (;;) { - short *ssp1 = yyss - 1; - fprintf (stderr, "Error: state stack now"); - while (ssp1 != yyssp) - fprintf (stderr, " %d", *++ssp1); - fprintf (stderr, "\n"); - } -#endif - -yyerrhandle: + yyn = yypact[yystate]; + if (yyn != YYPACT_NINF) + { + yyn += YYTERROR; + if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) + { + yyn = yytable[yyn]; + if (0 < yyn) + break; + } + } - yyn = yypact[yystate]; - if (yyn == YYFLAG) - goto yyerrdefault; + /* Pop the current state because it cannot handle the error token. */ + if (yyssp == yyss) + YYABORT; - yyn += YYTERROR; - if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR) - goto yyerrdefault; - yyn = yytable[yyn]; - if (yyn < 0) - { - if (yyn == YYFLAG) - goto yyerrpop; - yyn = -yyn; - goto yyreduce; + yydestruct ("Error: popping", + yystos[yystate], yyvsp); + YYPOPSTACK (1); + yystate = *yyssp; + YY_STACK_PRINT (yyss, yyssp); } - else if (yyn == 0) - goto yyerrpop; if (yyn == YYFINAL) YYACCEPT; -#if YYDEBUG != 0 - if (yydebug) - fprintf(stderr, "Shifting error token, "); -#endif - *++yyvsp = yylval; -#ifdef YYLSP_NEEDED - *++yylsp = yylloc; -#endif + + + /* Shift the error token. */ + YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp); yystate = yyn; goto yynewstate; - yyacceptlab: - /* YYACCEPT comes here. */ - if (yyfree_stacks) - { - free (yyss); - free (yyvs); -#ifdef YYLSP_NEEDED - free (yyls); + +/*-------------------------------------. +| 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 - } - return 0; - yyabortlab: - /* YYABORT comes here. */ - if (yyfree_stacks) +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) { - free (yyss); - free (yyvs); -#ifdef YYLSP_NEEDED - free (yyls); -#endif + yydestruct ("Cleanup: popping", + yystos[*yyssp], yyvsp); + YYPOPSTACK (1); } - return 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 3476 "Gmsh.y" + + +#line 3536 "Gmsh.y" void DeleteSymbol(void *a, void *b){ @@ -6886,3 +8259,4 @@ void yymsg(int type, char *fmt, ...){ if(type == GERROR) yyerrorstate++; } + diff --git a/Parser/Gmsh.tab.hpp b/Parser/Gmsh.tab.hpp index f4cbe407b7a0c6ba964b12bf38509d8bb1571964..d80b8959afcda9bd3c17c73dec48ba29d5a35715 100644 --- a/Parser/Gmsh.tab.hpp +++ b/Parser/Gmsh.tab.hpp @@ -1,4 +1,301 @@ -typedef union { +/* A Bison parser, made by GNU Bison 2.3. */ + +/* Skeleton interface 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. */ + +/* 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, + tPi = 264, + tMPI_Rank = 265, + tMPI_Size = 266, + tEuclidian = 267, + tCoordinates = 268, + tExp = 269, + tLog = 270, + tLog10 = 271, + tSqrt = 272, + tSin = 273, + tAsin = 274, + tCos = 275, + tAcos = 276, + tTan = 277, + tRand = 278, + tAtan = 279, + tAtan2 = 280, + tSinh = 281, + tCosh = 282, + tTanh = 283, + tFabs = 284, + tFloor = 285, + tCeil = 286, + tFmod = 287, + tModulo = 288, + tHypot = 289, + tPrintf = 290, + tSprintf = 291, + tStrCat = 292, + tStrPrefix = 293, + tStrRelative = 294, + tBoundingBox = 295, + tDraw = 296, + tToday = 297, + tPoint = 298, + tCircle = 299, + tEllipse = 300, + tLine = 301, + tSphere = 302, + tPolarSphere = 303, + tSurface = 304, + tSpline = 305, + tVolume = 306, + tCharacteristic = 307, + tLength = 308, + tParametric = 309, + tElliptic = 310, + tPlane = 311, + tRuled = 312, + tTransfinite = 313, + tComplex = 314, + tPhysical = 315, + tUsing = 316, + tBump = 317, + tProgression = 318, + tPlugin = 319, + tRotate = 320, + tTranslate = 321, + tSymmetry = 322, + tDilate = 323, + tExtrude = 324, + tDuplicata = 325, + tLoop = 326, + tRecombine = 327, + tDelete = 328, + tCoherence = 329, + tAttractor = 330, + tLayers = 331, + tHole = 332, + tAlias = 333, + tAliasWithOptions = 334, + tText2D = 335, + tText3D = 336, + tInterpolationScheme = 337, + tTime = 338, + tGrain = 339, + tCombine = 340, + tBSpline = 341, + tBezier = 342, + tNurbs = 343, + tOrder = 344, + tKnots = 345, + tColor = 346, + tColorTable = 347, + tFor = 348, + tIn = 349, + tEndFor = 350, + tIf = 351, + tEndIf = 352, + tExit = 353, + tField = 354, + tThreshold = 355, + tStructured = 356, + tLatLon = 357, + tGrad = 358, + tReturn = 359, + tCall = 360, + tFunction = 361, + tShow = 362, + tHide = 363, + tGetValue = 364, + tGMSH_MAJOR_VERSION = 365, + tGMSH_MINOR_VERSION = 366, + tGMSH_PATCH_VERSION = 367, + tAFFECTDIVIDE = 368, + tAFFECTTIMES = 369, + tAFFECTMINUS = 370, + tAFFECTPLUS = 371, + tOR = 372, + tAND = 373, + tNOTEQUAL = 374, + tEQUAL = 375, + tGREATEROREQUAL = 376, + tLESSOREQUAL = 377, + UNARYPREC = 378, + tMINUSMINUS = 379, + tPLUSPLUS = 380 + }; +#endif +/* Tokens. */ +#define tDOUBLE 258 +#define tSTRING 259 +#define tBIGSTR 260 +#define tEND 261 +#define tAFFECT 262 +#define tDOTS 263 +#define tPi 264 +#define tMPI_Rank 265 +#define tMPI_Size 266 +#define tEuclidian 267 +#define tCoordinates 268 +#define tExp 269 +#define tLog 270 +#define tLog10 271 +#define tSqrt 272 +#define tSin 273 +#define tAsin 274 +#define tCos 275 +#define tAcos 276 +#define tTan 277 +#define tRand 278 +#define tAtan 279 +#define tAtan2 280 +#define tSinh 281 +#define tCosh 282 +#define tTanh 283 +#define tFabs 284 +#define tFloor 285 +#define tCeil 286 +#define tFmod 287 +#define tModulo 288 +#define tHypot 289 +#define tPrintf 290 +#define tSprintf 291 +#define tStrCat 292 +#define tStrPrefix 293 +#define tStrRelative 294 +#define tBoundingBox 295 +#define tDraw 296 +#define tToday 297 +#define tPoint 298 +#define tCircle 299 +#define tEllipse 300 +#define tLine 301 +#define tSphere 302 +#define tPolarSphere 303 +#define tSurface 304 +#define tSpline 305 +#define tVolume 306 +#define tCharacteristic 307 +#define tLength 308 +#define tParametric 309 +#define tElliptic 310 +#define tPlane 311 +#define tRuled 312 +#define tTransfinite 313 +#define tComplex 314 +#define tPhysical 315 +#define tUsing 316 +#define tBump 317 +#define tProgression 318 +#define tPlugin 319 +#define tRotate 320 +#define tTranslate 321 +#define tSymmetry 322 +#define tDilate 323 +#define tExtrude 324 +#define tDuplicata 325 +#define tLoop 326 +#define tRecombine 327 +#define tDelete 328 +#define tCoherence 329 +#define tAttractor 330 +#define tLayers 331 +#define tHole 332 +#define tAlias 333 +#define tAliasWithOptions 334 +#define tText2D 335 +#define tText3D 336 +#define tInterpolationScheme 337 +#define tTime 338 +#define tGrain 339 +#define tCombine 340 +#define tBSpline 341 +#define tBezier 342 +#define tNurbs 343 +#define tOrder 344 +#define tKnots 345 +#define tColor 346 +#define tColorTable 347 +#define tFor 348 +#define tIn 349 +#define tEndFor 350 +#define tIf 351 +#define tEndIf 352 +#define tExit 353 +#define tField 354 +#define tThreshold 355 +#define tStructured 356 +#define tLatLon 357 +#define tGrad 358 +#define tReturn 359 +#define tCall 360 +#define tFunction 361 +#define tShow 362 +#define tHide 363 +#define tGetValue 364 +#define tGMSH_MAJOR_VERSION 365 +#define tGMSH_MINOR_VERSION 366 +#define tGMSH_PATCH_VERSION 367 +#define tAFFECTDIVIDE 368 +#define tAFFECTTIMES 369 +#define tAFFECTMINUS 370 +#define tAFFECTPLUS 371 +#define tOR 372 +#define tAND 373 +#define tNOTEQUAL 374 +#define tEQUAL 375 +#define tGREATEROREQUAL 376 +#define tLESSOREQUAL 377 +#define UNARYPREC 378 +#define tMINUSMINUS 379 +#define tPLUSPLUS 380 + + + + +#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED +typedef union YYSTYPE +#line 79 "Gmsh.y" +{ char *c; int i; unsigned int u; @@ -6,125 +303,14 @@ typedef union { double v[5]; Shape s; List_T *l; -} YYSTYPE; -#define tDOUBLE 257 -#define tSTRING 258 -#define tBIGSTR 259 -#define tEND 260 -#define tAFFECT 261 -#define tDOTS 262 -#define tPi 263 -#define tMPI_Rank 264 -#define tMPI_Size 265 -#define tEuclidian 266 -#define tCoordinates 267 -#define tExp 268 -#define tLog 269 -#define tLog10 270 -#define tSqrt 271 -#define tSin 272 -#define tAsin 273 -#define tCos 274 -#define tAcos 275 -#define tTan 276 -#define tRand 277 -#define tAtan 278 -#define tAtan2 279 -#define tSinh 280 -#define tCosh 281 -#define tTanh 282 -#define tFabs 283 -#define tFloor 284 -#define tCeil 285 -#define tFmod 286 -#define tModulo 287 -#define tHypot 288 -#define tPrintf 289 -#define tSprintf 290 -#define tStrCat 291 -#define tStrPrefix 292 -#define tStrRelative 293 -#define tBoundingBox 294 -#define tDraw 295 -#define tToday 296 -#define tPoint 297 -#define tCircle 298 -#define tEllipse 299 -#define tLine 300 -#define tSphere 301 -#define tPolarSphere 302 -#define tSurface 303 -#define tSpline 304 -#define tVolume 305 -#define tCharacteristic 306 -#define tLength 307 -#define tParametric 308 -#define tElliptic 309 -#define tPlane 310 -#define tRuled 311 -#define tTransfinite 312 -#define tComplex 313 -#define tPhysical 314 -#define tUsing 315 -#define tBump 316 -#define tProgression 317 -#define tPlugin 318 -#define tRotate 319 -#define tTranslate 320 -#define tSymmetry 321 -#define tDilate 322 -#define tExtrude 323 -#define tDuplicata 324 -#define tLoop 325 -#define tRecombine 326 -#define tDelete 327 -#define tCoherence 328 -#define tAttractor 329 -#define tLayers 330 -#define tHole 331 -#define tAlias 332 -#define tAliasWithOptions 333 -#define tText2D 334 -#define tText3D 335 -#define tInterpolationScheme 336 -#define tTime 337 -#define tGrain 338 -#define tCombine 339 -#define tBSpline 340 -#define tBezier 341 -#define tNurbs 342 -#define tOrder 343 -#define tKnots 344 -#define tColor 345 -#define tColorTable 346 -#define tFor 347 -#define tIn 348 -#define tEndFor 349 -#define tIf 350 -#define tEndIf 351 -#define tExit 352 -#define tReturn 353 -#define tCall 354 -#define tFunction 355 -#define tShow 356 -#define tHide 357 -#define tGetValue 358 -#define tGMSH_MAJOR_VERSION 359 -#define tGMSH_MINOR_VERSION 360 -#define tGMSH_PATCH_VERSION 361 -#define tAFFECTPLUS 362 -#define tAFFECTMINUS 363 -#define tAFFECTTIMES 364 -#define tAFFECTDIVIDE 365 -#define tOR 366 -#define tAND 367 -#define tEQUAL 368 -#define tNOTEQUAL 369 -#define tLESSOREQUAL 370 -#define tGREATEROREQUAL 371 -#define tPLUSPLUS 372 -#define tMINUSMINUS 373 -#define UNARYPREC 374 - +} +/* Line 1489 of yacc.c. */ +#line 309 "Gmsh.tab.hpp" + YYSTYPE; +# define yystype YYSTYPE /* obsolescent; will be withdrawn */ +# define YYSTYPE_IS_DECLARED 1 +# define YYSTYPE_IS_TRIVIAL 1 +#endif extern YYSTYPE yylval; + diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index 27a0067e043f79577a1c03982a7aaa89115341ec..4be9563359ba5c6e608eb46ff7077085fd2bc37b 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -1,5 +1,5 @@ %{ -// $Id: Gmsh.y,v 1.271 2007-04-12 08:58:07 remacle Exp $ +// $Id: Gmsh.y,v 1.272 2007-04-16 09:08:32 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -43,7 +43,8 @@ #include "OS.h" #include "CreateFile.h" #include "gmshSurface.h" -#include "Attractors.h" +#include "Field.h" +#include "BackgroundMesh.h" Tree_T *Symbol_T = NULL; @@ -104,6 +105,7 @@ int CheckViewErrorFlags(Post_View *v); %token tText2D tText3D tInterpolationScheme tTime tGrain tCombine %token tBSpline tBezier tNurbs tOrder tKnots %token tColor tColorTable tFor tIn tEndFor tIf tEndIf tExit +%token tField tThreshold tStructured tLatLon tGrad %token tReturn tCall tFunction tShow tHide tGetValue %token tGMSH_MAJOR_VERSION tGMSH_MINOR_VERSION tGMSH_PATCH_VERSION @@ -1076,9 +1078,59 @@ Shape : $$.Type = MSH_PHYSICAL_POINT; $$.Num = num; } + + | tAttractor tPoint tField '(' FExpr ')' tAFFECT ListOfDouble tEND { + AttractorField *att = new AttractorField(); + for(int i = 0; i < List_Nbr($8); i++){ + double d; + List_Read($8, i, &d); + Vertex *v = FindPoint((int)d); + if(v) + att->addPoint(v->Pos.X, v->Pos.Y, v->Pos.Z); + else{ + GVertex *gv = GMODEL->vertexByTag((int)d); + if(gv) + att->addPoint(gv->x(), gv->y(), gv->z()); + } + } + att->buildFastSearchStructures(); + fields.insert(att,(int)$5); + } + | tThreshold tField '(' FExpr ')' tAFFECT ListOfDouble tEND { + double pars[]={0,CTX.lc/10,CTX.lc,CTX.lc/100,CTX.lc/20}; + for (int i=0;i<List_Nbr($7);i++){ + if(i>4) + yymsg(GERROR,"Too many parameters for Thresold Field (max=5)"); + else + List_Read($7,i,&pars[i]); + } + fields.insert(new ThresholdField(fields.get((int)pars[0]),pars[1],pars[2],pars[3],pars[4]),(int)$4); + } + | tFunction tField '(' FExpr ')' tAFFECT tBIGSTR ListOfDouble tEND{ + std::list<Field*> *flist=new std::list<Field*>; + flist->resize(0); + for(int i = 0; i < List_Nbr($8); i++){ + double id; + List_Read($8, i, &id); + Field *pfield=fields.get((int)id); + if(pfield)flist->push_front(pfield); + } + fields.insert(new FunctionField(flist,$7),(int)$4); + } + | tStructured tField '(' FExpr ')' tAFFECT tBIGSTR tEND{ + fields.insert(new StructuredField($7),(int)$4); + } + | tCharacteristic tLength tField ListOfDouble tEND { + for(int i = 0; i < List_Nbr($4); i++){ + double id; + List_Read($4, i, &id); + BGMAddField(fields.get((int)id)); + } + } + /* backward compatibility */ | tAttractor tPoint ListOfDouble tAFFECT ListOfDouble tEND { - double pars[] = { CTX.lc/10, CTX.lc/100., CTX.lc/20, 10, 3 }; + double pars[] = { CTX.lc/10, CTX.lc/100., CTX.lc/20, 1, 3 }; for(int i = 0; i < List_Nbr($5); i++){ if(i > 4) yymsg(GERROR, "Too many paramaters for attractor line (max = 5)"); @@ -1087,25 +1139,29 @@ Shape : } // treshold attractor: first parameter is the treshold, next two // are the in and out size fields, last is transition factor - Attractor *att = tresholdAttractor::New(pars[0], pars[1], pars[2], pars[4]); + AttractorField *attractor= new AttractorField(); + fields.insert(attractor); + Field *threshold=new ThresholdField(attractor,pars[0],pars[0]*pars[4],pars[1],pars[2]); + fields.insert(threshold); + BGMAddField(threshold); for(int i = 0; i < List_Nbr($3); i++){ double d; List_Read($3, i, &d); Vertex *v = FindPoint((int)d); if(v) - att->addPoint(v->Pos.X, v->Pos.Y, v->Pos.Z); + attractor->addPoint(v->Pos.X, v->Pos.Y, v->Pos.Z); else{ GVertex *gv = GMODEL->vertexByTag((int)d); if(gv) - att->addPoint(gv->x(), gv->y(), gv->z()); + attractor->addPoint(gv->x(), gv->y(), gv->z()); } } - att->buildFastSearchStructures(); + attractor->buildFastSearchStructures(); // dummy values $$.Type = 0; $$.Num = 0; } - | tAttractor tLine ListOfDouble tAFFECT ListOfDouble tEND + /*| tAttractor tLine ListOfDouble tAFFECT ListOfDouble tEND { double pars[] = { CTX.lc/10, CTX.lc/100., CTX.lc/20, 10, 3 }; for(int i = 0; i < List_Nbr($5); i++){ @@ -1135,7 +1191,7 @@ Shape : // dummy values $$.Type = 0; $$.Num = 0; - } + }*/ | tCharacteristic tLength ListOfDouble tAFFECT FExpr tEND { for(int i = 0; i < List_Nbr($3); i++){ @@ -1962,7 +2018,11 @@ Command : { if(!strcmp($1, "Background") && !strcmp($2, "Mesh") && !strcmp($3, "View")){ Post_View **vv = (Post_View **)List_Pointer_Test(CTX.post.list, (int)$5); - if(vv) BGMWithView(*vv); + if(vv) { + Field *field=new PostViewField(*vv); + fields.insert(field); + BGMAddField(field); + } } else{ yymsg(GERROR, "Unknown command '%s'", $1); @@ -2272,7 +2332,7 @@ Extrude : ExtrudeParameters '}' { $$ = List_Create(2, 1, sizeof(Shape)); - extr.mesh.ViewIndex = $4; + extr.mesh.ViewIndex = (int)$4; ExtrudeShapes(BOUNDARY_LAYER, $7, 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., &extr, $$); extr.mesh.ViewIndex = -1; diff --git a/Parser/Gmsh.yy.cpp b/Parser/Gmsh.yy.cpp index 301987548deb974b4a1ea85d022c323cadaa95b3..f88c9059ed3ce12d0638a1b0c02e0652abf54c66 100644 --- a/Parser/Gmsh.yy.cpp +++ b/Parser/Gmsh.yy.cpp @@ -2,7 +2,7 @@ /* A lexical scanner generated by flex */ /* Scanner skeleton version: - * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.314 2007-04-12 08:58:07 remacle Exp $ + * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.315 2007-04-16 09:08:32 remacle Exp $ */ #define FLEX_SCANNER @@ -10,7 +10,7 @@ #define YY_FLEX_MINOR_VERSION 5 #include <stdio.h> - +#include <errno.h> /* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */ #ifdef c_plusplus @@ -23,7 +23,9 @@ #ifdef __cplusplus #include <stdlib.h> +#ifndef _WIN32 #include <unistd.h> +#endif /* Use prototypes in function declarations. */ #define YY_USE_PROTOS @@ -63,6 +65,7 @@ #define YY_PROTO(proto) () #endif + /* Returned upon end-of-file. */ #define YY_NULL 0 @@ -283,77 +286,78 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); *yy_cp = '\0'; \ yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 142 -#define YY_END_OF_BUFFER 143 -static yyconst short int yy_accept[602] = +#define YY_NUM_RULES 145 +#define YY_END_OF_BUFFER 146 +static yyconst short int yy_accept[616] = { 0, - 0, 0, 143, 141, 1, 1, 141, 5, 141, 6, - 141, 141, 141, 141, 141, 136, 20, 2, 141, 15, - 141, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 140, 141, 27, 23, 18, 24, 16, 25, - 17, 0, 138, 3, 4, 19, 137, 136, 0, 28, - 26, 29, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 140, 140, 140, 140, 140, 84, 83, 140, - - 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 98, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 140, 140, 140, 131, 132, 140, 140, 140, - 140, 140, 140, 140, 22, 21, 0, 137, 0, 0, - 139, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 48, 140, 140, 140, 140, 140, 140, 140, 140, 62, - 140, 140, 140, 140, 74, 140, 140, 140, 140, 140, - 140, 140, 140, 140, 140, 140, 140, 89, 140, 140, - 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, - - 140, 140, 140, 140, 140, 140, 140, 140, 113, 140, - 140, 140, 140, 140, 140, 140, 140, 127, 140, 140, - 140, 140, 140, 0, 138, 0, 0, 137, 30, 140, - 140, 140, 140, 34, 36, 140, 140, 140, 140, 42, - 57, 140, 45, 140, 140, 140, 140, 140, 140, 140, - 47, 140, 140, 61, 140, 140, 140, 140, 140, 70, - 140, 71, 140, 73, 140, 140, 140, 140, 80, 81, - 140, 140, 140, 140, 140, 87, 140, 88, 140, 140, - 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 110, 140, 140, 140, 140, 123, 114, 140, 140, - - 140, 112, 140, 140, 140, 140, 140, 134, 126, 140, - 140, 140, 140, 10, 9, 8, 140, 12, 14, 0, - 137, 32, 140, 140, 140, 38, 140, 140, 140, 140, - 140, 140, 140, 140, 53, 140, 140, 140, 140, 140, - 140, 140, 140, 68, 140, 140, 72, 140, 140, 135, - 140, 82, 140, 85, 140, 140, 90, 140, 140, 140, - 95, 96, 140, 140, 99, 140, 100, 140, 101, 140, - 140, 140, 140, 140, 109, 140, 140, 140, 140, 140, - 140, 140, 140, 128, 140, 129, 140, 11, 140, 13, - 140, 31, 35, 37, 140, 140, 41, 140, 140, 140, - - 50, 140, 140, 140, 140, 140, 58, 59, 140, 140, - 140, 67, 140, 140, 140, 140, 140, 140, 140, 91, - 86, 140, 140, 92, 140, 140, 106, 140, 105, 140, - 140, 111, 108, 115, 116, 140, 120, 140, 140, 140, - 140, 140, 140, 130, 7, 140, 39, 140, 43, 140, - 140, 140, 140, 140, 46, 52, 140, 140, 64, 140, - 140, 140, 65, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 140, 140, 140, 140, 119, 140, 140, 117, - 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 63, 66, 140, 75, 140, 140, 140, 76, - - 140, 93, 94, 140, 97, 140, 140, 140, 140, 140, - 118, 140, 140, 140, 40, 140, 140, 140, 51, 140, - 140, 60, 69, 140, 140, 140, 140, 140, 140, 140, - 107, 121, 140, 140, 125, 140, 140, 56, 140, 54, - 140, 140, 140, 140, 140, 103, 140, 140, 140, 140, - 140, 44, 140, 55, 140, 140, 140, 140, 104, 102, - 122, 124, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 140, 140, 140, 49, 140, 140, 140, 140, - 140, 140, 140, 140, 140, 33, 140, 140, 140, 140, - 140, 140, 140, 140, 77, 78, 79, 140, 140, 133, - - 0 + 0, 0, 146, 144, 1, 1, 144, 5, 144, 6, + 144, 144, 144, 144, 144, 139, 20, 2, 144, 15, + 144, 143, 143, 143, 143, 143, 143, 143, 143, 143, + 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, + 143, 143, 143, 144, 27, 23, 18, 24, 16, 25, + 17, 0, 141, 3, 4, 19, 140, 139, 0, 28, + 26, 29, 143, 143, 143, 143, 143, 143, 143, 143, + 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, + 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, + 143, 143, 143, 143, 143, 143, 143, 143, 84, 83, + + 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, + 143, 99, 143, 143, 143, 143, 143, 143, 143, 143, + 143, 143, 143, 143, 143, 143, 134, 135, 143, 143, + 143, 143, 143, 143, 143, 143, 22, 21, 0, 140, + 0, 0, 142, 143, 143, 143, 143, 143, 143, 143, + 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, + 48, 143, 143, 143, 143, 143, 143, 143, 143, 60, + 143, 143, 143, 143, 143, 73, 143, 143, 143, 143, + 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, + 90, 143, 143, 143, 143, 143, 143, 143, 143, 143, + + 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, + 143, 114, 143, 143, 143, 143, 143, 143, 143, 143, + 129, 143, 143, 143, 143, 143, 143, 0, 141, 0, + 0, 140, 30, 143, 143, 143, 143, 34, 36, 143, + 143, 143, 143, 42, 55, 143, 45, 143, 143, 143, + 143, 143, 47, 143, 143, 59, 143, 143, 143, 143, + 143, 68, 143, 69, 143, 143, 72, 143, 143, 143, + 143, 76, 80, 81, 143, 143, 143, 143, 143, 143, + 88, 143, 89, 143, 143, 143, 143, 143, 143, 143, + 143, 143, 143, 143, 143, 143, 111, 143, 143, 143, + + 143, 125, 115, 143, 143, 143, 113, 143, 143, 143, + 143, 143, 143, 137, 128, 143, 143, 143, 143, 143, + 10, 9, 8, 143, 12, 14, 0, 140, 32, 143, + 143, 143, 38, 143, 143, 143, 143, 143, 143, 51, + 143, 143, 143, 143, 143, 143, 143, 143, 66, 143, + 143, 70, 71, 143, 143, 138, 143, 82, 143, 85, + 143, 143, 143, 91, 143, 143, 143, 96, 97, 143, + 143, 100, 143, 101, 143, 102, 143, 143, 143, 143, + 143, 110, 143, 143, 143, 143, 143, 143, 143, 143, + 143, 143, 131, 143, 132, 143, 11, 143, 13, 143, + + 31, 35, 37, 143, 143, 41, 143, 143, 143, 143, + 143, 143, 143, 56, 57, 143, 143, 143, 65, 143, + 143, 143, 143, 143, 143, 143, 86, 92, 87, 143, + 143, 93, 143, 143, 107, 143, 106, 143, 143, 112, + 109, 116, 117, 143, 121, 143, 143, 143, 143, 143, + 143, 143, 143, 133, 7, 143, 39, 143, 43, 143, + 143, 143, 143, 46, 50, 143, 143, 62, 143, 143, + 143, 63, 143, 143, 143, 143, 143, 143, 143, 143, + 143, 143, 143, 143, 143, 120, 143, 143, 143, 118, + 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, + + 143, 143, 61, 64, 143, 74, 143, 143, 143, 75, + 143, 94, 95, 143, 98, 143, 143, 143, 143, 143, + 143, 119, 143, 143, 143, 143, 40, 143, 143, 143, + 143, 143, 58, 67, 143, 143, 143, 143, 143, 143, + 143, 108, 122, 143, 143, 130, 143, 127, 143, 143, + 54, 143, 52, 143, 143, 143, 143, 143, 104, 143, + 143, 143, 124, 143, 143, 44, 143, 53, 143, 143, + 143, 143, 105, 103, 123, 126, 143, 143, 143, 143, + 143, 143, 143, 143, 143, 143, 143, 143, 143, 49, + 143, 143, 143, 143, 143, 143, 143, 143, 143, 33, + + 143, 143, 143, 143, 143, 143, 143, 143, 77, 78, + 79, 143, 143, 136, 0 } ; static yyconst int yy_ec[256] = @@ -400,149 +404,151 @@ static yyconst int yy_meta[73] = 2, 1 } ; -static yyconst short int yy_base[603] = +static yyconst short int yy_base[617] = { 0, - 0, 0, 723, 724, 724, 724, 701, 724, 715, 724, - 699, 64, 65, 63, 75, 77, 724, 724, 698, 697, - 696, 46, 48, 65, 66, 65, 79, 62, 45, 71, - 0, 657, 91, 46, 649, 651, 93, 107, 109, 145, - 649, 652, 660, 638, 724, 724, 724, 724, 724, 724, - 724, 698, 167, 724, 724, 724, 172, 187, 211, 724, - 724, 724, 0, 648, 652, 657, 650, 94, 643, 632, - 636, 643, 70, 645, 652, 635, 108, 640, 639, 648, - 633, 636, 642, 642, 151, 642, 629, 628, 624, 627, - 644, 661, 618, 632, 624, 619, 637, 0, 0, 618, - - 607, 617, 616, 137, 643, 623, 609, 621, 607, 599, - 0, 35, 154, 89, 609, 128, 602, 609, 605, 605, - 156, 600, 599, 598, 602, 0, 0, 624, 599, 607, - 609, 600, 597, 585, 724, 724, 220, 226, 235, 241, - 246, 588, 604, 190, 591, 590, 585, 590, 591, 586, - 583, 586, 584, 584, 577, 590, 587, 577, 130, 573, - 581, 583, 586, 564, 574, 575, 124, 572, 563, 0, - 564, 562, 565, 574, 0, 574, 592, 590, 576, 568, - 567, 557, 589, 550, 563, 560, 561, 597, 549, 563, - 542, 559, 555, 558, 540, 544, 549, 542, 553, 548, - - 539, 544, 546, 535, 528, 546, 541, 523, 536, 538, - 533, 532, 521, 240, 533, 526, 556, 528, 534, 521, - 520, 512, 218, 255, 273, 282, 287, 292, 0, 513, - 516, 520, 527, 0, 558, 525, 516, 519, 519, 0, - 0, 502, 0, 520, 509, 502, 501, 508, 505, 511, - 0, 495, 494, 0, 503, 496, 496, 503, 499, 0, - 487, 0, 489, 0, 486, 504, 513, 501, 0, 0, - 482, 506, 481, 481, 478, 0, 529, 0, 155, 484, - 476, 476, 480, 482, 485, 480, 469, 470, 469, 466, - 467, 0, 471, 465, 462, 476, 0, 0, 462, 465, - - 464, 0, 475, 458, 469, 472, 467, 0, 0, 447, - 452, 462, 456, 0, 456, 0, 461, 454, 0, 297, - 302, 465, 445, 449, 448, 0, 457, 446, 441, 448, - 445, 452, 449, 448, 456, 438, 445, 440, 443, 442, - 443, 182, 428, 0, 440, 439, 0, 433, 238, 0, - 430, 0, 448, 0, 421, 430, 0, 436, 427, 421, - 0, 0, 429, 430, 0, 419, 0, 436, 0, 424, - 424, 426, 414, 421, 0, 420, 419, 404, 403, 416, - 409, 416, 399, 0, 268, 0, 412, 0, 409, 0, - 406, 0, 0, 445, 394, 407, 0, 398, 399, 390, - - 0, 395, 406, 401, 382, 391, 0, 0, 402, 271, - 393, 0, 392, 395, 385, 243, 421, 377, 405, 0, - 0, 382, 369, 0, 374, 391, 0, 376, 0, 372, - 380, 0, 0, 0, 0, 382, 0, 381, 385, 380, - 367, 374, 381, 0, 0, 362, 0, 366, 0, 372, - 384, 372, 373, 373, 0, 0, 373, 354, 0, 354, - 368, 369, 0, 356, 382, 377, 370, 360, 376, 353, - 357, 344, 349, 351, 340, 344, 0, 347, 336, 0, - 330, 340, 333, 343, 333, 371, 334, 330, 341, 334, - 325, 342, 0, 0, 329, 0, 350, 349, 360, 0, - - 361, 0, 0, 328, 0, 331, 326, 329, 310, 323, - 0, 322, 325, 338, 0, 314, 315, 317, 0, 320, - 319, 0, 0, 329, 328, 337, 324, 316, 301, 303, - 0, 0, 295, 296, 0, 299, 290, 0, 294, 0, - 293, 310, 309, 308, 322, 0, 301, 292, 299, 298, - 283, 0, 282, 0, 302, 301, 300, 306, 0, 0, - 0, 0, 287, 286, 313, 312, 311, 301, 276, 286, - 294, 293, 292, 285, 271, 0, 288, 287, 286, 283, - 259, 290, 263, 262, 259, 0, 246, 227, 180, 177, - 133, 121, 107, 106, 0, 0, 0, 83, 71, 0, - - 724, 79 + 0, 0, 737, 738, 738, 738, 715, 738, 729, 738, + 713, 64, 65, 63, 75, 77, 738, 738, 712, 711, + 710, 46, 48, 65, 66, 61, 76, 100, 45, 86, + 0, 671, 92, 46, 663, 665, 99, 110, 112, 133, + 663, 666, 674, 652, 738, 738, 738, 738, 738, 738, + 738, 712, 175, 738, 738, 738, 184, 192, 207, 738, + 738, 738, 0, 662, 666, 671, 664, 79, 657, 646, + 650, 657, 93, 659, 666, 111, 655, 654, 663, 648, + 651, 657, 657, 149, 657, 653, 643, 642, 638, 641, + 658, 675, 632, 649, 645, 637, 632, 650, 0, 0, + + 631, 32, 631, 630, 112, 657, 637, 623, 635, 621, + 613, 0, 35, 126, 100, 623, 130, 616, 623, 619, + 619, 171, 614, 613, 612, 616, 0, 0, 638, 613, + 608, 620, 622, 613, 610, 598, 738, 738, 223, 231, + 240, 246, 251, 601, 617, 188, 604, 603, 598, 603, + 604, 599, 596, 599, 597, 597, 590, 592, 76, 588, + 596, 598, 601, 579, 589, 590, 184, 587, 578, 0, + 579, 577, 583, 579, 588, 0, 588, 606, 604, 590, + 583, 581, 580, 570, 602, 563, 593, 575, 572, 573, + 609, 561, 575, 554, 571, 567, 570, 552, 556, 561, + + 554, 565, 560, 551, 556, 558, 547, 540, 558, 553, + 535, 548, 550, 545, 544, 533, 245, 545, 538, 568, + 540, 542, 545, 532, 531, 523, 223, 260, 278, 287, + 292, 299, 0, 524, 527, 531, 538, 0, 569, 536, + 527, 530, 530, 0, 0, 513, 0, 531, 514, 521, + 518, 524, 0, 508, 507, 0, 516, 509, 509, 516, + 512, 0, 500, 0, 515, 501, 0, 498, 516, 525, + 513, 0, 0, 0, 494, 518, 493, 496, 492, 489, + 0, 540, 0, 144, 495, 487, 487, 491, 493, 496, + 491, 480, 481, 480, 477, 478, 0, 482, 476, 473, + + 487, 0, 0, 473, 476, 475, 0, 486, 469, 480, + 481, 482, 477, 0, 0, 463, 456, 461, 471, 465, + 0, 465, 0, 470, 463, 0, 304, 309, 474, 454, + 458, 457, 0, 466, 455, 450, 457, 454, 461, 467, + 449, 456, 451, 454, 453, 454, 177, 439, 0, 451, + 450, 0, 0, 444, 243, 0, 441, 0, 459, 0, + 437, 431, 440, 0, 446, 437, 431, 0, 0, 439, + 440, 0, 429, 0, 446, 0, 434, 434, 436, 424, + 431, 0, 430, 429, 414, 413, 426, 419, 410, 425, + 408, 418, 0, 275, 0, 420, 0, 417, 0, 414, + + 0, 0, 453, 402, 415, 0, 406, 407, 398, 415, + 410, 391, 400, 0, 0, 411, 176, 402, 0, 401, + 404, 394, 248, 430, 386, 414, 0, 0, 0, 391, + 378, 0, 383, 400, 0, 385, 0, 381, 389, 0, + 0, 0, 0, 391, 0, 390, 394, 374, 388, 375, + 377, 381, 388, 0, 0, 369, 0, 373, 0, 379, + 391, 379, 381, 0, 0, 381, 362, 0, 362, 376, + 377, 0, 364, 390, 385, 378, 368, 384, 361, 365, + 352, 357, 359, 348, 352, 0, 355, 344, 345, 0, + 337, 349, 346, 339, 349, 339, 377, 340, 336, 341, + + 332, 349, 0, 0, 336, 0, 357, 356, 367, 0, + 368, 0, 0, 335, 0, 338, 333, 336, 317, 330, + 333, 0, 333, 327, 330, 343, 0, 319, 320, 322, + 325, 324, 0, 0, 334, 333, 342, 329, 321, 306, + 308, 0, 0, 300, 316, 0, 300, 0, 303, 294, + 0, 298, 0, 297, 314, 313, 312, 326, 0, 305, + 296, 303, 0, 302, 287, 0, 286, 0, 306, 305, + 304, 310, 0, 0, 0, 0, 291, 290, 317, 316, + 315, 305, 280, 290, 298, 297, 296, 289, 275, 0, + 292, 290, 289, 288, 264, 279, 268, 267, 264, 0, + + 251, 232, 215, 221, 182, 150, 105, 86, 0, 0, + 0, 72, 71, 0, 738, 79 } ; -static yyconst short int yy_def[603] = +static yyconst short int yy_def[617] = { 0, - 601, 1, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 601, 601, 601, 601, 601, 601, - 601, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 601, 601, 601, 601, 601, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 601, - 601, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - - 0, 601 + 615, 1, 615, 615, 615, 615, 615, 615, 615, 615, + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615, + 615, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 615, 615, 615, 615, 615, 615, 615, + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615, + 615, 615, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 615, 615, 615, 615, + 615, 615, 615, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 615, 615, 615, + 615, 615, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 615, 615, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + + 616, 616, 616, 616, 616, 616, 616, 616, 616, 616, + 616, 616, 616, 616, 0, 615 } ; -static yyconst short int yy_nxt[797] = +static yyconst short int yy_nxt[811] = { 0, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 16, 16, 16, 16, 17, 18, 19, @@ -552,89 +558,90 @@ static yyconst short int yy_nxt[797] = 31, 31, 31, 31, 31, 31, 31, 31, 43, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 44, 48, 52, 50, 53, 53, 53, 53, 53, - 63, 196, 54, 105, 49, 51, 55, 57, 69, 58, - 58, 58, 58, 58, 64, 56, 91, 600, 70, 94, - - 197, 92, 65, 59, 95, 106, 97, 71, 66, 67, - 68, 73, 93, 72, 96, 74, 78, 599, 75, 76, - 79, 82, 98, 83, 77, 86, 152, 59, 80, 99, - 84, 81, 598, 85, 153, 87, 88, 101, 89, 109, - 146, 102, 597, 201, 90, 103, 110, 111, 202, 112, - 104, 257, 113, 115, 258, 114, 596, 116, 147, 126, - 127, 157, 119, 120, 158, 159, 117, 160, 595, 121, - 122, 161, 118, 123, 124, 128, 204, 248, 125, 53, - 53, 53, 53, 53, 138, 138, 138, 138, 138, 188, - 249, 129, 205, 137, 358, 359, 189, 57, 139, 58, - - 58, 58, 58, 58, 130, 169, 594, 131, 198, 210, - 199, 170, 211, 59, 231, 171, 593, 137, 212, 140, - 140, 200, 139, 141, 141, 141, 141, 141, 224, 224, - 232, 233, 225, 225, 225, 225, 225, 59, 138, 138, - 138, 138, 138, 227, 227, 410, 411, 228, 228, 228, - 228, 228, 226, 141, 141, 141, 141, 141, 141, 141, - 141, 141, 141, 592, 303, 465, 314, 225, 225, 225, - 225, 225, 416, 466, 315, 417, 226, 304, 316, 305, - 317, 318, 591, 590, 319, 225, 225, 225, 225, 225, - 320, 320, 589, 588, 321, 321, 321, 321, 321, 228, - - 228, 228, 228, 228, 228, 228, 228, 228, 228, 321, - 321, 321, 321, 321, 321, 321, 321, 321, 321, 442, - 587, 459, 586, 585, 443, 460, 584, 583, 582, 581, - 580, 579, 578, 577, 576, 575, 574, 573, 572, 571, - 570, 569, 568, 567, 566, 565, 564, 563, 562, 561, - 560, 559, 558, 557, 556, 555, 554, 553, 552, 551, - 550, 549, 548, 547, 546, 545, 544, 543, 542, 541, - 540, 539, 538, 537, 536, 535, 534, 533, 532, 531, - 530, 529, 528, 527, 526, 525, 524, 523, 522, 521, - 520, 519, 518, 517, 516, 515, 514, 513, 512, 511, - - 510, 509, 508, 507, 506, 505, 504, 503, 502, 501, - 500, 499, 498, 497, 496, 495, 494, 493, 492, 491, - 490, 489, 488, 487, 486, 485, 484, 483, 482, 481, - 480, 479, 478, 477, 476, 475, 474, 473, 472, 471, - 470, 469, 468, 467, 464, 463, 462, 461, 458, 457, - 456, 455, 454, 453, 452, 451, 450, 449, 448, 447, - 446, 445, 444, 441, 440, 439, 438, 437, 436, 435, - 434, 433, 432, 431, 430, 429, 428, 427, 426, 425, - 424, 423, 422, 421, 420, 419, 418, 415, 414, 413, - 412, 409, 408, 407, 406, 405, 404, 403, 402, 401, - - 400, 399, 398, 397, 396, 395, 394, 393, 392, 391, - 390, 389, 388, 387, 386, 385, 384, 383, 382, 381, - 380, 379, 378, 377, 376, 375, 374, 373, 372, 371, - 370, 369, 368, 367, 366, 365, 364, 363, 362, 361, - 360, 357, 356, 355, 354, 353, 352, 351, 350, 349, - 348, 347, 346, 345, 344, 343, 342, 341, 340, 339, - 338, 337, 336, 335, 334, 333, 332, 331, 330, 329, - 328, 327, 326, 325, 324, 323, 322, 313, 312, 311, - 310, 309, 308, 307, 306, 302, 301, 300, 299, 298, - 297, 296, 295, 294, 293, 292, 291, 290, 289, 288, - - 287, 286, 285, 284, 283, 282, 281, 280, 279, 278, - 277, 276, 275, 274, 273, 272, 271, 270, 269, 268, - 267, 266, 265, 264, 263, 262, 261, 260, 259, 256, - 255, 254, 253, 252, 251, 250, 247, 246, 245, 244, - 243, 242, 241, 240, 239, 238, 237, 236, 235, 234, - 230, 229, 223, 222, 221, 220, 219, 218, 217, 216, - 215, 214, 213, 209, 208, 207, 206, 203, 195, 194, - 193, 192, 191, 190, 187, 186, 185, 184, 183, 182, - 181, 180, 179, 178, 177, 176, 175, 174, 173, 172, - 168, 167, 166, 165, 164, 163, 162, 156, 155, 154, - - 151, 150, 149, 148, 145, 144, 143, 142, 136, 135, - 134, 133, 132, 108, 107, 100, 62, 61, 60, 47, - 46, 45, 601, 3, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601 - + 63, 199, 54, 106, 49, 51, 55, 57, 69, 58, + 58, 58, 58, 58, 64, 56, 187, 614, 70, 95, + + 200, 188, 65, 59, 96, 107, 613, 71, 66, 67, + 68, 73, 612, 72, 97, 74, 77, 81, 75, 82, + 78, 98, 85, 250, 76, 148, 83, 59, 79, 84, + 86, 80, 87, 88, 91, 89, 251, 99, 102, 92, + 611, 90, 103, 149, 100, 110, 104, 127, 128, 154, + 93, 105, 111, 112, 204, 113, 116, 155, 114, 205, + 117, 115, 94, 129, 191, 120, 121, 158, 159, 118, + 160, 192, 122, 123, 161, 119, 124, 125, 207, 130, + 201, 126, 202, 365, 366, 610, 131, 53, 53, 53, + 53, 53, 132, 203, 208, 133, 140, 140, 140, 140, + + 140, 139, 57, 169, 58, 58, 58, 58, 58, 170, + 141, 259, 235, 171, 260, 142, 142, 609, 59, 143, + 143, 143, 143, 143, 213, 139, 468, 214, 236, 237, + 469, 228, 228, 215, 141, 229, 229, 229, 229, 229, + 417, 418, 59, 140, 140, 140, 140, 140, 231, 231, + 608, 607, 232, 232, 232, 232, 232, 230, 143, 143, + 143, 143, 143, 143, 143, 143, 143, 143, 606, 308, + 474, 321, 229, 229, 229, 229, 229, 423, 475, 322, + 424, 230, 309, 323, 310, 324, 325, 605, 604, 326, + 229, 229, 229, 229, 229, 327, 327, 603, 602, 328, + + 328, 328, 328, 328, 232, 232, 232, 232, 232, 601, + 311, 232, 232, 232, 232, 232, 328, 328, 328, 328, + 328, 328, 328, 328, 328, 328, 452, 600, 599, 598, + 597, 453, 596, 595, 594, 593, 592, 591, 590, 589, + 588, 587, 586, 585, 584, 583, 582, 581, 580, 579, + 578, 577, 576, 575, 574, 573, 572, 571, 570, 569, + 568, 567, 566, 565, 564, 563, 562, 561, 560, 559, + 558, 557, 556, 555, 554, 553, 552, 551, 550, 549, + 548, 547, 546, 545, 544, 543, 542, 541, 540, 539, + 538, 537, 536, 535, 534, 533, 532, 531, 530, 529, + + 528, 527, 526, 525, 524, 523, 522, 521, 520, 519, + 518, 517, 516, 515, 514, 513, 512, 511, 510, 509, + 508, 507, 506, 505, 504, 503, 502, 501, 500, 499, + 498, 497, 496, 495, 494, 493, 492, 491, 490, 489, + 488, 487, 486, 485, 484, 483, 482, 481, 480, 479, + 478, 477, 476, 473, 472, 471, 470, 467, 466, 465, + 464, 463, 462, 461, 460, 459, 458, 457, 456, 455, + 454, 451, 450, 449, 448, 447, 446, 445, 444, 443, + 442, 441, 440, 439, 438, 437, 436, 435, 434, 433, + 432, 431, 430, 429, 428, 427, 426, 425, 422, 421, + + 420, 419, 416, 415, 414, 413, 412, 411, 410, 409, + 408, 407, 406, 405, 404, 403, 402, 401, 400, 399, + 398, 397, 396, 395, 394, 393, 392, 391, 390, 389, + 388, 387, 386, 385, 384, 383, 382, 381, 380, 379, + 378, 377, 376, 375, 374, 373, 372, 371, 370, 369, + 368, 367, 364, 363, 362, 361, 360, 359, 358, 357, + 356, 355, 354, 353, 352, 351, 350, 349, 348, 347, + 346, 345, 344, 343, 342, 341, 340, 339, 338, 337, + 336, 335, 334, 333, 332, 331, 330, 329, 320, 319, + 318, 317, 316, 315, 314, 313, 312, 307, 306, 305, + + 304, 303, 302, 301, 300, 299, 298, 297, 296, 295, + 294, 293, 292, 291, 290, 289, 288, 287, 286, 285, + 284, 283, 282, 281, 280, 279, 278, 277, 276, 275, + 274, 273, 272, 271, 270, 269, 268, 267, 266, 265, + 264, 263, 262, 261, 258, 257, 256, 255, 254, 253, + 252, 249, 248, 247, 246, 245, 244, 243, 242, 241, + 240, 239, 238, 234, 233, 227, 226, 225, 224, 223, + 222, 221, 220, 219, 218, 217, 216, 212, 211, 210, + 209, 206, 198, 197, 196, 195, 194, 193, 190, 189, + 186, 185, 184, 183, 182, 181, 180, 179, 178, 177, + + 176, 175, 174, 173, 172, 168, 167, 166, 165, 164, + 163, 162, 157, 156, 153, 152, 151, 150, 147, 146, + 145, 144, 138, 137, 136, 135, 134, 109, 108, 101, + 62, 61, 60, 47, 46, 45, 615, 3, 615, 615, + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615, + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615, + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615, + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615, + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615, + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615, + + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615 } ; -static yyconst short int yy_chk[797] = +static yyconst short int yy_chk[811] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -644,86 +651,87 @@ static yyconst short int yy_chk[797] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 12, 14, 13, 14, 14, 14, 14, 14, - 602, 112, 15, 34, 12, 13, 15, 16, 23, 16, - 16, 16, 16, 16, 22, 15, 28, 599, 23, 29, - - 112, 28, 22, 16, 29, 34, 30, 23, 22, 22, - 22, 24, 28, 23, 29, 24, 25, 598, 24, 24, - 25, 26, 30, 26, 24, 27, 73, 16, 25, 30, - 26, 25, 594, 26, 73, 27, 27, 33, 27, 37, - 68, 33, 593, 114, 27, 33, 37, 37, 114, 37, - 33, 167, 37, 38, 167, 37, 592, 38, 68, 40, - 40, 77, 39, 39, 77, 77, 38, 77, 591, 39, - 39, 77, 38, 39, 39, 40, 116, 159, 39, 53, - 53, 53, 53, 53, 57, 57, 57, 57, 57, 104, - 159, 40, 116, 53, 279, 279, 104, 58, 57, 58, - - 58, 58, 58, 58, 40, 85, 590, 40, 113, 121, - 113, 85, 121, 58, 144, 85, 589, 53, 121, 59, - 59, 113, 57, 59, 59, 59, 59, 59, 137, 137, - 144, 144, 137, 137, 137, 137, 137, 58, 138, 138, - 138, 138, 138, 139, 139, 342, 342, 139, 139, 139, - 139, 139, 138, 140, 140, 140, 140, 140, 141, 141, - 141, 141, 141, 588, 214, 416, 223, 224, 224, 224, - 224, 224, 349, 416, 223, 349, 138, 214, 223, 214, - 223, 223, 587, 585, 223, 225, 225, 225, 225, 225, - 226, 226, 584, 583, 226, 226, 226, 226, 226, 227, - - 227, 227, 227, 227, 228, 228, 228, 228, 228, 320, - 320, 320, 320, 320, 321, 321, 321, 321, 321, 385, - 582, 410, 581, 580, 385, 410, 579, 578, 577, 575, - 574, 573, 572, 571, 570, 569, 568, 567, 566, 565, - 564, 563, 558, 557, 556, 555, 553, 551, 550, 549, - 548, 547, 545, 544, 543, 542, 541, 539, 537, 536, - 534, 533, 530, 529, 528, 527, 526, 525, 524, 521, - 520, 518, 517, 516, 514, 513, 512, 510, 509, 508, - 507, 506, 504, 501, 499, 498, 497, 495, 492, 491, - 490, 489, 488, 487, 486, 485, 484, 483, 482, 481, - - 479, 478, 476, 475, 474, 473, 472, 471, 470, 469, - 468, 467, 466, 465, 464, 462, 461, 460, 458, 457, - 454, 453, 452, 451, 450, 448, 446, 443, 442, 441, - 440, 439, 438, 436, 431, 430, 428, 426, 425, 423, - 422, 419, 418, 417, 415, 414, 413, 411, 409, 406, - 405, 404, 403, 402, 400, 399, 398, 396, 395, 394, - 391, 389, 387, 383, 382, 381, 380, 379, 378, 377, - 376, 374, 373, 372, 371, 370, 368, 366, 364, 363, - 360, 359, 358, 356, 355, 353, 351, 348, 346, 345, - 343, 341, 340, 339, 338, 337, 336, 335, 334, 333, - - 332, 331, 330, 329, 328, 327, 325, 324, 323, 322, - 318, 317, 315, 313, 312, 311, 310, 307, 306, 305, - 304, 303, 301, 300, 299, 296, 295, 294, 293, 291, - 290, 289, 288, 287, 286, 285, 284, 283, 282, 281, - 280, 277, 275, 274, 273, 272, 271, 268, 267, 266, - 265, 263, 261, 259, 258, 257, 256, 255, 253, 252, - 250, 249, 248, 247, 246, 245, 244, 242, 239, 238, - 237, 236, 235, 233, 232, 231, 230, 222, 221, 220, - 219, 218, 217, 216, 215, 213, 212, 211, 210, 209, - 208, 207, 206, 205, 204, 203, 202, 201, 200, 199, - - 198, 197, 196, 195, 194, 193, 192, 191, 190, 189, - 188, 187, 186, 185, 184, 183, 182, 181, 180, 179, - 178, 177, 176, 174, 173, 172, 171, 169, 168, 166, - 165, 164, 163, 162, 161, 160, 158, 157, 156, 155, - 154, 153, 152, 151, 150, 149, 148, 147, 146, 145, - 143, 142, 134, 133, 132, 131, 130, 129, 128, 125, - 124, 123, 122, 120, 119, 118, 117, 115, 110, 109, - 108, 107, 106, 105, 103, 102, 101, 100, 97, 96, - 95, 94, 93, 92, 91, 90, 89, 88, 87, 86, - 84, 83, 82, 81, 80, 79, 78, 76, 75, 74, - - 72, 71, 70, 69, 67, 66, 65, 64, 52, 44, - 43, 42, 41, 36, 35, 32, 21, 20, 19, 11, - 9, 7, 3, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601, 601, 601, 601, 601, - 601, 601, 601, 601, 601, 601 - + 616, 113, 15, 34, 12, 13, 15, 16, 23, 16, + 16, 16, 16, 16, 22, 15, 102, 613, 23, 29, + + 113, 102, 22, 16, 29, 34, 612, 23, 22, 22, + 22, 24, 608, 23, 29, 24, 25, 26, 24, 26, + 25, 30, 27, 159, 24, 68, 26, 16, 25, 26, + 27, 25, 27, 27, 28, 27, 159, 30, 33, 28, + 607, 27, 33, 68, 30, 37, 33, 40, 40, 73, + 28, 33, 37, 37, 115, 37, 38, 73, 37, 115, + 38, 37, 28, 40, 105, 39, 39, 76, 76, 38, + 76, 105, 39, 39, 76, 38, 39, 39, 117, 40, + 114, 39, 114, 284, 284, 606, 40, 53, 53, 53, + 53, 53, 40, 114, 117, 40, 57, 57, 57, 57, + + 57, 53, 58, 84, 58, 58, 58, 58, 58, 84, + 57, 167, 146, 84, 167, 59, 59, 605, 58, 59, + 59, 59, 59, 59, 122, 53, 417, 122, 146, 146, + 417, 139, 139, 122, 57, 139, 139, 139, 139, 139, + 347, 347, 58, 140, 140, 140, 140, 140, 141, 141, + 604, 603, 141, 141, 141, 141, 141, 140, 142, 142, + 142, 142, 142, 143, 143, 143, 143, 143, 602, 217, + 423, 227, 228, 228, 228, 228, 228, 355, 423, 227, + 355, 140, 217, 227, 217, 227, 227, 601, 599, 227, + 229, 229, 229, 229, 229, 230, 230, 598, 597, 230, + + 230, 230, 230, 230, 231, 231, 231, 231, 231, 596, + 217, 232, 232, 232, 232, 232, 327, 327, 327, 327, + 327, 328, 328, 328, 328, 328, 394, 595, 594, 593, + 592, 394, 591, 589, 588, 587, 586, 585, 584, 583, + 582, 581, 580, 579, 578, 577, 572, 571, 570, 569, + 567, 565, 564, 562, 561, 560, 558, 557, 556, 555, + 554, 552, 550, 549, 547, 545, 544, 541, 540, 539, + 538, 537, 536, 535, 532, 531, 530, 529, 528, 526, + 525, 524, 523, 521, 520, 519, 518, 517, 516, 514, + 511, 509, 508, 507, 505, 502, 501, 500, 499, 498, + + 497, 496, 495, 494, 493, 492, 491, 489, 488, 487, + 485, 484, 483, 482, 481, 480, 479, 478, 477, 476, + 475, 474, 473, 471, 470, 469, 467, 466, 463, 462, + 461, 460, 458, 456, 453, 452, 451, 450, 449, 448, + 447, 446, 444, 439, 438, 436, 434, 433, 431, 430, + 426, 425, 424, 422, 421, 420, 418, 416, 413, 412, + 411, 410, 409, 408, 407, 405, 404, 403, 400, 398, + 396, 392, 391, 390, 389, 388, 387, 386, 385, 384, + 383, 381, 380, 379, 378, 377, 375, 373, 371, 370, + 367, 366, 365, 363, 362, 361, 359, 357, 354, 351, + + 350, 348, 346, 345, 344, 343, 342, 341, 340, 339, + 338, 337, 336, 335, 334, 332, 331, 330, 329, 325, + 324, 322, 320, 319, 318, 317, 316, 313, 312, 311, + 310, 309, 308, 306, 305, 304, 301, 300, 299, 298, + 296, 295, 294, 293, 292, 291, 290, 289, 288, 287, + 286, 285, 282, 280, 279, 278, 277, 276, 275, 271, + 270, 269, 268, 266, 265, 263, 261, 260, 259, 258, + 257, 255, 254, 252, 251, 250, 249, 248, 246, 243, + 242, 241, 240, 239, 237, 236, 235, 234, 226, 225, + 224, 223, 222, 221, 220, 219, 218, 216, 215, 214, + + 213, 212, 211, 210, 209, 208, 207, 206, 205, 204, + 203, 202, 201, 200, 199, 198, 197, 196, 195, 194, + 193, 192, 191, 190, 189, 188, 187, 186, 185, 184, + 183, 182, 181, 180, 179, 178, 177, 175, 174, 173, + 172, 171, 169, 168, 166, 165, 164, 163, 162, 161, + 160, 158, 157, 156, 155, 154, 153, 152, 151, 150, + 149, 148, 147, 145, 144, 136, 135, 134, 133, 132, + 131, 130, 129, 126, 125, 124, 123, 121, 120, 119, + 118, 116, 111, 110, 109, 108, 107, 106, 104, 103, + 101, 98, 97, 96, 95, 94, 93, 92, 91, 90, + + 89, 88, 87, 86, 85, 83, 82, 81, 80, 79, + 78, 77, 75, 74, 72, 71, 70, 69, 67, 66, + 65, 64, 52, 44, 43, 42, 41, 36, 35, 32, + 21, 20, 19, 11, 9, 7, 3, 615, 615, 615, + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615, + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615, + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615, + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615, + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615, + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615, + + 615, 615, 615, 615, 615, 615, 615, 615, 615, 615 } ; static yy_state_type yy_last_accepting_state; @@ -740,7 +748,7 @@ char *yytext; #line 1 "Gmsh.l" #define INITIAL 0 #line 2 "Gmsh.l" -// $Id: Gmsh.yy.cpp,v 1.314 2007-04-12 08:58:07 remacle Exp $ +// $Id: Gmsh.yy.cpp,v 1.315 2007-04-16 09:08:32 remacle Exp $ // // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle // @@ -801,7 +809,7 @@ void skipline(void); && ferror( yyin ) ) \ Msg(FATAL, "Input in flex scanner failed"); -#line 805 "Gmsh.yy.cpp" +#line 813 "Gmsh.yy.cpp" /* Macros after this point can all be overridden by user definitions in * section 1. @@ -901,9 +909,20 @@ YY_MALLOC_DECL YY_FATAL_ERROR( "input in flex scanner failed" ); \ result = n; \ } \ - else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \ - && ferror( yyin ) ) \ - YY_FATAL_ERROR( "input in flex scanner failed" ); + else \ + { \ + errno=0; \ + while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \ + { \ + if( errno != EINTR) \ + { \ + YY_FATAL_ERROR( "input in flex scanner failed" ); \ + break; \ + } \ + errno=0; \ + clearerr(yyin); \ + } \ + } #endif /* No semi-colon after return; correct usage is to write "yyterminate();" - @@ -955,7 +974,7 @@ YY_DECL #line 79 "Gmsh.l" -#line 959 "Gmsh.yy.cpp" +#line 978 "Gmsh.yy.cpp" if ( yy_init ) { @@ -1006,13 +1025,13 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 602 ) + if ( yy_current_state >= 616 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_base[yy_current_state] != 724 ); + while ( yy_base[yy_current_state] != 738 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -1286,137 +1305,137 @@ return tCharacteristic; case 50: YY_RULE_SETUP #line 133 "Gmsh.l" -return tCircle; +return tComplex; YY_BREAK case 51: YY_RULE_SETUP #line 134 "Gmsh.l" -return tCoherence; +return tColor; YY_BREAK case 52: YY_RULE_SETUP #line 135 "Gmsh.l" -return tComplex; +return tColorTable; YY_BREAK case 53: YY_RULE_SETUP #line 136 "Gmsh.l" -return tColor; +return tCoordinates; YY_BREAK case 54: YY_RULE_SETUP #line 137 "Gmsh.l" -return tColorTable; +return tSpline; YY_BREAK case 55: YY_RULE_SETUP #line 138 "Gmsh.l" -return tCoordinates; +return tCall; YY_BREAK case 56: YY_RULE_SETUP -#line 139 "Gmsh.l" -return tSpline; +#line 140 "Gmsh.l" +return tDelete; YY_BREAK case 57: YY_RULE_SETUP -#line 140 "Gmsh.l" -return tCall; +#line 141 "Gmsh.l" +return tDilate; YY_BREAK case 58: YY_RULE_SETUP #line 142 "Gmsh.l" -return tDelete; +return tDuplicata; YY_BREAK case 59: YY_RULE_SETUP #line 143 "Gmsh.l" -return tDilate; +return tDraw; YY_BREAK case 60: YY_RULE_SETUP -#line 144 "Gmsh.l" -return tDuplicata; +#line 145 "Gmsh.l" +return tExp; YY_BREAK case 61: YY_RULE_SETUP -#line 145 "Gmsh.l" -return tDraw; +#line 146 "Gmsh.l" +return tEllipse; YY_BREAK case 62: YY_RULE_SETUP #line 147 "Gmsh.l" -return tExp; +return tEllipse; YY_BREAK case 63: YY_RULE_SETUP #line 148 "Gmsh.l" -return tEllipse; +return tExtrude; YY_BREAK case 64: YY_RULE_SETUP #line 149 "Gmsh.l" -return tEllipse; +return tElliptic; YY_BREAK case 65: YY_RULE_SETUP #line 150 "Gmsh.l" -return tExtrude; +return tEndFor; YY_BREAK case 66: YY_RULE_SETUP #line 151 "Gmsh.l" -return tElliptic; +return tEndIf; YY_BREAK case 67: YY_RULE_SETUP #line 152 "Gmsh.l" -return tEndFor; +return tEuclidian; YY_BREAK case 68: YY_RULE_SETUP #line 153 "Gmsh.l" -return tEndIf; +return tExit; YY_BREAK case 69: YY_RULE_SETUP -#line 154 "Gmsh.l" -return tEuclidian; +#line 155 "Gmsh.l" +return tFabs; YY_BREAK case 70: YY_RULE_SETUP -#line 155 "Gmsh.l" -return tExit; +#line 156 "Gmsh.l" +return tField; YY_BREAK case 71: YY_RULE_SETUP #line 157 "Gmsh.l" -return tFabs; +return tFloor; YY_BREAK case 72: YY_RULE_SETUP #line 158 "Gmsh.l" -return tFloor; +return tFmod; YY_BREAK case 73: YY_RULE_SETUP #line 159 "Gmsh.l" -return tFmod; +return tFor; YY_BREAK case 74: YY_RULE_SETUP #line 160 "Gmsh.l" -return tFor; +return tFunction; YY_BREAK case 75: YY_RULE_SETUP -#line 161 "Gmsh.l" -return tFunction; +#line 162 "Gmsh.l" +return tGetValue; YY_BREAK case 76: YY_RULE_SETUP #line 163 "Gmsh.l" -return tGetValue; +return tGrad; YY_BREAK case 77: YY_RULE_SETUP @@ -1466,82 +1485,82 @@ return tKnots; case 86: YY_RULE_SETUP #line 177 "Gmsh.l" -return tLength; +return tLatLon; YY_BREAK case 87: YY_RULE_SETUP #line 178 "Gmsh.l" -return tLine; +return tLength; YY_BREAK case 88: YY_RULE_SETUP #line 179 "Gmsh.l" -return tLoop; +return tLine; YY_BREAK case 89: YY_RULE_SETUP #line 180 "Gmsh.l" -return tLog; +return tLoop; YY_BREAK case 90: YY_RULE_SETUP #line 181 "Gmsh.l" -return tLog10; +return tLog; YY_BREAK case 91: YY_RULE_SETUP #line 182 "Gmsh.l" -return tLayers; +return tLog10; YY_BREAK case 92: YY_RULE_SETUP -#line 184 "Gmsh.l" -return tModulo; +#line 183 "Gmsh.l" +return tLayers; YY_BREAK case 93: YY_RULE_SETUP #line 185 "Gmsh.l" -return tMPI_Rank; +return tModulo; YY_BREAK case 94: YY_RULE_SETUP #line 186 "Gmsh.l" -return tMPI_Size; +return tMPI_Rank; YY_BREAK case 95: YY_RULE_SETUP -#line 188 "Gmsh.l" -return tNurbs; +#line 187 "Gmsh.l" +return tMPI_Size; YY_BREAK case 96: YY_RULE_SETUP -#line 190 "Gmsh.l" -return tOrder; +#line 189 "Gmsh.l" +return tNurbs; YY_BREAK case 97: YY_RULE_SETUP -#line 192 "Gmsh.l" -return tPhysical; +#line 191 "Gmsh.l" +return tOrder; YY_BREAK case 98: YY_RULE_SETUP #line 193 "Gmsh.l" -return tPi; +return tPhysical; YY_BREAK case 99: YY_RULE_SETUP #line 194 "Gmsh.l" -return tPlane; +return tPi; YY_BREAK case 100: YY_RULE_SETUP #line 195 "Gmsh.l" -return tPoint; +return tPlane; YY_BREAK case 101: YY_RULE_SETUP #line 196 "Gmsh.l" -return tProgression; +return tPoint; YY_BREAK case 102: YY_RULE_SETUP @@ -1551,195 +1570,210 @@ return tProgression; case 103: YY_RULE_SETUP #line 198 "Gmsh.l" -return tParametric; +return tProgression; YY_BREAK case 104: YY_RULE_SETUP #line 199 "Gmsh.l" -return tPolarSphere; +return tParametric; YY_BREAK case 105: YY_RULE_SETUP #line 200 "Gmsh.l" -return tPrintf; +return tPolarSphere; YY_BREAK case 106: YY_RULE_SETUP #line 201 "Gmsh.l" -return tPlugin; +return tPrintf; YY_BREAK case 107: YY_RULE_SETUP -#line 203 "Gmsh.l" -return tRecombine; +#line 202 "Gmsh.l" +return tPlugin; YY_BREAK case 108: YY_RULE_SETUP #line 204 "Gmsh.l" -return tRotate; +return tRecombine; YY_BREAK case 109: YY_RULE_SETUP #line 205 "Gmsh.l" -return tRuled; +return tRotate; YY_BREAK case 110: YY_RULE_SETUP #line 206 "Gmsh.l" -return tRand; +return tRuled; YY_BREAK case 111: YY_RULE_SETUP #line 207 "Gmsh.l" -return tReturn; +return tRand; YY_BREAK case 112: YY_RULE_SETUP -#line 209 "Gmsh.l" -return tSqrt; +#line 208 "Gmsh.l" +return tReturn; YY_BREAK case 113: YY_RULE_SETUP #line 210 "Gmsh.l" -return tSin; +return tSqrt; YY_BREAK case 114: YY_RULE_SETUP #line 211 "Gmsh.l" -return tSinh; +return tSin; YY_BREAK case 115: YY_RULE_SETUP #line 212 "Gmsh.l" -return tSphere; +return tSinh; YY_BREAK case 116: YY_RULE_SETUP #line 213 "Gmsh.l" -return tSpline; +return tSphere; YY_BREAK case 117: YY_RULE_SETUP #line 214 "Gmsh.l" -return tSurface; +return tSpline; YY_BREAK case 118: YY_RULE_SETUP #line 215 "Gmsh.l" -return tSymmetry; +return tSurface; YY_BREAK case 119: YY_RULE_SETUP #line 216 "Gmsh.l" -return tSprintf; +return tSymmetry; YY_BREAK case 120: YY_RULE_SETUP #line 217 "Gmsh.l" -return tStrCat; +return tSprintf; YY_BREAK case 121: YY_RULE_SETUP #line 218 "Gmsh.l" -return tStrPrefix; +return tStrCat; YY_BREAK case 122: YY_RULE_SETUP #line 219 "Gmsh.l" -return tStrRelative; +return tStrPrefix; YY_BREAK case 123: YY_RULE_SETUP #line 220 "Gmsh.l" -return tShow; +return tStrRelative; YY_BREAK case 124: YY_RULE_SETUP -#line 222 "Gmsh.l" -return tTransfinite; +#line 221 "Gmsh.l" +return tStructured; YY_BREAK case 125: YY_RULE_SETUP -#line 223 "Gmsh.l" -return tTranslate; +#line 222 "Gmsh.l" +return tShow; YY_BREAK case 126: YY_RULE_SETUP #line 224 "Gmsh.l" -return tTanh; +return tTransfinite; YY_BREAK case 127: YY_RULE_SETUP #line 225 "Gmsh.l" -return tTan; +return tTranslate; YY_BREAK case 128: YY_RULE_SETUP #line 226 "Gmsh.l" -return tToday; +return tTanh; YY_BREAK case 129: YY_RULE_SETUP -#line 228 "Gmsh.l" -return tUsing; +#line 227 "Gmsh.l" +return tTan; YY_BREAK case 130: YY_RULE_SETUP -#line 230 "Gmsh.l" -return tVolume; +#line 228 "Gmsh.l" +return tThreshold; YY_BREAK case 131: YY_RULE_SETUP -#line 232 "Gmsh.l" -return tText2D; +#line 229 "Gmsh.l" +return tToday; YY_BREAK case 132: YY_RULE_SETUP -#line 233 "Gmsh.l" -return tText3D; +#line 231 "Gmsh.l" +return tUsing; YY_BREAK case 133: YY_RULE_SETUP -#line 234 "Gmsh.l" -return tInterpolationScheme; +#line 233 "Gmsh.l" +return tVolume; YY_BREAK case 134: YY_RULE_SETUP #line 235 "Gmsh.l" -return tTime; +return tText2D; YY_BREAK case 135: YY_RULE_SETUP #line 236 "Gmsh.l" -return tGrain; +return tText3D; YY_BREAK case 136: -#line 239 "Gmsh.l" +YY_RULE_SETUP +#line 237 "Gmsh.l" +return tInterpolationScheme; + YY_BREAK case 137: -#line 240 "Gmsh.l" +YY_RULE_SETUP +#line 238 "Gmsh.l" +return tTime; + YY_BREAK case 138: -#line 241 "Gmsh.l" +YY_RULE_SETUP +#line 239 "Gmsh.l" +return tGrain; + YY_BREAK case 139: +#line 242 "Gmsh.l" +case 140: +#line 243 "Gmsh.l" +case 141: +#line 244 "Gmsh.l" +case 142: YY_RULE_SETUP -#line 241 "Gmsh.l" +#line 244 "Gmsh.l" {yylval.d = atof((char *)yytext); return tDOUBLE;} YY_BREAK -case 140: +case 143: YY_RULE_SETUP -#line 243 "Gmsh.l" +#line 246 "Gmsh.l" {yylval.c = strsave((char*)yytext); return tSTRING;} YY_BREAK -case 141: +case 144: YY_RULE_SETUP -#line 245 "Gmsh.l" +#line 248 "Gmsh.l" return yytext[0]; YY_BREAK -case 142: +case 145: YY_RULE_SETUP -#line 247 "Gmsh.l" +#line 250 "Gmsh.l" ECHO; YY_BREAK -#line 1743 "Gmsh.yy.cpp" +#line 1777 "Gmsh.yy.cpp" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -2031,7 +2065,7 @@ static yy_state_type yy_get_previous_state() while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 602 ) + if ( yy_current_state >= 616 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2066,11 +2100,11 @@ yy_state_type yy_current_state; while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 602 ) + if ( yy_current_state >= 616 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 601); + yy_is_jam = (yy_current_state == 615); return yy_is_jam ? 0 : yy_current_state; } @@ -2303,11 +2337,15 @@ YY_BUFFER_STATE b; } +#ifndef _WIN32 +#include <unistd.h> +#else #ifndef YY_ALWAYS_INTERACTIVE #ifndef YY_NEVER_INTERACTIVE extern int isatty YY_PROTO(( int )); #endif #endif +#endif #ifdef YY_USE_PROTOS void yy_init_buffer( YY_BUFFER_STATE b, FILE *file ) @@ -2625,7 +2663,7 @@ int main() return 0; } #endif -#line 247 "Gmsh.l" +#line 250 "Gmsh.l" #undef yywrap diff --git a/Parser/Makefile b/Parser/Makefile index 15e421393b2403f1d828dbfacaa514e38fbdea28..43b11f6229762c769cf07775d2cfe9783c286858 100644 --- a/Parser/Makefile +++ b/Parser/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.117 2007-03-18 12:05:16 geuzaine Exp $ +# $Id: Makefile,v 1.118 2007-04-16 09:08:33 remacle Exp $ # # Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle # @@ -80,60 +80,54 @@ Gmsh.tab.o: Gmsh.tab.cpp ../Plugin/PluginManager.h ../Plugin/Plugin.h \ ../Common/Options.h ../Common/Message.h ../Common/Views.h \ ../Common/ColorTable.h ../DataStr/List.h ../Common/VertexArray.h \ ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ - ../Common/GmshMatrix.h ../Parallel/ParUtil.h ../Common/Gmsh.h \ - ../Common/Message.h ../DataStr/Malloc.h ../DataStr/Tree.h \ - ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ - ../Common/Context.h ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h \ - ../Geo/Range.h ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h \ - ../Geo/SPoint3.h ../Common/GmshDefines.h ../Geo/MVertex.h \ - ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h \ - ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h ../Geo/SPoint3.h \ - ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/MVertex.h \ - ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Hash.h \ - ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h \ - ../Geo/GEntity.h ../Geo/MElement.h ../Geo/ExtrudeParams.h \ - ../Geo/SBoundingBox3d.h ../Geo/Geo.h ../Geo/gmshSurface.h ../Geo/Pair.h \ - ../Geo/Range.h ../Geo/SPoint2.h ../Geo/SPoint3.h ../Geo/SVector3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint2.h ../Geo/ExtrudeParams.h \ + ../Common/GmshMatrix.h ../Common/GmshMatrix.h ../Parallel/ParUtil.h \ + ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \ + ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h \ + ../DataStr/Tree.h ../Numeric/Numeric.h ../Common/Context.h \ + ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/Range.h \ + ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h \ + ../Geo/MVertex.h ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/GEdge.h \ + ../Geo/SVector3.h ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h \ + ../Geo/MFace.h ../Numeric/Numeric.h ../Common/Context.h \ + ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Geo/GFace.h \ + ../Geo/GEdgeLoop.h ../Geo/Pair.h ../Geo/GRegion.h ../Geo/Geo.h \ + ../Geo/gmshSurface.h ../DataStr/List.h ../DataStr/Tree.h \ ../Geo/GeoInterpolation.h ../Geo/Geo.h ../Mesh/Generator.h \ - ../Graphics/Draw.h ../Common/Colors.h ../Common/Options.h Parser.h \ - OpenFile.h ../Common/CommandLine.h FunctionManager.h ../Common/OS.h \ - CreateFile.h ../Mesh/Attractors.h + ../Graphics/Draw.h ../DataStr/List.h ../Common/Views.h \ + ../Common/Views.h ../Common/Options.h ../Common/Colors.h \ + ../Common/Options.h Parser.h ../DataStr/List.h ../DataStr/Tree.h \ + OpenFile.h ../Common/CommandLine.h FunctionManager.h \ + ../Common/ColorTable.h ../Common/OS.h CreateFile.h ../Geo/gmshSurface.h \ + ../Mesh/Field.h ../Common/Views.h ../Geo/Geo.h ../Geo/GEdge.h \ + ../Common/OctreePost.h ../Common/Octree.h ../Common/OctreeInternals.h Gmsh.yy.o: Gmsh.yy.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ ../Numeric/Numeric.h ../Geo/Geo.h ../Common/GmshDefines.h \ ../Geo/gmshSurface.h ../Geo/Pair.h ../Geo/Range.h ../Geo/SPoint2.h \ - ../Geo/SPoint3.h ../Geo/SVector3.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Geo/SPoint2.h \ - ../Geo/ExtrudeParams.h ../Common/SmoothData.h Gmsh.tab.hpp + ../Geo/SPoint3.h ../Geo/SVector3.h ../Geo/SBoundingBox3d.h \ + ../DataStr/List.h ../DataStr/Tree.h ../Geo/ExtrudeParams.h \ + ../Common/SmoothData.h ../Numeric/Numeric.h Gmsh.tab.hpp OpenFile.o: OpenFile.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ ../Geo/Geo.h ../Common/GmshDefines.h ../Geo/gmshSurface.h ../Geo/Pair.h \ ../Geo/Range.h ../Geo/SPoint2.h ../Geo/SPoint3.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../Geo/SPoint2.h ../Geo/ExtrudeParams.h ../Common/SmoothData.h \ - ../Numeric/Numeric.h ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h \ - ../Geo/Range.h ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/MVertex.h \ - ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Hash.h \ - ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Context.h \ - ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h \ - ../Geo/GEntity.h ../Geo/MElement.h ../Geo/ExtrudeParams.h \ - ../Geo/SBoundingBox3d.h Parser.h OpenFile.h ../Common/CommandLine.h \ - ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ - ../Common/SmoothData.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Graphics/ReadImg.h ../Common/OS.h ../Mesh/HighOrder.h \ - ../Common/GmshUI.h ../Graphics/Draw.h ../Graphics/SelectBuffer.h \ - ../Fltk/GUI.h ../Fltk/Opengl_Window.h ../Fltk/Colorbar_Window.h \ + ../Geo/SBoundingBox3d.h ../DataStr/List.h ../DataStr/Tree.h \ + ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h \ + ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/MEdge.h \ + ../Common/Hash.h ../Geo/MFace.h ../Numeric/Numeric.h \ + ../Common/Context.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/GRegion.h \ + ../Numeric/Numeric.h ../Common/Context.h Parser.h ../DataStr/List.h \ + ../DataStr/Tree.h OpenFile.h ../Common/CommandLine.h ../Common/Views.h \ + ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Graphics/ReadImg.h \ + ../Common/OS.h ../Mesh/HighOrder.h ../Geo/GModel.h ../Common/GmshUI.h \ + ../Graphics/Draw.h ../DataStr/List.h ../Common/Views.h \ + ../Graphics/SelectBuffer.h ../Geo/GVertex.h ../Geo/GEdge.h \ + ../Geo/GFace.h ../Geo/GRegion.h ../Fltk/GUI.h ../Fltk/Opengl_Window.h \ + ../Fltk/Colorbar_Window.h ../Common/GmshUI.h ../Common/ColorTable.h \ ../Fltk/Popup_Button.h ../Fltk/SpherePosition_Widget.h CreateFile.o: CreateFile.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ @@ -141,25 +135,16 @@ CreateFile.o: CreateFile.cpp ../Common/Gmsh.h ../Common/Message.h \ OpenFile.h ../Common/Context.h ../Common/Options.h ../Geo/Geo.h \ ../Common/GmshDefines.h ../Geo/gmshSurface.h ../Geo/Pair.h \ ../Geo/Range.h ../Geo/SPoint2.h ../Geo/SPoint3.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../Geo/SPoint2.h ../Geo/ExtrudeParams.h ../Common/SmoothData.h \ - ../Numeric/Numeric.h ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h \ - ../Geo/Range.h ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h \ - ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h ../Geo/SPoint2.h \ - ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/MVertex.h \ - ../Geo/MEdge.h ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Hash.h \ - ../Geo/MFace.h ../Geo/MVertex.h ../Geo/SVector3.h \ - ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h ../Geo/GEntity.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/SPoint2.h \ - ../Geo/SVector3.h ../Geo/Pair.h ../Geo/ExtrudeParams.h ../Geo/GRegion.h \ - ../Geo/GEntity.h ../Geo/MElement.h ../Geo/ExtrudeParams.h \ - ../Geo/SBoundingBox3d.h ../Common/GmshUI.h ../Graphics/gl2ps.h \ - ../Graphics/gl2gif.h ../Graphics/PixelBuffer.h ../Graphics/Draw.h \ - ../Common/Views.h ../Common/ColorTable.h ../Common/VertexArray.h \ - ../Common/SmoothData.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Graphics/gl2jpeg.h ../Graphics/PixelBuffer.h ../Graphics/gl2png.h \ - ../Graphics/PixelBuffer.h ../Graphics/gl2ppm.h \ - ../Graphics/PixelBuffer.h ../Graphics/gl2yuv.h \ - ../Graphics/PixelBuffer.h + ../Geo/SBoundingBox3d.h ../DataStr/List.h ../DataStr/Tree.h \ + ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Numeric/Numeric.h \ + ../Geo/GModel.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/MVertex.h \ + ../Geo/GPoint.h ../Geo/GEdge.h ../Geo/MElement.h ../Geo/MEdge.h \ + ../Common/Hash.h ../Geo/MFace.h ../Numeric/Numeric.h \ + ../Common/Context.h ../Geo/GFace.h ../Geo/GEdgeLoop.h ../Geo/GRegion.h \ + ../Common/GmshUI.h ../Graphics/gl2ps.h ../Graphics/gl2gif.h \ + ../Graphics/PixelBuffer.h ../Common/Gmsh.h ../Common/GmshUI.h \ + ../Graphics/Draw.h ../DataStr/List.h ../Common/Views.h \ + ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Graphics/gl2jpeg.h \ + ../Graphics/gl2png.h ../Graphics/gl2ppm.h ../Graphics/gl2yuv.h FunctionManager.o: FunctionManager.cpp FunctionManager.h diff --git a/Plugin/Makefile b/Plugin/Makefile index 57d010576e5c68d8cf8ef4c0e18892148c7be1e3..b88b75928789acbc6a9f3ff7d2edb3c8610e2438 100644 --- a/Plugin/Makefile +++ b/Plugin/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.119 2007-02-26 08:25:46 geuzaine Exp $ +# $Id: Makefile,v 1.120 2007-04-16 09:08:33 remacle Exp $ # # Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle # @@ -72,200 +72,219 @@ depend: Plugin.o: Plugin.cpp Plugin.h ../Common/Options.h ../Common/Message.h \ ../Common/Views.h ../Common/ColorTable.h ../DataStr/List.h \ ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h PluginManager.h \ - CutMap.h Levelset.h CutGrid.h StreamLines.h CutPlane.h CutParametric.h \ - CutSphere.h Skin.h ../DataStr/Tree.h ../DataStr/avl.h Extract.h \ - ExtractElements.h ExtractEdges.h HarmonicToTime.h ModulusPhase.h \ - Integrate.h Gradient.h Curl.h Divergence.h Annotate.h Remove.h \ - DecomposeInSimplex.h Smooth.h Transform.h Triangulate.h Warp.h \ - Eigenvectors.h Eigenvalues.h Lambda2.h Evaluate.h \ - ../Common/OctreePost.h ../Common/Octree.h ../Common/OctreeInternals.h \ - Probe.h ../Common/Context.h + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/GmshMatrix.h \ + PluginManager.h CutMap.h Levelset.h CutGrid.h StreamLines.h CutPlane.h \ + CutParametric.h CutSphere.h Skin.h ../DataStr/List.h ../DataStr/Tree.h \ + ../DataStr/avl.h Extract.h ExtractElements.h ExtractEdges.h \ + HarmonicToTime.h ModulusPhase.h Integrate.h Gradient.h Curl.h \ + Divergence.h Annotate.h Remove.h DecomposeInSimplex.h Smooth.h \ + Transform.h Triangulate.h Warp.h Eigenvectors.h Eigenvalues.h Lambda2.h \ + ../Numeric/Numeric.h Evaluate.h ../Common/OctreePost.h \ + ../Common/Octree.h ../Common/OctreeInternals.h Probe.h \ + ../Common/Context.h Levelset.o: Levelset.cpp Levelset.h Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - DecomposeInSimplex.h ../DataStr/Tools.h ../DataStr/List.h \ - ../DataStr/Tree.h ../DataStr/avl.h ../Graphics/Iso.h \ + ../Common/GmshMatrix.h DecomposeInSimplex.h ../DataStr/List.h \ + ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h \ + ../Graphics/Iso.h ../Common/Views.h ../Numeric/Numeric.h \ ../Common/Context.h ../DataStr/Malloc.h CutPlane.o: CutPlane.cpp CutPlane.h Levelset.h Plugin.h \ ../Common/Options.h ../Common/Message.h ../Common/Views.h \ ../Common/ColorTable.h ../DataStr/List.h ../Common/VertexArray.h \ ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ - ../Common/GmshMatrix.h ../Common/Context.h ../Common/GmshUI.h \ - ../Graphics/Draw.h + ../Common/GmshMatrix.h ../Common/GmshMatrix.h ../DataStr/List.h \ + ../Common/Context.h ../Common/GmshUI.h ../Graphics/Draw.h \ + ../DataStr/List.h ../Common/Views.h CutSphere.o: CutSphere.cpp CutSphere.h Levelset.h Plugin.h \ ../Common/Options.h ../Common/Message.h ../Common/Views.h \ ../Common/ColorTable.h ../DataStr/List.h ../Common/VertexArray.h \ ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ - ../Common/GmshMatrix.h ../Common/Context.h ../Common/GmshUI.h \ - ../Graphics/Draw.h + ../Common/GmshMatrix.h ../Common/GmshMatrix.h ../DataStr/List.h \ + ../Common/Context.h ../Common/GmshUI.h ../Graphics/Draw.h \ + ../DataStr/List.h ../Common/Views.h CutMap.o: CutMap.cpp CutMap.h Levelset.h Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Common/Context.h + ../Common/GmshMatrix.h ../DataStr/List.h ../Common/Context.h Smooth.o: Smooth.cpp Plugin.h ../Common/Options.h ../Common/Message.h \ ../Common/Views.h ../Common/ColorTable.h ../DataStr/List.h \ ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Smooth.h \ - ../Common/Context.h + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/GmshMatrix.h \ + Smooth.h ../DataStr/List.h ../Common/Context.h CutParametric.o: CutParametric.cpp ../Common/OctreePost.h \ ../Common/Octree.h ../Common/OctreeInternals.h CutParametric.h Plugin.h \ ../Common/Options.h ../Common/Message.h ../Common/Views.h \ ../Common/ColorTable.h ../DataStr/List.h ../Common/VertexArray.h \ ../Common/SmoothData.h ../Numeric/Numeric.h ../Common/AdaptiveViews.h \ - ../Common/GmshMatrix.h ../Common/Context.h ../Common/GmshUI.h \ - ../Graphics/Draw.h + ../Common/GmshMatrix.h ../Common/GmshMatrix.h ../DataStr/List.h \ + ../Common/Context.h ../Common/GmshUI.h ../Graphics/Draw.h \ + ../DataStr/List.h ../Common/Views.h Lambda2.o: Lambda2.cpp Plugin.h ../Common/Options.h ../Common/Message.h \ ../Common/Views.h ../Common/ColorTable.h ../DataStr/List.h \ ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Lambda2.h \ - ../Common/Context.h ../Common/ShapeFunctions.h + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/GmshMatrix.h \ + Lambda2.h ../DataStr/List.h ../Numeric/Numeric.h ../Common/Context.h \ + ../Common/ShapeFunctions.h Eigenvectors.o: Eigenvectors.cpp Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - Eigenvectors.h ../Common/Context.h ../DataStr/Malloc.h \ + ../Common/GmshMatrix.h Eigenvectors.h ../DataStr/List.h \ + ../Common/Context.h ../DataStr/Malloc.h ../Numeric/Numeric.h \ ../Numeric/EigSolve.h Eigenvalues.o: Eigenvalues.cpp Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - Eigenvalues.h ../Common/Context.h ../DataStr/Malloc.h + ../Common/GmshMatrix.h Eigenvalues.h ../DataStr/List.h \ + ../Common/Context.h ../DataStr/Malloc.h ../Numeric/Numeric.h StreamLines.o: StreamLines.cpp ../Common/OctreePost.h ../Common/Octree.h \ ../Common/OctreeInternals.h StreamLines.h Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Common/Context.h ../Common/GmshUI.h ../Graphics/Draw.h + ../Common/GmshMatrix.h ../DataStr/List.h ../Common/Context.h \ + ../Common/GmshUI.h ../Graphics/Draw.h ../DataStr/List.h \ + ../Common/Views.h CutGrid.o: CutGrid.cpp ../Common/OctreePost.h ../Common/Octree.h \ ../Common/OctreeInternals.h CutGrid.h Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Common/Context.h ../Common/GmshUI.h ../Graphics/Draw.h + ../Common/GmshMatrix.h ../DataStr/List.h ../Common/Context.h \ + ../Common/GmshUI.h ../Graphics/Draw.h ../DataStr/List.h \ + ../Common/Views.h Transform.o: Transform.cpp Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - Transform.h ../Common/Context.h + ../Common/GmshMatrix.h Transform.h ../DataStr/List.h \ + ../Common/Context.h Triangulate.o: Triangulate.cpp ../Common/Gmsh.h ../Common/Message.h \ ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ ../DataStr/avl.h ../DataStr/Tools.h ../DataStr/List.h ../DataStr/Tree.h \ - Plugin.h ../Common/Options.h ../Common/Views.h ../Common/ColorTable.h \ - ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Triangulate.h \ - ../Common/Context.h ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/gmshFace.h \ + Plugin.h ../Common/Options.h ../Common/Message.h ../Common/Views.h \ + ../Common/ColorTable.h ../Common/VertexArray.h ../Common/SmoothData.h \ + ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ + ../Common/GmshMatrix.h Triangulate.h ../Common/Context.h \ + ../DataStr/Malloc.h ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/gmshFace.h \ ../Geo/Geo.h ../Common/GmshDefines.h ../Geo/gmshSurface.h ../Geo/Pair.h \ - ../Geo/Range.h ../Geo/SPoint2.h ../Geo/SPoint3.h ../Geo/SVector3.h \ - ../Geo/SPoint3.h ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h \ - ../Geo/SPoint2.h ../Geo/ExtrudeParams.h ../Geo/GFace.h ../Geo/GPoint.h \ - ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ - ../Geo/GEntity.h ../Geo/GVertex.h ../Geo/GEntity.h ../Geo/MVertex.h \ - ../Geo/GPoint.h ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/SPoint3.h \ - ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/MVertex.h ../Geo/MEdge.h \ - ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Hash.h ../Geo/MFace.h \ - ../Geo/MVertex.h ../Geo/SVector3.h ../Geo/ExtrudeParams.h \ - ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/Pair.h \ - ../Geo/ExtrudeParams.h ../Geo/gmshVertex.h ../Geo/Geo.h \ - ../Geo/GVertex.h ../Geo/Range.h + ../Geo/Range.h ../Geo/SPoint2.h ../Geo/SVector3.h \ + ../Geo/SBoundingBox3d.h ../DataStr/List.h ../DataStr/Tree.h \ + ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Geo/GFace.h \ + ../Geo/GPoint.h ../Geo/GEntity.h ../Geo/GEdgeLoop.h ../Geo/GEdge.h \ + ../Geo/GVertex.h ../Geo/MVertex.h ../Geo/MElement.h ../Geo/MEdge.h \ + ../Common/Hash.h ../Geo/MFace.h ../Numeric/Numeric.h \ + ../Common/Context.h ../Geo/gmshVertex.h Warp.o: Warp.cpp Plugin.h ../Common/Options.h ../Common/Message.h \ ../Common/Views.h ../Common/ColorTable.h ../DataStr/List.h \ ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Warp.h \ - ../Common/Context.h + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/GmshMatrix.h \ + Warp.h ../DataStr/List.h ../Common/Context.h ../Numeric/Numeric.h \ + ../Common/SmoothData.h Skin.o: Skin.cpp Plugin.h ../Common/Options.h ../Common/Message.h \ ../Common/Views.h ../Common/ColorTable.h ../DataStr/List.h \ ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Skin.h \ - ../DataStr/Tree.h ../DataStr/avl.h ../Common/Context.h \ - ../DataStr/Malloc.h + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/GmshMatrix.h \ + Skin.h ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h \ + ../Common/Context.h ../DataStr/Malloc.h Extract.o: Extract.cpp Plugin.h ../Common/Options.h ../Common/Message.h \ ../Common/Views.h ../Common/ColorTable.h ../DataStr/List.h \ ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Extract.h \ - ../Common/Context.h ../DataStr/Malloc.h + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/GmshMatrix.h \ + Extract.h ../DataStr/List.h ../Common/Context.h ../DataStr/Malloc.h ExtractElements.o: ExtractElements.cpp Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ExtractElements.h ../Common/Context.h ../DataStr/Malloc.h + ../Common/GmshMatrix.h ExtractElements.h ../DataStr/List.h \ + ../Common/Context.h ../DataStr/Malloc.h ExtractEdges.o: ExtractEdges.cpp Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ExtractEdges.h ../DataStr/Tree.h ../DataStr/avl.h ../Common/Context.h \ + ../Common/GmshMatrix.h ExtractEdges.h ../DataStr/List.h \ + ../DataStr/Tree.h ../DataStr/avl.h ../Common/Context.h \ ../DataStr/Malloc.h ../Mesh/BDS.h ../Geo/GFace.h ../Geo/GPoint.h \ ../Geo/GEntity.h ../Geo/Range.h ../Geo/SPoint3.h \ - ../Geo/SBoundingBox3d.h ../Geo/SPoint3.h ../Common/GmshDefines.h \ - ../Geo/GEdgeLoop.h ../Geo/GEdge.h ../Geo/GEntity.h ../Geo/GVertex.h \ - ../Geo/GEntity.h ../Geo/MVertex.h ../Geo/SPoint3.h ../Geo/GPoint.h \ - ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/SPoint3.h ../Geo/SPoint3.h \ - ../Geo/SPoint2.h ../Geo/MElement.h ../Geo/MVertex.h ../Geo/MEdge.h \ - ../Geo/MVertex.h ../Geo/SVector3.h ../Common/Hash.h ../Geo/MFace.h \ - ../Geo/MVertex.h ../Geo/SVector3.h ../Geo/ExtrudeParams.h \ - ../Geo/MElement.h ../Geo/SPoint2.h ../Geo/SVector3.h ../Geo/Pair.h \ - ../Geo/ExtrudeParams.h + ../Geo/SBoundingBox3d.h ../Common/GmshDefines.h ../Geo/GEdgeLoop.h \ + ../Geo/GEdge.h ../Geo/GVertex.h ../Geo/MVertex.h ../Geo/SPoint2.h \ + ../Geo/SVector3.h ../Geo/MElement.h ../Geo/MEdge.h ../Common/Hash.h \ + ../Geo/MFace.h ../Numeric/Numeric.h ../Common/Context.h \ + ../Geo/ExtrudeParams.h ../Common/SmoothData.h ../Geo/Pair.h \ + ../Common/Views.h DecomposeInSimplex.o: DecomposeInSimplex.cpp Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - DecomposeInSimplex.h ../DataStr/Tree.h ../DataStr/avl.h \ - ../Common/Context.h ../DataStr/Malloc.h + ../Common/GmshMatrix.h DecomposeInSimplex.h ../DataStr/List.h \ + ../DataStr/Tree.h ../DataStr/avl.h ../Common/Context.h \ + ../DataStr/Malloc.h ../Numeric/Numeric.h Evaluate.o: Evaluate.cpp Plugin.h ../Common/Options.h ../Common/Message.h \ ../Common/Views.h ../Common/ColorTable.h ../DataStr/List.h \ ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Evaluate.h \ - ../Common/OctreePost.h ../Common/Octree.h ../Common/OctreeInternals.h \ - ../Common/Context.h + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/GmshMatrix.h \ + Evaluate.h ../Common/OctreePost.h ../Common/Octree.h \ + ../Common/OctreeInternals.h ../DataStr/List.h ../Common/Context.h \ + ../Numeric/Numeric.h Integrate.o: Integrate.cpp Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - Integrate.h ../Common/Context.h ../Common/ShapeFunctions.h + ../Common/GmshMatrix.h Integrate.h ../DataStr/List.h \ + ../Common/Context.h ../Numeric/Numeric.h ../Common/ShapeFunctions.h Gradient.o: Gradient.cpp Plugin.h ../Common/Options.h ../Common/Message.h \ ../Common/Views.h ../Common/ColorTable.h ../DataStr/List.h \ ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Gradient.h \ - ../Common/Context.h ../Common/ShapeFunctions.h + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/GmshMatrix.h \ + Gradient.h ../DataStr/List.h ../Common/Context.h ../Numeric/Numeric.h \ + ../Common/ShapeFunctions.h Curl.o: Curl.cpp Plugin.h ../Common/Options.h ../Common/Message.h \ ../Common/Views.h ../Common/ColorTable.h ../DataStr/List.h \ ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Curl.h \ - ../Common/Context.h ../Common/ShapeFunctions.h + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/GmshMatrix.h \ + Curl.h ../DataStr/List.h ../Common/Context.h ../Numeric/Numeric.h \ + ../Common/ShapeFunctions.h Divergence.o: Divergence.cpp Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - Divergence.h ../Common/Context.h ../Common/ShapeFunctions.h + ../Common/GmshMatrix.h Divergence.h ../DataStr/List.h \ + ../Common/Context.h ../Numeric/Numeric.h ../Common/ShapeFunctions.h Annotate.o: Annotate.cpp Plugin.h ../Common/Options.h ../Common/Message.h \ ../Common/Views.h ../Common/ColorTable.h ../DataStr/List.h \ ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Annotate.h \ - ../Common/Context.h ../Common/GmshUI.h ../Fltk/GUI.h \ - ../Fltk/Opengl_Window.h ../Fltk/Colorbar_Window.h \ + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/GmshMatrix.h \ + Annotate.h ../DataStr/List.h ../Common/Context.h ../Numeric/Numeric.h \ + ../Common/GmshUI.h ../Fltk/GUI.h ../Fltk/Opengl_Window.h \ + ../Fltk/Colorbar_Window.h ../Common/GmshUI.h ../Common/ColorTable.h \ ../Fltk/Popup_Button.h ../Fltk/SpherePosition_Widget.h \ - ../Graphics/Draw.h + ../Graphics/Draw.h ../DataStr/List.h ../Common/Views.h Remove.o: Remove.cpp Plugin.h ../Common/Options.h ../Common/Message.h \ ../Common/Views.h ../Common/ColorTable.h ../DataStr/List.h \ ../Common/VertexArray.h ../Common/SmoothData.h ../Numeric/Numeric.h \ - ../Common/AdaptiveViews.h ../Common/GmshMatrix.h Remove.h \ - ../Common/Context.h + ../Common/AdaptiveViews.h ../Common/GmshMatrix.h ../Common/GmshMatrix.h \ + Remove.h ../DataStr/List.h ../Common/Context.h ../Numeric/Numeric.h Probe.o: Probe.cpp Probe.h Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ../Common/Context.h ../Common/GmshUI.h ../Graphics/Draw.h \ - ../Common/OctreePost.h ../Common/Octree.h ../Common/OctreeInternals.h + ../Common/GmshMatrix.h ../DataStr/List.h ../Common/Context.h \ + ../Common/GmshUI.h ../Graphics/Draw.h ../DataStr/List.h \ + ../Common/Views.h ../Common/OctreePost.h ../Common/Octree.h \ + ../Common/OctreeInternals.h HarmonicToTime.o: HarmonicToTime.cpp Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - HarmonicToTime.h ../Common/Context.h + ../Common/GmshMatrix.h HarmonicToTime.h ../DataStr/List.h \ + ../Common/Context.h ../Numeric/Numeric.h ModulusPhase.o: ModulusPhase.cpp Plugin.h ../Common/Options.h \ ../Common/Message.h ../Common/Views.h ../Common/ColorTable.h \ ../DataStr/List.h ../Common/VertexArray.h ../Common/SmoothData.h \ ../Numeric/Numeric.h ../Common/AdaptiveViews.h ../Common/GmshMatrix.h \ - ModulusPhase.h ../Common/Context.h + ../Common/GmshMatrix.h ModulusPhase.h ../DataStr/List.h \ + ../Common/Context.h ../Numeric/Numeric.h diff --git a/contrib/Netgen/Makefile b/contrib/Netgen/Makefile index 10bc2883930db1ea2fc2e692ad633e2388e2dd0c..42294a1d07aa16e8c4698a26ec1d0ef120311a37 100644 --- a/contrib/Netgen/Makefile +++ b/contrib/Netgen/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.14 2006-11-27 22:22:33 geuzaine Exp $ +# $Id: Makefile,v 1.15 2007-04-16 09:08:34 remacle Exp $ # # Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle # @@ -334,10 +334,9 @@ meshtool.o: libsrc/meshing/meshtool.cpp libsrc/include/mystdlib.h \ libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \ libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \ libsrc/meshing/specials.hpp libsrc/include/csg.hpp \ - libsrc/include/../csg/csg.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/meshing.hpp libsrc/include/../meshing/meshing.hpp \ - libsrc/include/../csg/surface.hpp libsrc/include/../csg/solid.hpp \ - libsrc/include/../csg/identify.hpp \ + libsrc/include/../csg/csg.hpp libsrc/include/meshing.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/../csg/surface.hpp \ + libsrc/include/../csg/solid.hpp libsrc/include/../csg/identify.hpp \ libsrc/include/../csg/singularref.hpp libsrc/include/../csg/csgeom.hpp \ libsrc/include/../csg/triapprox.hpp libsrc/include/../csg/algprim.hpp \ libsrc/include/../csg/brick.hpp libsrc/include/../csg/spline3d.hpp \ @@ -348,7 +347,7 @@ meshtool.o: libsrc/meshing/meshtool.cpp libsrc/include/mystdlib.h \ libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \ libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp \ libsrc/include/geometry2d.hpp libsrc/include/../geom2d/geometry2d.hpp \ - libsrc/include/../gprim/gprim.hpp libsrc/include/../geom2d/spline2d.hpp \ + libsrc/include/../geom2d/spline2d.hpp \ libsrc/include/../geom2d/splinegeometry2.hpp \ libsrc/include/../geom2d/geom2dmesh.hpp refine.o: libsrc/meshing/refine.cpp libsrc/include/mystdlib.h \ @@ -476,7 +475,7 @@ improve3.o: libsrc/meshing/improve3.cpp libsrc/include/mystdlib.h \ libsrc/meshing/curvedelems.hpp libsrc/meshing/bisect.hpp \ libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \ libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \ - libsrc/meshing/specials.hpp libsrc/include/../opti/opti.hpp + libsrc/meshing/specials.hpp smoothing3.o: libsrc/meshing/smoothing3.cpp libsrc/include/mystdlib.h \ libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \ libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \ @@ -518,7 +517,7 @@ smoothing3.o: libsrc/meshing/smoothing3.cpp libsrc/include/mystdlib.h \ libsrc/meshing/curvedelems.hpp libsrc/meshing/bisect.hpp \ libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \ libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \ - libsrc/meshing/specials.hpp libsrc/include/../opti/opti.hpp + libsrc/meshing/specials.hpp adfront3.o: libsrc/meshing/adfront3.cpp libsrc/include/mystdlib.h \ libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \ libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \ @@ -732,7 +731,7 @@ improve2.o: libsrc/meshing/improve2.cpp libsrc/include/mystdlib.h \ libsrc/meshing/curvedelems.hpp libsrc/meshing/bisect.hpp \ libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \ libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \ - libsrc/meshing/specials.hpp libsrc/include/../opti/opti.hpp + libsrc/meshing/specials.hpp smoothing2.o: libsrc/meshing/smoothing2.cpp libsrc/include/mystdlib.h \ libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \ libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \ @@ -774,7 +773,7 @@ smoothing2.o: libsrc/meshing/smoothing2.cpp libsrc/include/mystdlib.h \ libsrc/meshing/curvedelems.hpp libsrc/meshing/bisect.hpp \ libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \ libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \ - libsrc/meshing/specials.hpp libsrc/include/../opti/opti.hpp + libsrc/meshing/specials.hpp adfront2.o: libsrc/meshing/adfront2.cpp libsrc/include/mystdlib.h \ libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \ libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \ @@ -1322,7 +1321,7 @@ improve2gen.o: libsrc/meshing/improve2gen.cpp libsrc/include/mystdlib.h \ libsrc/meshing/curvedelems.hpp libsrc/meshing/bisect.hpp \ libsrc/meshing/clusters.hpp libsrc/meshing/meshfunc.hpp \ libsrc/meshing/hprefinement.hpp libsrc/meshing/boundarylayer.hpp \ - libsrc/meshing/specials.hpp libsrc/include/../opti/opti.hpp + libsrc/meshing/specials.hpp delaunay.o: libsrc/meshing/delaunay.cpp libsrc/include/mystdlib.h \ libsrc/meshing/meshing.hpp libsrc/include/myadt.hpp \ libsrc/include/../general/myadt.hpp libsrc/include/mydefs.hpp \ @@ -1744,8 +1743,7 @@ nglib.o: libsrc/interface/nglib.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -1783,13 +1781,12 @@ nglib.o: libsrc/interface/nglib.cpp libsrc/include/mystdlib.h \ libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \ libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp \ libsrc/include/stlgeom.hpp libsrc/include/../stlgeom/stlgeom.hpp \ - libsrc/include/../gprim/gprim.hpp \ libsrc/include/../stlgeom/stltopology.hpp \ libsrc/include/../stlgeom/stltool.hpp \ libsrc/include/../stlgeom/stlline.hpp \ libsrc/include/../stlgeom/meshstlsurface.hpp \ libsrc/include/geometry2d.hpp libsrc/include/../geom2d/geometry2d.hpp \ - libsrc/include/../gprim/gprim.hpp libsrc/include/../geom2d/spline2d.hpp \ + libsrc/include/../geom2d/spline2d.hpp \ libsrc/include/../geom2d/splinegeometry2.hpp \ libsrc/include/../geom2d/geom2dmesh.hpp libsrc/interface/nglib.h geomtest3d.o: libsrc/gprim/geomtest3d.cpp libsrc/include/mystdlib.h \ @@ -2021,8 +2018,7 @@ algprim.o: libsrc/csg/algprim.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -2089,8 +2085,7 @@ brick.o: libsrc/csg/brick.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -2153,9 +2148,8 @@ manifold.o: libsrc/csg/manifold.cpp libsrc/include/csg.hpp \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \ - libsrc/include/../linalg/vector.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/linalg.hpp \ + libsrc/include/../linalg/linalg.hpp libsrc/include/../linalg/vector.hpp \ libsrc/include/../linalg/densemat.hpp \ libsrc/include/../linalg/polynomial.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ @@ -2220,9 +2214,8 @@ bspline2d.o: libsrc/csg/bspline2d.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \ - libsrc/include/../linalg/vector.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/linalg.hpp \ + libsrc/include/../linalg/linalg.hpp libsrc/include/../linalg/vector.hpp \ libsrc/include/../linalg/densemat.hpp \ libsrc/include/../linalg/polynomial.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ @@ -2287,9 +2280,8 @@ meshsurf.o: libsrc/csg/meshsurf.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \ - libsrc/include/../linalg/vector.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/linalg.hpp \ + libsrc/include/../linalg/linalg.hpp libsrc/include/../linalg/vector.hpp \ libsrc/include/../linalg/densemat.hpp \ libsrc/include/../linalg/polynomial.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ @@ -2357,8 +2349,7 @@ csgeom.o: libsrc/csg/csgeom.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -2425,8 +2416,7 @@ polyhedra.o: libsrc/csg/polyhedra.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -2489,9 +2479,8 @@ curve2d.o: libsrc/csg/curve2d.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \ - libsrc/include/../linalg/vector.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/linalg.hpp \ + libsrc/include/../linalg/linalg.hpp libsrc/include/../linalg/vector.hpp \ libsrc/include/../linalg/densemat.hpp \ libsrc/include/../linalg/polynomial.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ @@ -2559,8 +2548,7 @@ singularref.o: libsrc/csg/singularref.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -2651,9 +2639,8 @@ edgeflw.o: libsrc/csg/edgeflw.cpp libsrc/include/mystdlib.h \ libsrc/include/../meshing/hprefinement.hpp \ libsrc/include/../meshing/boundarylayer.hpp \ libsrc/include/../meshing/specials.hpp libsrc/include/csg.hpp \ - libsrc/include/../csg/csg.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../csg/surface.hpp libsrc/include/../csg/solid.hpp \ - libsrc/include/../csg/identify.hpp \ + libsrc/include/../csg/csg.hpp libsrc/include/../csg/surface.hpp \ + libsrc/include/../csg/solid.hpp libsrc/include/../csg/identify.hpp \ libsrc/include/../csg/singularref.hpp libsrc/include/../csg/csgeom.hpp \ libsrc/include/../csg/triapprox.hpp libsrc/include/../csg/algprim.hpp \ libsrc/include/../csg/brick.hpp libsrc/include/../csg/spline3d.hpp \ @@ -2693,8 +2680,7 @@ solid.o: libsrc/csg/solid.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -2758,9 +2744,8 @@ explicitcurve2d.o: libsrc/csg/explicitcurve2d.cpp \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \ - libsrc/include/../linalg/vector.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/linalg.hpp \ + libsrc/include/../linalg/linalg.hpp libsrc/include/../linalg/vector.hpp \ libsrc/include/../linalg/densemat.hpp \ libsrc/include/../linalg/polynomial.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ @@ -2853,9 +2838,8 @@ specpoin.o: libsrc/csg/specpoin.cpp libsrc/include/mystdlib.h \ libsrc/include/../meshing/hprefinement.hpp \ libsrc/include/../meshing/boundarylayer.hpp \ libsrc/include/../meshing/specials.hpp libsrc/include/csg.hpp \ - libsrc/include/../csg/csg.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../csg/surface.hpp libsrc/include/../csg/solid.hpp \ - libsrc/include/../csg/identify.hpp \ + libsrc/include/../csg/csg.hpp libsrc/include/../csg/surface.hpp \ + libsrc/include/../csg/solid.hpp libsrc/include/../csg/identify.hpp \ libsrc/include/../csg/singularref.hpp libsrc/include/../csg/csgeom.hpp \ libsrc/include/../csg/triapprox.hpp libsrc/include/../csg/algprim.hpp \ libsrc/include/../csg/brick.hpp libsrc/include/../csg/spline3d.hpp \ @@ -2895,8 +2879,7 @@ gencyl.o: libsrc/csg/gencyl.cpp libsrc/include/linalg.hpp \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -2963,8 +2946,7 @@ revolution.o: libsrc/csg/revolution.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -3030,8 +3012,7 @@ genmesh.o: libsrc/csg/genmesh.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -3097,8 +3078,7 @@ spline3d.o: libsrc/csg/spline3d.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -3161,9 +3141,8 @@ surface.o: libsrc/csg/surface.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \ - libsrc/include/../linalg/vector.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/linalg.hpp \ + libsrc/include/../linalg/linalg.hpp libsrc/include/../linalg/vector.hpp \ libsrc/include/../linalg/densemat.hpp \ libsrc/include/../linalg/polynomial.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ @@ -3201,8 +3180,7 @@ surface.o: libsrc/csg/surface.cpp libsrc/include/mystdlib.h \ libsrc/include/../csg/gencyl.hpp libsrc/include/../csg/polyhedra.hpp \ libsrc/include/../csg/extrusion.hpp \ libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \ - libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp \ - libsrc/include/../linalg/linalg.hpp + libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp identify.o: libsrc/csg/identify.cpp libsrc/include/mystdlib.h \ libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \ libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \ @@ -3232,8 +3210,7 @@ identify.o: libsrc/csg/identify.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -3299,8 +3276,7 @@ triapprox.o: libsrc/csg/triapprox.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -3363,9 +3339,8 @@ geom2dmesh.o: libsrc/geom2d/geom2dmesh.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \ - libsrc/include/../linalg/vector.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/linalg.hpp \ + libsrc/include/../linalg/linalg.hpp libsrc/include/../linalg/vector.hpp \ libsrc/include/../linalg/densemat.hpp \ libsrc/include/../linalg/polynomial.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ @@ -3405,7 +3380,7 @@ geom2dmesh.o: libsrc/geom2d/geom2dmesh.cpp libsrc/include/mystdlib.h \ libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \ libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp \ libsrc/include/geometry2d.hpp libsrc/include/../geom2d/geometry2d.hpp \ - libsrc/include/../gprim/gprim.hpp libsrc/include/../geom2d/spline2d.hpp \ + libsrc/include/../geom2d/spline2d.hpp \ libsrc/include/../geom2d/splinegeometry2.hpp \ libsrc/include/../geom2d/geom2dmesh.hpp spline2d.o: libsrc/geom2d/spline2d.cpp libsrc/include/mystdlib.h \ @@ -3434,9 +3409,8 @@ spline2d.o: libsrc/geom2d/spline2d.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \ - libsrc/include/../linalg/vector.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/linalg.hpp \ + libsrc/include/../linalg/linalg.hpp libsrc/include/../linalg/vector.hpp \ libsrc/include/../linalg/densemat.hpp \ libsrc/include/../linalg/polynomial.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ @@ -3475,7 +3449,7 @@ spline2d.o: libsrc/geom2d/spline2d.cpp libsrc/include/mystdlib.h \ libsrc/include/../csg/extrusion.hpp \ libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \ libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/geom2d/spline2d.hpp + libsrc/geom2d/spline2d.hpp splinegeometry2.o: libsrc/geom2d/splinegeometry2.cpp \ libsrc/include/mystdlib.h libsrc/include/csg.hpp \ libsrc/include/../csg/csg.hpp libsrc/include/myadt.hpp \ @@ -3503,9 +3477,8 @@ splinegeometry2.o: libsrc/geom2d/splinegeometry2.cpp \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \ - libsrc/include/../linalg/vector.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/linalg.hpp \ + libsrc/include/../linalg/linalg.hpp libsrc/include/../linalg/vector.hpp \ libsrc/include/../linalg/densemat.hpp \ libsrc/include/../linalg/polynomial.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ @@ -3544,8 +3517,7 @@ splinegeometry2.o: libsrc/geom2d/splinegeometry2.cpp \ libsrc/include/../csg/extrusion.hpp \ libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \ libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/geom2d/spline2d.hpp \ - libsrc/geom2d/splinegeometry2.hpp + libsrc/geom2d/spline2d.hpp libsrc/geom2d/splinegeometry2.hpp genmesh2d.o: libsrc/geom2d/genmesh2d.cpp libsrc/include/mystdlib.h \ libsrc/include/csg.hpp libsrc/include/../csg/csg.hpp \ libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \ @@ -3572,9 +3544,8 @@ genmesh2d.o: libsrc/geom2d/genmesh2d.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/linalg.hpp libsrc/include/../linalg/linalg.hpp \ - libsrc/include/../linalg/vector.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/linalg.hpp \ + libsrc/include/../linalg/linalg.hpp libsrc/include/../linalg/vector.hpp \ libsrc/include/../linalg/densemat.hpp \ libsrc/include/../linalg/polynomial.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ @@ -3614,7 +3585,7 @@ genmesh2d.o: libsrc/geom2d/genmesh2d.cpp libsrc/include/mystdlib.h \ libsrc/include/../csg/revolution.hpp libsrc/include/../csg/specpoin.hpp \ libsrc/include/../csg/edgeflw.hpp libsrc/include/../csg/meshsurf.hpp \ libsrc/include/geometry2d.hpp libsrc/include/../geom2d/geometry2d.hpp \ - libsrc/include/../gprim/gprim.hpp libsrc/include/../geom2d/spline2d.hpp \ + libsrc/include/../geom2d/spline2d.hpp \ libsrc/include/../geom2d/splinegeometry2.hpp \ libsrc/include/../geom2d/geom2dmesh.hpp meshstlsurface.o: libsrc/stlgeom/meshstlsurface.cpp \ @@ -3646,8 +3617,7 @@ meshstlsurface.o: libsrc/stlgeom/meshstlsurface.cpp \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -3673,9 +3643,8 @@ meshstlsurface.o: libsrc/stlgeom/meshstlsurface.cpp \ libsrc/include/../meshing/hprefinement.hpp \ libsrc/include/../meshing/boundarylayer.hpp \ libsrc/include/../meshing/specials.hpp libsrc/stlgeom/stlgeom.hpp \ - libsrc/include/../gprim/gprim.hpp libsrc/stlgeom/stltopology.hpp \ - libsrc/stlgeom/stltool.hpp libsrc/stlgeom/stlline.hpp \ - libsrc/stlgeom/meshstlsurface.hpp + libsrc/stlgeom/stltopology.hpp libsrc/stlgeom/stltool.hpp \ + libsrc/stlgeom/stlline.hpp libsrc/stlgeom/meshstlsurface.hpp stlline.o: libsrc/stlgeom/stlline.cpp libsrc/include/mystdlib.h \ libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \ libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \ @@ -3704,8 +3673,7 @@ stlline.o: libsrc/stlgeom/stlline.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -3731,9 +3699,8 @@ stlline.o: libsrc/stlgeom/stlline.cpp libsrc/include/mystdlib.h \ libsrc/include/../meshing/hprefinement.hpp \ libsrc/include/../meshing/boundarylayer.hpp \ libsrc/include/../meshing/specials.hpp libsrc/stlgeom/stlgeom.hpp \ - libsrc/include/../gprim/gprim.hpp libsrc/stlgeom/stltopology.hpp \ - libsrc/stlgeom/stltool.hpp libsrc/stlgeom/stlline.hpp \ - libsrc/stlgeom/meshstlsurface.hpp + libsrc/stlgeom/stltopology.hpp libsrc/stlgeom/stltool.hpp \ + libsrc/stlgeom/stlline.hpp libsrc/stlgeom/meshstlsurface.hpp stltopology.o: libsrc/stlgeom/stltopology.cpp libsrc/include/mystdlib.h \ libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \ libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \ @@ -3762,8 +3729,7 @@ stltopology.o: libsrc/stlgeom/stltopology.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -3789,9 +3755,8 @@ stltopology.o: libsrc/stlgeom/stltopology.cpp libsrc/include/mystdlib.h \ libsrc/include/../meshing/hprefinement.hpp \ libsrc/include/../meshing/boundarylayer.hpp \ libsrc/include/../meshing/specials.hpp libsrc/stlgeom/stlgeom.hpp \ - libsrc/include/../gprim/gprim.hpp libsrc/stlgeom/stltopology.hpp \ - libsrc/stlgeom/stltool.hpp libsrc/stlgeom/stlline.hpp \ - libsrc/stlgeom/meshstlsurface.hpp + libsrc/stlgeom/stltopology.hpp libsrc/stlgeom/stltool.hpp \ + libsrc/stlgeom/stlline.hpp libsrc/stlgeom/meshstlsurface.hpp stltool.o: libsrc/stlgeom/stltool.cpp libsrc/include/mystdlib.h \ libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \ libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \ @@ -3820,8 +3785,7 @@ stltool.o: libsrc/stlgeom/stltool.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -3847,9 +3811,8 @@ stltool.o: libsrc/stlgeom/stltool.cpp libsrc/include/mystdlib.h \ libsrc/include/../meshing/hprefinement.hpp \ libsrc/include/../meshing/boundarylayer.hpp \ libsrc/include/../meshing/specials.hpp libsrc/stlgeom/stlgeom.hpp \ - libsrc/include/../gprim/gprim.hpp libsrc/stlgeom/stltopology.hpp \ - libsrc/stlgeom/stltool.hpp libsrc/stlgeom/stlline.hpp \ - libsrc/stlgeom/meshstlsurface.hpp + libsrc/stlgeom/stltopology.hpp libsrc/stlgeom/stltool.hpp \ + libsrc/stlgeom/stlline.hpp libsrc/stlgeom/meshstlsurface.hpp stlgeom.o: libsrc/stlgeom/stlgeom.cpp libsrc/include/mystdlib.h \ libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \ libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \ @@ -3878,8 +3841,7 @@ stlgeom.o: libsrc/stlgeom/stlgeom.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -3905,9 +3867,8 @@ stlgeom.o: libsrc/stlgeom/stlgeom.cpp libsrc/include/mystdlib.h \ libsrc/include/../meshing/hprefinement.hpp \ libsrc/include/../meshing/boundarylayer.hpp \ libsrc/include/../meshing/specials.hpp libsrc/stlgeom/stlgeom.hpp \ - libsrc/include/../gprim/gprim.hpp libsrc/stlgeom/stltopology.hpp \ - libsrc/stlgeom/stltool.hpp libsrc/stlgeom/stlline.hpp \ - libsrc/stlgeom/meshstlsurface.hpp + libsrc/stlgeom/stltopology.hpp libsrc/stlgeom/stltool.hpp \ + libsrc/stlgeom/stlline.hpp libsrc/stlgeom/meshstlsurface.hpp stlgeomchart.o: libsrc/stlgeom/stlgeomchart.cpp libsrc/include/mystdlib.h \ libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \ libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \ @@ -3936,8 +3897,7 @@ stlgeomchart.o: libsrc/stlgeom/stlgeomchart.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -3963,9 +3923,8 @@ stlgeomchart.o: libsrc/stlgeom/stlgeomchart.cpp libsrc/include/mystdlib.h \ libsrc/include/../meshing/hprefinement.hpp \ libsrc/include/../meshing/boundarylayer.hpp \ libsrc/include/../meshing/specials.hpp libsrc/stlgeom/stlgeom.hpp \ - libsrc/include/../gprim/gprim.hpp libsrc/stlgeom/stltopology.hpp \ - libsrc/stlgeom/stltool.hpp libsrc/stlgeom/stlline.hpp \ - libsrc/stlgeom/meshstlsurface.hpp + libsrc/stlgeom/stltopology.hpp libsrc/stlgeom/stltool.hpp \ + libsrc/stlgeom/stlline.hpp libsrc/stlgeom/meshstlsurface.hpp stlgeommesh.o: libsrc/stlgeom/stlgeommesh.cpp libsrc/include/mystdlib.h \ libsrc/include/myadt.hpp libsrc/include/../general/myadt.hpp \ libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \ @@ -3994,8 +3953,7 @@ stlgeommesh.o: libsrc/stlgeom/stlgeommesh.cpp libsrc/include/mystdlib.h \ libsrc/include/../gprim/geomtest3d.hpp \ libsrc/include/../gprim/transform3d.hpp \ libsrc/include/../gprim/adtree.hpp libsrc/include/meshing.hpp \ - libsrc/include/../meshing/meshing.hpp libsrc/include/../gprim/gprim.hpp \ - libsrc/include/../linalg/linalg.hpp libsrc/include/opti.hpp \ + libsrc/include/../meshing/meshing.hpp libsrc/include/opti.hpp \ libsrc/include/../opti/opti.hpp \ libsrc/include/../meshing/msghandler.hpp \ libsrc/include/../meshing/meshtype.hpp \ @@ -4021,9 +3979,8 @@ stlgeommesh.o: libsrc/stlgeom/stlgeommesh.cpp libsrc/include/mystdlib.h \ libsrc/include/../meshing/hprefinement.hpp \ libsrc/include/../meshing/boundarylayer.hpp \ libsrc/include/../meshing/specials.hpp libsrc/stlgeom/stlgeom.hpp \ - libsrc/include/../gprim/gprim.hpp libsrc/stlgeom/stltopology.hpp \ - libsrc/stlgeom/stltool.hpp libsrc/stlgeom/stlline.hpp \ - libsrc/stlgeom/meshstlsurface.hpp + libsrc/stlgeom/stltopology.hpp libsrc/stlgeom/stltool.hpp \ + libsrc/stlgeom/stlline.hpp libsrc/stlgeom/meshstlsurface.hpp moveablemem.o: libsrc/general/moveablemem.cpp libsrc/include/myadt.hpp \ libsrc/include/../general/myadt.hpp libsrc/include/mystdlib.h \ libsrc/include/mydefs.hpp libsrc/include/../general/ngexception.hpp \