Index: /issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
===================================================================
--- /issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h	(revision 21087)
+++ /issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h	(revision 21088)
@@ -29,4 +29,5 @@
 	InputToSmoothEnum,
 	SmoothThicknessMultiplierEnum,
+	LevelsetStabilizationEnum,
 	/*}}}*/
 	/*Model fields {{{*/
@@ -991,5 +992,4 @@
 	MeshdeformationAnalysisEnum,
 	LevelsetAnalysisEnum,
-	LevelsetStabilizationEnum,
 	ExtrapolationAnalysisEnum,
 	/*}}}*/
Index: /issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp
===================================================================
--- /issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp	(revision 21087)
+++ /issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp	(revision 21088)
@@ -17,6 +17,7 @@
 	switch(en){
 
+		case FemModelEnum : return "FemModel";
 		case ParametersSTARTEnum : return "ParametersSTART";
-		case FemModelEnum : return "FemModel";
+		case FSSolverEnum : return "FSSolver";
 		case IsRestartEnum : return "IsRestart";
 		case FemModelCommEnum : return "FemModelComm";
@@ -26,4 +27,15 @@
 		case ModelIdEnum : return "ModelId";
 		case EarthIdEnum : return "EarthId";
+		case SolutionTypeEnum : return "SolutionType";
+		case AnalysisTypeEnum : return "AnalysisType";
+		case AnalysisCounterEnum : return "AnalysisCounter";
+		case ConfigurationTypeEnum : return "ConfigurationType";
+		case InputToExtrudeEnum : return "InputToExtrude";
+		case InputToL2ProjectEnum : return "InputToL2Project";
+		case InputToDepthaverageInEnum : return "InputToDepthaverageIn";
+		case InputToDepthaverageOutEnum : return "InputToDepthaverageOut";
+		case InputToSmoothEnum : return "InputToSmooth";
+		case SmoothThicknessMultiplierEnum : return "SmoothThicknessMultiplier";
+		case LevelsetStabilizationEnum : return "LevelsetStabilization";
 		case AutodiffIsautodiffEnum : return "AutodiffIsautodiff";
 		case AutodiffNumDependentsEnum : return "AutodiffNumDependents";
@@ -494,165 +506,4 @@
 		case SmbIspddEnum : return "SmbIspdd";
 		case SmbIssmbgradientsEnum : return "SmbIssmbgradients";
-		case SolutionTypeEnum : return "SolutionType";
-		case AnalysisTypeEnum : return "AnalysisType";
-		case ConfigurationTypeEnum : return "ConfigurationType";
-		case AdjointBalancethicknessAnalysisEnum : return "AdjointBalancethicknessAnalysis";
-		case AdjointBalancethickness2AnalysisEnum : return "AdjointBalancethickness2Analysis";
-		case AdjointHorizAnalysisEnum : return "AdjointHorizAnalysis";
-		case AnalysisCounterEnum : return "AnalysisCounter";
-		case DefaultAnalysisEnum : return "DefaultAnalysis";
-		case BalancethicknessAnalysisEnum : return "BalancethicknessAnalysis";
-		case BalancethicknessSolutionEnum : return "BalancethicknessSolution";
-		case Balancethickness2AnalysisEnum : return "Balancethickness2Analysis";
-		case Balancethickness2SolutionEnum : return "Balancethickness2Solution";
-		case BalancethicknessSoftAnalysisEnum : return "BalancethicknessSoftAnalysis";
-		case BalancethicknessSoftSolutionEnum : return "BalancethicknessSoftSolution";
-		case BalancevelocityAnalysisEnum : return "BalancevelocityAnalysis";
-		case BalancevelocitySolutionEnum : return "BalancevelocitySolution";
-		case L2ProjectionEPLAnalysisEnum : return "L2ProjectionEPLAnalysis";
-		case L2ProjectionBaseAnalysisEnum : return "L2ProjectionBaseAnalysis";
-		case BedSlopeSolutionEnum : return "BedSlopeSolution";
-		case DamageEvolutionSolutionEnum : return "DamageEvolutionSolution";
-		case DamageEvolutionAnalysisEnum : return "DamageEvolutionAnalysis";
-		case StressbalanceAnalysisEnum : return "StressbalanceAnalysis";
-		case StressbalanceSIAAnalysisEnum : return "StressbalanceSIAAnalysis";
-		case StressbalanceSolutionEnum : return "StressbalanceSolution";
-		case StressbalanceVerticalAnalysisEnum : return "StressbalanceVerticalAnalysis";
-		case EnthalpyAnalysisEnum : return "EnthalpyAnalysis";
-		case FlaimAnalysisEnum : return "FlaimAnalysis";
-		case FlaimSolutionEnum : return "FlaimSolution";
-		case HydrologyShreveAnalysisEnum : return "HydrologyShreveAnalysis";
-		case HydrologyDCInefficientAnalysisEnum : return "HydrologyDCInefficientAnalysis";
-		case HydrologyDCEfficientAnalysisEnum : return "HydrologyDCEfficientAnalysis";
-		case HydrologySommersAnalysisEnum : return "HydrologySommersAnalysis";
-		case HydrologySolutionEnum : return "HydrologySolution";
-		case MeltingAnalysisEnum : return "MeltingAnalysis";
-		case MasstransportAnalysisEnum : return "MasstransportAnalysis";
-		case MasstransportSolutionEnum : return "MasstransportSolution";
-		case FreeSurfaceBaseAnalysisEnum : return "FreeSurfaceBaseAnalysis";
-		case FreeSurfaceTopAnalysisEnum : return "FreeSurfaceTopAnalysis";
-		case SurfaceNormalVelocityEnum : return "SurfaceNormalVelocity";
-		case ExtrudeFromBaseAnalysisEnum : return "ExtrudeFromBaseAnalysis";
-		case ExtrudeFromTopAnalysisEnum : return "ExtrudeFromTopAnalysis";
-		case DepthAverageAnalysisEnum : return "DepthAverageAnalysis";
-		case SteadystateSolutionEnum : return "SteadystateSolution";
-		case SurfaceSlopeSolutionEnum : return "SurfaceSlopeSolution";
-		case SmoothAnalysisEnum : return "SmoothAnalysis";
-		case ThermalAnalysisEnum : return "ThermalAnalysis";
-		case ThermalSolutionEnum : return "ThermalSolution";
-		case TransientSolutionEnum : return "TransientSolution";
-		case UzawaPressureAnalysisEnum : return "UzawaPressureAnalysis";
-		case GiaSolutionEnum : return "GiaSolution";
-		case GiaAnalysisEnum : return "GiaAnalysis";
-		case MeshdeformationSolutionEnum : return "MeshdeformationSolution";
-		case MeshdeformationAnalysisEnum : return "MeshdeformationAnalysis";
-		case LevelsetAnalysisEnum : return "LevelsetAnalysis";
-		case LevelsetStabilizationEnum : return "LevelsetStabilization";
-		case ExtrapolationAnalysisEnum : return "ExtrapolationAnalysis";
-		case ApproximationEnum : return "Approximation";
-		case NoneApproximationEnum : return "NoneApproximation";
-		case SIAApproximationEnum : return "SIAApproximation";
-		case SSAApproximationEnum : return "SSAApproximation";
-		case SSAHOApproximationEnum : return "SSAHOApproximation";
-		case SSAFSApproximationEnum : return "SSAFSApproximation";
-		case L1L2ApproximationEnum : return "L1L2Approximation";
-		case HOApproximationEnum : return "HOApproximation";
-		case HOFSApproximationEnum : return "HOFSApproximation";
-		case FSApproximationEnum : return "FSApproximation";
-		case FSvelocityEnum : return "FSvelocity";
-		case FSpressureEnum : return "FSpressure";
-		case DataSetEnum : return "DataSet";
-		case ConstraintsEnum : return "Constraints";
-		case LoadsEnum : return "Loads";
-		case MaterialsEnum : return "Materials";
-		case NodesEnum : return "Nodes";
-		case ContoursEnum : return "Contours";
-		case ParametersEnum : return "Parameters";
-		case VerticesEnum : return "Vertices";
-		case ResultsEnum : return "Results";
-		case GenericParamEnum : return "GenericParam";
-		case AdolcParamEnum : return "AdolcParam";
-		case BoolInputEnum : return "BoolInput";
-		case BoolParamEnum : return "BoolParam";
-		case ContourEnum : return "Contour";
-		case ControlInputEnum : return "ControlInput";
-		case DatasetInputEnum : return "DatasetInput";
-		case DoubleInputEnum : return "DoubleInput";
-		case DoubleArrayInputEnum : return "DoubleArrayInput";
-		case DataSetParamEnum : return "DataSetParam";
-		case DoubleMatArrayParamEnum : return "DoubleMatArrayParam";
-		case DoubleMatParamEnum : return "DoubleMatParam";
-		case DoubleParamEnum : return "DoubleParam";
-		case DoubleVecParamEnum : return "DoubleVecParam";
-		case ElementEnum : return "Element";
-		case ElementHookEnum : return "ElementHook";
-		case HookEnum : return "Hook";
-		case ExternalResultEnum : return "ExternalResult";
-		case FileParamEnum : return "FileParam";
-		case InputEnum : return "Input";
-		case IntInputEnum : return "IntInput";
-		case InputToExtrudeEnum : return "InputToExtrude";
-		case InputToL2ProjectEnum : return "InputToL2Project";
-		case InputToDepthaverageInEnum : return "InputToDepthaverageIn";
-		case InputToDepthaverageOutEnum : return "InputToDepthaverageOut";
-		case InputToSmoothEnum : return "InputToSmooth";
-		case SmoothThicknessMultiplierEnum : return "SmoothThicknessMultiplier";
-		case IntParamEnum : return "IntParam";
-		case IntVecParamEnum : return "IntVecParam";
-		case TransientParamEnum : return "TransientParam";
-		case MaticeEnum : return "Matice";
-		case MatdamageiceEnum : return "Matdamageice";
-		case MatestarEnum : return "Matestar";
-		case MatparEnum : return "Matpar";
-		case NodeEnum : return "Node";
-		case NumericalfluxEnum : return "Numericalflux";
-		case NumericalfluxTypeEnum : return "NumericalfluxType";
-		case NeumannfluxEnum : return "Neumannflux";
-		case ParamEnum : return "Param";
-		case MoulinEnum : return "Moulin";
-		case PengridEnum : return "Pengrid";
-		case PenpairEnum : return "Penpair";
-		case ProfilerEnum : return "Profiler";
-		case MatrixParamEnum : return "MatrixParam";
-		case MassconEnum : return "Masscon";
-		case MassconNameEnum : return "MassconName";
-		case MassconDefinitionenumEnum : return "MassconDefinitionenum";
-		case MassconLevelsetEnum : return "MassconLevelset";
-		case MassconaxpbyEnum : return "Massconaxpby";
-		case MassconaxpbyNameEnum : return "MassconaxpbyName";
-		case MassconaxpbyDefinitionenumEnum : return "MassconaxpbyDefinitionenum";
-		case MassconaxpbyNamexEnum : return "MassconaxpbyNamex";
-		case MassconaxpbyNameyEnum : return "MassconaxpbyNamey";
-		case MassconaxpbyAlphaEnum : return "MassconaxpbyAlpha";
-		case MassconaxpbyBetaEnum : return "MassconaxpbyBeta";
-		case NodeSIdEnum : return "NodeSId";
-		case VectorParamEnum : return "VectorParam";
-		case RiftfrontEnum : return "Riftfront";
-		case RiftfrontTypeEnum : return "RiftfrontType";
-		case SegmentEnum : return "Segment";
-		case SegmentRiftfrontEnum : return "SegmentRiftfront";
-		case SpcDynamicEnum : return "SpcDynamic";
-		case SpcStaticEnum : return "SpcStatic";
-		case SpcTransientEnum : return "SpcTransient";
-		case StringArrayParamEnum : return "StringArrayParam";
-		case StringParamEnum : return "StringParam";
-		case SegEnum : return "Seg";
-		case SegInputEnum : return "SegInput";
-		case TriaEnum : return "Tria";
-		case TriaInputEnum : return "TriaInput";
-		case TetraEnum : return "Tetra";
-		case TetraInputEnum : return "TetraInput";
-		case PentaEnum : return "Penta";
-		case PentaInputEnum : return "PentaInput";
-		case VertexEnum : return "Vertex";
-		case VertexPIdEnum : return "VertexPId";
-		case VertexSIdEnum : return "VertexSId";
-		case AirEnum : return "Air";
-		case IceEnum : return "Ice";
-		case MelangeEnum : return "Melange";
-		case WaterEnum : return "Water";
-		case ClosedEnum : return "Closed";
-		case FreeEnum : return "Free";
-		case OpenEnum : return "Open";
 		case AdjointpEnum : return "Adjointp";
 		case AdjointxEnum : return "Adjointx";
@@ -754,27 +605,4 @@
 		case GiadWdtEnum : return "GiadWdt";
 		case GiaWEnum : return "GiaW";
-		case P0Enum : return "P0";
-		case P0ArrayEnum : return "P0Array";
-		case P1Enum : return "P1";
-		case P1DGEnum : return "P1DG";
-		case P1bubbleEnum : return "P1bubble";
-		case P1bubblecondensedEnum : return "P1bubblecondensed";
-		case P2Enum : return "P2";
-		case P2bubbleEnum : return "P2bubble";
-		case P2bubblecondensedEnum : return "P2bubblecondensed";
-		case P2xP1Enum : return "P2xP1";
-		case P1xP2Enum : return "P1xP2";
-		case P1xP3Enum : return "P1xP3";
-		case P2xP4Enum : return "P2xP4";
-		case P1P1Enum : return "P1P1";
-		case P1P1GLSEnum : return "P1P1GLS";
-		case MINIEnum : return "MINI";
-		case MINIcondensedEnum : return "MINIcondensed";
-		case TaylorHoodEnum : return "TaylorHood";
-		case LATaylorHoodEnum : return "LATaylorHood";
-		case XTaylorHoodEnum : return "XTaylorHood";
-		case OneLayerP4zEnum : return "OneLayerP4z";
-		case CrouzeixRaviartEnum : return "CrouzeixRaviart";
-		case LACrouzeixRaviartEnum : return "LACrouzeixRaviart";
 		case SaveResultsEnum : return "SaveResults";
 		case BoolExternalResultEnum : return "BoolExternalResult";
@@ -913,23 +741,4 @@
 		case VyObsEnum : return "VyObs";
 		case WeightsVyObsEnum : return "WeightsVyObs";
-		case MinVelEnum : return "MinVel";
-		case MaxVelEnum : return "MaxVel";
-		case MinVxEnum : return "MinVx";
-		case MaxVxEnum : return "MaxVx";
-		case MaxAbsVxEnum : return "MaxAbsVx";
-		case MinVyEnum : return "MinVy";
-		case MaxVyEnum : return "MaxVy";
-		case MaxAbsVyEnum : return "MaxAbsVy";
-		case MinVzEnum : return "MinVz";
-		case MaxVzEnum : return "MaxVz";
-		case MaxAbsVzEnum : return "MaxAbsVz";
-		case FloatingAreaEnum : return "FloatingArea";
-		case GroundedAreaEnum : return "GroundedArea";
-		case IceMassEnum : return "IceMass";
-		case IceVolumeEnum : return "IceVolume";
-		case IceVolumeAboveFloatationEnum : return "IceVolumeAboveFloatation";
-		case TotalFloatingBmbEnum : return "TotalFloatingBmb";
-		case TotalGroundedBmbEnum : return "TotalGroundedBmb";
-		case TotalSmbEnum : return "TotalSmb";
 		case AbsoluteEnum : return "Absolute";
 		case IncrementalEnum : return "Incremental";
@@ -947,9 +756,4 @@
 		case GroundingOnlyEnum : return "GroundingOnly";
 		case MaskGroundediceLevelsetEnum : return "MaskGroundediceLevelset";
-		case GaussSegEnum : return "GaussSeg";
-		case GaussTriaEnum : return "GaussTria";
-		case GaussTetraEnum : return "GaussTetra";
-		case GaussPentaEnum : return "GaussPenta";
-		case FSSolverEnum : return "FSSolver";
 		case AdjointEnum : return "Adjoint";
 		case ColinearEnum : return "Colinear";
@@ -986,7 +790,4 @@
 		case SsetEnum : return "Sset";
 		case VerboseEnum : return "Verbose";
-		case TriangleInterpEnum : return "TriangleInterp";
-		case BilinearInterpEnum : return "BilinearInterp";
-		case NearestInterpEnum : return "NearestInterp";
 		case XYEnum : return "XY";
 		case XYZEnum : return "XYZ";
@@ -998,8 +799,4 @@
 		case MumpsEnum : return "Mumps";
 		case GslEnum : return "Gsl";
-		case OptionEnum : return "Option";
-		case GenericOptionEnum : return "GenericOption";
-		case OptionCellEnum : return "OptionCell";
-		case OptionStructEnum : return "OptionStruct";
 		case CuffeyEnum : return "Cuffey";
 		case BuddJackaEnum : return "BuddJacka";
@@ -1015,6 +812,4 @@
 		case LevelsetfunctionPicardEnum : return "LevelsetfunctionPicard";
 		case LevelsetReinitFrequencyEnum : return "LevelsetReinitFrequency";
-		case SealevelriseSolutionEnum : return "SealevelriseSolution";
-		case SealevelriseAnalysisEnum : return "SealevelriseAnalysis";
 		case SealevelEnum : return "Sealevel";
 		case SealevelUmotionEnum : return "SealevelUmotion";
@@ -1042,4 +837,209 @@
 		case SealevelriseNumRequestedOutputsEnum : return "SealevelriseNumRequestedOutputs";
 		case ParametersENDEnum : return "ParametersEND";
+		case GenericParamEnum : return "GenericParam";
+		case AdolcParamEnum : return "AdolcParam";
+		case BoolInputEnum : return "BoolInput";
+		case BoolParamEnum : return "BoolParam";
+		case ContourEnum : return "Contour";
+		case ControlInputEnum : return "ControlInput";
+		case DatasetInputEnum : return "DatasetInput";
+		case DoubleInputEnum : return "DoubleInput";
+		case DoubleArrayInputEnum : return "DoubleArrayInput";
+		case DataSetParamEnum : return "DataSetParam";
+		case DoubleMatArrayParamEnum : return "DoubleMatArrayParam";
+		case DoubleMatParamEnum : return "DoubleMatParam";
+		case DoubleParamEnum : return "DoubleParam";
+		case DoubleVecParamEnum : return "DoubleVecParam";
+		case ElementEnum : return "Element";
+		case ElementHookEnum : return "ElementHook";
+		case HookEnum : return "Hook";
+		case ExternalResultEnum : return "ExternalResult";
+		case FileParamEnum : return "FileParam";
+		case InputEnum : return "Input";
+		case IntInputEnum : return "IntInput";
+		case IntParamEnum : return "IntParam";
+		case IntVecParamEnum : return "IntVecParam";
+		case TransientParamEnum : return "TransientParam";
+		case MaticeEnum : return "Matice";
+		case MatdamageiceEnum : return "Matdamageice";
+		case MatestarEnum : return "Matestar";
+		case MatparEnum : return "Matpar";
+		case NodeEnum : return "Node";
+		case NumericalfluxEnum : return "Numericalflux";
+		case NumericalfluxTypeEnum : return "NumericalfluxType";
+		case NeumannfluxEnum : return "Neumannflux";
+		case ParamEnum : return "Param";
+		case MoulinEnum : return "Moulin";
+		case PengridEnum : return "Pengrid";
+		case PenpairEnum : return "Penpair";
+		case ProfilerEnum : return "Profiler";
+		case MatrixParamEnum : return "MatrixParam";
+		case MassconEnum : return "Masscon";
+		case MassconNameEnum : return "MassconName";
+		case MassconDefinitionenumEnum : return "MassconDefinitionenum";
+		case MassconLevelsetEnum : return "MassconLevelset";
+		case MassconaxpbyEnum : return "Massconaxpby";
+		case MassconaxpbyNameEnum : return "MassconaxpbyName";
+		case MassconaxpbyDefinitionenumEnum : return "MassconaxpbyDefinitionenum";
+		case MassconaxpbyNamexEnum : return "MassconaxpbyNamex";
+		case MassconaxpbyNameyEnum : return "MassconaxpbyNamey";
+		case MassconaxpbyAlphaEnum : return "MassconaxpbyAlpha";
+		case MassconaxpbyBetaEnum : return "MassconaxpbyBeta";
+		case NodeSIdEnum : return "NodeSId";
+		case VectorParamEnum : return "VectorParam";
+		case RiftfrontEnum : return "Riftfront";
+		case RiftfrontTypeEnum : return "RiftfrontType";
+		case SegmentEnum : return "Segment";
+		case SegmentRiftfrontEnum : return "SegmentRiftfront";
+		case SpcDynamicEnum : return "SpcDynamic";
+		case SpcStaticEnum : return "SpcStatic";
+		case SpcTransientEnum : return "SpcTransient";
+		case StringArrayParamEnum : return "StringArrayParam";
+		case StringParamEnum : return "StringParam";
+		case SegEnum : return "Seg";
+		case SegInputEnum : return "SegInput";
+		case TriaEnum : return "Tria";
+		case TriaInputEnum : return "TriaInput";
+		case TetraEnum : return "Tetra";
+		case TetraInputEnum : return "TetraInput";
+		case PentaEnum : return "Penta";
+		case PentaInputEnum : return "PentaInput";
+		case VertexEnum : return "Vertex";
+		case VertexPIdEnum : return "VertexPId";
+		case VertexSIdEnum : return "VertexSId";
+		case OptionEnum : return "Option";
+		case GenericOptionEnum : return "GenericOption";
+		case OptionCellEnum : return "OptionCell";
+		case OptionStructEnum : return "OptionStruct";
+		case AdjointBalancethicknessAnalysisEnum : return "AdjointBalancethicknessAnalysis";
+		case AdjointBalancethickness2AnalysisEnum : return "AdjointBalancethickness2Analysis";
+		case AdjointHorizAnalysisEnum : return "AdjointHorizAnalysis";
+		case DefaultAnalysisEnum : return "DefaultAnalysis";
+		case BalancethicknessAnalysisEnum : return "BalancethicknessAnalysis";
+		case BalancethicknessSolutionEnum : return "BalancethicknessSolution";
+		case Balancethickness2AnalysisEnum : return "Balancethickness2Analysis";
+		case Balancethickness2SolutionEnum : return "Balancethickness2Solution";
+		case BalancethicknessSoftAnalysisEnum : return "BalancethicknessSoftAnalysis";
+		case BalancethicknessSoftSolutionEnum : return "BalancethicknessSoftSolution";
+		case BalancevelocityAnalysisEnum : return "BalancevelocityAnalysis";
+		case BalancevelocitySolutionEnum : return "BalancevelocitySolution";
+		case L2ProjectionEPLAnalysisEnum : return "L2ProjectionEPLAnalysis";
+		case L2ProjectionBaseAnalysisEnum : return "L2ProjectionBaseAnalysis";
+		case BedSlopeSolutionEnum : return "BedSlopeSolution";
+		case DamageEvolutionSolutionEnum : return "DamageEvolutionSolution";
+		case DamageEvolutionAnalysisEnum : return "DamageEvolutionAnalysis";
+		case StressbalanceAnalysisEnum : return "StressbalanceAnalysis";
+		case StressbalanceSIAAnalysisEnum : return "StressbalanceSIAAnalysis";
+		case StressbalanceSolutionEnum : return "StressbalanceSolution";
+		case StressbalanceVerticalAnalysisEnum : return "StressbalanceVerticalAnalysis";
+		case EnthalpyAnalysisEnum : return "EnthalpyAnalysis";
+		case FlaimAnalysisEnum : return "FlaimAnalysis";
+		case FlaimSolutionEnum : return "FlaimSolution";
+		case HydrologyShreveAnalysisEnum : return "HydrologyShreveAnalysis";
+		case HydrologyDCInefficientAnalysisEnum : return "HydrologyDCInefficientAnalysis";
+		case HydrologyDCEfficientAnalysisEnum : return "HydrologyDCEfficientAnalysis";
+		case HydrologySommersAnalysisEnum : return "HydrologySommersAnalysis";
+		case HydrologySolutionEnum : return "HydrologySolution";
+		case MeltingAnalysisEnum : return "MeltingAnalysis";
+		case MasstransportAnalysisEnum : return "MasstransportAnalysis";
+		case MasstransportSolutionEnum : return "MasstransportSolution";
+		case FreeSurfaceBaseAnalysisEnum : return "FreeSurfaceBaseAnalysis";
+		case FreeSurfaceTopAnalysisEnum : return "FreeSurfaceTopAnalysis";
+		case SurfaceNormalVelocityEnum : return "SurfaceNormalVelocity";
+		case ExtrudeFromBaseAnalysisEnum : return "ExtrudeFromBaseAnalysis";
+		case ExtrudeFromTopAnalysisEnum : return "ExtrudeFromTopAnalysis";
+		case DepthAverageAnalysisEnum : return "DepthAverageAnalysis";
+		case SealevelriseSolutionEnum : return "SealevelriseSolution";
+		case SealevelriseAnalysisEnum : return "SealevelriseAnalysis";
+		case SteadystateSolutionEnum : return "SteadystateSolution";
+		case SurfaceSlopeSolutionEnum : return "SurfaceSlopeSolution";
+		case SmoothAnalysisEnum : return "SmoothAnalysis";
+		case ThermalAnalysisEnum : return "ThermalAnalysis";
+		case ThermalSolutionEnum : return "ThermalSolution";
+		case TransientSolutionEnum : return "TransientSolution";
+		case UzawaPressureAnalysisEnum : return "UzawaPressureAnalysis";
+		case GiaSolutionEnum : return "GiaSolution";
+		case GiaAnalysisEnum : return "GiaAnalysis";
+		case MeshdeformationSolutionEnum : return "MeshdeformationSolution";
+		case MeshdeformationAnalysisEnum : return "MeshdeformationAnalysis";
+		case LevelsetAnalysisEnum : return "LevelsetAnalysis";
+		case ExtrapolationAnalysisEnum : return "ExtrapolationAnalysis";
+		case ApproximationEnum : return "Approximation";
+		case NoneApproximationEnum : return "NoneApproximation";
+		case SIAApproximationEnum : return "SIAApproximation";
+		case SSAApproximationEnum : return "SSAApproximation";
+		case SSAHOApproximationEnum : return "SSAHOApproximation";
+		case SSAFSApproximationEnum : return "SSAFSApproximation";
+		case L1L2ApproximationEnum : return "L1L2Approximation";
+		case HOApproximationEnum : return "HOApproximation";
+		case HOFSApproximationEnum : return "HOFSApproximation";
+		case FSApproximationEnum : return "FSApproximation";
+		case FSvelocityEnum : return "FSvelocity";
+		case FSpressureEnum : return "FSpressure";
+		case GaussSegEnum : return "GaussSeg";
+		case GaussTriaEnum : return "GaussTria";
+		case GaussTetraEnum : return "GaussTetra";
+		case GaussPentaEnum : return "GaussPenta";
+		case TriangleInterpEnum : return "TriangleInterp";
+		case BilinearInterpEnum : return "BilinearInterp";
+		case NearestInterpEnum : return "NearestInterp";
+		case MinVelEnum : return "MinVel";
+		case MaxVelEnum : return "MaxVel";
+		case MinVxEnum : return "MinVx";
+		case MaxVxEnum : return "MaxVx";
+		case MaxAbsVxEnum : return "MaxAbsVx";
+		case MinVyEnum : return "MinVy";
+		case MaxVyEnum : return "MaxVy";
+		case MaxAbsVyEnum : return "MaxAbsVy";
+		case MinVzEnum : return "MinVz";
+		case MaxVzEnum : return "MaxVz";
+		case MaxAbsVzEnum : return "MaxAbsVz";
+		case FloatingAreaEnum : return "FloatingArea";
+		case GroundedAreaEnum : return "GroundedArea";
+		case IceMassEnum : return "IceMass";
+		case IceVolumeEnum : return "IceVolume";
+		case IceVolumeAboveFloatationEnum : return "IceVolumeAboveFloatation";
+		case TotalFloatingBmbEnum : return "TotalFloatingBmb";
+		case TotalGroundedBmbEnum : return "TotalGroundedBmb";
+		case TotalSmbEnum : return "TotalSmb";
+		case P0Enum : return "P0";
+		case P0ArrayEnum : return "P0Array";
+		case P1Enum : return "P1";
+		case P1DGEnum : return "P1DG";
+		case P1bubbleEnum : return "P1bubble";
+		case P1bubblecondensedEnum : return "P1bubblecondensed";
+		case P2Enum : return "P2";
+		case P2bubbleEnum : return "P2bubble";
+		case P2bubblecondensedEnum : return "P2bubblecondensed";
+		case P2xP1Enum : return "P2xP1";
+		case P1xP2Enum : return "P1xP2";
+		case P1xP3Enum : return "P1xP3";
+		case P2xP4Enum : return "P2xP4";
+		case P1P1Enum : return "P1P1";
+		case P1P1GLSEnum : return "P1P1GLS";
+		case MINIEnum : return "MINI";
+		case MINIcondensedEnum : return "MINIcondensed";
+		case TaylorHoodEnum : return "TaylorHood";
+		case LATaylorHoodEnum : return "LATaylorHood";
+		case XTaylorHoodEnum : return "XTaylorHood";
+		case OneLayerP4zEnum : return "OneLayerP4z";
+		case CrouzeixRaviartEnum : return "CrouzeixRaviart";
+		case LACrouzeixRaviartEnum : return "LACrouzeixRaviart";
+		case ClosedEnum : return "Closed";
+		case FreeEnum : return "Free";
+		case OpenEnum : return "Open";
+		case AirEnum : return "Air";
+		case IceEnum : return "Ice";
+		case MelangeEnum : return "Melange";
+		case WaterEnum : return "Water";
+		case DataSetEnum : return "DataSet";
+		case ConstraintsEnum : return "Constraints";
+		case LoadsEnum : return "Loads";
+		case MaterialsEnum : return "Materials";
+		case NodesEnum : return "Nodes";
+		case ContoursEnum : return "Contours";
+		case ParametersEnum : return "Parameters";
+		case VerticesEnum : return "Vertices";
+		case ResultsEnum : return "Results";
 		case MaximumNumberOfDefinitionsEnum : return "MaximumNumberOfDefinitions";
 		default : return "unknown";
Index: /issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp
===================================================================
--- /issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp	(revision 21087)
+++ /issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp	(revision 21088)
@@ -17,6 +17,7 @@
 
    if(stage==1){
-	      if (strcmp(name,"ParametersSTART")==0) return ParametersSTARTEnum;
-	      else if (strcmp(name,"FemModel")==0) return FemModelEnum;
+	      if (strcmp(name,"FemModel")==0) return FemModelEnum;
+	      else if (strcmp(name,"ParametersSTART")==0) return ParametersSTARTEnum;
+	      else if (strcmp(name,"FSSolver")==0) return FSSolverEnum;
 	      else if (strcmp(name,"IsRestart")==0) return IsRestartEnum;
 	      else if (strcmp(name,"FemModelComm")==0) return FemModelCommEnum;
@@ -26,4 +27,15 @@
 	      else if (strcmp(name,"ModelId")==0) return ModelIdEnum;
 	      else if (strcmp(name,"EarthId")==0) return EarthIdEnum;
+	      else if (strcmp(name,"SolutionType")==0) return SolutionTypeEnum;
+	      else if (strcmp(name,"AnalysisType")==0) return AnalysisTypeEnum;
+	      else if (strcmp(name,"AnalysisCounter")==0) return AnalysisCounterEnum;
+	      else if (strcmp(name,"ConfigurationType")==0) return ConfigurationTypeEnum;
+	      else if (strcmp(name,"InputToExtrude")==0) return InputToExtrudeEnum;
+	      else if (strcmp(name,"InputToL2Project")==0) return InputToL2ProjectEnum;
+	      else if (strcmp(name,"InputToDepthaverageIn")==0) return InputToDepthaverageInEnum;
+	      else if (strcmp(name,"InputToDepthaverageOut")==0) return InputToDepthaverageOutEnum;
+	      else if (strcmp(name,"InputToSmooth")==0) return InputToSmoothEnum;
+	      else if (strcmp(name,"SmoothThicknessMultiplier")==0) return SmoothThicknessMultiplierEnum;
+	      else if (strcmp(name,"LevelsetStabilization")==0) return LevelsetStabilizationEnum;
 	      else if (strcmp(name,"AutodiffIsautodiff")==0) return AutodiffIsautodiffEnum;
 	      else if (strcmp(name,"AutodiffNumDependents")==0) return AutodiffNumDependentsEnum;
@@ -125,5 +137,8 @@
 	      else if (strcmp(name,"FrictionCoefficient")==0) return FrictionCoefficientEnum;
 	      else if (strcmp(name,"FrictionCoefficientcoulomb")==0) return FrictionCoefficientcoulombEnum;
-	      else if (strcmp(name,"FrictionP")==0) return FrictionPEnum;
+         else stage=2;
+   }
+   if(stage==2){
+	      if (strcmp(name,"FrictionP")==0) return FrictionPEnum;
 	      else if (strcmp(name,"FrictionQ")==0) return FrictionQEnum;
 	      else if (strcmp(name,"FrictionM")==0) return FrictionMEnum;
@@ -137,8 +152,5 @@
 	      else if (strcmp(name,"GeometryHydrostaticRatio")==0) return GeometryHydrostaticRatioEnum;
 	      else if (strcmp(name,"HydrologyModel")==0) return HydrologyModelEnum;
-         else stage=2;
-   }
-   if(stage==2){
-	      if (strcmp(name,"Hydrologyshreve")==0) return HydrologyshreveEnum;
+	      else if (strcmp(name,"Hydrologyshreve")==0) return HydrologyshreveEnum;
 	      else if (strcmp(name,"HydrologyshreveSpcwatercolumn")==0) return HydrologyshreveSpcwatercolumnEnum;
 	      else if (strcmp(name,"HydrologyshreveStabilization")==0) return HydrologyshreveStabilizationEnum;
@@ -248,5 +260,8 @@
 	      else if (strcmp(name,"DamageD")==0) return DamageDEnum;
 	      else if (strcmp(name,"DamageF")==0) return DamageFEnum;
-	      else if (strcmp(name,"DamageDbar")==0) return DamageDbarEnum;
+         else stage=3;
+   }
+   if(stage==3){
+	      if (strcmp(name,"DamageDbar")==0) return DamageDbarEnum;
 	      else if (strcmp(name,"DamageLaw")==0) return DamageLawEnum;
 	      else if (strcmp(name,"DamageC1")==0) return DamageC1Enum;
@@ -260,8 +275,5 @@
 	      else if (strcmp(name,"DamageStabilization")==0) return DamageStabilizationEnum;
 	      else if (strcmp(name,"DamageMaxiter")==0) return DamageMaxiterEnum;
-         else stage=3;
-   }
-   if(stage==3){
-	      if (strcmp(name,"DamageSpcdamage")==0) return DamageSpcdamageEnum;
+	      else if (strcmp(name,"DamageSpcdamage")==0) return DamageSpcdamageEnum;
 	      else if (strcmp(name,"DamageMaxDamage")==0) return DamageMaxDamageEnum;
 	      else if (strcmp(name,"DamageEquivStress")==0) return DamageEquivStressEnum;
@@ -371,5 +383,8 @@
 	      else if (strcmp(name,"ThermalPenaltyLock")==0) return ThermalPenaltyLockEnum;
 	      else if (strcmp(name,"ThermalPenaltyThreshold")==0) return ThermalPenaltyThresholdEnum;
-	      else if (strcmp(name,"ThermalSpctemperature")==0) return ThermalSpctemperatureEnum;
+         else stage=4;
+   }
+   if(stage==4){
+	      if (strcmp(name,"ThermalSpctemperature")==0) return ThermalSpctemperatureEnum;
 	      else if (strcmp(name,"ThermalStabilization")==0) return ThermalStabilizationEnum;
 	      else if (strcmp(name,"ThermalNumRequestedOutputs")==0) return ThermalNumRequestedOutputsEnum;
@@ -383,8 +398,5 @@
 	      else if (strcmp(name,"TimesteppingTimeAdapt")==0) return TimesteppingTimeAdaptEnum;
 	      else if (strcmp(name,"TimesteppingTimeStep")==0) return TimesteppingTimeStepEnum;
-         else stage=4;
-   }
-   if(stage==4){
-	      if (strcmp(name,"TimesteppingInterpForcings")==0) return TimesteppingInterpForcingsEnum;
+	      else if (strcmp(name,"TimesteppingInterpForcings")==0) return TimesteppingInterpForcingsEnum;
 	      else if (strcmp(name,"TransientIssmb")==0) return TransientIssmbEnum;
 	      else if (strcmp(name,"TransientIscoupler")==0) return TransientIscouplerEnum;
@@ -494,5 +506,8 @@
 	      else if (strcmp(name,"SMBhenning")==0) return SMBhenningEnum;
 	      else if (strcmp(name,"SMBcomponents")==0) return SMBcomponentsEnum;
-	      else if (strcmp(name,"SmbAccumulation")==0) return SmbAccumulationEnum;
+         else stage=5;
+   }
+   if(stage==5){
+	      if (strcmp(name,"SmbAccumulation")==0) return SmbAccumulationEnum;
 	      else if (strcmp(name,"SmbEvaporation")==0) return SmbEvaporationEnum;
 	      else if (strcmp(name,"SmbRunoff")==0) return SmbRunoffEnum;
@@ -503,171 +518,4 @@
 	      else if (strcmp(name,"SmbIspdd")==0) return SmbIspddEnum;
 	      else if (strcmp(name,"SmbIssmbgradients")==0) return SmbIssmbgradientsEnum;
-	      else if (strcmp(name,"SolutionType")==0) return SolutionTypeEnum;
-	      else if (strcmp(name,"AnalysisType")==0) return AnalysisTypeEnum;
-	      else if (strcmp(name,"ConfigurationType")==0) return ConfigurationTypeEnum;
-         else stage=5;
-   }
-   if(stage==5){
-	      if (strcmp(name,"AdjointBalancethicknessAnalysis")==0) return AdjointBalancethicknessAnalysisEnum;
-	      else if (strcmp(name,"AdjointBalancethickness2Analysis")==0) return AdjointBalancethickness2AnalysisEnum;
-	      else if (strcmp(name,"AdjointHorizAnalysis")==0) return AdjointHorizAnalysisEnum;
-	      else if (strcmp(name,"AnalysisCounter")==0) return AnalysisCounterEnum;
-	      else if (strcmp(name,"DefaultAnalysis")==0) return DefaultAnalysisEnum;
-	      else if (strcmp(name,"BalancethicknessAnalysis")==0) return BalancethicknessAnalysisEnum;
-	      else if (strcmp(name,"BalancethicknessSolution")==0) return BalancethicknessSolutionEnum;
-	      else if (strcmp(name,"Balancethickness2Analysis")==0) return Balancethickness2AnalysisEnum;
-	      else if (strcmp(name,"Balancethickness2Solution")==0) return Balancethickness2SolutionEnum;
-	      else if (strcmp(name,"BalancethicknessSoftAnalysis")==0) return BalancethicknessSoftAnalysisEnum;
-	      else if (strcmp(name,"BalancethicknessSoftSolution")==0) return BalancethicknessSoftSolutionEnum;
-	      else if (strcmp(name,"BalancevelocityAnalysis")==0) return BalancevelocityAnalysisEnum;
-	      else if (strcmp(name,"BalancevelocitySolution")==0) return BalancevelocitySolutionEnum;
-	      else if (strcmp(name,"L2ProjectionEPLAnalysis")==0) return L2ProjectionEPLAnalysisEnum;
-	      else if (strcmp(name,"L2ProjectionBaseAnalysis")==0) return L2ProjectionBaseAnalysisEnum;
-	      else if (strcmp(name,"BedSlopeSolution")==0) return BedSlopeSolutionEnum;
-	      else if (strcmp(name,"DamageEvolutionSolution")==0) return DamageEvolutionSolutionEnum;
-	      else if (strcmp(name,"DamageEvolutionAnalysis")==0) return DamageEvolutionAnalysisEnum;
-	      else if (strcmp(name,"StressbalanceAnalysis")==0) return StressbalanceAnalysisEnum;
-	      else if (strcmp(name,"StressbalanceSIAAnalysis")==0) return StressbalanceSIAAnalysisEnum;
-	      else if (strcmp(name,"StressbalanceSolution")==0) return StressbalanceSolutionEnum;
-	      else if (strcmp(name,"StressbalanceVerticalAnalysis")==0) return StressbalanceVerticalAnalysisEnum;
-	      else if (strcmp(name,"EnthalpyAnalysis")==0) return EnthalpyAnalysisEnum;
-	      else if (strcmp(name,"FlaimAnalysis")==0) return FlaimAnalysisEnum;
-	      else if (strcmp(name,"FlaimSolution")==0) return FlaimSolutionEnum;
-	      else if (strcmp(name,"HydrologyShreveAnalysis")==0) return HydrologyShreveAnalysisEnum;
-	      else if (strcmp(name,"HydrologyDCInefficientAnalysis")==0) return HydrologyDCInefficientAnalysisEnum;
-	      else if (strcmp(name,"HydrologyDCEfficientAnalysis")==0) return HydrologyDCEfficientAnalysisEnum;
-	      else if (strcmp(name,"HydrologySommersAnalysis")==0) return HydrologySommersAnalysisEnum;
-	      else if (strcmp(name,"HydrologySolution")==0) return HydrologySolutionEnum;
-	      else if (strcmp(name,"MeltingAnalysis")==0) return MeltingAnalysisEnum;
-	      else if (strcmp(name,"MasstransportAnalysis")==0) return MasstransportAnalysisEnum;
-	      else if (strcmp(name,"MasstransportSolution")==0) return MasstransportSolutionEnum;
-	      else if (strcmp(name,"FreeSurfaceBaseAnalysis")==0) return FreeSurfaceBaseAnalysisEnum;
-	      else if (strcmp(name,"FreeSurfaceTopAnalysis")==0) return FreeSurfaceTopAnalysisEnum;
-	      else if (strcmp(name,"SurfaceNormalVelocity")==0) return SurfaceNormalVelocityEnum;
-	      else if (strcmp(name,"ExtrudeFromBaseAnalysis")==0) return ExtrudeFromBaseAnalysisEnum;
-	      else if (strcmp(name,"ExtrudeFromTopAnalysis")==0) return ExtrudeFromTopAnalysisEnum;
-	      else if (strcmp(name,"DepthAverageAnalysis")==0) return DepthAverageAnalysisEnum;
-	      else if (strcmp(name,"SteadystateSolution")==0) return SteadystateSolutionEnum;
-	      else if (strcmp(name,"SurfaceSlopeSolution")==0) return SurfaceSlopeSolutionEnum;
-	      else if (strcmp(name,"SmoothAnalysis")==0) return SmoothAnalysisEnum;
-	      else if (strcmp(name,"ThermalAnalysis")==0) return ThermalAnalysisEnum;
-	      else if (strcmp(name,"ThermalSolution")==0) return ThermalSolutionEnum;
-	      else if (strcmp(name,"TransientSolution")==0) return TransientSolutionEnum;
-	      else if (strcmp(name,"UzawaPressureAnalysis")==0) return UzawaPressureAnalysisEnum;
-	      else if (strcmp(name,"GiaSolution")==0) return GiaSolutionEnum;
-	      else if (strcmp(name,"GiaAnalysis")==0) return GiaAnalysisEnum;
-	      else if (strcmp(name,"MeshdeformationSolution")==0) return MeshdeformationSolutionEnum;
-	      else if (strcmp(name,"MeshdeformationAnalysis")==0) return MeshdeformationAnalysisEnum;
-	      else if (strcmp(name,"LevelsetAnalysis")==0) return LevelsetAnalysisEnum;
-	      else if (strcmp(name,"LevelsetStabilization")==0) return LevelsetStabilizationEnum;
-	      else if (strcmp(name,"ExtrapolationAnalysis")==0) return ExtrapolationAnalysisEnum;
-	      else if (strcmp(name,"Approximation")==0) return ApproximationEnum;
-	      else if (strcmp(name,"NoneApproximation")==0) return NoneApproximationEnum;
-	      else if (strcmp(name,"SIAApproximation")==0) return SIAApproximationEnum;
-	      else if (strcmp(name,"SSAApproximation")==0) return SSAApproximationEnum;
-	      else if (strcmp(name,"SSAHOApproximation")==0) return SSAHOApproximationEnum;
-	      else if (strcmp(name,"SSAFSApproximation")==0) return SSAFSApproximationEnum;
-	      else if (strcmp(name,"L1L2Approximation")==0) return L1L2ApproximationEnum;
-	      else if (strcmp(name,"HOApproximation")==0) return HOApproximationEnum;
-	      else if (strcmp(name,"HOFSApproximation")==0) return HOFSApproximationEnum;
-	      else if (strcmp(name,"FSApproximation")==0) return FSApproximationEnum;
-	      else if (strcmp(name,"FSvelocity")==0) return FSvelocityEnum;
-	      else if (strcmp(name,"FSpressure")==0) return FSpressureEnum;
-	      else if (strcmp(name,"DataSet")==0) return DataSetEnum;
-	      else if (strcmp(name,"Constraints")==0) return ConstraintsEnum;
-	      else if (strcmp(name,"Loads")==0) return LoadsEnum;
-	      else if (strcmp(name,"Materials")==0) return MaterialsEnum;
-	      else if (strcmp(name,"Nodes")==0) return NodesEnum;
-	      else if (strcmp(name,"Contours")==0) return ContoursEnum;
-	      else if (strcmp(name,"Parameters")==0) return ParametersEnum;
-	      else if (strcmp(name,"Vertices")==0) return VerticesEnum;
-	      else if (strcmp(name,"Results")==0) return ResultsEnum;
-	      else if (strcmp(name,"GenericParam")==0) return GenericParamEnum;
-	      else if (strcmp(name,"AdolcParam")==0) return AdolcParamEnum;
-	      else if (strcmp(name,"BoolInput")==0) return BoolInputEnum;
-	      else if (strcmp(name,"BoolParam")==0) return BoolParamEnum;
-	      else if (strcmp(name,"Contour")==0) return ContourEnum;
-	      else if (strcmp(name,"ControlInput")==0) return ControlInputEnum;
-	      else if (strcmp(name,"DatasetInput")==0) return DatasetInputEnum;
-	      else if (strcmp(name,"DoubleInput")==0) return DoubleInputEnum;
-	      else if (strcmp(name,"DoubleArrayInput")==0) return DoubleArrayInputEnum;
-	      else if (strcmp(name,"DataSetParam")==0) return DataSetParamEnum;
-	      else if (strcmp(name,"DoubleMatArrayParam")==0) return DoubleMatArrayParamEnum;
-	      else if (strcmp(name,"DoubleMatParam")==0) return DoubleMatParamEnum;
-	      else if (strcmp(name,"DoubleParam")==0) return DoubleParamEnum;
-	      else if (strcmp(name,"DoubleVecParam")==0) return DoubleVecParamEnum;
-	      else if (strcmp(name,"Element")==0) return ElementEnum;
-	      else if (strcmp(name,"ElementHook")==0) return ElementHookEnum;
-	      else if (strcmp(name,"Hook")==0) return HookEnum;
-	      else if (strcmp(name,"ExternalResult")==0) return ExternalResultEnum;
-	      else if (strcmp(name,"FileParam")==0) return FileParamEnum;
-	      else if (strcmp(name,"Input")==0) return InputEnum;
-	      else if (strcmp(name,"IntInput")==0) return IntInputEnum;
-	      else if (strcmp(name,"InputToExtrude")==0) return InputToExtrudeEnum;
-	      else if (strcmp(name,"InputToL2Project")==0) return InputToL2ProjectEnum;
-	      else if (strcmp(name,"InputToDepthaverageIn")==0) return InputToDepthaverageInEnum;
-	      else if (strcmp(name,"InputToDepthaverageOut")==0) return InputToDepthaverageOutEnum;
-	      else if (strcmp(name,"InputToSmooth")==0) return InputToSmoothEnum;
-	      else if (strcmp(name,"SmoothThicknessMultiplier")==0) return SmoothThicknessMultiplierEnum;
-	      else if (strcmp(name,"IntParam")==0) return IntParamEnum;
-	      else if (strcmp(name,"IntVecParam")==0) return IntVecParamEnum;
-	      else if (strcmp(name,"TransientParam")==0) return TransientParamEnum;
-	      else if (strcmp(name,"Matice")==0) return MaticeEnum;
-	      else if (strcmp(name,"Matdamageice")==0) return MatdamageiceEnum;
-	      else if (strcmp(name,"Matestar")==0) return MatestarEnum;
-	      else if (strcmp(name,"Matpar")==0) return MatparEnum;
-	      else if (strcmp(name,"Node")==0) return NodeEnum;
-	      else if (strcmp(name,"Numericalflux")==0) return NumericalfluxEnum;
-	      else if (strcmp(name,"NumericalfluxType")==0) return NumericalfluxTypeEnum;
-	      else if (strcmp(name,"Neumannflux")==0) return NeumannfluxEnum;
-	      else if (strcmp(name,"Param")==0) return ParamEnum;
-	      else if (strcmp(name,"Moulin")==0) return MoulinEnum;
-	      else if (strcmp(name,"Pengrid")==0) return PengridEnum;
-	      else if (strcmp(name,"Penpair")==0) return PenpairEnum;
-	      else if (strcmp(name,"Profiler")==0) return ProfilerEnum;
-	      else if (strcmp(name,"MatrixParam")==0) return MatrixParamEnum;
-	      else if (strcmp(name,"Masscon")==0) return MassconEnum;
-	      else if (strcmp(name,"MassconName")==0) return MassconNameEnum;
-         else stage=6;
-   }
-   if(stage==6){
-	      if (strcmp(name,"MassconDefinitionenum")==0) return MassconDefinitionenumEnum;
-	      else if (strcmp(name,"MassconLevelset")==0) return MassconLevelsetEnum;
-	      else if (strcmp(name,"Massconaxpby")==0) return MassconaxpbyEnum;
-	      else if (strcmp(name,"MassconaxpbyName")==0) return MassconaxpbyNameEnum;
-	      else if (strcmp(name,"MassconaxpbyDefinitionenum")==0) return MassconaxpbyDefinitionenumEnum;
-	      else if (strcmp(name,"MassconaxpbyNamex")==0) return MassconaxpbyNamexEnum;
-	      else if (strcmp(name,"MassconaxpbyNamey")==0) return MassconaxpbyNameyEnum;
-	      else if (strcmp(name,"MassconaxpbyAlpha")==0) return MassconaxpbyAlphaEnum;
-	      else if (strcmp(name,"MassconaxpbyBeta")==0) return MassconaxpbyBetaEnum;
-	      else if (strcmp(name,"NodeSId")==0) return NodeSIdEnum;
-	      else if (strcmp(name,"VectorParam")==0) return VectorParamEnum;
-	      else if (strcmp(name,"Riftfront")==0) return RiftfrontEnum;
-	      else if (strcmp(name,"RiftfrontType")==0) return RiftfrontTypeEnum;
-	      else if (strcmp(name,"Segment")==0) return SegmentEnum;
-	      else if (strcmp(name,"SegmentRiftfront")==0) return SegmentRiftfrontEnum;
-	      else if (strcmp(name,"SpcDynamic")==0) return SpcDynamicEnum;
-	      else if (strcmp(name,"SpcStatic")==0) return SpcStaticEnum;
-	      else if (strcmp(name,"SpcTransient")==0) return SpcTransientEnum;
-	      else if (strcmp(name,"StringArrayParam")==0) return StringArrayParamEnum;
-	      else if (strcmp(name,"StringParam")==0) return StringParamEnum;
-	      else if (strcmp(name,"Seg")==0) return SegEnum;
-	      else if (strcmp(name,"SegInput")==0) return SegInputEnum;
-	      else if (strcmp(name,"Tria")==0) return TriaEnum;
-	      else if (strcmp(name,"TriaInput")==0) return TriaInputEnum;
-	      else if (strcmp(name,"Tetra")==0) return TetraEnum;
-	      else if (strcmp(name,"TetraInput")==0) return TetraInputEnum;
-	      else if (strcmp(name,"Penta")==0) return PentaEnum;
-	      else if (strcmp(name,"PentaInput")==0) return PentaInputEnum;
-	      else if (strcmp(name,"Vertex")==0) return VertexEnum;
-	      else if (strcmp(name,"VertexPId")==0) return VertexPIdEnum;
-	      else if (strcmp(name,"VertexSId")==0) return VertexSIdEnum;
-	      else if (strcmp(name,"Air")==0) return AirEnum;
-	      else if (strcmp(name,"Ice")==0) return IceEnum;
-	      else if (strcmp(name,"Melange")==0) return MelangeEnum;
-	      else if (strcmp(name,"Water")==0) return WaterEnum;
-	      else if (strcmp(name,"Closed")==0) return ClosedEnum;
-	      else if (strcmp(name,"Free")==0) return FreeEnum;
-	      else if (strcmp(name,"Open")==0) return OpenEnum;
 	      else if (strcmp(name,"Adjointp")==0) return AdjointpEnum;
 	      else if (strcmp(name,"Adjointx")==0) return AdjointxEnum;
@@ -752,8 +600,5 @@
 	      else if (strcmp(name,"DeviatoricStressxy")==0) return DeviatoricStressxyEnum;
 	      else if (strcmp(name,"DeviatoricStressxz")==0) return DeviatoricStressxzEnum;
-         else stage=7;
-   }
-   if(stage==7){
-	      if (strcmp(name,"DeviatoricStressyy")==0) return DeviatoricStressyyEnum;
+	      else if (strcmp(name,"DeviatoricStressyy")==0) return DeviatoricStressyyEnum;
 	      else if (strcmp(name,"DeviatoricStressyz")==0) return DeviatoricStressyzEnum;
 	      else if (strcmp(name,"DeviatoricStresszz")==0) return DeviatoricStresszzEnum;
@@ -772,27 +617,4 @@
 	      else if (strcmp(name,"GiadWdt")==0) return GiadWdtEnum;
 	      else if (strcmp(name,"GiaW")==0) return GiaWEnum;
-	      else if (strcmp(name,"P0")==0) return P0Enum;
-	      else if (strcmp(name,"P0Array")==0) return P0ArrayEnum;
-	      else if (strcmp(name,"P1")==0) return P1Enum;
-	      else if (strcmp(name,"P1DG")==0) return P1DGEnum;
-	      else if (strcmp(name,"P1bubble")==0) return P1bubbleEnum;
-	      else if (strcmp(name,"P1bubblecondensed")==0) return P1bubblecondensedEnum;
-	      else if (strcmp(name,"P2")==0) return P2Enum;
-	      else if (strcmp(name,"P2bubble")==0) return P2bubbleEnum;
-	      else if (strcmp(name,"P2bubblecondensed")==0) return P2bubblecondensedEnum;
-	      else if (strcmp(name,"P2xP1")==0) return P2xP1Enum;
-	      else if (strcmp(name,"P1xP2")==0) return P1xP2Enum;
-	      else if (strcmp(name,"P1xP3")==0) return P1xP3Enum;
-	      else if (strcmp(name,"P2xP4")==0) return P2xP4Enum;
-	      else if (strcmp(name,"P1P1")==0) return P1P1Enum;
-	      else if (strcmp(name,"P1P1GLS")==0) return P1P1GLSEnum;
-	      else if (strcmp(name,"MINI")==0) return MINIEnum;
-	      else if (strcmp(name,"MINIcondensed")==0) return MINIcondensedEnum;
-	      else if (strcmp(name,"TaylorHood")==0) return TaylorHoodEnum;
-	      else if (strcmp(name,"LATaylorHood")==0) return LATaylorHoodEnum;
-	      else if (strcmp(name,"XTaylorHood")==0) return XTaylorHoodEnum;
-	      else if (strcmp(name,"OneLayerP4z")==0) return OneLayerP4zEnum;
-	      else if (strcmp(name,"CrouzeixRaviart")==0) return CrouzeixRaviartEnum;
-	      else if (strcmp(name,"LACrouzeixRaviart")==0) return LACrouzeixRaviartEnum;
 	      else if (strcmp(name,"SaveResults")==0) return SaveResultsEnum;
 	      else if (strcmp(name,"BoolExternalResult")==0) return BoolExternalResultEnum;
@@ -807,5 +629,8 @@
 	      else if (strcmp(name,"Outputdefinition")==0) return OutputdefinitionEnum;
 	      else if (strcmp(name,"Outputdefinition1")==0) return Outputdefinition1Enum;
-	      else if (strcmp(name,"Outputdefinition2")==0) return Outputdefinition2Enum;
+         else stage=6;
+   }
+   if(stage==6){
+	      if (strcmp(name,"Outputdefinition2")==0) return Outputdefinition2Enum;
 	      else if (strcmp(name,"Outputdefinition3")==0) return Outputdefinition3Enum;
 	      else if (strcmp(name,"Outputdefinition4")==0) return Outputdefinition4Enum;
@@ -875,8 +700,5 @@
 	      else if (strcmp(name,"Outputdefinition68")==0) return Outputdefinition68Enum;
 	      else if (strcmp(name,"Outputdefinition69")==0) return Outputdefinition69Enum;
-         else stage=8;
-   }
-   if(stage==8){
-	      if (strcmp(name,"Outputdefinition70")==0) return Outputdefinition70Enum;
+	      else if (strcmp(name,"Outputdefinition70")==0) return Outputdefinition70Enum;
 	      else if (strcmp(name,"Outputdefinition71")==0) return Outputdefinition71Enum;
 	      else if (strcmp(name,"Outputdefinition72")==0) return Outputdefinition72Enum;
@@ -930,27 +752,11 @@
 	      else if (strcmp(name,"SurfaceObservation")==0) return SurfaceObservationEnum;
 	      else if (strcmp(name,"WeightsSurfaceObservation")==0) return WeightsSurfaceObservationEnum;
-	      else if (strcmp(name,"VxObs")==0) return VxObsEnum;
+         else stage=7;
+   }
+   if(stage==7){
+	      if (strcmp(name,"VxObs")==0) return VxObsEnum;
 	      else if (strcmp(name,"WeightsVxObs")==0) return WeightsVxObsEnum;
 	      else if (strcmp(name,"VyObs")==0) return VyObsEnum;
 	      else if (strcmp(name,"WeightsVyObs")==0) return WeightsVyObsEnum;
-	      else if (strcmp(name,"MinVel")==0) return MinVelEnum;
-	      else if (strcmp(name,"MaxVel")==0) return MaxVelEnum;
-	      else if (strcmp(name,"MinVx")==0) return MinVxEnum;
-	      else if (strcmp(name,"MaxVx")==0) return MaxVxEnum;
-	      else if (strcmp(name,"MaxAbsVx")==0) return MaxAbsVxEnum;
-	      else if (strcmp(name,"MinVy")==0) return MinVyEnum;
-	      else if (strcmp(name,"MaxVy")==0) return MaxVyEnum;
-	      else if (strcmp(name,"MaxAbsVy")==0) return MaxAbsVyEnum;
-	      else if (strcmp(name,"MinVz")==0) return MinVzEnum;
-	      else if (strcmp(name,"MaxVz")==0) return MaxVzEnum;
-	      else if (strcmp(name,"MaxAbsVz")==0) return MaxAbsVzEnum;
-	      else if (strcmp(name,"FloatingArea")==0) return FloatingAreaEnum;
-	      else if (strcmp(name,"GroundedArea")==0) return GroundedAreaEnum;
-	      else if (strcmp(name,"IceMass")==0) return IceMassEnum;
-	      else if (strcmp(name,"IceVolume")==0) return IceVolumeEnum;
-	      else if (strcmp(name,"IceVolumeAboveFloatation")==0) return IceVolumeAboveFloatationEnum;
-	      else if (strcmp(name,"TotalFloatingBmb")==0) return TotalFloatingBmbEnum;
-	      else if (strcmp(name,"TotalGroundedBmb")==0) return TotalGroundedBmbEnum;
-	      else if (strcmp(name,"TotalSmb")==0) return TotalSmbEnum;
 	      else if (strcmp(name,"Absolute")==0) return AbsoluteEnum;
 	      else if (strcmp(name,"Incremental")==0) return IncrementalEnum;
@@ -968,9 +774,4 @@
 	      else if (strcmp(name,"GroundingOnly")==0) return GroundingOnlyEnum;
 	      else if (strcmp(name,"MaskGroundediceLevelset")==0) return MaskGroundediceLevelsetEnum;
-	      else if (strcmp(name,"GaussSeg")==0) return GaussSegEnum;
-	      else if (strcmp(name,"GaussTria")==0) return GaussTriaEnum;
-	      else if (strcmp(name,"GaussTetra")==0) return GaussTetraEnum;
-	      else if (strcmp(name,"GaussPenta")==0) return GaussPentaEnum;
-	      else if (strcmp(name,"FSSolver")==0) return FSSolverEnum;
 	      else if (strcmp(name,"Adjoint")==0) return AdjointEnum;
 	      else if (strcmp(name,"Colinear")==0) return ColinearEnum;
@@ -998,8 +799,5 @@
 	      else if (strcmp(name,"RestartFileName")==0) return RestartFileNameEnum;
 	      else if (strcmp(name,"ToolkitsOptionsAnalyses")==0) return ToolkitsOptionsAnalysesEnum;
-         else stage=9;
-   }
-   if(stage==9){
-	      if (strcmp(name,"ToolkitsOptionsStrings")==0) return ToolkitsOptionsStringsEnum;
+	      else if (strcmp(name,"ToolkitsOptionsStrings")==0) return ToolkitsOptionsStringsEnum;
 	      else if (strcmp(name,"QmuErrName")==0) return QmuErrNameEnum;
 	      else if (strcmp(name,"QmuInName")==0) return QmuInNameEnum;
@@ -1010,7 +808,4 @@
 	      else if (strcmp(name,"Sset")==0) return SsetEnum;
 	      else if (strcmp(name,"Verbose")==0) return VerboseEnum;
-	      else if (strcmp(name,"TriangleInterp")==0) return TriangleInterpEnum;
-	      else if (strcmp(name,"BilinearInterp")==0) return BilinearInterpEnum;
-	      else if (strcmp(name,"NearestInterp")==0) return NearestInterpEnum;
 	      else if (strcmp(name,"XY")==0) return XYEnum;
 	      else if (strcmp(name,"XYZ")==0) return XYZEnum;
@@ -1022,8 +817,4 @@
 	      else if (strcmp(name,"Mumps")==0) return MumpsEnum;
 	      else if (strcmp(name,"Gsl")==0) return GslEnum;
-	      else if (strcmp(name,"Option")==0) return OptionEnum;
-	      else if (strcmp(name,"GenericOption")==0) return GenericOptionEnum;
-	      else if (strcmp(name,"OptionCell")==0) return OptionCellEnum;
-	      else if (strcmp(name,"OptionStruct")==0) return OptionStructEnum;
 	      else if (strcmp(name,"Cuffey")==0) return CuffeyEnum;
 	      else if (strcmp(name,"BuddJacka")==0) return BuddJackaEnum;
@@ -1039,6 +830,4 @@
 	      else if (strcmp(name,"LevelsetfunctionPicard")==0) return LevelsetfunctionPicardEnum;
 	      else if (strcmp(name,"LevelsetReinitFrequency")==0) return LevelsetReinitFrequencyEnum;
-	      else if (strcmp(name,"SealevelriseSolution")==0) return SealevelriseSolutionEnum;
-	      else if (strcmp(name,"SealevelriseAnalysis")==0) return SealevelriseAnalysisEnum;
 	      else if (strcmp(name,"Sealevel")==0) return SealevelEnum;
 	      else if (strcmp(name,"SealevelUmotion")==0) return SealevelUmotionEnum;
@@ -1066,4 +855,215 @@
 	      else if (strcmp(name,"SealevelriseNumRequestedOutputs")==0) return SealevelriseNumRequestedOutputsEnum;
 	      else if (strcmp(name,"ParametersEND")==0) return ParametersENDEnum;
+	      else if (strcmp(name,"GenericParam")==0) return GenericParamEnum;
+	      else if (strcmp(name,"AdolcParam")==0) return AdolcParamEnum;
+	      else if (strcmp(name,"BoolInput")==0) return BoolInputEnum;
+	      else if (strcmp(name,"BoolParam")==0) return BoolParamEnum;
+	      else if (strcmp(name,"Contour")==0) return ContourEnum;
+	      else if (strcmp(name,"ControlInput")==0) return ControlInputEnum;
+	      else if (strcmp(name,"DatasetInput")==0) return DatasetInputEnum;
+	      else if (strcmp(name,"DoubleInput")==0) return DoubleInputEnum;
+	      else if (strcmp(name,"DoubleArrayInput")==0) return DoubleArrayInputEnum;
+	      else if (strcmp(name,"DataSetParam")==0) return DataSetParamEnum;
+	      else if (strcmp(name,"DoubleMatArrayParam")==0) return DoubleMatArrayParamEnum;
+	      else if (strcmp(name,"DoubleMatParam")==0) return DoubleMatParamEnum;
+	      else if (strcmp(name,"DoubleParam")==0) return DoubleParamEnum;
+	      else if (strcmp(name,"DoubleVecParam")==0) return DoubleVecParamEnum;
+	      else if (strcmp(name,"Element")==0) return ElementEnum;
+	      else if (strcmp(name,"ElementHook")==0) return ElementHookEnum;
+	      else if (strcmp(name,"Hook")==0) return HookEnum;
+	      else if (strcmp(name,"ExternalResult")==0) return ExternalResultEnum;
+	      else if (strcmp(name,"FileParam")==0) return FileParamEnum;
+	      else if (strcmp(name,"Input")==0) return InputEnum;
+         else stage=8;
+   }
+   if(stage==8){
+	      if (strcmp(name,"IntInput")==0) return IntInputEnum;
+	      else if (strcmp(name,"IntParam")==0) return IntParamEnum;
+	      else if (strcmp(name,"IntVecParam")==0) return IntVecParamEnum;
+	      else if (strcmp(name,"TransientParam")==0) return TransientParamEnum;
+	      else if (strcmp(name,"Matice")==0) return MaticeEnum;
+	      else if (strcmp(name,"Matdamageice")==0) return MatdamageiceEnum;
+	      else if (strcmp(name,"Matestar")==0) return MatestarEnum;
+	      else if (strcmp(name,"Matpar")==0) return MatparEnum;
+	      else if (strcmp(name,"Node")==0) return NodeEnum;
+	      else if (strcmp(name,"Numericalflux")==0) return NumericalfluxEnum;
+	      else if (strcmp(name,"NumericalfluxType")==0) return NumericalfluxTypeEnum;
+	      else if (strcmp(name,"Neumannflux")==0) return NeumannfluxEnum;
+	      else if (strcmp(name,"Param")==0) return ParamEnum;
+	      else if (strcmp(name,"Moulin")==0) return MoulinEnum;
+	      else if (strcmp(name,"Pengrid")==0) return PengridEnum;
+	      else if (strcmp(name,"Penpair")==0) return PenpairEnum;
+	      else if (strcmp(name,"Profiler")==0) return ProfilerEnum;
+	      else if (strcmp(name,"MatrixParam")==0) return MatrixParamEnum;
+	      else if (strcmp(name,"Masscon")==0) return MassconEnum;
+	      else if (strcmp(name,"MassconName")==0) return MassconNameEnum;
+	      else if (strcmp(name,"MassconDefinitionenum")==0) return MassconDefinitionenumEnum;
+	      else if (strcmp(name,"MassconLevelset")==0) return MassconLevelsetEnum;
+	      else if (strcmp(name,"Massconaxpby")==0) return MassconaxpbyEnum;
+	      else if (strcmp(name,"MassconaxpbyName")==0) return MassconaxpbyNameEnum;
+	      else if (strcmp(name,"MassconaxpbyDefinitionenum")==0) return MassconaxpbyDefinitionenumEnum;
+	      else if (strcmp(name,"MassconaxpbyNamex")==0) return MassconaxpbyNamexEnum;
+	      else if (strcmp(name,"MassconaxpbyNamey")==0) return MassconaxpbyNameyEnum;
+	      else if (strcmp(name,"MassconaxpbyAlpha")==0) return MassconaxpbyAlphaEnum;
+	      else if (strcmp(name,"MassconaxpbyBeta")==0) return MassconaxpbyBetaEnum;
+	      else if (strcmp(name,"NodeSId")==0) return NodeSIdEnum;
+	      else if (strcmp(name,"VectorParam")==0) return VectorParamEnum;
+	      else if (strcmp(name,"Riftfront")==0) return RiftfrontEnum;
+	      else if (strcmp(name,"RiftfrontType")==0) return RiftfrontTypeEnum;
+	      else if (strcmp(name,"Segment")==0) return SegmentEnum;
+	      else if (strcmp(name,"SegmentRiftfront")==0) return SegmentRiftfrontEnum;
+	      else if (strcmp(name,"SpcDynamic")==0) return SpcDynamicEnum;
+	      else if (strcmp(name,"SpcStatic")==0) return SpcStaticEnum;
+	      else if (strcmp(name,"SpcTransient")==0) return SpcTransientEnum;
+	      else if (strcmp(name,"StringArrayParam")==0) return StringArrayParamEnum;
+	      else if (strcmp(name,"StringParam")==0) return StringParamEnum;
+	      else if (strcmp(name,"Seg")==0) return SegEnum;
+	      else if (strcmp(name,"SegInput")==0) return SegInputEnum;
+	      else if (strcmp(name,"Tria")==0) return TriaEnum;
+	      else if (strcmp(name,"TriaInput")==0) return TriaInputEnum;
+	      else if (strcmp(name,"Tetra")==0) return TetraEnum;
+	      else if (strcmp(name,"TetraInput")==0) return TetraInputEnum;
+	      else if (strcmp(name,"Penta")==0) return PentaEnum;
+	      else if (strcmp(name,"PentaInput")==0) return PentaInputEnum;
+	      else if (strcmp(name,"Vertex")==0) return VertexEnum;
+	      else if (strcmp(name,"VertexPId")==0) return VertexPIdEnum;
+	      else if (strcmp(name,"VertexSId")==0) return VertexSIdEnum;
+	      else if (strcmp(name,"Option")==0) return OptionEnum;
+	      else if (strcmp(name,"GenericOption")==0) return GenericOptionEnum;
+	      else if (strcmp(name,"OptionCell")==0) return OptionCellEnum;
+	      else if (strcmp(name,"OptionStruct")==0) return OptionStructEnum;
+	      else if (strcmp(name,"AdjointBalancethicknessAnalysis")==0) return AdjointBalancethicknessAnalysisEnum;
+	      else if (strcmp(name,"AdjointBalancethickness2Analysis")==0) return AdjointBalancethickness2AnalysisEnum;
+	      else if (strcmp(name,"AdjointHorizAnalysis")==0) return AdjointHorizAnalysisEnum;
+	      else if (strcmp(name,"DefaultAnalysis")==0) return DefaultAnalysisEnum;
+	      else if (strcmp(name,"BalancethicknessAnalysis")==0) return BalancethicknessAnalysisEnum;
+	      else if (strcmp(name,"BalancethicknessSolution")==0) return BalancethicknessSolutionEnum;
+	      else if (strcmp(name,"Balancethickness2Analysis")==0) return Balancethickness2AnalysisEnum;
+	      else if (strcmp(name,"Balancethickness2Solution")==0) return Balancethickness2SolutionEnum;
+	      else if (strcmp(name,"BalancethicknessSoftAnalysis")==0) return BalancethicknessSoftAnalysisEnum;
+	      else if (strcmp(name,"BalancethicknessSoftSolution")==0) return BalancethicknessSoftSolutionEnum;
+	      else if (strcmp(name,"BalancevelocityAnalysis")==0) return BalancevelocityAnalysisEnum;
+	      else if (strcmp(name,"BalancevelocitySolution")==0) return BalancevelocitySolutionEnum;
+	      else if (strcmp(name,"L2ProjectionEPLAnalysis")==0) return L2ProjectionEPLAnalysisEnum;
+	      else if (strcmp(name,"L2ProjectionBaseAnalysis")==0) return L2ProjectionBaseAnalysisEnum;
+	      else if (strcmp(name,"BedSlopeSolution")==0) return BedSlopeSolutionEnum;
+	      else if (strcmp(name,"DamageEvolutionSolution")==0) return DamageEvolutionSolutionEnum;
+	      else if (strcmp(name,"DamageEvolutionAnalysis")==0) return DamageEvolutionAnalysisEnum;
+	      else if (strcmp(name,"StressbalanceAnalysis")==0) return StressbalanceAnalysisEnum;
+	      else if (strcmp(name,"StressbalanceSIAAnalysis")==0) return StressbalanceSIAAnalysisEnum;
+	      else if (strcmp(name,"StressbalanceSolution")==0) return StressbalanceSolutionEnum;
+	      else if (strcmp(name,"StressbalanceVerticalAnalysis")==0) return StressbalanceVerticalAnalysisEnum;
+	      else if (strcmp(name,"EnthalpyAnalysis")==0) return EnthalpyAnalysisEnum;
+	      else if (strcmp(name,"FlaimAnalysis")==0) return FlaimAnalysisEnum;
+	      else if (strcmp(name,"FlaimSolution")==0) return FlaimSolutionEnum;
+	      else if (strcmp(name,"HydrologyShreveAnalysis")==0) return HydrologyShreveAnalysisEnum;
+	      else if (strcmp(name,"HydrologyDCInefficientAnalysis")==0) return HydrologyDCInefficientAnalysisEnum;
+	      else if (strcmp(name,"HydrologyDCEfficientAnalysis")==0) return HydrologyDCEfficientAnalysisEnum;
+	      else if (strcmp(name,"HydrologySommersAnalysis")==0) return HydrologySommersAnalysisEnum;
+	      else if (strcmp(name,"HydrologySolution")==0) return HydrologySolutionEnum;
+	      else if (strcmp(name,"MeltingAnalysis")==0) return MeltingAnalysisEnum;
+	      else if (strcmp(name,"MasstransportAnalysis")==0) return MasstransportAnalysisEnum;
+	      else if (strcmp(name,"MasstransportSolution")==0) return MasstransportSolutionEnum;
+	      else if (strcmp(name,"FreeSurfaceBaseAnalysis")==0) return FreeSurfaceBaseAnalysisEnum;
+	      else if (strcmp(name,"FreeSurfaceTopAnalysis")==0) return FreeSurfaceTopAnalysisEnum;
+	      else if (strcmp(name,"SurfaceNormalVelocity")==0) return SurfaceNormalVelocityEnum;
+	      else if (strcmp(name,"ExtrudeFromBaseAnalysis")==0) return ExtrudeFromBaseAnalysisEnum;
+	      else if (strcmp(name,"ExtrudeFromTopAnalysis")==0) return ExtrudeFromTopAnalysisEnum;
+	      else if (strcmp(name,"DepthAverageAnalysis")==0) return DepthAverageAnalysisEnum;
+	      else if (strcmp(name,"SealevelriseSolution")==0) return SealevelriseSolutionEnum;
+	      else if (strcmp(name,"SealevelriseAnalysis")==0) return SealevelriseAnalysisEnum;
+	      else if (strcmp(name,"SteadystateSolution")==0) return SteadystateSolutionEnum;
+	      else if (strcmp(name,"SurfaceSlopeSolution")==0) return SurfaceSlopeSolutionEnum;
+	      else if (strcmp(name,"SmoothAnalysis")==0) return SmoothAnalysisEnum;
+	      else if (strcmp(name,"ThermalAnalysis")==0) return ThermalAnalysisEnum;
+	      else if (strcmp(name,"ThermalSolution")==0) return ThermalSolutionEnum;
+	      else if (strcmp(name,"TransientSolution")==0) return TransientSolutionEnum;
+	      else if (strcmp(name,"UzawaPressureAnalysis")==0) return UzawaPressureAnalysisEnum;
+	      else if (strcmp(name,"GiaSolution")==0) return GiaSolutionEnum;
+	      else if (strcmp(name,"GiaAnalysis")==0) return GiaAnalysisEnum;
+	      else if (strcmp(name,"MeshdeformationSolution")==0) return MeshdeformationSolutionEnum;
+	      else if (strcmp(name,"MeshdeformationAnalysis")==0) return MeshdeformationAnalysisEnum;
+	      else if (strcmp(name,"LevelsetAnalysis")==0) return LevelsetAnalysisEnum;
+	      else if (strcmp(name,"ExtrapolationAnalysis")==0) return ExtrapolationAnalysisEnum;
+	      else if (strcmp(name,"Approximation")==0) return ApproximationEnum;
+	      else if (strcmp(name,"NoneApproximation")==0) return NoneApproximationEnum;
+	      else if (strcmp(name,"SIAApproximation")==0) return SIAApproximationEnum;
+	      else if (strcmp(name,"SSAApproximation")==0) return SSAApproximationEnum;
+	      else if (strcmp(name,"SSAHOApproximation")==0) return SSAHOApproximationEnum;
+	      else if (strcmp(name,"SSAFSApproximation")==0) return SSAFSApproximationEnum;
+	      else if (strcmp(name,"L1L2Approximation")==0) return L1L2ApproximationEnum;
+	      else if (strcmp(name,"HOApproximation")==0) return HOApproximationEnum;
+	      else if (strcmp(name,"HOFSApproximation")==0) return HOFSApproximationEnum;
+	      else if (strcmp(name,"FSApproximation")==0) return FSApproximationEnum;
+	      else if (strcmp(name,"FSvelocity")==0) return FSvelocityEnum;
+	      else if (strcmp(name,"FSpressure")==0) return FSpressureEnum;
+         else stage=9;
+   }
+   if(stage==9){
+	      if (strcmp(name,"GaussSeg")==0) return GaussSegEnum;
+	      else if (strcmp(name,"GaussTria")==0) return GaussTriaEnum;
+	      else if (strcmp(name,"GaussTetra")==0) return GaussTetraEnum;
+	      else if (strcmp(name,"GaussPenta")==0) return GaussPentaEnum;
+	      else if (strcmp(name,"TriangleInterp")==0) return TriangleInterpEnum;
+	      else if (strcmp(name,"BilinearInterp")==0) return BilinearInterpEnum;
+	      else if (strcmp(name,"NearestInterp")==0) return NearestInterpEnum;
+	      else if (strcmp(name,"MinVel")==0) return MinVelEnum;
+	      else if (strcmp(name,"MaxVel")==0) return MaxVelEnum;
+	      else if (strcmp(name,"MinVx")==0) return MinVxEnum;
+	      else if (strcmp(name,"MaxVx")==0) return MaxVxEnum;
+	      else if (strcmp(name,"MaxAbsVx")==0) return MaxAbsVxEnum;
+	      else if (strcmp(name,"MinVy")==0) return MinVyEnum;
+	      else if (strcmp(name,"MaxVy")==0) return MaxVyEnum;
+	      else if (strcmp(name,"MaxAbsVy")==0) return MaxAbsVyEnum;
+	      else if (strcmp(name,"MinVz")==0) return MinVzEnum;
+	      else if (strcmp(name,"MaxVz")==0) return MaxVzEnum;
+	      else if (strcmp(name,"MaxAbsVz")==0) return MaxAbsVzEnum;
+	      else if (strcmp(name,"FloatingArea")==0) return FloatingAreaEnum;
+	      else if (strcmp(name,"GroundedArea")==0) return GroundedAreaEnum;
+	      else if (strcmp(name,"IceMass")==0) return IceMassEnum;
+	      else if (strcmp(name,"IceVolume")==0) return IceVolumeEnum;
+	      else if (strcmp(name,"IceVolumeAboveFloatation")==0) return IceVolumeAboveFloatationEnum;
+	      else if (strcmp(name,"TotalFloatingBmb")==0) return TotalFloatingBmbEnum;
+	      else if (strcmp(name,"TotalGroundedBmb")==0) return TotalGroundedBmbEnum;
+	      else if (strcmp(name,"TotalSmb")==0) return TotalSmbEnum;
+	      else if (strcmp(name,"P0")==0) return P0Enum;
+	      else if (strcmp(name,"P0Array")==0) return P0ArrayEnum;
+	      else if (strcmp(name,"P1")==0) return P1Enum;
+	      else if (strcmp(name,"P1DG")==0) return P1DGEnum;
+	      else if (strcmp(name,"P1bubble")==0) return P1bubbleEnum;
+	      else if (strcmp(name,"P1bubblecondensed")==0) return P1bubblecondensedEnum;
+	      else if (strcmp(name,"P2")==0) return P2Enum;
+	      else if (strcmp(name,"P2bubble")==0) return P2bubbleEnum;
+	      else if (strcmp(name,"P2bubblecondensed")==0) return P2bubblecondensedEnum;
+	      else if (strcmp(name,"P2xP1")==0) return P2xP1Enum;
+	      else if (strcmp(name,"P1xP2")==0) return P1xP2Enum;
+	      else if (strcmp(name,"P1xP3")==0) return P1xP3Enum;
+	      else if (strcmp(name,"P2xP4")==0) return P2xP4Enum;
+	      else if (strcmp(name,"P1P1")==0) return P1P1Enum;
+	      else if (strcmp(name,"P1P1GLS")==0) return P1P1GLSEnum;
+	      else if (strcmp(name,"MINI")==0) return MINIEnum;
+	      else if (strcmp(name,"MINIcondensed")==0) return MINIcondensedEnum;
+	      else if (strcmp(name,"TaylorHood")==0) return TaylorHoodEnum;
+	      else if (strcmp(name,"LATaylorHood")==0) return LATaylorHoodEnum;
+	      else if (strcmp(name,"XTaylorHood")==0) return XTaylorHoodEnum;
+	      else if (strcmp(name,"OneLayerP4z")==0) return OneLayerP4zEnum;
+	      else if (strcmp(name,"CrouzeixRaviart")==0) return CrouzeixRaviartEnum;
+	      else if (strcmp(name,"LACrouzeixRaviart")==0) return LACrouzeixRaviartEnum;
+	      else if (strcmp(name,"Closed")==0) return ClosedEnum;
+	      else if (strcmp(name,"Free")==0) return FreeEnum;
+	      else if (strcmp(name,"Open")==0) return OpenEnum;
+	      else if (strcmp(name,"Air")==0) return AirEnum;
+	      else if (strcmp(name,"Ice")==0) return IceEnum;
+	      else if (strcmp(name,"Melange")==0) return MelangeEnum;
+	      else if (strcmp(name,"Water")==0) return WaterEnum;
+	      else if (strcmp(name,"DataSet")==0) return DataSetEnum;
+	      else if (strcmp(name,"Constraints")==0) return ConstraintsEnum;
+	      else if (strcmp(name,"Loads")==0) return LoadsEnum;
+	      else if (strcmp(name,"Materials")==0) return MaterialsEnum;
+	      else if (strcmp(name,"Nodes")==0) return NodesEnum;
+	      else if (strcmp(name,"Contours")==0) return ContoursEnum;
+	      else if (strcmp(name,"Parameters")==0) return ParametersEnum;
+	      else if (strcmp(name,"Vertices")==0) return VerticesEnum;
+	      else if (strcmp(name,"Results")==0) return ResultsEnum;
 	      else if (strcmp(name,"MaximumNumberOfDefinitions")==0) return MaximumNumberOfDefinitionsEnum;
          else stage=10;
