Index: /issm/trunk-jpl/src/m/classes/clusters/generic.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/clusters/generic.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/clusters/generic.py	(revision 13043)
@@ -4,4 +4,5 @@
 import platform
 import subprocess
+from EnumToString import EnumToString
 from issmdir import *
 from pairoptions import *
@@ -79,7 +80,7 @@
 			if not isvalgrind:
 				if self.interactive:
-					fid.write('mpiexec -np %i %s/issm.exe %s %s %s ' % (self.np,self.codepath,EnumToString(solution),self.executionpath,modelname))
+					fid.write('mpiexec -np %i %s/issm.exe %s %s %s ' % (self.np,self.codepath,EnumToString(solution)[0],self.executionpath,modelname))
 				else:
-					fid.write('mpiexec -np %i %s/issm.exe %s %s %s 2> %s.errlog >%s.outlog ' % (self.np,self.codepath,EnumToString(solution),self.executionpath,modelname,modelname,modelname))
+					fid.write('mpiexec -np %i %s/issm.exe %s %s %s 2> %s.errlog >%s.outlog ' % (self.np,self.codepath,EnumToString(solution)[0],self.executionpath,modelname,modelname,modelname))
 			elif isgprof:
 				fid.write('\n gprof %s/issm.exe gmon.out > %s.performance' % (self.codepath,modelname))
@@ -88,5 +89,5 @@
 				fid.write('LD_PRELOAD=%s \\\n' % self.valgrindlib)
 				fid.write('mpiexec -np %i %s --leak-check=full --suppressions=%s %s/issm.exe %s %s %s 2> %s.errlog >%s.outlog ' % \
-					(self.np,self.valgrind,self.valgrindsup,self.codepath,EnumToString(solution),self.executionpath,modelname,modelname,modelname))
+					(self.np,self.valgrind,self.valgrindsup,self.codepath,EnumToString(solution)[0],self.executionpath,modelname,modelname,modelname))
 			if not io_gather:    #concatenate the output files:
 				fid.write('\ncat %s.outbin.* > %s.outbin' % (modelname,modelname))
@@ -98,8 +99,8 @@
 			fid.write('@echo off\n')
 			if self.interactive:
-				fid.write('"%s/issm.exe" %s "%s" %s ' % (self.codepath,EnumToString(solution),self.executionpath,modelname))
+				fid.write('"%s/issm.exe" %s "%s" %s ' % (self.codepath,EnumToString(solution)[0],self.executionpath,modelname))
 			else:
 				fid.write('"%s/issm.exe" %s "%s" %s 2> %s.errlog >%s.outlog' % \
-					(self.codepath,EnumToString(solution),self.executionpath,modelname,modelname,modelname))
+					(self.codepath,EnumToString(solution)[0],self.executionpath,modelname,modelname,modelname))
 			fid.close()
 
@@ -140,8 +141,8 @@
 			fid.write('@echo off\n')
 			if self.interactive:
-				fid.write('"%s/issm.exe" %s "%s" %s ' % (self.codepath,EnumToString(solution),self.executionpath,modelname))
+				fid.write('"%s/issm.exe" %s "%s" %s ' % (self.codepath,EnumToString(solution)[0],self.executionpath,modelname))
 			else:
 				fid.write('"%s/issm.exe" %s "%s" %s 2> %s.errlog >%s.outlog' % \
-					(self.codepath,EnumToString(solution),self.executionpath,modelname,modelname,modelname))
+					(self.codepath,EnumToString(solution)[0],self.executionpath,modelname,modelname,modelname))
 			fid.close()
 
Index: /issm/trunk-jpl/src/m/classes/diagnostic.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/diagnostic.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/diagnostic.py	(revision 13043)
@@ -126,6 +126,6 @@
 		md = checkfield(md,'diagnostic.abstol','size',[1])
 		md = checkfield(md,'diagnostic.isnewton','numel',[1],'values',[0,1])
-		md = checkfield(md,'diagnostic.stokesreconditioning','size',[1,1],'NaN',1)
-		md = checkfield(md,'diagnostic.viscosity_overshoot','size',[1,1],'NaN',1)
+		md = checkfield(md,'diagnostic.stokesreconditioning','size',[1],'NaN',1)
+		md = checkfield(md,'diagnostic.viscosity_overshoot','size',[1],'NaN',1)
 		if md.mesh.dimension==2:
 			md = checkfield(md,'diagnostic.icefront','size',[float('NaN'),4],'NaN',1)
@@ -139,11 +139,14 @@
 
 		#singular solution
+#		if ~any((~isnan(md.diagnostic.spcvx)+~isnan(md.diagnostic.spcvy))==2),
 		if not numpy.any(numpy.logical_and(numpy.logical_not(numpy.isnan(md.diagnostic.spcvx)),numpy.logical_not(numpy.isnan(md.diagnostic.spcvy)))):
 			md.checkmessage("model is not well posed (singular). You need at least one node with fixed velocity!")
 		#CHECK THAT EACH LINES CONTAINS ONLY NAN VALUES OR NO NAN VALUES
-		if any(not numpy.sum(numpy.isnan(md.diagnostic.referential),axis=1)==0 and not numpy.sum(numpy.isnan(md.diagnostic.referential),axis=1)==6):
+#		if any(sum(isnan(md.diagnostic.referential),2)~=0 & sum(isnan(md.diagnostic.referential),2)~=6),
+		if numpy.any(numpy.logical_and(numpy.sum(numpy.isnan(md.diagnostic.referential),axis=1)!=0,numpy.sum(numpy.isnan(md.diagnostic.referential),axis=1)!=6)):
 			md.checkmessage("Each line of diagnostic.referential should contain either only NaN values or no NaN values")
 		#CHECK THAT THE TWO VECTORS PROVIDED ARE ORTHOGONAL
-		if any(numpy.sum(numpy.isnan(md.diagnostic.referential),axis=1)==0):
+#		if any(sum(isnan(md.diagnostic.referential),2)==0),
+		if numpy.any(numpy.sum(numpy.isnan(md.diagnostic.referential),axis=1)==0):
 			pos=[i for i,item in enumerate(numpy.sum(numpy.isnan(md.diagnostic.referential),axis=1)) if item==0]
 #			numpy.inner (and numpy.dot) calculate all the dot product permutations, resulting in a full matrix multiply
@@ -154,4 +157,5 @@
 					md.checkmessage("Vectors in diagnostic.referential (columns 1 to 3 and 4 to 6) must be orthogonal")
 		#CHECK THAT NO rotation specified for FS Grounded ice at base
+#		if md.mesh.dimension==3 & md.flowequation.isstokes,
 		if md.mesh.dimension==3 and md.flowequation.isstokes:
 			pos=numpy.nonzero(numpy.logical_and(md.mask.vertexongroundedice,md.mesh.vertexonbed))
Index: /issm/trunk-jpl/src/m/classes/geometry.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/geometry.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/geometry.py	(revision 13043)
@@ -51,5 +51,4 @@
 		if any((self.thickness-self.surface+self.bed)>10**-9):
 			md.checkmessage("equality thickness=surface-bed violated")
-		end 
 		if solution==TransientSolutionEnum() and md.transient.isgroundingline:
 			md = checkfield(md,'geometry.bathymetry','NaN',1,'size',[md.mesh.numberofvertices])
Index: /issm/trunk-jpl/src/m/classes/groundingline.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/groundingline.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/groundingline.py	(revision 13043)
@@ -3,4 +3,5 @@
 from fielddisplay import fielddisplay
 from EnumDefinitions import *
+from StringToEnum import StringToEnum
 from checkfield import *
 from WriteData import *
@@ -63,5 +64,5 @@
 
 	def marshall(self,fid):    # {{{
-		WriteData(fid,'data',StringToEnum(self.migration),'enum',GroundinglineMigrationEnum(),'format','Integer')
+		WriteData(fid,'data',StringToEnum(self.migration)[0],'enum',GroundinglineMigrationEnum(),'format','Integer')
 		WriteData(fid,'object',self,'fieldname','melting_rate','format','Double')
 	# }}}
Index: /issm/trunk-jpl/src/m/classes/inversion.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/inversion.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/inversion.py	(revision 13043)
@@ -3,4 +3,5 @@
 from fielddisplay import fielddisplay
 from EnumDefinitions import *
+from StringToEnum import StringToEnum
 from checkfield import *
 from WriteData import *
@@ -167,5 +168,5 @@
 		#process control parameters
 		num_control_parameters=numpy.size(self.control_parameters)
-		data=[StringToEnum(self.control_parameters[i]) for i in xrange(0,num_control_parameters)]
+		data=[StringToEnum(self.control_parameters[i])[0] for i in xrange(0,num_control_parameters)]
 		WriteData(fid,'data',data,'enum',InversionControlParametersEnum(),'format','DoubleMat','mattype',3)
 		WriteData(fid,'data',num_control_parameters,'enum',InversionNumControlParametersEnum(),'format','Integer')
Index: /issm/trunk-jpl/src/m/classes/materials.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/materials.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/materials.py	(revision 13043)
@@ -2,4 +2,5 @@
 from fielddisplay import fielddisplay
 from EnumDefinitions import *
+from StringToEnum import StringToEnum
 from checkfield import *
 from WriteData import *
@@ -18,4 +19,5 @@
 		self.rho_ice                    = 0
 		self.rho_water                  = 0
+		self.rho_freshwater             = 0
 		self.mu_water                   = 0
 		self.heatcapacity               = 0
@@ -38,4 +40,5 @@
 		string="%s\n\n%s"%(string,fielddisplay(self,"rho_ice","ice density [kg/m^3]"))
 		string="%s\n%s"%(string,fielddisplay(self,"rho_water","water density [kg/m^3]"))
+		string="%s\n%s"%(string,fielddisplay(self,"rho_freshwater","fresh water density [kg/m^3]"))
 		string="%s\n%s"%(string,fielddisplay(self,"mu_water","water viscosity [N s/m^2]"))
 		string="%s\n%s"%(string,fielddisplay(self,"heatcapacity","heat capacity [J/kg/K]"))
@@ -57,6 +60,9 @@
 		self.rho_ice=917
 
-		#water density (kg/m^3)
+		#ocean water density (kg/m^3)
 		self.rho_water=1023
+
+		#fresh water density (kg/m^3)
+		self.rho_freshwater=1000
 
 		#water viscosity (N.s/m^2)
@@ -115,5 +121,5 @@
 		WriteData(fid,'object',self,'fieldname','rheology_B','format','DoubleMat','mattype',1)
 		WriteData(fid,'object',self,'fieldname','rheology_n','format','DoubleMat','mattype',2)
-		WriteData(fid,'data',StringToEnum(self.rheology_law),'enum',MaterialsRheologyLawEnum(),'format','Integer')
+		WriteData(fid,'data',StringToEnum(self.rheology_law)[0],'enum',MaterialsRheologyLawEnum(),'format','Integer')
 	# }}}
 
Index: /issm/trunk-jpl/src/m/classes/model/model.m
===================================================================
--- /issm/trunk-jpl/src/m/classes/model/model.m	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/model/model.m	(revision 13043)
@@ -1046,8 +1046,8 @@
 			 md.settings         = settings();
 			 md.solver           = solver();
-			 if ismumps,
-				 md.solver           = addoptions(md.solver,DiagnosticVertAnalysisEnum(),mumpsoptions);
+			 if ismumps(),
+				 md.solver           = addoptions(md.solver,DiagnosticVertAnalysisEnum(),mumpsoptions());
 			 else
-				 md.solver           = addoptions(md.solver,DiagnosticVertAnalysisEnum(),iluasmoptions);
+				 md.solver           = addoptions(md.solver,DiagnosticVertAnalysisEnum(),iluasmoptions());
 			 end
 			 md.cluster          = generic();
Index: /issm/trunk-jpl/src/m/classes/model/model.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/model/model.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/model/model.py	(revision 13043)
@@ -33,4 +33,7 @@
 from private import private
 from EnumDefinitions import *
+from ismumps import *
+from mumpsoptions import *
+from iluasmoptions import *
 #}}}
 
@@ -56,9 +59,8 @@
 		self.settings         = settings()
 		self.solver           = solver()
-#		need EnumToString for these to work
-#		if ismumps:
-#			md.solver.addoptions(DiagnosticVertAnalysisEnum(),mumpsoptions)
-#		else:
-#			md.solver.addoptions(DiagnosticVertAnalysisEnum(),iluasmoptions)
+		if ismumps():
+			self.solver.addoptions(DiagnosticVertAnalysisEnum(),mumpsoptions())
+		else:
+			self.solver.addoptions(DiagnosticVertAnalysisEnum(),iluasmoptions())
 		self.cluster          = generic()
 
Index: /issm/trunk-jpl/src/m/classes/model/planet.m
===================================================================
--- /issm/trunk-jpl/src/m/classes/model/planet.m	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/model/planet.m	(revision 13043)
@@ -38,8 +38,8 @@
 			 md.settings         = settings();
 			 md.solver           = solver();
-			 if ismumps,
-				 md.solver           = addoptions(md.solver,DiagnosticVertAnalysisEnum,mumpsoptions);
+			 if ismumps(),
+				 md.solver           = addoptions(md.solver,DiagnosticVertAnalysisEnum(),mumpsoptions());
 			 else
-				 md.solver           = addoptions(md.solver,DiagnosticVertAnalysisEnum,iluasmoptions);
+				 md.solver           = addoptions(md.solver,DiagnosticVertAnalysisEnum(),iluasmoptions());
 			 end
 			 md.cluster          = generic();
Index: /issm/trunk-jpl/src/m/classes/planetmesh.m
===================================================================
--- /issm/trunk-jpl/src/m/classes/planetmesh.m	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/planetmesh.m	(revision 13043)
@@ -74,13 +74,13 @@
 			%Solution specific checks
 			switch(solution),
-				case PrognosticSolutionEnum,
+				case PrognosticSolutionEnum(),
 					if md.prognostic.stabilization==3,
 						md = checkfield(md,'planetmesh.dimension','values',2,'message','Discontinuous Galerkin only supported for 2d planetmeshes');
 					end
-				case TransientSolutionEnum,
+				case TransientSolutionEnum(),
 					if md.transient.isprognostic & md.prognostic.stabilization==3,
 						md = checkfield(md,'planetmesh.dimension','values',2,'message','Discontinuous Galerkin only supported for 2d planetmeshes');
 					end
-				case ThermalSolutionEnum,
+				case ThermalSolutionEnum(),
 					md = checkfield(md,'planetmesh.dimension','values',3,'message','thermal solution only supported on 3d planetmeshes');
 			end
Index: /issm/trunk-jpl/src/m/classes/prognostic.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/prognostic.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/prognostic.py	(revision 13043)
@@ -2,4 +2,5 @@
 from fielddisplay import fielddisplay
 from EnumDefinitions import *
+from StringToEnum import StringToEnum
 from checkfield import *
 from WriteData import *
@@ -73,5 +74,5 @@
 		WriteData(fid,'object',self,'fieldname','spcthickness','format','DoubleMat','mattype',1)
 		WriteData(fid,'object',self,'fieldname','min_thickness','format','Double')
-		WriteData(fid,'data',StringToEnum(self.hydrostatic_adjustment),'format','Integer','enum',PrognosticHydrostaticAdjustmentEnum())
+		WriteData(fid,'data',StringToEnum(self.hydrostatic_adjustment)[0],'format','Integer','enum',PrognosticHydrostaticAdjustmentEnum())
 		WriteData(fid,'object',self,'fieldname','stabilization','format','Integer')
 		WriteData(fid,'object',self,'fieldname','vertex_pairing','format','DoubleMat','mattype',3)
Index: /issm/trunk-jpl/src/m/classes/rifts.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/rifts.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/rifts.py	(revision 13043)
@@ -74,5 +74,5 @@
 
 		# 2 for nodes + 2 for elements+ 2 for  normals + 1 for length + 1 for fill + 1 for friction + 1 for fraction + 1 for fractionincrement + 1 for state.
-		data=numpy.zeros(numpairs,12)
+		data=numpy.zeros((numpairs,12))
 		count=0
 		for i in xrange(0,numrifts):
Index: /issm/trunk-jpl/src/m/classes/solver.m
===================================================================
--- /issm/trunk-jpl/src/m/classes/solver.m	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/solver.m	(revision 13043)
@@ -38,8 +38,8 @@
 
 			 %MUMPS is the default solver
-			 if ismumps,
-				 obj.NoneAnalysis=mumpsoptions;
+			 if ismumps(),
+				 obj.NoneAnalysis=mumpsoptions();
 			 else
-				 obj.NoneAnalysis=iluasmoptions;
+				 obj.NoneAnalysis=iluasmoptions();
 			 end
 
Index: /issm/trunk-jpl/src/m/classes/solver.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/solver.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/solver.py	(revision 13043)
@@ -2,4 +2,5 @@
 from mumpsoptions import *
 from iluasmoptions import *
+from EnumToString import EnumToString
 from MatlabFuncs import *
 from EnumDefinitions import *
@@ -16,5 +17,5 @@
 	def __init__(self):    # {{{
 		#MUMPS is the default solver
-		if ismumps:
+		if ismumps():
 			self.NoneAnalysis=mumpsoptions()
 		else:
@@ -30,6 +31,5 @@
 
 		#Convert analysis from enum to string
-#		need EnumToString
-#		analysis=EnumToString(analysis)
+		[analysis]=EnumToString(analysis)
 
 		#Create dynamic property if property does not exist yet
Index: /issm/trunk-jpl/src/m/classes/verbose.py
===================================================================
--- /issm/trunk-jpl/src/m/classes/verbose.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/classes/verbose.py	(revision 13043)
@@ -125,5 +125,5 @@
 
 	def marshall(self,fid):    # {{{
-			WriteData(fid,'data',VerboseToBinary(self),'enum',VerboseEnum(),'format','Integer')
+			WriteData(fid,'data',self.VerboseToBinary(),'enum',VerboseEnum(),'format','Integer')
 	# }}}
 
Index: /issm/trunk-jpl/src/m/consistency/checkfield.py
===================================================================
--- /issm/trunk-jpl/src/m/consistency/checkfield.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/consistency/checkfield.py	(revision 13043)
@@ -39,4 +39,6 @@
 #	field=getattr(md,fieldname)
 	exec("field=md.%s" % fieldname)
+	if isinstance(field,(bool,int,long,float)):
+		field=numpy.array([field])
 
 	#check empty
@@ -85,5 +87,5 @@
 	#check NaN
 	if options.getfieldvalue('NaN',0):
-		if True in numpy.isnan(field):
+		if numpy.any(numpy.isnan(field)):
 			md = md.checkmessage(options.getfieldvalue('message',\
 				"NaN values found in field '%s'" % fieldname))
@@ -112,10 +114,10 @@
 	if options.exist('>='):
 		lowerbound=options.getfieldvalue('>=')
-		if any(field<lowerbound):
+		if numpy.any(field<lowerbound):
 			md = md.checkmessage(options.getfieldvalue('message',\
 				"field '%s' should have values above %d" % (fieldname,lowerbound)))
 	if options.exist('>'):
 		lowerbound=options.getfieldvalue('>')
-		if any(field<=lowerbound):
+		if numpy.any(field<=lowerbound):
 			md = md.checkmessage(options.getfieldvalue('message',\
 				"field '%s' should have values above %d" % (fieldname,lowerbound)))
@@ -124,10 +126,10 @@
 	if options.exist('<='):
 		upperbound=options.getfieldvalue('<=')
-		if any(field>upperbound):
+		if numpy.any(field>upperbound):
 			md = md.checkmessage(options.getfieldvalue('message',\
 				"field '%s' should have values below %d" % (fieldname,upperbound)))
 	if options.exist('<'):
 		upperbound=options.getfieldvalue('<')
-		if any(field>=upperbound):
+		if numpy.any(field>=upperbound):
 			md = md.checkmessage(options.getfieldvalue('message',\
 				"field '%s' should have values below %d" % (fieldname,upperbound)))
@@ -141,5 +143,5 @@
 	if options.getfieldvalue('forcing',0):
 		if   numpy.size(field,0)==md.mesh.numberofvertices:
-			if not numpy.size(field,1)==1:
+			if len(numpy.shape(field))>1 and not numpy.size(field,1)==1:
 				md = md.checkmessage(options.getfieldvalue('message',\
 					"field '%s' should have only one column as there are md.mesh.numberofvertices lines" % fieldname))
Index: /issm/trunk-jpl/src/m/consistency/ismodelselfconsistent.m
===================================================================
--- /issm/trunk-jpl/src/m/consistency/ismodelselfconsistent.m	(revision 13042)
+++ /issm/trunk-jpl/src/m/consistency/ismodelselfconsistent.m	(revision 13043)
@@ -51,47 +51,47 @@
 switch solutiontype,
 
-	case DiagnosticSolutionEnum,
+	case DiagnosticSolutionEnum(),
 		numanalyses=5;
-		analyses=[DiagnosticHorizAnalysisEnum;DiagnosticVertAnalysisEnum;DiagnosticHutterAnalysisEnum;SurfaceSlopeAnalysisEnum;BedSlopeAnalysisEnum];
+		analyses=[DiagnosticHorizAnalysisEnum();DiagnosticVertAnalysisEnum();DiagnosticHutterAnalysisEnum();SurfaceSlopeAnalysisEnum();BedSlopeAnalysisEnum()];
 
-	case SteadystateSolutionEnum,
+	case SteadystateSolutionEnum(),
 		numanalyses=7; 
-		analyses=[DiagnosticHorizAnalysisEnum;DiagnosticVertAnalysisEnum;DiagnosticHutterAnalysisEnum;SurfaceSlopeAnalysisEnum;BedSlopeAnalysisEnum;ThermalAnalysisEnum;MeltingAnalysisEnum];
+		analyses=[DiagnosticHorizAnalysisEnum();DiagnosticVertAnalysisEnum();DiagnosticHutterAnalysisEnum();SurfaceSlopeAnalysisEnum();BedSlopeAnalysisEnum();ThermalAnalysisEnum();MeltingAnalysisEnum()];
 
-	case ThermalSolutionEnum,
+	case ThermalSolutionEnum(),
 		numanalyses=2; 
-		analyses=[ThermalAnalysisEnum;MeltingAnalysisEnum];
+		analyses=[ThermalAnalysisEnum();MeltingAnalysisEnum()];
 
-	case EnthalpySolutionEnum,
+	case EnthalpySolutionEnum(),
 		numanalyses=1; 
-		analyses=[EnthalpyAnalysisEnum];
+		analyses=[EnthalpyAnalysisEnum()];
 
-	case PrognosticSolutionEnum,
+	case PrognosticSolutionEnum(),
 		numanalyses=1; 
-		analyses=[PrognosticAnalysisEnum];
+		analyses=[PrognosticAnalysisEnum()];
 
-	case BalancethicknessSolutionEnum,
+	case BalancethicknessSolutionEnum(),
 		numanalyses=1; 
-		analyses=[BalancethicknessAnalysisEnum];
+		analyses=[BalancethicknessAnalysisEnum()];
 
-	case SurfaceSlopeSolutionEnum,
+	case SurfaceSlopeSolutionEnum(),
 		numanalyses=1; 
-		analyses=[SurfaceSlopeAnalysisEnum];
+		analyses=[SurfaceSlopeAnalysisEnum()];
 
-	case BedSlopeSolutionEnum,
+	case BedSlopeSolutionEnum(),
 		numanalyses=1; 
-		analyses=[BedSlopeAnalysisEnum];
+		analyses=[BedSlopeAnalysisEnum()];
 
-	case TransientSolutionEnum,
+	case TransientSolutionEnum(),
 		numanalyses=9; 
-		analyses=[DiagnosticHorizAnalysisEnum;DiagnosticVertAnalysisEnum;DiagnosticHutterAnalysisEnum;SurfaceSlopeAnalysisEnum;BedSlopeAnalysisEnum;ThermalAnalysisEnum;MeltingAnalysisEnum;EnthalpyAnalysisEnum;PrognosticAnalysisEnum];
+		analyses=[DiagnosticHorizAnalysisEnum();DiagnosticVertAnalysisEnum();DiagnosticHutterAnalysisEnum();SurfaceSlopeAnalysisEnum();BedSlopeAnalysisEnum();ThermalAnalysisEnum();MeltingAnalysisEnum();EnthalpyAnalysisEnum();PrognosticAnalysisEnum()];
 
-	case FlaimSolutionEnum,
+	case FlaimSolutionEnum(),
 		numanalyses=1; 
-		analyses=[FlaimAnalysisEnum];
+		analyses=[FlaimAnalysisEnum()];
 
-	case HydrologySolutionEnum,
+	case HydrologySolutionEnum(),
 		numanalyses=3; 
-		analyses=[BedSlopeAnalysisEnum;SurfaceSlopeAnalysisEnum;HydrologyAnalysisEnum];
+		analyses=[BedSlopeAnalysisEnum();SurfaceSlopeAnalysisEnum();HydrologyAnalysisEnum()];
 
 	otherwise
Index: /issm/trunk-jpl/src/m/consistency/ismodelselfconsistent.py
===================================================================
--- /issm/trunk-jpl/src/m/consistency/ismodelselfconsistent.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/consistency/ismodelselfconsistent.py	(revision 13043)
@@ -1,3 +1,4 @@
 from EnumDefinitions import *
+from EnumToString import EnumToString
 
 def AnalysisConfiguration(solutiontype): #{{{
@@ -9,50 +10,50 @@
 	"""
 
-	if   solutiontype == DiagnosticSolutionEnum:
+	if   solutiontype == DiagnosticSolutionEnum():
 		numanalyses=5
-		analyses=[DiagnosticHorizAnalysisEnum,DiagnosticVertAnalysisEnum,DiagnosticHutterAnalysisEnum,SurfaceSlopeAnalysisEnum,BedSlopeAnalysisEnum]
+		analyses=[DiagnosticHorizAnalysisEnum(),DiagnosticVertAnalysisEnum(),DiagnosticHutterAnalysisEnum(),SurfaceSlopeAnalysisEnum(),BedSlopeAnalysisEnum()]
 
-	elif solutiontype == SteadystateSolutionEnum:
+	elif solutiontype == SteadystateSolutionEnum():
 		numanalyses=7 
-		analyses=[DiagnosticHorizAnalysisEnum,DiagnosticVertAnalysisEnum,DiagnosticHutterAnalysisEnum,SurfaceSlopeAnalysisEnum,BedSlopeAnalysisEnum,ThermalAnalysisEnum,MeltingAnalysisEnum]
+		analyses=[DiagnosticHorizAnalysisEnum(),DiagnosticVertAnalysisEnum(),DiagnosticHutterAnalysisEnum(),SurfaceSlopeAnalysisEnum(),BedSlopeAnalysisEnum(),ThermalAnalysisEnum(),MeltingAnalysisEnum()]
 
-	elif solutiontype == ThermalSolutionEnum:
+	elif solutiontype == ThermalSolutionEnum():
 		numanalyses=2 
-		analyses=[ThermalAnalysisEnum,MeltingAnalysisEnum]
+		analyses=[ThermalAnalysisEnum(),MeltingAnalysisEnum()]
 
-	elif solutiontype == EnthalpySolutionEnum:
+	elif solutiontype == EnthalpySolutionEnum():
 		numanalyses=1 
-		analyses=[EnthalpyAnalysisEnum]
+		analyses=[EnthalpyAnalysisEnum()]
 
-	elif solutiontype == PrognosticSolutionEnum:
+	elif solutiontype == PrognosticSolutionEnum():
 		numanalyses=1 
-		analyses=[PrognosticAnalysisEnum]
+		analyses=[PrognosticAnalysisEnum()]
 
-	elif solutiontype == BalancethicknessSolutionEnum:
+	elif solutiontype == BalancethicknessSolutionEnum():
 		numanalyses=1 
-		analyses=[BalancethicknessAnalysisEnum]
+		analyses=[BalancethicknessAnalysisEnum()]
 
-	elif solutiontype == SurfaceSlopeSolutionEnum:
+	elif solutiontype == SurfaceSlopeSolutionEnum():
 		numanalyses=1 
-		analyses=[SurfaceSlopeAnalysisEnum]
+		analyses=[SurfaceSlopeAnalysisEnum()]
 
-	elif solutiontype == BedSlopeSolutionEnum:
+	elif solutiontype == BedSlopeSolutionEnum():
 		numanalyses=1 
-		analyses=[BedSlopeAnalysisEnum]
+		analyses=[BedSlopeAnalysisEnum()]
 
-	elif solutiontype == TransientSolutionEnum:
+	elif solutiontype == TransientSolutionEnum():
 		numanalyses=9 
-		analyses=[DiagnosticHorizAnalysisEnum,DiagnosticVertAnalysisEnum,DiagnosticHutterAnalysisEnum,SurfaceSlopeAnalysisEnum,BedSlopeAnalysisEnum,ThermalAnalysisEnum,MeltingAnalysisEnum,EnthalpyAnalysisEnum,PrognosticAnalysisEnum]
+		analyses=[DiagnosticHorizAnalysisEnum(),DiagnosticVertAnalysisEnum(),DiagnosticHutterAnalysisEnum(),SurfaceSlopeAnalysisEnum(),BedSlopeAnalysisEnum(),ThermalAnalysisEnum(),MeltingAnalysisEnum(),EnthalpyAnalysisEnum(),PrognosticAnalysisEnum()]
 
-	elif solutiontype == FlaimSolutionEnum:
+	elif solutiontype == FlaimSolutionEnum():
 		numanalyses=1 
-		analyses=[FlaimAnalysisEnum]
+		analyses=[FlaimAnalysisEnum()]
 
-	elif solutiontype == HydrologySolutionEnum:
+	elif solutiontype == HydrologySolutionEnum():
 		numanalyses=3 
-		analyses=[BedSlopeAnalysisEnum,SurfaceSlopeAnalysisEnum,HydrologyAnalysisEnum]
+		analyses=[BedSlopeAnalysisEnum(),SurfaceSlopeAnalysisEnum(),HydrologyAnalysisEnum()]
 
 	else:
-		raise TypeError("solution type: '%s' not supported yet!" % EnumToString(solutiontype))
+		raise TypeError("solution type: '%s' not supported yet!" % EnumToString(solutiontype)[0])
 
 	return analyses,numanalyses
Index: /issm/trunk-jpl/src/m/enum/EnumDefinitions.py
===================================================================
--- /issm/trunk-jpl/src/m/enum/EnumDefinitions.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/enum/EnumDefinitions.py	(revision 13043)
@@ -1,2 +1,4 @@
+from StringToEnum import StringToEnum
+
 """
 
@@ -15,5 +17,5 @@
 	"""
 
-	return StringToEnum('AutodiffForward')
+	return StringToEnum('AutodiffForward')[0]
 
 def AutodiffIsautodiffEnum():
@@ -25,5 +27,5 @@
 	"""
 
-	return StringToEnum('AutodiffIsautodiff')
+	return StringToEnum('AutodiffIsautodiff')[0]
 
 def AutodiffReverseEnum():
@@ -35,5 +37,5 @@
 	"""
 
-	return StringToEnum('AutodiffReverse')
+	return StringToEnum('AutodiffReverse')[0]
 
 def BalancethicknessSpcthicknessEnum():
@@ -45,5 +47,5 @@
 	"""
 
-	return StringToEnum('BalancethicknessSpcthickness')
+	return StringToEnum('BalancethicknessSpcthickness')[0]
 
 def BalancethicknessStabilizationEnum():
@@ -55,5 +57,5 @@
 	"""
 
-	return StringToEnum('BalancethicknessStabilization')
+	return StringToEnum('BalancethicknessStabilization')[0]
 
 def BalancethicknessThickeningRateEnum():
@@ -65,5 +67,5 @@
 	"""
 
-	return StringToEnum('BalancethicknessThickeningRate')
+	return StringToEnum('BalancethicknessThickeningRate')[0]
 
 def BasalforcingsGeothermalfluxEnum():
@@ -75,5 +77,5 @@
 	"""
 
-	return StringToEnum('BasalforcingsGeothermalflux')
+	return StringToEnum('BasalforcingsGeothermalflux')[0]
 
 def BasalforcingsMeltingRateCorrectionEnum():
@@ -85,5 +87,5 @@
 	"""
 
-	return StringToEnum('BasalforcingsMeltingRateCorrection')
+	return StringToEnum('BasalforcingsMeltingRateCorrection')[0]
 
 def BasalforcingsMeltingRateEnum():
@@ -95,5 +97,5 @@
 	"""
 
-	return StringToEnum('BasalforcingsMeltingRate')
+	return StringToEnum('BasalforcingsMeltingRate')[0]
 
 def BathymetryEnum():
@@ -105,5 +107,5 @@
 	"""
 
-	return StringToEnum('Bathymetry')
+	return StringToEnum('Bathymetry')[0]
 
 def BedEnum():
@@ -115,5 +117,5 @@
 	"""
 
-	return StringToEnum('Bed')
+	return StringToEnum('Bed')[0]
 
 def ConstantsGEnum():
@@ -125,5 +127,5 @@
 	"""
 
-	return StringToEnum('ConstantsG')
+	return StringToEnum('ConstantsG')[0]
 
 def ConstantsReferencetemperatureEnum():
@@ -135,5 +137,5 @@
 	"""
 
-	return StringToEnum('ConstantsReferencetemperature')
+	return StringToEnum('ConstantsReferencetemperature')[0]
 
 def ConstantsYtsEnum():
@@ -145,5 +147,5 @@
 	"""
 
-	return StringToEnum('ConstantsYts')
+	return StringToEnum('ConstantsYts')[0]
 
 def DiagnosticAbstolEnum():
@@ -155,5 +157,5 @@
 	"""
 
-	return StringToEnum('DiagnosticAbstol')
+	return StringToEnum('DiagnosticAbstol')[0]
 
 def DiagnosticIcefrontEnum():
@@ -165,5 +167,5 @@
 	"""
 
-	return StringToEnum('DiagnosticIcefront')
+	return StringToEnum('DiagnosticIcefront')[0]
 
 def DiagnosticIsnewtonEnum():
@@ -175,5 +177,5 @@
 	"""
 
-	return StringToEnum('DiagnosticIsnewton')
+	return StringToEnum('DiagnosticIsnewton')[0]
 
 def DiagnosticMaxiterEnum():
@@ -185,5 +187,5 @@
 	"""
 
-	return StringToEnum('DiagnosticMaxiter')
+	return StringToEnum('DiagnosticMaxiter')[0]
 
 def DiagnosticNumRequestedOutputsEnum():
@@ -195,5 +197,5 @@
 	"""
 
-	return StringToEnum('DiagnosticNumRequestedOutputs')
+	return StringToEnum('DiagnosticNumRequestedOutputs')[0]
 
 def DiagnosticPenaltyFactorEnum():
@@ -205,5 +207,5 @@
 	"""
 
-	return StringToEnum('DiagnosticPenaltyFactor')
+	return StringToEnum('DiagnosticPenaltyFactor')[0]
 
 def DiagnosticReferentialEnum():
@@ -215,5 +217,5 @@
 	"""
 
-	return StringToEnum('DiagnosticReferential')
+	return StringToEnum('DiagnosticReferential')[0]
 
 def DiagnosticReltolEnum():
@@ -225,5 +227,5 @@
 	"""
 
-	return StringToEnum('DiagnosticReltol')
+	return StringToEnum('DiagnosticReltol')[0]
 
 def DiagnosticRequestedOutputsEnum():
@@ -235,5 +237,5 @@
 	"""
 
-	return StringToEnum('DiagnosticRequestedOutputs')
+	return StringToEnum('DiagnosticRequestedOutputs')[0]
 
 def DiagnosticRestolEnum():
@@ -245,5 +247,5 @@
 	"""
 
-	return StringToEnum('DiagnosticRestol')
+	return StringToEnum('DiagnosticRestol')[0]
 
 def DiagnosticRiftPenaltyLockEnum():
@@ -255,5 +257,5 @@
 	"""
 
-	return StringToEnum('DiagnosticRiftPenaltyLock')
+	return StringToEnum('DiagnosticRiftPenaltyLock')[0]
 
 def DiagnosticRiftPenaltyThresholdEnum():
@@ -265,5 +267,5 @@
 	"""
 
-	return StringToEnum('DiagnosticRiftPenaltyThreshold')
+	return StringToEnum('DiagnosticRiftPenaltyThreshold')[0]
 
 def DiagnosticShelfDampeningEnum():
@@ -275,5 +277,5 @@
 	"""
 
-	return StringToEnum('DiagnosticShelfDampening')
+	return StringToEnum('DiagnosticShelfDampening')[0]
 
 def DiagnosticSpcvxEnum():
@@ -285,5 +287,5 @@
 	"""
 
-	return StringToEnum('DiagnosticSpcvx')
+	return StringToEnum('DiagnosticSpcvx')[0]
 
 def DiagnosticSpcvyEnum():
@@ -295,5 +297,5 @@
 	"""
 
-	return StringToEnum('DiagnosticSpcvy')
+	return StringToEnum('DiagnosticSpcvy')[0]
 
 def DiagnosticSpcvzEnum():
@@ -305,5 +307,5 @@
 	"""
 
-	return StringToEnum('DiagnosticSpcvz')
+	return StringToEnum('DiagnosticSpcvz')[0]
 
 def DiagnosticStokesreconditioningEnum():
@@ -315,5 +317,5 @@
 	"""
 
-	return StringToEnum('DiagnosticStokesreconditioning')
+	return StringToEnum('DiagnosticStokesreconditioning')[0]
 
 def DiagnosticVertexPairingEnum():
@@ -325,5 +327,5 @@
 	"""
 
-	return StringToEnum('DiagnosticVertexPairing')
+	return StringToEnum('DiagnosticVertexPairing')[0]
 
 def DiagnosticViscosityOvershootEnum():
@@ -335,5 +337,5 @@
 	"""
 
-	return StringToEnum('DiagnosticViscosityOvershoot')
+	return StringToEnum('DiagnosticViscosityOvershoot')[0]
 
 def FlowequationBordermacayealEnum():
@@ -345,5 +347,5 @@
 	"""
 
-	return StringToEnum('FlowequationBordermacayeal')
+	return StringToEnum('FlowequationBordermacayeal')[0]
 
 def FlowequationBorderpattynEnum():
@@ -355,5 +357,5 @@
 	"""
 
-	return StringToEnum('FlowequationBorderpattyn')
+	return StringToEnum('FlowequationBorderpattyn')[0]
 
 def FlowequationBorderstokesEnum():
@@ -365,5 +367,5 @@
 	"""
 
-	return StringToEnum('FlowequationBorderstokes')
+	return StringToEnum('FlowequationBorderstokes')[0]
 
 def FlowequationElementEquationEnum():
@@ -375,5 +377,5 @@
 	"""
 
-	return StringToEnum('FlowequationElementEquation')
+	return StringToEnum('FlowequationElementEquation')[0]
 
 def FlowequationIshutterEnum():
@@ -385,5 +387,5 @@
 	"""
 
-	return StringToEnum('FlowequationIshutter')
+	return StringToEnum('FlowequationIshutter')[0]
 
 def FlowequationIsmacayealpattynEnum():
@@ -395,5 +397,5 @@
 	"""
 
-	return StringToEnum('FlowequationIsmacayealpattyn')
+	return StringToEnum('FlowequationIsmacayealpattyn')[0]
 
 def FlowequationIsstokesEnum():
@@ -405,5 +407,5 @@
 	"""
 
-	return StringToEnum('FlowequationIsstokes')
+	return StringToEnum('FlowequationIsstokes')[0]
 
 def FlowequationVertexEquationEnum():
@@ -415,5 +417,5 @@
 	"""
 
-	return StringToEnum('FlowequationVertexEquation')
+	return StringToEnum('FlowequationVertexEquation')[0]
 
 def FrictionCoefficientEnum():
@@ -425,5 +427,5 @@
 	"""
 
-	return StringToEnum('FrictionCoefficient')
+	return StringToEnum('FrictionCoefficient')[0]
 
 def FrictionPEnum():
@@ -435,5 +437,5 @@
 	"""
 
-	return StringToEnum('FrictionP')
+	return StringToEnum('FrictionP')[0]
 
 def FrictionQEnum():
@@ -445,5 +447,5 @@
 	"""
 
-	return StringToEnum('FrictionQ')
+	return StringToEnum('FrictionQ')[0]
 
 def GeometryHydrostaticRatioEnum():
@@ -455,5 +457,5 @@
 	"""
 
-	return StringToEnum('GeometryHydrostaticRatio')
+	return StringToEnum('GeometryHydrostaticRatio')[0]
 
 def HydrologyCREnum():
@@ -465,5 +467,5 @@
 	"""
 
-	return StringToEnum('HydrologyCR')
+	return StringToEnum('HydrologyCR')[0]
 
 def HydrologyKnEnum():
@@ -475,5 +477,5 @@
 	"""
 
-	return StringToEnum('HydrologyKn')
+	return StringToEnum('HydrologyKn')[0]
 
 def HydrologyNEnum():
@@ -485,5 +487,5 @@
 	"""
 
-	return StringToEnum('HydrologyN')
+	return StringToEnum('HydrologyN')[0]
 
 def HydrologyPEnum():
@@ -495,5 +497,5 @@
 	"""
 
-	return StringToEnum('HydrologyP')
+	return StringToEnum('HydrologyP')[0]
 
 def HydrologyQEnum():
@@ -505,5 +507,5 @@
 	"""
 
-	return StringToEnum('HydrologyQ')
+	return StringToEnum('HydrologyQ')[0]
 
 def HydrologySpcwatercolumnEnum():
@@ -515,5 +517,5 @@
 	"""
 
-	return StringToEnum('HydrologySpcwatercolumn')
+	return StringToEnum('HydrologySpcwatercolumn')[0]
 
 def HydrologyStabilizationEnum():
@@ -525,5 +527,5 @@
 	"""
 
-	return StringToEnum('HydrologyStabilization')
+	return StringToEnum('HydrologyStabilization')[0]
 
 def InversionControlParametersEnum():
@@ -535,5 +537,5 @@
 	"""
 
-	return StringToEnum('InversionControlParameters')
+	return StringToEnum('InversionControlParameters')[0]
 
 def InversionCostFunctionEnum():
@@ -545,5 +547,5 @@
 	"""
 
-	return StringToEnum('InversionCostFunction')
+	return StringToEnum('InversionCostFunction')[0]
 
 def InversionCostFunctionThresholdEnum():
@@ -555,5 +557,5 @@
 	"""
 
-	return StringToEnum('InversionCostFunctionThreshold')
+	return StringToEnum('InversionCostFunctionThreshold')[0]
 
 def InversionCostFunctionsCoefficientsEnum():
@@ -565,5 +567,5 @@
 	"""
 
-	return StringToEnum('InversionCostFunctionsCoefficients')
+	return StringToEnum('InversionCostFunctionsCoefficients')[0]
 
 def InversionCostFunctionsEnum():
@@ -575,5 +577,5 @@
 	"""
 
-	return StringToEnum('InversionCostFunctions')
+	return StringToEnum('InversionCostFunctions')[0]
 
 def InversionGradientOnlyEnum():
@@ -585,5 +587,5 @@
 	"""
 
-	return StringToEnum('InversionGradientOnly')
+	return StringToEnum('InversionGradientOnly')[0]
 
 def InversionGradientScalingEnum():
@@ -595,5 +597,5 @@
 	"""
 
-	return StringToEnum('InversionGradientScaling')
+	return StringToEnum('InversionGradientScaling')[0]
 
 def InversionIscontrolEnum():
@@ -605,5 +607,5 @@
 	"""
 
-	return StringToEnum('InversionIscontrol')
+	return StringToEnum('InversionIscontrol')[0]
 
 def InversionTaoEnum():
@@ -615,5 +617,5 @@
 	"""
 
-	return StringToEnum('InversionTao')
+	return StringToEnum('InversionTao')[0]
 
 def InversionIncompleteAdjointEnum():
@@ -625,5 +627,5 @@
 	"""
 
-	return StringToEnum('InversionIncompleteAdjoint')
+	return StringToEnum('InversionIncompleteAdjoint')[0]
 
 def InversionMaxParametersEnum():
@@ -635,5 +637,5 @@
 	"""
 
-	return StringToEnum('InversionMaxParameters')
+	return StringToEnum('InversionMaxParameters')[0]
 
 def InversionMaxiterPerStepEnum():
@@ -645,5 +647,5 @@
 	"""
 
-	return StringToEnum('InversionMaxiterPerStep')
+	return StringToEnum('InversionMaxiterPerStep')[0]
 
 def InversionMinParametersEnum():
@@ -655,5 +657,5 @@
 	"""
 
-	return StringToEnum('InversionMinParameters')
+	return StringToEnum('InversionMinParameters')[0]
 
 def InversionNstepsEnum():
@@ -665,5 +667,5 @@
 	"""
 
-	return StringToEnum('InversionNsteps')
+	return StringToEnum('InversionNsteps')[0]
 
 def InversionNumControlParametersEnum():
@@ -675,5 +677,5 @@
 	"""
 
-	return StringToEnum('InversionNumControlParameters')
+	return StringToEnum('InversionNumControlParameters')[0]
 
 def InversionNumCostFunctionsEnum():
@@ -685,5 +687,5 @@
 	"""
 
-	return StringToEnum('InversionNumCostFunctions')
+	return StringToEnum('InversionNumCostFunctions')[0]
 
 def InversionStepThresholdEnum():
@@ -695,5 +697,5 @@
 	"""
 
-	return StringToEnum('InversionStepThreshold')
+	return StringToEnum('InversionStepThreshold')[0]
 
 def InversionThicknessObsEnum():
@@ -705,5 +707,5 @@
 	"""
 
-	return StringToEnum('InversionThicknessObs')
+	return StringToEnum('InversionThicknessObs')[0]
 
 def InversionVelObsEnum():
@@ -715,5 +717,5 @@
 	"""
 
-	return StringToEnum('InversionVelObs')
+	return StringToEnum('InversionVelObs')[0]
 
 def InversionVxObsEnum():
@@ -725,5 +727,5 @@
 	"""
 
-	return StringToEnum('InversionVxObs')
+	return StringToEnum('InversionVxObs')[0]
 
 def InversionVyObsEnum():
@@ -735,5 +737,5 @@
 	"""
 
-	return StringToEnum('InversionVyObs')
+	return StringToEnum('InversionVyObs')[0]
 
 def InversionVzObsEnum():
@@ -745,5 +747,5 @@
 	"""
 
-	return StringToEnum('InversionVzObs')
+	return StringToEnum('InversionVzObs')[0]
 
 def MaskElementonfloatingiceEnum():
@@ -755,5 +757,5 @@
 	"""
 
-	return StringToEnum('MaskElementonfloatingice')
+	return StringToEnum('MaskElementonfloatingice')[0]
 
 def MaskElementongroundediceEnum():
@@ -765,5 +767,5 @@
 	"""
 
-	return StringToEnum('MaskElementongroundedice')
+	return StringToEnum('MaskElementongroundedice')[0]
 
 def MaskElementonwaterEnum():
@@ -775,5 +777,5 @@
 	"""
 
-	return StringToEnum('MaskElementonwater')
+	return StringToEnum('MaskElementonwater')[0]
 
 def MaskVertexonfloatingiceEnum():
@@ -785,5 +787,5 @@
 	"""
 
-	return StringToEnum('MaskVertexonfloatingice')
+	return StringToEnum('MaskVertexonfloatingice')[0]
 
 def MaskVertexongroundediceEnum():
@@ -795,5 +797,5 @@
 	"""
 
-	return StringToEnum('MaskVertexongroundedice')
+	return StringToEnum('MaskVertexongroundedice')[0]
 
 def MaskVertexonwaterEnum():
@@ -805,5 +807,5 @@
 	"""
 
-	return StringToEnum('MaskVertexonwater')
+	return StringToEnum('MaskVertexonwater')[0]
 
 def MaterialsBetaEnum():
@@ -815,5 +817,5 @@
 	"""
 
-	return StringToEnum('MaterialsBeta')
+	return StringToEnum('MaterialsBeta')[0]
 
 def MaterialsHeatcapacityEnum():
@@ -825,5 +827,5 @@
 	"""
 
-	return StringToEnum('MaterialsHeatcapacity')
+	return StringToEnum('MaterialsHeatcapacity')[0]
 
 def MaterialsLatentheatEnum():
@@ -835,5 +837,5 @@
 	"""
 
-	return StringToEnum('MaterialsLatentheat')
+	return StringToEnum('MaterialsLatentheat')[0]
 
 def MaterialsMeltingpointEnum():
@@ -845,5 +847,5 @@
 	"""
 
-	return StringToEnum('MaterialsMeltingpoint')
+	return StringToEnum('MaterialsMeltingpoint')[0]
 
 def MaterialsMixedLayerCapacityEnum():
@@ -855,5 +857,5 @@
 	"""
 
-	return StringToEnum('MaterialsMixedLayerCapacity')
+	return StringToEnum('MaterialsMixedLayerCapacity')[0]
 
 def MaterialsRheologyBEnum():
@@ -865,5 +867,5 @@
 	"""
 
-	return StringToEnum('MaterialsRheologyB')
+	return StringToEnum('MaterialsRheologyB')[0]
 
 def MaterialsRheologyBbarEnum():
@@ -875,5 +877,5 @@
 	"""
 
-	return StringToEnum('MaterialsRheologyBbar')
+	return StringToEnum('MaterialsRheologyBbar')[0]
 
 def MaterialsRheologyLawEnum():
@@ -885,5 +887,5 @@
 	"""
 
-	return StringToEnum('MaterialsRheologyLaw')
+	return StringToEnum('MaterialsRheologyLaw')[0]
 
 def MaterialsRheologyNEnum():
@@ -895,5 +897,5 @@
 	"""
 
-	return StringToEnum('MaterialsRheologyN')
+	return StringToEnum('MaterialsRheologyN')[0]
 
 def MaterialsRhoIceEnum():
@@ -905,5 +907,5 @@
 	"""
 
-	return StringToEnum('MaterialsRhoIce')
+	return StringToEnum('MaterialsRhoIce')[0]
 
 def MaterialsRhoWaterEnum():
@@ -915,5 +917,5 @@
 	"""
 
-	return StringToEnum('MaterialsRhoWater')
+	return StringToEnum('MaterialsRhoWater')[0]
 
 def MaterialsRhoFreshwaterEnum():
@@ -925,5 +927,5 @@
 	"""
 
-	return StringToEnum('MaterialsRhoFreshwater')
+	return StringToEnum('MaterialsRhoFreshwater')[0]
 
 def MaterialsMuWaterEnum():
@@ -935,5 +937,5 @@
 	"""
 
-	return StringToEnum('MaterialsMuWater')
+	return StringToEnum('MaterialsMuWater')[0]
 
 def MaterialsThermalExchangeVelocityEnum():
@@ -945,5 +947,5 @@
 	"""
 
-	return StringToEnum('MaterialsThermalExchangeVelocity')
+	return StringToEnum('MaterialsThermalExchangeVelocity')[0]
 
 def MaterialsThermalconductivityEnum():
@@ -955,5 +957,5 @@
 	"""
 
-	return StringToEnum('MaterialsThermalconductivity')
+	return StringToEnum('MaterialsThermalconductivity')[0]
 
 def MeshAverageVertexConnectivityEnum():
@@ -965,5 +967,5 @@
 	"""
 
-	return StringToEnum('MeshAverageVertexConnectivity')
+	return StringToEnum('MeshAverageVertexConnectivity')[0]
 
 def MeshDimensionEnum():
@@ -975,5 +977,5 @@
 	"""
 
-	return StringToEnum('MeshDimension')
+	return StringToEnum('MeshDimension')[0]
 
 def MeshEdgesEnum():
@@ -985,5 +987,5 @@
 	"""
 
-	return StringToEnum('MeshEdges')
+	return StringToEnum('MeshEdges')[0]
 
 def MeshElementconnectivityEnum():
@@ -995,5 +997,5 @@
 	"""
 
-	return StringToEnum('MeshElementconnectivity')
+	return StringToEnum('MeshElementconnectivity')[0]
 
 def MeshElementonbedEnum():
@@ -1005,5 +1007,5 @@
 	"""
 
-	return StringToEnum('MeshElementonbed')
+	return StringToEnum('MeshElementonbed')[0]
 
 def MeshElementonsurfaceEnum():
@@ -1015,5 +1017,5 @@
 	"""
 
-	return StringToEnum('MeshElementonsurface')
+	return StringToEnum('MeshElementonsurface')[0]
 
 def MeshElements2dEnum():
@@ -1025,5 +1027,5 @@
 	"""
 
-	return StringToEnum('MeshElements2d')
+	return StringToEnum('MeshElements2d')[0]
 
 def MeshElementsEnum():
@@ -1035,5 +1037,5 @@
 	"""
 
-	return StringToEnum('MeshElements')
+	return StringToEnum('MeshElements')[0]
 
 def MeshLowerelementsEnum():
@@ -1045,5 +1047,5 @@
 	"""
 
-	return StringToEnum('MeshLowerelements')
+	return StringToEnum('MeshLowerelements')[0]
 
 def MeshNumberofedgesEnum():
@@ -1055,5 +1057,5 @@
 	"""
 
-	return StringToEnum('MeshNumberofedges')
+	return StringToEnum('MeshNumberofedges')[0]
 
 def MeshNumberofelements2dEnum():
@@ -1065,5 +1067,5 @@
 	"""
 
-	return StringToEnum('MeshNumberofelements2d')
+	return StringToEnum('MeshNumberofelements2d')[0]
 
 def MeshNumberofelementsEnum():
@@ -1075,5 +1077,5 @@
 	"""
 
-	return StringToEnum('MeshNumberofelements')
+	return StringToEnum('MeshNumberofelements')[0]
 
 def MeshNumberoflayersEnum():
@@ -1085,5 +1087,5 @@
 	"""
 
-	return StringToEnum('MeshNumberoflayers')
+	return StringToEnum('MeshNumberoflayers')[0]
 
 def MeshNumberofvertices2dEnum():
@@ -1095,5 +1097,5 @@
 	"""
 
-	return StringToEnum('MeshNumberofvertices2d')
+	return StringToEnum('MeshNumberofvertices2d')[0]
 
 def MeshNumberofverticesEnum():
@@ -1105,5 +1107,5 @@
 	"""
 
-	return StringToEnum('MeshNumberofvertices')
+	return StringToEnum('MeshNumberofvertices')[0]
 
 def MeshUpperelementsEnum():
@@ -1115,5 +1117,5 @@
 	"""
 
-	return StringToEnum('MeshUpperelements')
+	return StringToEnum('MeshUpperelements')[0]
 
 def MeshVertexonbedEnum():
@@ -1125,5 +1127,5 @@
 	"""
 
-	return StringToEnum('MeshVertexonbed')
+	return StringToEnum('MeshVertexonbed')[0]
 
 def MeshVertexonsurfaceEnum():
@@ -1135,5 +1137,5 @@
 	"""
 
-	return StringToEnum('MeshVertexonsurface')
+	return StringToEnum('MeshVertexonsurface')[0]
 
 def MeshXEnum():
@@ -1145,5 +1147,5 @@
 	"""
 
-	return StringToEnum('MeshX')
+	return StringToEnum('MeshX')[0]
 
 def MeshYEnum():
@@ -1155,5 +1157,5 @@
 	"""
 
-	return StringToEnum('MeshY')
+	return StringToEnum('MeshY')[0]
 
 def MeshZEnum():
@@ -1165,5 +1167,5 @@
 	"""
 
-	return StringToEnum('MeshZ')
+	return StringToEnum('MeshZ')[0]
 
 def MiscellaneousNameEnum():
@@ -1175,5 +1177,5 @@
 	"""
 
-	return StringToEnum('MiscellaneousName')
+	return StringToEnum('MiscellaneousName')[0]
 
 def PrognosticHydrostaticAdjustmentEnum():
@@ -1185,5 +1187,5 @@
 	"""
 
-	return StringToEnum('PrognosticHydrostaticAdjustment')
+	return StringToEnum('PrognosticHydrostaticAdjustment')[0]
 
 def PrognosticMinThicknessEnum():
@@ -1195,5 +1197,5 @@
 	"""
 
-	return StringToEnum('PrognosticMinThickness')
+	return StringToEnum('PrognosticMinThickness')[0]
 
 def PrognosticPenaltyFactorEnum():
@@ -1205,5 +1207,5 @@
 	"""
 
-	return StringToEnum('PrognosticPenaltyFactor')
+	return StringToEnum('PrognosticPenaltyFactor')[0]
 
 def PrognosticSpcthicknessEnum():
@@ -1215,5 +1217,5 @@
 	"""
 
-	return StringToEnum('PrognosticSpcthickness')
+	return StringToEnum('PrognosticSpcthickness')[0]
 
 def PrognosticStabilizationEnum():
@@ -1225,5 +1227,5 @@
 	"""
 
-	return StringToEnum('PrognosticStabilization')
+	return StringToEnum('PrognosticStabilization')[0]
 
 def PrognosticVertexPairingEnum():
@@ -1235,5 +1237,5 @@
 	"""
 
-	return StringToEnum('PrognosticVertexPairing')
+	return StringToEnum('PrognosticVertexPairing')[0]
 
 def QmuIsdakotaEnum():
@@ -1245,5 +1247,5 @@
 	"""
 
-	return StringToEnum('QmuIsdakota')
+	return StringToEnum('QmuIsdakota')[0]
 
 def QmuMassFluxSegmentsEnum():
@@ -1255,5 +1257,5 @@
 	"""
 
-	return StringToEnum('QmuMassFluxSegments')
+	return StringToEnum('QmuMassFluxSegments')[0]
 
 def QmuNumberofpartitionsEnum():
@@ -1265,5 +1267,5 @@
 	"""
 
-	return StringToEnum('QmuNumberofpartitions')
+	return StringToEnum('QmuNumberofpartitions')[0]
 
 def QmuNumberofresponsesEnum():
@@ -1275,5 +1277,5 @@
 	"""
 
-	return StringToEnum('QmuNumberofresponses')
+	return StringToEnum('QmuNumberofresponses')[0]
 
 def QmuPartitionEnum():
@@ -1285,5 +1287,5 @@
 	"""
 
-	return StringToEnum('QmuPartition')
+	return StringToEnum('QmuPartition')[0]
 
 def QmuResponsedescriptorsEnum():
@@ -1295,5 +1297,5 @@
 	"""
 
-	return StringToEnum('QmuResponsedescriptors')
+	return StringToEnum('QmuResponsedescriptors')[0]
 
 def QmuVariabledescriptorsEnum():
@@ -1305,5 +1307,5 @@
 	"""
 
-	return StringToEnum('QmuVariabledescriptors')
+	return StringToEnum('QmuVariabledescriptors')[0]
 
 def RiftsNumriftsEnum():
@@ -1315,5 +1317,5 @@
 	"""
 
-	return StringToEnum('RiftsNumrifts')
+	return StringToEnum('RiftsNumrifts')[0]
 
 def RiftsRiftstructEnum():
@@ -1325,5 +1327,5 @@
 	"""
 
-	return StringToEnum('RiftsRiftstruct')
+	return StringToEnum('RiftsRiftstruct')[0]
 
 def SettingsIoGatherEnum():
@@ -1335,5 +1337,5 @@
 	"""
 
-	return StringToEnum('SettingsIoGather')
+	return StringToEnum('SettingsIoGather')[0]
 
 def SettingsLowmemEnum():
@@ -1345,5 +1347,5 @@
 	"""
 
-	return StringToEnum('SettingsLowmem')
+	return StringToEnum('SettingsLowmem')[0]
 
 def SettingsOutputFrequencyEnum():
@@ -1355,5 +1357,5 @@
 	"""
 
-	return StringToEnum('SettingsOutputFrequency')
+	return StringToEnum('SettingsOutputFrequency')[0]
 
 def SettingsResultsAsPatchesEnum():
@@ -1365,5 +1367,5 @@
 	"""
 
-	return StringToEnum('SettingsResultsAsPatches')
+	return StringToEnum('SettingsResultsAsPatches')[0]
 
 def SettingsWaitonlockEnum():
@@ -1375,5 +1377,5 @@
 	"""
 
-	return StringToEnum('SettingsWaitonlock')
+	return StringToEnum('SettingsWaitonlock')[0]
 
 def SurfaceforcingsDelta18oEnum():
@@ -1385,5 +1387,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsDelta18o')
+	return StringToEnum('SurfaceforcingsDelta18o')[0]
 
 def SurfaceforcingsDelta18oSurfaceEnum():
@@ -1395,5 +1397,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsDelta18oSurface')
+	return StringToEnum('SurfaceforcingsDelta18oSurface')[0]
 
 def SurfaceforcingsIsdelta18oEnum():
@@ -1405,5 +1407,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsIsdelta18o')
+	return StringToEnum('SurfaceforcingsIsdelta18o')[0]
 
 def SurfaceforcingsPrecipitationsPresentdayEnum():
@@ -1415,5 +1417,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsPrecipitationsPresentday')
+	return StringToEnum('SurfaceforcingsPrecipitationsPresentday')[0]
 
 def SurfaceforcingsTemperaturesPresentdayEnum():
@@ -1425,5 +1427,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsTemperaturesPresentday')
+	return StringToEnum('SurfaceforcingsTemperaturesPresentday')[0]
 
 def SurfaceforcingsTemperaturesLgmEnum():
@@ -1435,5 +1437,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsTemperaturesLgm')
+	return StringToEnum('SurfaceforcingsTemperaturesLgm')[0]
 
 def DebugProfilingEnum():
@@ -1445,5 +1447,5 @@
 	"""
 
-	return StringToEnum('DebugProfiling')
+	return StringToEnum('DebugProfiling')[0]
 
 def ProfilingCurrentMemEnum():
@@ -1455,5 +1457,5 @@
 	"""
 
-	return StringToEnum('ProfilingCurrentMem')
+	return StringToEnum('ProfilingCurrentMem')[0]
 
 def ProfilingCurrentFlopsEnum():
@@ -1465,5 +1467,5 @@
 	"""
 
-	return StringToEnum('ProfilingCurrentFlops')
+	return StringToEnum('ProfilingCurrentFlops')[0]
 
 def ProfilingSolutionTimeEnum():
@@ -1475,5 +1477,5 @@
 	"""
 
-	return StringToEnum('ProfilingSolutionTime')
+	return StringToEnum('ProfilingSolutionTime')[0]
 
 def MaxIterationConvergenceFlagEnum():
@@ -1485,5 +1487,5 @@
 	"""
 
-	return StringToEnum('MaxIterationConvergenceFlag')
+	return StringToEnum('MaxIterationConvergenceFlag')[0]
 
 def SteadystateMaxiterEnum():
@@ -1495,5 +1497,5 @@
 	"""
 
-	return StringToEnum('SteadystateMaxiter')
+	return StringToEnum('SteadystateMaxiter')[0]
 
 def SteadystateNumRequestedOutputsEnum():
@@ -1505,5 +1507,5 @@
 	"""
 
-	return StringToEnum('SteadystateNumRequestedOutputs')
+	return StringToEnum('SteadystateNumRequestedOutputs')[0]
 
 def SteadystateReltolEnum():
@@ -1515,5 +1517,5 @@
 	"""
 
-	return StringToEnum('SteadystateReltol')
+	return StringToEnum('SteadystateReltol')[0]
 
 def SteadystateRequestedOutputsEnum():
@@ -1525,5 +1527,5 @@
 	"""
 
-	return StringToEnum('SteadystateRequestedOutputs')
+	return StringToEnum('SteadystateRequestedOutputs')[0]
 
 def SurfaceEnum():
@@ -1535,5 +1537,5 @@
 	"""
 
-	return StringToEnum('Surface')
+	return StringToEnum('Surface')[0]
 
 def SurfaceforcingsPrecipitationEnum():
@@ -1545,5 +1547,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsPrecipitation')
+	return StringToEnum('SurfaceforcingsPrecipitation')[0]
 
 def SurfaceforcingsMassBalanceEnum():
@@ -1555,5 +1557,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsMassBalance')
+	return StringToEnum('SurfaceforcingsMassBalance')[0]
 
 def SurfaceforcingsIspddEnum():
@@ -1565,5 +1567,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsIspdd')
+	return StringToEnum('SurfaceforcingsIspdd')[0]
 
 def SurfaceforcingsIssmbgradientsEnum():
@@ -1575,5 +1577,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsIssmbgradients')
+	return StringToEnum('SurfaceforcingsIssmbgradients')[0]
 
 def SurfaceforcingsMonthlytemperaturesEnum():
@@ -1585,5 +1587,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsMonthlytemperatures')
+	return StringToEnum('SurfaceforcingsMonthlytemperatures')[0]
 
 def SurfaceforcingsHcEnum():
@@ -1595,5 +1597,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsHc')
+	return StringToEnum('SurfaceforcingsHc')[0]
 
 def SurfaceforcingsSmbPosMaxEnum():
@@ -1605,5 +1607,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsSmbPosMax')
+	return StringToEnum('SurfaceforcingsSmbPosMax')[0]
 
 def SurfaceforcingsSmbPosMinEnum():
@@ -1615,5 +1617,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsSmbPosMin')
+	return StringToEnum('SurfaceforcingsSmbPosMin')[0]
 
 def SurfaceforcingsAPosEnum():
@@ -1625,5 +1627,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsAPos')
+	return StringToEnum('SurfaceforcingsAPos')[0]
 
 def SurfaceforcingsBPosEnum():
@@ -1635,5 +1637,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsBPos')
+	return StringToEnum('SurfaceforcingsBPos')[0]
 
 def SurfaceforcingsANegEnum():
@@ -1645,5 +1647,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsANeg')
+	return StringToEnum('SurfaceforcingsANeg')[0]
 
 def SurfaceforcingsBNegEnum():
@@ -1655,5 +1657,5 @@
 	"""
 
-	return StringToEnum('SurfaceforcingsBNeg')
+	return StringToEnum('SurfaceforcingsBNeg')[0]
 
 def ThermalMaxiterEnum():
@@ -1665,5 +1667,5 @@
 	"""
 
-	return StringToEnum('ThermalMaxiter')
+	return StringToEnum('ThermalMaxiter')[0]
 
 def ThermalPenaltyFactorEnum():
@@ -1675,5 +1677,5 @@
 	"""
 
-	return StringToEnum('ThermalPenaltyFactor')
+	return StringToEnum('ThermalPenaltyFactor')[0]
 
 def ThermalPenaltyLockEnum():
@@ -1685,5 +1687,5 @@
 	"""
 
-	return StringToEnum('ThermalPenaltyLock')
+	return StringToEnum('ThermalPenaltyLock')[0]
 
 def ThermalPenaltyThresholdEnum():
@@ -1695,5 +1697,5 @@
 	"""
 
-	return StringToEnum('ThermalPenaltyThreshold')
+	return StringToEnum('ThermalPenaltyThreshold')[0]
 
 def ThermalSpctemperatureEnum():
@@ -1705,5 +1707,5 @@
 	"""
 
-	return StringToEnum('ThermalSpctemperature')
+	return StringToEnum('ThermalSpctemperature')[0]
 
 def ThermalStabilizationEnum():
@@ -1715,5 +1717,5 @@
 	"""
 
-	return StringToEnum('ThermalStabilization')
+	return StringToEnum('ThermalStabilization')[0]
 
 def ThermalIsenthalpyEnum():
@@ -1725,5 +1727,5 @@
 	"""
 
-	return StringToEnum('ThermalIsenthalpy')
+	return StringToEnum('ThermalIsenthalpy')[0]
 
 def ThicknessEnum():
@@ -1735,5 +1737,5 @@
 	"""
 
-	return StringToEnum('Thickness')
+	return StringToEnum('Thickness')[0]
 
 def TimesteppingStartTimeEnum():
@@ -1745,5 +1747,5 @@
 	"""
 
-	return StringToEnum('TimesteppingStartTime')
+	return StringToEnum('TimesteppingStartTime')[0]
 
 def TimesteppingFinalTimeEnum():
@@ -1755,5 +1757,5 @@
 	"""
 
-	return StringToEnum('TimesteppingFinalTime')
+	return StringToEnum('TimesteppingFinalTime')[0]
 
 def TimesteppingCflCoefficientEnum():
@@ -1765,5 +1767,5 @@
 	"""
 
-	return StringToEnum('TimesteppingCflCoefficient')
+	return StringToEnum('TimesteppingCflCoefficient')[0]
 
 def TimesteppingTimeAdaptEnum():
@@ -1775,5 +1777,5 @@
 	"""
 
-	return StringToEnum('TimesteppingTimeAdapt')
+	return StringToEnum('TimesteppingTimeAdapt')[0]
 
 def TimesteppingTimeStepEnum():
@@ -1785,5 +1787,5 @@
 	"""
 
-	return StringToEnum('TimesteppingTimeStep')
+	return StringToEnum('TimesteppingTimeStep')[0]
 
 def TransientIsdiagnosticEnum():
@@ -1795,5 +1797,5 @@
 	"""
 
-	return StringToEnum('TransientIsdiagnostic')
+	return StringToEnum('TransientIsdiagnostic')[0]
 
 def TransientIsgroundinglineEnum():
@@ -1805,5 +1807,5 @@
 	"""
 
-	return StringToEnum('TransientIsgroundingline')
+	return StringToEnum('TransientIsgroundingline')[0]
 
 def TransientIsprognosticEnum():
@@ -1815,5 +1817,5 @@
 	"""
 
-	return StringToEnum('TransientIsprognostic')
+	return StringToEnum('TransientIsprognostic')[0]
 
 def TransientIsthermalEnum():
@@ -1825,5 +1827,5 @@
 	"""
 
-	return StringToEnum('TransientIsthermal')
+	return StringToEnum('TransientIsthermal')[0]
 
 def TransientNumRequestedOutputsEnum():
@@ -1835,5 +1837,5 @@
 	"""
 
-	return StringToEnum('TransientNumRequestedOutputs')
+	return StringToEnum('TransientNumRequestedOutputs')[0]
 
 def TransientRequestedOutputsEnum():
@@ -1845,5 +1847,5 @@
 	"""
 
-	return StringToEnum('TransientRequestedOutputs')
+	return StringToEnum('TransientRequestedOutputs')[0]
 
 def SolutionTypeEnum():
@@ -1855,5 +1857,5 @@
 	"""
 
-	return StringToEnum('SolutionType')
+	return StringToEnum('SolutionType')[0]
 
 def AnalysisTypeEnum():
@@ -1865,5 +1867,5 @@
 	"""
 
-	return StringToEnum('AnalysisType')
+	return StringToEnum('AnalysisType')[0]
 
 def ConfigurationTypeEnum():
@@ -1875,5 +1877,5 @@
 	"""
 
-	return StringToEnum('ConfigurationType')
+	return StringToEnum('ConfigurationType')[0]
 
 def AdjointBalancethicknessAnalysisEnum():
@@ -1885,5 +1887,5 @@
 	"""
 
-	return StringToEnum('AdjointBalancethicknessAnalysis')
+	return StringToEnum('AdjointBalancethicknessAnalysis')[0]
 
 def AdjointHorizAnalysisEnum():
@@ -1895,5 +1897,5 @@
 	"""
 
-	return StringToEnum('AdjointHorizAnalysis')
+	return StringToEnum('AdjointHorizAnalysis')[0]
 
 def AdjointSolutionEnum():
@@ -1905,5 +1907,5 @@
 	"""
 
-	return StringToEnum('AdjointSolution')
+	return StringToEnum('AdjointSolution')[0]
 
 def AnalysisCounterEnum():
@@ -1915,5 +1917,5 @@
 	"""
 
-	return StringToEnum('AnalysisCounter')
+	return StringToEnum('AnalysisCounter')[0]
 
 def BalancethicknessAnalysisEnum():
@@ -1925,5 +1927,5 @@
 	"""
 
-	return StringToEnum('BalancethicknessAnalysis')
+	return StringToEnum('BalancethicknessAnalysis')[0]
 
 def BalancethicknessSolutionEnum():
@@ -1935,5 +1937,5 @@
 	"""
 
-	return StringToEnum('BalancethicknessSolution')
+	return StringToEnum('BalancethicknessSolution')[0]
 
 def BedSlopeAnalysisEnum():
@@ -1945,5 +1947,5 @@
 	"""
 
-	return StringToEnum('BedSlopeAnalysis')
+	return StringToEnum('BedSlopeAnalysis')[0]
 
 def BedSlopeSolutionEnum():
@@ -1955,5 +1957,5 @@
 	"""
 
-	return StringToEnum('BedSlopeSolution')
+	return StringToEnum('BedSlopeSolution')[0]
 
 def BedSlopeXAnalysisEnum():
@@ -1965,5 +1967,5 @@
 	"""
 
-	return StringToEnum('BedSlopeXAnalysis')
+	return StringToEnum('BedSlopeXAnalysis')[0]
 
 def BedSlopeYAnalysisEnum():
@@ -1975,5 +1977,5 @@
 	"""
 
-	return StringToEnum('BedSlopeYAnalysis')
+	return StringToEnum('BedSlopeYAnalysis')[0]
 
 def DiagnosticHorizAnalysisEnum():
@@ -1985,5 +1987,5 @@
 	"""
 
-	return StringToEnum('DiagnosticHorizAnalysis')
+	return StringToEnum('DiagnosticHorizAnalysis')[0]
 
 def DiagnosticHutterAnalysisEnum():
@@ -1995,5 +1997,5 @@
 	"""
 
-	return StringToEnum('DiagnosticHutterAnalysis')
+	return StringToEnum('DiagnosticHutterAnalysis')[0]
 
 def DiagnosticSolutionEnum():
@@ -2005,5 +2007,5 @@
 	"""
 
-	return StringToEnum('DiagnosticSolution')
+	return StringToEnum('DiagnosticSolution')[0]
 
 def DiagnosticVertAnalysisEnum():
@@ -2015,5 +2017,5 @@
 	"""
 
-	return StringToEnum('DiagnosticVertAnalysis')
+	return StringToEnum('DiagnosticVertAnalysis')[0]
 
 def EnthalpyAnalysisEnum():
@@ -2025,5 +2027,5 @@
 	"""
 
-	return StringToEnum('EnthalpyAnalysis')
+	return StringToEnum('EnthalpyAnalysis')[0]
 
 def EnthalpySolutionEnum():
@@ -2035,5 +2037,5 @@
 	"""
 
-	return StringToEnum('EnthalpySolution')
+	return StringToEnum('EnthalpySolution')[0]
 
 def FlaimAnalysisEnum():
@@ -2045,5 +2047,5 @@
 	"""
 
-	return StringToEnum('FlaimAnalysis')
+	return StringToEnum('FlaimAnalysis')[0]
 
 def FlaimSolutionEnum():
@@ -2055,5 +2057,5 @@
 	"""
 
-	return StringToEnum('FlaimSolution')
+	return StringToEnum('FlaimSolution')[0]
 
 def HydrologyAnalysisEnum():
@@ -2065,5 +2067,5 @@
 	"""
 
-	return StringToEnum('HydrologyAnalysis')
+	return StringToEnum('HydrologyAnalysis')[0]
 
 def HydrologySolutionEnum():
@@ -2075,5 +2077,5 @@
 	"""
 
-	return StringToEnum('HydrologySolution')
+	return StringToEnum('HydrologySolution')[0]
 
 def MeltingAnalysisEnum():
@@ -2085,5 +2087,5 @@
 	"""
 
-	return StringToEnum('MeltingAnalysis')
+	return StringToEnum('MeltingAnalysis')[0]
 
 def NoneAnalysisEnum():
@@ -2095,5 +2097,5 @@
 	"""
 
-	return StringToEnum('NoneAnalysis')
+	return StringToEnum('NoneAnalysis')[0]
 
 def PrognosticAnalysisEnum():
@@ -2105,5 +2107,5 @@
 	"""
 
-	return StringToEnum('PrognosticAnalysis')
+	return StringToEnum('PrognosticAnalysis')[0]
 
 def PrognosticSolutionEnum():
@@ -2115,5 +2117,5 @@
 	"""
 
-	return StringToEnum('PrognosticSolution')
+	return StringToEnum('PrognosticSolution')[0]
 
 def SteadystateSolutionEnum():
@@ -2125,5 +2127,5 @@
 	"""
 
-	return StringToEnum('SteadystateSolution')
+	return StringToEnum('SteadystateSolution')[0]
 
 def SurfaceSlopeAnalysisEnum():
@@ -2135,5 +2137,5 @@
 	"""
 
-	return StringToEnum('SurfaceSlopeAnalysis')
+	return StringToEnum('SurfaceSlopeAnalysis')[0]
 
 def SurfaceSlopeSolutionEnum():
@@ -2145,5 +2147,5 @@
 	"""
 
-	return StringToEnum('SurfaceSlopeSolution')
+	return StringToEnum('SurfaceSlopeSolution')[0]
 
 def SurfaceSlopeXAnalysisEnum():
@@ -2155,5 +2157,5 @@
 	"""
 
-	return StringToEnum('SurfaceSlopeXAnalysis')
+	return StringToEnum('SurfaceSlopeXAnalysis')[0]
 
 def SurfaceSlopeYAnalysisEnum():
@@ -2165,5 +2167,5 @@
 	"""
 
-	return StringToEnum('SurfaceSlopeYAnalysis')
+	return StringToEnum('SurfaceSlopeYAnalysis')[0]
 
 def ThermalAnalysisEnum():
@@ -2175,5 +2177,5 @@
 	"""
 
-	return StringToEnum('ThermalAnalysis')
+	return StringToEnum('ThermalAnalysis')[0]
 
 def ThermalSolutionEnum():
@@ -2185,5 +2187,5 @@
 	"""
 
-	return StringToEnum('ThermalSolution')
+	return StringToEnum('ThermalSolution')[0]
 
 def TransientSolutionEnum():
@@ -2195,5 +2197,5 @@
 	"""
 
-	return StringToEnum('TransientSolution')
+	return StringToEnum('TransientSolution')[0]
 
 def ApproximationEnum():
@@ -2205,5 +2207,5 @@
 	"""
 
-	return StringToEnum('Approximation')
+	return StringToEnum('Approximation')[0]
 
 def HutterApproximationEnum():
@@ -2215,5 +2217,5 @@
 	"""
 
-	return StringToEnum('HutterApproximation')
+	return StringToEnum('HutterApproximation')[0]
 
 def MacAyealApproximationEnum():
@@ -2225,5 +2227,5 @@
 	"""
 
-	return StringToEnum('MacAyealApproximation')
+	return StringToEnum('MacAyealApproximation')[0]
 
 def MacAyealPattynApproximationEnum():
@@ -2235,5 +2237,5 @@
 	"""
 
-	return StringToEnum('MacAyealPattynApproximation')
+	return StringToEnum('MacAyealPattynApproximation')[0]
 
 def MacAyealStokesApproximationEnum():
@@ -2245,5 +2247,5 @@
 	"""
 
-	return StringToEnum('MacAyealStokesApproximation')
+	return StringToEnum('MacAyealStokesApproximation')[0]
 
 def NoneApproximationEnum():
@@ -2255,5 +2257,5 @@
 	"""
 
-	return StringToEnum('NoneApproximation')
+	return StringToEnum('NoneApproximation')[0]
 
 def PattynApproximationEnum():
@@ -2265,5 +2267,5 @@
 	"""
 
-	return StringToEnum('PattynApproximation')
+	return StringToEnum('PattynApproximation')[0]
 
 def PattynStokesApproximationEnum():
@@ -2275,5 +2277,5 @@
 	"""
 
-	return StringToEnum('PattynStokesApproximation')
+	return StringToEnum('PattynStokesApproximation')[0]
 
 def StokesApproximationEnum():
@@ -2285,5 +2287,5 @@
 	"""
 
-	return StringToEnum('StokesApproximation')
+	return StringToEnum('StokesApproximation')[0]
 
 def ConstraintsEnum():
@@ -2295,5 +2297,5 @@
 	"""
 
-	return StringToEnum('Constraints')
+	return StringToEnum('Constraints')[0]
 
 def LoadsEnum():
@@ -2305,5 +2307,5 @@
 	"""
 
-	return StringToEnum('Loads')
+	return StringToEnum('Loads')[0]
 
 def MaterialsEnum():
@@ -2315,5 +2317,5 @@
 	"""
 
-	return StringToEnum('Materials')
+	return StringToEnum('Materials')[0]
 
 def NodesEnum():
@@ -2325,5 +2327,5 @@
 	"""
 
-	return StringToEnum('Nodes')
+	return StringToEnum('Nodes')[0]
 
 def ParametersEnum():
@@ -2335,5 +2337,5 @@
 	"""
 
-	return StringToEnum('Parameters')
+	return StringToEnum('Parameters')[0]
 
 def VerticesEnum():
@@ -2345,5 +2347,5 @@
 	"""
 
-	return StringToEnum('Vertices')
+	return StringToEnum('Vertices')[0]
 
 def ResultsEnum():
@@ -2355,5 +2357,5 @@
 	"""
 
-	return StringToEnum('Results')
+	return StringToEnum('Results')[0]
 
 def BoolInputEnum():
@@ -2365,5 +2367,5 @@
 	"""
 
-	return StringToEnum('BoolInput')
+	return StringToEnum('BoolInput')[0]
 
 def BoolParamEnum():
@@ -2375,5 +2377,5 @@
 	"""
 
-	return StringToEnum('BoolParam')
+	return StringToEnum('BoolParam')[0]
 
 def ContourEnum():
@@ -2385,5 +2387,5 @@
 	"""
 
-	return StringToEnum('Contour')
+	return StringToEnum('Contour')[0]
 
 def ControlInputEnum():
@@ -2395,5 +2397,5 @@
 	"""
 
-	return StringToEnum('ControlInput')
+	return StringToEnum('ControlInput')[0]
 
 def DatasetInputEnum():
@@ -2405,5 +2407,5 @@
 	"""
 
-	return StringToEnum('DatasetInput')
+	return StringToEnum('DatasetInput')[0]
 
 def DofIndexingEnum():
@@ -2415,5 +2417,5 @@
 	"""
 
-	return StringToEnum('DofIndexing')
+	return StringToEnum('DofIndexing')[0]
 
 def DoubleInputEnum():
@@ -2425,5 +2427,5 @@
 	"""
 
-	return StringToEnum('DoubleInput')
+	return StringToEnum('DoubleInput')[0]
 
 def DoubleMatArrayParamEnum():
@@ -2435,5 +2437,5 @@
 	"""
 
-	return StringToEnum('DoubleMatArrayParam')
+	return StringToEnum('DoubleMatArrayParam')[0]
 
 def DoubleMatParamEnum():
@@ -2445,5 +2447,5 @@
 	"""
 
-	return StringToEnum('DoubleMatParam')
+	return StringToEnum('DoubleMatParam')[0]
 
 def DoubleParamEnum():
@@ -2455,5 +2457,5 @@
 	"""
 
-	return StringToEnum('DoubleParam')
+	return StringToEnum('DoubleParam')[0]
 
 def DoubleVecParamEnum():
@@ -2465,5 +2467,5 @@
 	"""
 
-	return StringToEnum('DoubleVecParam')
+	return StringToEnum('DoubleVecParam')[0]
 
 def ElementEnum():
@@ -2475,5 +2477,5 @@
 	"""
 
-	return StringToEnum('Element')
+	return StringToEnum('Element')[0]
 
 def ElementResultEnum():
@@ -2485,5 +2487,5 @@
 	"""
 
-	return StringToEnum('ElementResult')
+	return StringToEnum('ElementResult')[0]
 
 def ExternalResultEnum():
@@ -2495,5 +2497,5 @@
 	"""
 
-	return StringToEnum('ExternalResult')
+	return StringToEnum('ExternalResult')[0]
 
 def FileParamEnum():
@@ -2505,5 +2507,5 @@
 	"""
 
-	return StringToEnum('FileParam')
+	return StringToEnum('FileParam')[0]
 
 def HookEnum():
@@ -2515,5 +2517,5 @@
 	"""
 
-	return StringToEnum('Hook')
+	return StringToEnum('Hook')[0]
 
 def IcefrontEnum():
@@ -2525,5 +2527,5 @@
 	"""
 
-	return StringToEnum('Icefront')
+	return StringToEnum('Icefront')[0]
 
 def InputEnum():
@@ -2535,5 +2537,5 @@
 	"""
 
-	return StringToEnum('Input')
+	return StringToEnum('Input')[0]
 
 def IntInputEnum():
@@ -2545,5 +2547,5 @@
 	"""
 
-	return StringToEnum('IntInput')
+	return StringToEnum('IntInput')[0]
 
 def IntParamEnum():
@@ -2555,5 +2557,5 @@
 	"""
 
-	return StringToEnum('IntParam')
+	return StringToEnum('IntParam')[0]
 
 def IntVecParamEnum():
@@ -2565,5 +2567,5 @@
 	"""
 
-	return StringToEnum('IntVecParam')
+	return StringToEnum('IntVecParam')[0]
 
 def TransientParamEnum():
@@ -2575,5 +2577,5 @@
 	"""
 
-	return StringToEnum('TransientParam')
+	return StringToEnum('TransientParam')[0]
 
 def MacAyeal2dIceFrontEnum():
@@ -2585,5 +2587,5 @@
 	"""
 
-	return StringToEnum('MacAyeal2dIceFront')
+	return StringToEnum('MacAyeal2dIceFront')[0]
 
 def MacAyeal3dIceFrontEnum():
@@ -2595,5 +2597,5 @@
 	"""
 
-	return StringToEnum('MacAyeal3dIceFront')
+	return StringToEnum('MacAyeal3dIceFront')[0]
 
 def MaticeEnum():
@@ -2605,5 +2607,5 @@
 	"""
 
-	return StringToEnum('Matice')
+	return StringToEnum('Matice')[0]
 
 def MatparEnum():
@@ -2615,5 +2617,5 @@
 	"""
 
-	return StringToEnum('Matpar')
+	return StringToEnum('Matpar')[0]
 
 def NodeEnum():
@@ -2625,5 +2627,5 @@
 	"""
 
-	return StringToEnum('Node')
+	return StringToEnum('Node')[0]
 
 def NumericalfluxEnum():
@@ -2635,5 +2637,5 @@
 	"""
 
-	return StringToEnum('Numericalflux')
+	return StringToEnum('Numericalflux')[0]
 
 def ParamEnum():
@@ -2645,5 +2647,5 @@
 	"""
 
-	return StringToEnum('Param')
+	return StringToEnum('Param')[0]
 
 def PattynIceFrontEnum():
@@ -2655,5 +2657,5 @@
 	"""
 
-	return StringToEnum('PattynIceFront')
+	return StringToEnum('PattynIceFront')[0]
 
 def PengridEnum():
@@ -2665,5 +2667,5 @@
 	"""
 
-	return StringToEnum('Pengrid')
+	return StringToEnum('Pengrid')[0]
 
 def PenpairEnum():
@@ -2675,5 +2677,5 @@
 	"""
 
-	return StringToEnum('Penpair')
+	return StringToEnum('Penpair')[0]
 
 def PentaEnum():
@@ -2685,5 +2687,5 @@
 	"""
 
-	return StringToEnum('Penta')
+	return StringToEnum('Penta')[0]
 
 def PentaP1InputEnum():
@@ -2695,5 +2697,5 @@
 	"""
 
-	return StringToEnum('PentaP1Input')
+	return StringToEnum('PentaP1Input')[0]
 
 def MatrixParamEnum():
@@ -2705,5 +2707,5 @@
 	"""
 
-	return StringToEnum('MatrixParam')
+	return StringToEnum('MatrixParam')[0]
 
 def VectorParamEnum():
@@ -2715,5 +2717,5 @@
 	"""
 
-	return StringToEnum('VectorParam')
+	return StringToEnum('VectorParam')[0]
 
 def RiftfrontEnum():
@@ -2725,5 +2727,5 @@
 	"""
 
-	return StringToEnum('Riftfront')
+	return StringToEnum('Riftfront')[0]
 
 def SegmentEnum():
@@ -2735,5 +2737,5 @@
 	"""
 
-	return StringToEnum('Segment')
+	return StringToEnum('Segment')[0]
 
 def SegmentRiftfrontEnum():
@@ -2745,5 +2747,5 @@
 	"""
 
-	return StringToEnum('SegmentRiftfront')
+	return StringToEnum('SegmentRiftfront')[0]
 
 def SpcDynamicEnum():
@@ -2755,5 +2757,5 @@
 	"""
 
-	return StringToEnum('SpcDynamic')
+	return StringToEnum('SpcDynamic')[0]
 
 def SpcStaticEnum():
@@ -2765,5 +2767,5 @@
 	"""
 
-	return StringToEnum('SpcStatic')
+	return StringToEnum('SpcStatic')[0]
 
 def SpcTransientEnum():
@@ -2775,5 +2777,5 @@
 	"""
 
-	return StringToEnum('SpcTransient')
+	return StringToEnum('SpcTransient')[0]
 
 def StokesIceFrontEnum():
@@ -2785,5 +2787,5 @@
 	"""
 
-	return StringToEnum('StokesIceFront')
+	return StringToEnum('StokesIceFront')[0]
 
 def StringArrayParamEnum():
@@ -2795,5 +2797,5 @@
 	"""
 
-	return StringToEnum('StringArrayParam')
+	return StringToEnum('StringArrayParam')[0]
 
 def StringParamEnum():
@@ -2805,5 +2807,5 @@
 	"""
 
-	return StringToEnum('StringParam')
+	return StringToEnum('StringParam')[0]
 
 def TriaEnum():
@@ -2815,5 +2817,5 @@
 	"""
 
-	return StringToEnum('Tria')
+	return StringToEnum('Tria')[0]
 
 def TriaP1InputEnum():
@@ -2825,5 +2827,5 @@
 	"""
 
-	return StringToEnum('TriaP1Input')
+	return StringToEnum('TriaP1Input')[0]
 
 def VertexEnum():
@@ -2835,5 +2837,5 @@
 	"""
 
-	return StringToEnum('Vertex')
+	return StringToEnum('Vertex')[0]
 
 def AirEnum():
@@ -2845,5 +2847,5 @@
 	"""
 
-	return StringToEnum('Air')
+	return StringToEnum('Air')[0]
 
 def IceEnum():
@@ -2855,5 +2857,5 @@
 	"""
 
-	return StringToEnum('Ice')
+	return StringToEnum('Ice')[0]
 
 def MelangeEnum():
@@ -2865,5 +2867,5 @@
 	"""
 
-	return StringToEnum('Melange')
+	return StringToEnum('Melange')[0]
 
 def WaterEnum():
@@ -2875,5 +2877,5 @@
 	"""
 
-	return StringToEnum('Water')
+	return StringToEnum('Water')[0]
 
 def ClosedEnum():
@@ -2885,5 +2887,5 @@
 	"""
 
-	return StringToEnum('Closed')
+	return StringToEnum('Closed')[0]
 
 def FreeEnum():
@@ -2895,5 +2897,5 @@
 	"""
 
-	return StringToEnum('Free')
+	return StringToEnum('Free')[0]
 
 def OpenEnum():
@@ -2905,5 +2907,5 @@
 	"""
 
-	return StringToEnum('Open')
+	return StringToEnum('Open')[0]
 
 def AdjointpEnum():
@@ -2915,5 +2917,5 @@
 	"""
 
-	return StringToEnum('Adjointp')
+	return StringToEnum('Adjointp')[0]
 
 def AdjointxEnum():
@@ -2925,5 +2927,5 @@
 	"""
 
-	return StringToEnum('Adjointx')
+	return StringToEnum('Adjointx')[0]
 
 def AdjointyEnum():
@@ -2935,5 +2937,5 @@
 	"""
 
-	return StringToEnum('Adjointy')
+	return StringToEnum('Adjointy')[0]
 
 def AdjointzEnum():
@@ -2945,5 +2947,5 @@
 	"""
 
-	return StringToEnum('Adjointz')
+	return StringToEnum('Adjointz')[0]
 
 def BedSlopeXEnum():
@@ -2955,5 +2957,5 @@
 	"""
 
-	return StringToEnum('BedSlopeX')
+	return StringToEnum('BedSlopeX')[0]
 
 def BedSlopeYEnum():
@@ -2965,5 +2967,5 @@
 	"""
 
-	return StringToEnum('BedSlopeY')
+	return StringToEnum('BedSlopeY')[0]
 
 def BoundaryEnum():
@@ -2975,5 +2977,5 @@
 	"""
 
-	return StringToEnum('Boundary')
+	return StringToEnum('Boundary')[0]
 
 def ConstantEnum():
@@ -2985,5 +2987,5 @@
 	"""
 
-	return StringToEnum('Constant')
+	return StringToEnum('Constant')[0]
 
 def ConvergedEnum():
@@ -2995,5 +2997,5 @@
 	"""
 
-	return StringToEnum('Converged')
+	return StringToEnum('Converged')[0]
 
 def ExtToIuEnum():
@@ -3005,5 +3007,5 @@
 	"""
 
-	return StringToEnum('ExtToIu')
+	return StringToEnum('ExtToIu')[0]
 
 def FillEnum():
@@ -3015,5 +3017,5 @@
 	"""
 
-	return StringToEnum('Fill')
+	return StringToEnum('Fill')[0]
 
 def FractionIncrementEnum():
@@ -3025,5 +3027,5 @@
 	"""
 
-	return StringToEnum('FractionIncrement')
+	return StringToEnum('FractionIncrement')[0]
 
 def FrictionEnum():
@@ -3035,5 +3037,5 @@
 	"""
 
-	return StringToEnum('Friction')
+	return StringToEnum('Friction')[0]
 
 def GroundinglineMeltingRateEnum():
@@ -3045,5 +3047,5 @@
 	"""
 
-	return StringToEnum('GroundinglineMeltingRate')
+	return StringToEnum('GroundinglineMeltingRate')[0]
 
 def InternalEnum():
@@ -3055,5 +3057,5 @@
 	"""
 
-	return StringToEnum('Internal')
+	return StringToEnum('Internal')[0]
 
 def IuToExtEnum():
@@ -3065,5 +3067,5 @@
 	"""
 
-	return StringToEnum('IuToExt')
+	return StringToEnum('IuToExt')[0]
 
 def MassFluxEnum():
@@ -3075,5 +3077,5 @@
 	"""
 
-	return StringToEnum('MassFlux')
+	return StringToEnum('MassFlux')[0]
 
 def MaxPenetrationEnum():
@@ -3085,5 +3087,5 @@
 	"""
 
-	return StringToEnum('MaxPenetration')
+	return StringToEnum('MaxPenetration')[0]
 
 def MeltingOffsetEnum():
@@ -3095,5 +3097,5 @@
 	"""
 
-	return StringToEnum('MeltingOffset')
+	return StringToEnum('MeltingOffset')[0]
 
 def MisfitEnum():
@@ -3105,5 +3107,5 @@
 	"""
 
-	return StringToEnum('Misfit')
+	return StringToEnum('Misfit')[0]
 
 def NumberNodeToElementConnectivityEnum():
@@ -3115,5 +3117,5 @@
 	"""
 
-	return StringToEnum('NumberNodeToElementConnectivity')
+	return StringToEnum('NumberNodeToElementConnectivity')[0]
 
 def PressureEnum():
@@ -3125,5 +3127,5 @@
 	"""
 
-	return StringToEnum('Pressure')
+	return StringToEnum('Pressure')[0]
 
 def PressurePicardEnum():
@@ -3135,5 +3137,5 @@
 	"""
 
-	return StringToEnum('PressurePicard')
+	return StringToEnum('PressurePicard')[0]
 
 def QmuPressureEnum():
@@ -3145,5 +3147,5 @@
 	"""
 
-	return StringToEnum('QmuPressure')
+	return StringToEnum('QmuPressure')[0]
 
 def QmuVxEnum():
@@ -3155,5 +3157,5 @@
 	"""
 
-	return StringToEnum('QmuVx')
+	return StringToEnum('QmuVx')[0]
 
 def QmuVyEnum():
@@ -3165,5 +3167,5 @@
 	"""
 
-	return StringToEnum('QmuVy')
+	return StringToEnum('QmuVy')[0]
 
 def QmuVzEnum():
@@ -3175,5 +3177,5 @@
 	"""
 
-	return StringToEnum('QmuVz')
+	return StringToEnum('QmuVz')[0]
 
 def QmuThicknessEnum():
@@ -3185,5 +3187,5 @@
 	"""
 
-	return StringToEnum('QmuThickness')
+	return StringToEnum('QmuThickness')[0]
 
 def QmuBedEnum():
@@ -3195,5 +3197,5 @@
 	"""
 
-	return StringToEnum('QmuBed')
+	return StringToEnum('QmuBed')[0]
 
 def QmuSurfaceEnum():
@@ -3205,5 +3207,5 @@
 	"""
 
-	return StringToEnum('QmuSurface')
+	return StringToEnum('QmuSurface')[0]
 
 def QmuMeltingEnum():
@@ -3215,5 +3217,5 @@
 	"""
 
-	return StringToEnum('QmuMelting')
+	return StringToEnum('QmuMelting')[0]
 
 def ResetPenaltiesEnum():
@@ -3225,5 +3227,5 @@
 	"""
 
-	return StringToEnum('ResetPenalties')
+	return StringToEnum('ResetPenalties')[0]
 
 def SegmentOnIceShelfEnum():
@@ -3235,5 +3237,5 @@
 	"""
 
-	return StringToEnum('SegmentOnIceShelf')
+	return StringToEnum('SegmentOnIceShelf')[0]
 
 def SurfaceAbsVelMisfitEnum():
@@ -3245,5 +3247,5 @@
 	"""
 
-	return StringToEnum('SurfaceAbsVelMisfit')
+	return StringToEnum('SurfaceAbsVelMisfit')[0]
 
 def SurfaceAreaEnum():
@@ -3255,5 +3257,5 @@
 	"""
 
-	return StringToEnum('SurfaceArea')
+	return StringToEnum('SurfaceArea')[0]
 
 def SurfaceAverageVelMisfitEnum():
@@ -3265,5 +3267,5 @@
 	"""
 
-	return StringToEnum('SurfaceAverageVelMisfit')
+	return StringToEnum('SurfaceAverageVelMisfit')[0]
 
 def SurfaceLogVelMisfitEnum():
@@ -3275,5 +3277,5 @@
 	"""
 
-	return StringToEnum('SurfaceLogVelMisfit')
+	return StringToEnum('SurfaceLogVelMisfit')[0]
 
 def SurfaceLogVxVyMisfitEnum():
@@ -3285,5 +3287,5 @@
 	"""
 
-	return StringToEnum('SurfaceLogVxVyMisfit')
+	return StringToEnum('SurfaceLogVxVyMisfit')[0]
 
 def SurfaceRelVelMisfitEnum():
@@ -3295,5 +3297,5 @@
 	"""
 
-	return StringToEnum('SurfaceRelVelMisfit')
+	return StringToEnum('SurfaceRelVelMisfit')[0]
 
 def SurfaceSlopeXEnum():
@@ -3305,5 +3307,5 @@
 	"""
 
-	return StringToEnum('SurfaceSlopeX')
+	return StringToEnum('SurfaceSlopeX')[0]
 
 def SurfaceSlopeYEnum():
@@ -3315,5 +3317,5 @@
 	"""
 
-	return StringToEnum('SurfaceSlopeY')
+	return StringToEnum('SurfaceSlopeY')[0]
 
 def TemperatureEnum():
@@ -3325,5 +3327,5 @@
 	"""
 
-	return StringToEnum('Temperature')
+	return StringToEnum('Temperature')[0]
 
 def TemperatureOldEnum():
@@ -3335,5 +3337,5 @@
 	"""
 
-	return StringToEnum('TemperatureOld')
+	return StringToEnum('TemperatureOld')[0]
 
 def TemperaturePicardEnum():
@@ -3345,5 +3347,5 @@
 	"""
 
-	return StringToEnum('TemperaturePicard')
+	return StringToEnum('TemperaturePicard')[0]
 
 def ThicknessAbsMisfitEnum():
@@ -3355,5 +3357,5 @@
 	"""
 
-	return StringToEnum('ThicknessAbsMisfit')
+	return StringToEnum('ThicknessAbsMisfit')[0]
 
 def TypeEnum():
@@ -3365,5 +3367,5 @@
 	"""
 
-	return StringToEnum('Type')
+	return StringToEnum('Type')[0]
 
 def VelEnum():
@@ -3375,5 +3377,5 @@
 	"""
 
-	return StringToEnum('Vel')
+	return StringToEnum('Vel')[0]
 
 def VelocityEnum():
@@ -3385,5 +3387,5 @@
 	"""
 
-	return StringToEnum('Velocity')
+	return StringToEnum('Velocity')[0]
 
 def VxAverageEnum():
@@ -3395,5 +3397,5 @@
 	"""
 
-	return StringToEnum('VxAverage')
+	return StringToEnum('VxAverage')[0]
 
 def VxEnum():
@@ -3405,5 +3407,5 @@
 	"""
 
-	return StringToEnum('Vx')
+	return StringToEnum('Vx')[0]
 
 def VxPicardEnum():
@@ -3415,5 +3417,5 @@
 	"""
 
-	return StringToEnum('VxPicard')
+	return StringToEnum('VxPicard')[0]
 
 def VyAverageEnum():
@@ -3425,5 +3427,5 @@
 	"""
 
-	return StringToEnum('VyAverage')
+	return StringToEnum('VyAverage')[0]
 
 def VyEnum():
@@ -3435,5 +3437,5 @@
 	"""
 
-	return StringToEnum('Vy')
+	return StringToEnum('Vy')[0]
 
 def VyPicardEnum():
@@ -3445,5 +3447,5 @@
 	"""
 
-	return StringToEnum('VyPicard')
+	return StringToEnum('VyPicard')[0]
 
 def VzEnum():
@@ -3455,5 +3457,5 @@
 	"""
 
-	return StringToEnum('Vz')
+	return StringToEnum('Vz')[0]
 
 def VzMacAyealEnum():
@@ -3465,5 +3467,5 @@
 	"""
 
-	return StringToEnum('VzMacAyeal')
+	return StringToEnum('VzMacAyeal')[0]
 
 def VzPattynEnum():
@@ -3475,5 +3477,5 @@
 	"""
 
-	return StringToEnum('VzPattyn')
+	return StringToEnum('VzPattyn')[0]
 
 def VzPicardEnum():
@@ -3485,5 +3487,5 @@
 	"""
 
-	return StringToEnum('VzPicard')
+	return StringToEnum('VzPicard')[0]
 
 def VzStokesEnum():
@@ -3495,5 +3497,5 @@
 	"""
 
-	return StringToEnum('VzStokes')
+	return StringToEnum('VzStokes')[0]
 
 def VxMeshEnum():
@@ -3505,5 +3507,5 @@
 	"""
 
-	return StringToEnum('VxMesh')
+	return StringToEnum('VxMesh')[0]
 
 def VyMeshEnum():
@@ -3515,5 +3517,5 @@
 	"""
 
-	return StringToEnum('VyMesh')
+	return StringToEnum('VyMesh')[0]
 
 def VzMeshEnum():
@@ -3525,5 +3527,5 @@
 	"""
 
-	return StringToEnum('VzMesh')
+	return StringToEnum('VzMesh')[0]
 
 def EnthalpyEnum():
@@ -3535,5 +3537,5 @@
 	"""
 
-	return StringToEnum('Enthalpy')
+	return StringToEnum('Enthalpy')[0]
 
 def EnthalpyPicardEnum():
@@ -3545,5 +3547,5 @@
 	"""
 
-	return StringToEnum('EnthalpyPicard')
+	return StringToEnum('EnthalpyPicard')[0]
 
 def ThicknessAbsGradientEnum():
@@ -3555,5 +3557,5 @@
 	"""
 
-	return StringToEnum('ThicknessAbsGradient')
+	return StringToEnum('ThicknessAbsGradient')[0]
 
 def StepResponsesEnum():
@@ -3565,5 +3567,5 @@
 	"""
 
-	return StringToEnum('StepResponses')
+	return StringToEnum('StepResponses')[0]
 
 def IntMatParamEnum():
@@ -3575,5 +3577,5 @@
 	"""
 
-	return StringToEnum('IntMatParam')
+	return StringToEnum('IntMatParam')[0]
 
 def RheologyBbarAbsGradientEnum():
@@ -3585,5 +3587,5 @@
 	"""
 
-	return StringToEnum('RheologyBbarAbsGradient')
+	return StringToEnum('RheologyBbarAbsGradient')[0]
 
 def DragCoefficientAbsGradientEnum():
@@ -3595,5 +3597,5 @@
 	"""
 
-	return StringToEnum('DragCoefficientAbsGradient')
+	return StringToEnum('DragCoefficientAbsGradient')[0]
 
 def TransientInputEnum():
@@ -3605,5 +3607,5 @@
 	"""
 
-	return StringToEnum('TransientInput')
+	return StringToEnum('TransientInput')[0]
 
 def OutputfilenameEnum():
@@ -3615,5 +3617,5 @@
 	"""
 
-	return StringToEnum('Outputfilename')
+	return StringToEnum('Outputfilename')[0]
 
 def WaterfractionEnum():
@@ -3625,5 +3627,5 @@
 	"""
 
-	return StringToEnum('Waterfraction')
+	return StringToEnum('Waterfraction')[0]
 
 def WatercolumnEnum():
@@ -3635,5 +3637,5 @@
 	"""
 
-	return StringToEnum('Watercolumn')
+	return StringToEnum('Watercolumn')[0]
 
 def BasalFrictionEnum():
@@ -3645,5 +3647,5 @@
 	"""
 
-	return StringToEnum('BasalFriction')
+	return StringToEnum('BasalFriction')[0]
 
 def ViscousHeatingEnum():
@@ -3655,5 +3657,5 @@
 	"""
 
-	return StringToEnum('ViscousHeating')
+	return StringToEnum('ViscousHeating')[0]
 
 def QmuTemperatureEnum():
@@ -3665,5 +3667,5 @@
 	"""
 
-	return StringToEnum('QmuTemperature')
+	return StringToEnum('QmuTemperature')[0]
 
 def HydrologyWaterVxEnum():
@@ -3675,5 +3677,5 @@
 	"""
 
-	return StringToEnum('HydrologyWaterVx')
+	return StringToEnum('HydrologyWaterVx')[0]
 
 def HydrologyWaterVyEnum():
@@ -3685,5 +3687,5 @@
 	"""
 
-	return StringToEnum('HydrologyWaterVy')
+	return StringToEnum('HydrologyWaterVy')[0]
 
 def StressTensorEnum():
@@ -3695,5 +3697,5 @@
 	"""
 
-	return StringToEnum('StressTensor')
+	return StringToEnum('StressTensor')[0]
 
 def StressTensorxxEnum():
@@ -3705,5 +3707,5 @@
 	"""
 
-	return StringToEnum('StressTensorxx')
+	return StringToEnum('StressTensorxx')[0]
 
 def StressTensorxyEnum():
@@ -3715,5 +3717,5 @@
 	"""
 
-	return StringToEnum('StressTensorxy')
+	return StringToEnum('StressTensorxy')[0]
 
 def StressTensorxzEnum():
@@ -3725,5 +3727,5 @@
 	"""
 
-	return StringToEnum('StressTensorxz')
+	return StringToEnum('StressTensorxz')[0]
 
 def StressTensoryyEnum():
@@ -3735,5 +3737,5 @@
 	"""
 
-	return StringToEnum('StressTensoryy')
+	return StringToEnum('StressTensoryy')[0]
 
 def StressTensoryzEnum():
@@ -3745,5 +3747,5 @@
 	"""
 
-	return StringToEnum('StressTensoryz')
+	return StringToEnum('StressTensoryz')[0]
 
 def StressTensorzzEnum():
@@ -3755,5 +3757,5 @@
 	"""
 
-	return StringToEnum('StressTensorzz')
+	return StringToEnum('StressTensorzz')[0]
 
 def IceVolumeEnum():
@@ -3765,5 +3767,5 @@
 	"""
 
-	return StringToEnum('IceVolume')
+	return StringToEnum('IceVolume')[0]
 
 def TotalSmbEnum():
@@ -3775,5 +3777,5 @@
 	"""
 
-	return StringToEnum('TotalSmb')
+	return StringToEnum('TotalSmb')[0]
 
 def ThicknessAlongGradientEnum():
@@ -3785,5 +3787,5 @@
 	"""
 
-	return StringToEnum('ThicknessAlongGradient')
+	return StringToEnum('ThicknessAlongGradient')[0]
 
 def ThicknessAcrossGradientEnum():
@@ -3795,5 +3797,5 @@
 	"""
 
-	return StringToEnum('ThicknessAcrossGradient')
+	return StringToEnum('ThicknessAcrossGradient')[0]
 
 def P0Enum():
@@ -3805,5 +3807,5 @@
 	"""
 
-	return StringToEnum('P0')
+	return StringToEnum('P0')[0]
 
 def P1Enum():
@@ -3815,5 +3817,5 @@
 	"""
 
-	return StringToEnum('P1')
+	return StringToEnum('P1')[0]
 
 def P1DGEnum():
@@ -3825,5 +3827,5 @@
 	"""
 
-	return StringToEnum('P1DG')
+	return StringToEnum('P1DG')[0]
 
 def SaveResultsEnum():
@@ -3835,5 +3837,5 @@
 	"""
 
-	return StringToEnum('SaveResults')
+	return StringToEnum('SaveResults')[0]
 
 def BoolElementResultEnum():
@@ -3845,5 +3847,5 @@
 	"""
 
-	return StringToEnum('BoolElementResult')
+	return StringToEnum('BoolElementResult')[0]
 
 def BoolExternalResultEnum():
@@ -3855,5 +3857,5 @@
 	"""
 
-	return StringToEnum('BoolExternalResult')
+	return StringToEnum('BoolExternalResult')[0]
 
 def DoubleElementResultEnum():
@@ -3865,5 +3867,5 @@
 	"""
 
-	return StringToEnum('DoubleElementResult')
+	return StringToEnum('DoubleElementResult')[0]
 
 def DoubleExternalResultEnum():
@@ -3875,5 +3877,5 @@
 	"""
 
-	return StringToEnum('DoubleExternalResult')
+	return StringToEnum('DoubleExternalResult')[0]
 
 def DoubleMatExternalResultEnum():
@@ -3885,5 +3887,5 @@
 	"""
 
-	return StringToEnum('DoubleMatExternalResult')
+	return StringToEnum('DoubleMatExternalResult')[0]
 
 def DoubleVecExternalResultEnum():
@@ -3895,5 +3897,5 @@
 	"""
 
-	return StringToEnum('DoubleVecExternalResult')
+	return StringToEnum('DoubleVecExternalResult')[0]
 
 def IntExternalResultEnum():
@@ -3905,5 +3907,5 @@
 	"""
 
-	return StringToEnum('IntExternalResult')
+	return StringToEnum('IntExternalResult')[0]
 
 def JEnum():
@@ -3915,5 +3917,5 @@
 	"""
 
-	return StringToEnum('J')
+	return StringToEnum('J')[0]
 
 def PatchEnum():
@@ -3925,5 +3927,5 @@
 	"""
 
-	return StringToEnum('Patch')
+	return StringToEnum('Patch')[0]
 
 def PatchNodesEnum():
@@ -3935,5 +3937,5 @@
 	"""
 
-	return StringToEnum('PatchNodes')
+	return StringToEnum('PatchNodes')[0]
 
 def PatchVerticesEnum():
@@ -3945,5 +3947,5 @@
 	"""
 
-	return StringToEnum('PatchVertices')
+	return StringToEnum('PatchVertices')[0]
 
 def PentaP1ElementResultEnum():
@@ -3955,5 +3957,5 @@
 	"""
 
-	return StringToEnum('PentaP1ElementResult')
+	return StringToEnum('PentaP1ElementResult')[0]
 
 def PetscVecExternalResultEnum():
@@ -3965,5 +3967,5 @@
 	"""
 
-	return StringToEnum('PetscVecExternalResult')
+	return StringToEnum('PetscVecExternalResult')[0]
 
 def StringExternalResultEnum():
@@ -3975,5 +3977,5 @@
 	"""
 
-	return StringToEnum('StringExternalResult')
+	return StringToEnum('StringExternalResult')[0]
 
 def StepEnum():
@@ -3985,5 +3987,5 @@
 	"""
 
-	return StringToEnum('Step')
+	return StringToEnum('Step')[0]
 
 def TimeEnum():
@@ -3995,5 +3997,5 @@
 	"""
 
-	return StringToEnum('Time')
+	return StringToEnum('Time')[0]
 
 def TriaP1ElementResultEnum():
@@ -4005,5 +4007,5 @@
 	"""
 
-	return StringToEnum('TriaP1ElementResult')
+	return StringToEnum('TriaP1ElementResult')[0]
 
 def WaterColumnOldEnum():
@@ -4015,5 +4017,5 @@
 	"""
 
-	return StringToEnum('WaterColumnOld')
+	return StringToEnum('WaterColumnOld')[0]
 
 def MinVelEnum():
@@ -4025,5 +4027,5 @@
 	"""
 
-	return StringToEnum('MinVel')
+	return StringToEnum('MinVel')[0]
 
 def MaxVelEnum():
@@ -4035,5 +4037,5 @@
 	"""
 
-	return StringToEnum('MaxVel')
+	return StringToEnum('MaxVel')[0]
 
 def MinVxEnum():
@@ -4045,5 +4047,5 @@
 	"""
 
-	return StringToEnum('MinVx')
+	return StringToEnum('MinVx')[0]
 
 def MaxVxEnum():
@@ -4055,5 +4057,5 @@
 	"""
 
-	return StringToEnum('MaxVx')
+	return StringToEnum('MaxVx')[0]
 
 def MaxAbsVxEnum():
@@ -4065,5 +4067,5 @@
 	"""
 
-	return StringToEnum('MaxAbsVx')
+	return StringToEnum('MaxAbsVx')[0]
 
 def MinVyEnum():
@@ -4075,5 +4077,5 @@
 	"""
 
-	return StringToEnum('MinVy')
+	return StringToEnum('MinVy')[0]
 
 def MaxVyEnum():
@@ -4085,5 +4087,5 @@
 	"""
 
-	return StringToEnum('MaxVy')
+	return StringToEnum('MaxVy')[0]
 
 def MaxAbsVyEnum():
@@ -4095,5 +4097,5 @@
 	"""
 
-	return StringToEnum('MaxAbsVy')
+	return StringToEnum('MaxAbsVy')[0]
 
 def MinVzEnum():
@@ -4105,5 +4107,5 @@
 	"""
 
-	return StringToEnum('MinVz')
+	return StringToEnum('MinVz')[0]
 
 def MaxVzEnum():
@@ -4115,5 +4117,5 @@
 	"""
 
-	return StringToEnum('MaxVz')
+	return StringToEnum('MaxVz')[0]
 
 def MaxAbsVzEnum():
@@ -4125,5 +4127,5 @@
 	"""
 
-	return StringToEnum('MaxAbsVz')
+	return StringToEnum('MaxAbsVz')[0]
 
 def RelativeEnum():
@@ -4135,5 +4137,5 @@
 	"""
 
-	return StringToEnum('Relative')
+	return StringToEnum('Relative')[0]
 
 def AbsoluteEnum():
@@ -4145,5 +4147,5 @@
 	"""
 
-	return StringToEnum('Absolute')
+	return StringToEnum('Absolute')[0]
 
 def IncrementalEnum():
@@ -4155,5 +4157,5 @@
 	"""
 
-	return StringToEnum('Incremental')
+	return StringToEnum('Incremental')[0]
 
 def AgressiveMigrationEnum():
@@ -4165,5 +4167,5 @@
 	"""
 
-	return StringToEnum('AgressiveMigration')
+	return StringToEnum('AgressiveMigration')[0]
 
 def NoneEnum():
@@ -4175,5 +4177,5 @@
 	"""
 
-	return StringToEnum('None')
+	return StringToEnum('None')[0]
 
 def SoftMigrationEnum():
@@ -4185,5 +4187,5 @@
 	"""
 
-	return StringToEnum('SoftMigration')
+	return StringToEnum('SoftMigration')[0]
 
 def StokesSolverEnum():
@@ -4195,5 +4197,5 @@
 	"""
 
-	return StringToEnum('StokesSolver')
+	return StringToEnum('StokesSolver')[0]
 
 def AdjointEnum():
@@ -4205,5 +4207,5 @@
 	"""
 
-	return StringToEnum('Adjoint')
+	return StringToEnum('Adjoint')[0]
 
 def ColinearEnum():
@@ -4215,5 +4217,5 @@
 	"""
 
-	return StringToEnum('Colinear')
+	return StringToEnum('Colinear')[0]
 
 def ControlSteadyEnum():
@@ -4225,5 +4227,5 @@
 	"""
 
-	return StringToEnum('ControlSteady')
+	return StringToEnum('ControlSteady')[0]
 
 def FsetEnum():
@@ -4235,5 +4237,5 @@
 	"""
 
-	return StringToEnum('Fset')
+	return StringToEnum('Fset')[0]
 
 def Gradient1Enum():
@@ -4245,5 +4247,5 @@
 	"""
 
-	return StringToEnum('Gradient1')
+	return StringToEnum('Gradient1')[0]
 
 def Gradient2Enum():
@@ -4255,5 +4257,5 @@
 	"""
 
-	return StringToEnum('Gradient2')
+	return StringToEnum('Gradient2')[0]
 
 def Gradient3Enum():
@@ -4265,5 +4267,5 @@
 	"""
 
-	return StringToEnum('Gradient3')
+	return StringToEnum('Gradient3')[0]
 
 def GradientEnum():
@@ -4275,5 +4277,5 @@
 	"""
 
-	return StringToEnum('Gradient')
+	return StringToEnum('Gradient')[0]
 
 def GroundinglineMigrationEnum():
@@ -4285,5 +4287,5 @@
 	"""
 
-	return StringToEnum('GroundinglineMigration')
+	return StringToEnum('GroundinglineMigration')[0]
 
 def GsetEnum():
@@ -4295,5 +4297,5 @@
 	"""
 
-	return StringToEnum('Gset')
+	return StringToEnum('Gset')[0]
 
 def IndexEnum():
@@ -4305,5 +4307,5 @@
 	"""
 
-	return StringToEnum('Index')
+	return StringToEnum('Index')[0]
 
 def IndexedEnum():
@@ -4315,5 +4317,5 @@
 	"""
 
-	return StringToEnum('Indexed')
+	return StringToEnum('Indexed')[0]
 
 def IntersectEnum():
@@ -4325,5 +4327,5 @@
 	"""
 
-	return StringToEnum('Intersect')
+	return StringToEnum('Intersect')[0]
 
 def NodalEnum():
@@ -4335,5 +4337,5 @@
 	"""
 
-	return StringToEnum('Nodal')
+	return StringToEnum('Nodal')[0]
 
 def OldGradientEnum():
@@ -4345,5 +4347,5 @@
 	"""
 
-	return StringToEnum('OldGradient')
+	return StringToEnum('OldGradient')[0]
 
 def OutputFilePointerEnum():
@@ -4355,5 +4357,5 @@
 	"""
 
-	return StringToEnum('OutputFilePointer')
+	return StringToEnum('OutputFilePointer')[0]
 
 def PetscOptionsAnalysesEnum():
@@ -4365,5 +4367,5 @@
 	"""
 
-	return StringToEnum('PetscOptionsAnalyses')
+	return StringToEnum('PetscOptionsAnalyses')[0]
 
 def PetscOptionsStringsEnum():
@@ -4375,5 +4377,5 @@
 	"""
 
-	return StringToEnum('PetscOptionsStrings')
+	return StringToEnum('PetscOptionsStrings')[0]
 
 def QmuErrNameEnum():
@@ -4385,5 +4387,5 @@
 	"""
 
-	return StringToEnum('QmuErrName')
+	return StringToEnum('QmuErrName')[0]
 
 def QmuInNameEnum():
@@ -4395,5 +4397,5 @@
 	"""
 
-	return StringToEnum('QmuInName')
+	return StringToEnum('QmuInName')[0]
 
 def QmuOutNameEnum():
@@ -4405,5 +4407,5 @@
 	"""
 
-	return StringToEnum('QmuOutName')
+	return StringToEnum('QmuOutName')[0]
 
 def RegularEnum():
@@ -4415,5 +4417,5 @@
 	"""
 
-	return StringToEnum('Regular')
+	return StringToEnum('Regular')[0]
 
 def ScaledEnum():
@@ -4425,5 +4427,5 @@
 	"""
 
-	return StringToEnum('Scaled')
+	return StringToEnum('Scaled')[0]
 
 def SeparateEnum():
@@ -4435,5 +4437,5 @@
 	"""
 
-	return StringToEnum('Separate')
+	return StringToEnum('Separate')[0]
 
 def SsetEnum():
@@ -4445,5 +4447,5 @@
 	"""
 
-	return StringToEnum('Sset')
+	return StringToEnum('Sset')[0]
 
 def VerboseEnum():
@@ -4455,5 +4457,5 @@
 	"""
 
-	return StringToEnum('Verbose')
+	return StringToEnum('Verbose')[0]
 
 def TriangleInterpEnum():
@@ -4465,5 +4467,5 @@
 	"""
 
-	return StringToEnum('TriangleInterp')
+	return StringToEnum('TriangleInterp')[0]
 
 def BilinearInterpEnum():
@@ -4475,5 +4477,5 @@
 	"""
 
-	return StringToEnum('BilinearInterp')
+	return StringToEnum('BilinearInterp')[0]
 
 def NearestInterpEnum():
@@ -4485,5 +4487,5 @@
 	"""
 
-	return StringToEnum('NearestInterp')
+	return StringToEnum('NearestInterp')[0]
 
 def XYEnum():
@@ -4495,5 +4497,5 @@
 	"""
 
-	return StringToEnum('XY')
+	return StringToEnum('XY')[0]
 
 def XYZPEnum():
@@ -4505,5 +4507,5 @@
 	"""
 
-	return StringToEnum('XYZP')
+	return StringToEnum('XYZP')[0]
 
 def OptionEnum():
@@ -4515,5 +4517,5 @@
 	"""
 
-	return StringToEnum('Option')
+	return StringToEnum('Option')[0]
 
 def OptionCellEnum():
@@ -4525,5 +4527,5 @@
 	"""
 
-	return StringToEnum('OptionCell')
+	return StringToEnum('OptionCell')[0]
 
 def OptionCharEnum():
@@ -4535,5 +4537,5 @@
 	"""
 
-	return StringToEnum('OptionChar')
+	return StringToEnum('OptionChar')[0]
 
 def OptionStructEnum():
@@ -4545,5 +4547,5 @@
 	"""
 
-	return StringToEnum('OptionStruct')
+	return StringToEnum('OptionStruct')[0]
 
 def OptionDoubleEnum():
@@ -4555,5 +4557,5 @@
 	"""
 
-	return StringToEnum('OptionDouble')
+	return StringToEnum('OptionDouble')[0]
 
 def OptionLogicalEnum():
@@ -4565,5 +4567,5 @@
 	"""
 
-	return StringToEnum('OptionLogical')
+	return StringToEnum('OptionLogical')[0]
 
 def PatersonEnum():
@@ -4575,5 +4577,5 @@
 	"""
 
-	return StringToEnum('Paterson')
+	return StringToEnum('Paterson')[0]
 
 def ArrheniusEnum():
@@ -4585,5 +4587,5 @@
 	"""
 
-	return StringToEnum('Arrhenius')
+	return StringToEnum('Arrhenius')[0]
 
 def MaximumNumberOfEnums():
Index: /issm/trunk-jpl/src/m/miscellaneous/issmdoc.m
===================================================================
--- /issm/trunk-jpl/src/m/miscellaneous/issmdoc.m	(revision 13042)
+++ /issm/trunk-jpl/src/m/miscellaneous/issmdoc.m	(revision 13043)
@@ -2,5 +2,5 @@
 
 %First get ISSM tier: 
-ISSM_DIR=issmdir;
+ISSM_DIR=issmdir();
 
 disp(sprintf('\n%s','  A comprehensive documentation is available on http://issm.jpl.nasa.gov'));
@@ -12,4 +12,4 @@
 disp(sprintf('%s','	   md=parameterize(md,''Square.par'');        %fills all the other fields of the model'));
 disp(sprintf('%s','	   md=setflowequation(md,''macayeal'',''all''); %defines all elements as MacAyeal''s'));
-disp(sprintf('%s','	   md=solve(md,DiagnosticSolutionEnum);   %generate the velocity field'));
+disp(sprintf('%s','	   md=solve(md,DiagnosticSolutionEnum());   %generate the velocity field'));
 disp(sprintf('%s','	   plotmodel(md,''data'',md.results.DiagnosticSolution.Vel);    %displays the velocity (type plotdoc for plotmodel help)'));
Index: /issm/trunk-jpl/src/m/os/flaimdir.m
===================================================================
--- /issm/trunk-jpl/src/m/os/flaimdir.m	(revision 13042)
+++ /issm/trunk-jpl/src/m/os/flaimdir.m	(revision 13043)
@@ -5,3 +5,3 @@
 %      FLAIM_DIR=flaimdir()
 
-FLAIM_DIR=[issmdir '/externalpackages/flaim/install'];
+FLAIM_DIR=[issmdir() '/externalpackages/flaim/install'];
Index: /issm/trunk-jpl/src/m/os/issmscpout.py
===================================================================
--- /issm/trunk-jpl/src/m/os/issmscpout.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/os/issmscpout.py	(revision 13043)
@@ -12,4 +12,10 @@
 	   usage: scpout(host,path,packages)
 	"""
+
+	print "host=",host
+	print "path=",path
+	print "login=",login
+	print "port=",port
+	print "packages=",packages
 
 	#get hostname
Index: /issm/trunk-jpl/src/m/solve/MatlabProcessPatch.m
===================================================================
--- /issm/trunk-jpl/src/m/solve/MatlabProcessPatch.m	(revision 13042)
+++ /issm/trunk-jpl/src/m/solve/MatlabProcessPatch.m	(revision 13043)
@@ -49,8 +49,8 @@
 			structure(step).(fieldname).interpolation=temporarypatch(pos,5);
 			structure(step).(fieldname).index=temporarypatch(pos,6:5+numvertices);
-			if structure(step).(fieldname).interpolation==P1Enum,
+			if structure(step).(fieldname).interpolation==P1Enum(),
 				structure(step).(fieldname).value=temporarypatch(pos,6+numvertices:end);
 			end
-			if structure(step).(fieldname).interpolation==P0Enum,
+			if structure(step).(fieldname).interpolation==P0Enum(),
 				structure(step).(fieldname).value=temporarypatch(pos,6+numvertices);
 			end
Index: /issm/trunk-jpl/src/m/solve/WriteData.py
===================================================================
--- /issm/trunk-jpl/src/m/solve/WriteData.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/solve/WriteData.py	(revision 13043)
@@ -2,5 +2,8 @@
 import math
 import struct
+from pairoptions import *
 from MatlabFuncs import *
+from EnumDefinitions import *
+from EnumToString import EnumToString
 
 def WriteData(fid,*args):
@@ -13,4 +16,6 @@
 
 	#process options
+	#  the import above the function level doesn't work?
+	from pairoptions import *
 	options=pairoptions(*args)
 
@@ -20,5 +25,5 @@
 		obj       = options.getfieldvalue('object')
 		fieldname = options.getfieldvalue('fieldname')
-		classname = type(obj)
+		classname = str(type(obj)).rsplit('.')[-1].split("'")[0]
 
 		enum      = BuildEnum(classname+'_'+fieldname)
@@ -41,6 +46,6 @@
 	#Step 2: write the data itself.
 	if   strcmpi(format,'Boolean'):    # {{{
-		if len(data) !=1:
-			raise ValueError('field %s cannot be marshalled as it has more than one element!' % EnumToString(enum))
+#		if len(data) !=1:
+#			raise ValueError('field %s cannot be marshalled as it has more than one element!' % EnumToString(enum)[0])
 
 		#first write length of record
@@ -51,10 +56,10 @@
 
 		#now write integer
-		fid.write(struct.pack('i',data))  #send an int, not easy to send a bool
+		fid.write(struct.pack('i',int(data)))  #send an int, not easy to send a bool
 		# }}}
 
 	elif strcmpi(format,'Integer'):    # {{{
-		if len(data) !=1:
-			raise ValueError('field %s cannot be marshalled as it has more than one element!' % EnumToString(enum))
+#		if len(data) !=1:
+#			raise ValueError('field %s cannot be marshalled as it has more than one element!' % EnumToString(enum)[0])
 
 		#first write length of record
@@ -69,6 +74,6 @@
 
 	elif strcmpi(format,'Double'):    # {{{
-		if len(data) !=1:
-			raise ValueError('field %s cannot be marshalled as it has more than one element!' % EnumToString(enum))
+#		if len(data) !=1:
+#			raise ValueError('field %s cannot be marshalled as it has more than one element!' % EnumToString(enum)[0])
 
 		#first write length of record
@@ -95,4 +100,9 @@
 
 	elif strcmpi(format,'BooleanMat'):    # {{{
+
+		if isinstance(data,bool):
+			data=numpy.array([data])
+		if len(data.shape) == 1:
+			data=data.reshape(numpy.size(data,0),1)
 
 		#Get size
@@ -100,6 +110,5 @@
 		#if matrix = NaN, then do not write anything
 		if s[0]==1 and s[1]==1 and math.isnan(data[0][0]):
-			s[0]=0
-			s[1]=0
+			s=(0,0)
 
 		#first write length of record
@@ -120,10 +129,14 @@
 	elif strcmpi(format,'IntMat'):    # {{{
 
+		if isinstance(data,int):
+			data=numpy.array([data])
+		if len(data.shape) == 1:
+			data=data.reshape(numpy.size(data,0),1)
+
 		#Get size
 		s=data.shape
 		#if matrix = NaN, then do not write anything
 		if s[0]==1 and s[1]==1 and math.isnan(data[0][0]):
-			s[0]=0
-			s[1]=0
+			s=(0,0)
 
 		#first write length of record
@@ -144,10 +157,14 @@
 	elif strcmpi(format,'DoubleMat'):    # {{{
 
+		if isinstance(data,(int,long,float)):
+			data=numpy.array([data])
+		if len(data.shape) == 1:
+			data=data.reshape(numpy.size(data,0),1)
+
 		#Get size
 		s=data.shape
 		#if matrix = NaN, then do not write anything
 		if s[0]==1 and s[1]==1 and math.isnan(data[0][0]):
-			s[0]=0
-			s[1]=0
+			s=(0,0)
 
 		#first write length of record
@@ -216,5 +233,5 @@
 
 	else:    # {{{
-		raise TypeError('WriteData error message: data type: %d not supported yet! (%s)' % (format,EnumToString(enum)))
+		raise TypeError('WriteData error message: data type: %d not supported yet! (%s)' % (format,EnumToString(enum)[0]))
 	# }}}
 
@@ -230,9 +247,9 @@
 		substrs=string.split('_')
 		string=''
-		for str in substrs:
-			string+=str[0].upper()+str[1:]
+		for substr in substrs:
+			string+=substr[0].upper()+substr[1:]
 	else:
 		#take first letter of string and make it uppercase: 
-		string=str[0].upper()+str[1:]
+		string=string[0].upper()+string[1:]
 
 	#Get Enum
Index: /issm/trunk-jpl/src/m/solve/loadresultsfromdisk.py
===================================================================
--- /issm/trunk-jpl/src/m/solve/loadresultsfromdisk.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/solve/loadresultsfromdisk.py	(revision 13043)
@@ -1,3 +1,4 @@
 import os
+from EnumToString import EnumToString
 
 def loadresultsfromdisk(md,filename):
@@ -53,5 +54,5 @@
 
 		if not isinstance(md.private.solution,str):
-			md.private.solution=EnumToString(md.private.solution)
+			[md.private.solution]=EnumToString(md.private.solution)
 		md=postqmu(md)
 		os.chdir('..')
Index: /issm/trunk-jpl/src/m/solve/marshall.py
===================================================================
--- /issm/trunk-jpl/src/m/solve/marshall.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/solve/marshall.py	(revision 13043)
@@ -1,3 +1,4 @@
 from WriteData import *
+from EnumDefinitions import *
 
 def marshall(md):
@@ -37,10 +38,10 @@
 
 		#Marshall current object
-		#print "marshalling %s ..." % field
+		print "marshalling %s ..." % field
 		exec("md.%s.marshall(fid)" % field)
 
 	#close file
 	try:
-		f.close(fid)
+		fid.close()
 	except IOError as e:
 		raise IOError("marshall error message: could not close file '%s.bin'." % md.miscellaneous.name)
Index: /issm/trunk-jpl/src/m/solve/process_solve_options.m
===================================================================
--- /issm/trunk-jpl/src/m/solve/process_solve_options.m	(revision 13042)
+++ /issm/trunk-jpl/src/m/solve/process_solve_options.m	(revision 13043)
@@ -9,7 +9,7 @@
 %solution_type: check on this option, error out otherwise
 solution_type=getfieldvalue(options,'solution_type');
-if ~ismember(solution_type,[DiagnosticSolutionEnum,PrognosticSolutionEnum,ThermalSolutionEnum,...
-		SteadystateSolutionEnum,TransientSolutionEnum,EnthalpySolutionEnum,...
-		BalancethicknessSolutionEnum,BedSlopeSolutionEnum,SurfaceSlopeSolutionEnum,HydrologySolutionEnum,FlaimSolutionEnum]),
+if ~ismember(solution_type,[DiagnosticSolutionEnum(),PrognosticSolutionEnum(),ThermalSolutionEnum(),...
+		SteadystateSolutionEnum(),TransientSolutionEnum(),EnthalpySolutionEnum(),...
+		BalancethicknessSolutionEnum(),BedSlopeSolutionEnum(),SurfaceSlopeSolutionEnum(),HydrologySolutionEnum(),FlaimSolutionEnum()]),
 	error(['process_solve_options error message: solution_type ' EnumToString(solution_type) ' not supported yet!']);
 end
Index: /issm/trunk-jpl/src/m/solve/process_solve_options.py
===================================================================
--- /issm/trunk-jpl/src/m/solve/process_solve_options.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/solve/process_solve_options.py	(revision 13043)
@@ -1,4 +1,5 @@
 import os
 from EnumDefinitions import *
+from EnumToString import EnumToString
 
 def process_solve_options(options):
@@ -16,8 +17,8 @@
 	#solution_type: check on this option, error out otherwise
 	solution_type=options.getfieldvalue('solution_type')
-	if solution_type not in (DiagnosticSolutionEnum,PrognosticSolutionEnum,ThermalSolutionEnum,\
-			SteadystateSolutionEnum,TransientSolutionEnum,EnthalpySolutionEnum,\
-			BalancethicknessSolutionEnum,BedSlopeSolutionEnum,SurfaceSlopeSolutionEnum,HydrologySolutionEnum,FlaimSolutionEnum):
-		raise ValueError("process_solve_options error message: solution_type '%s' not supported yet!" % EnumToString(solution_type))
+	if solution_type not in (DiagnosticSolutionEnum(),PrognosticSolutionEnum(),ThermalSolutionEnum(),\
+			SteadystateSolutionEnum(),TransientSolutionEnum(),EnthalpySolutionEnum(),\
+			BalancethicknessSolutionEnum(),BedSlopeSolutionEnum(),SurfaceSlopeSolutionEnum(),HydrologySolutionEnum(),FlaimSolutionEnum()):
+		raise ValueError("process_solve_options error message: solution_type '%s' not supported yet!" % EnumToString(solution_type)[0])
 	outoptions['solution_type']=solution_type
 
Index: /issm/trunk-jpl/src/m/solve/solve.m
===================================================================
--- /issm/trunk-jpl/src/m/solve/solve.m	(revision 13042)
+++ /issm/trunk-jpl/src/m/solve/solve.m	(revision 13043)
@@ -34,5 +34,5 @@
 %check model consistency
 disp('checking model consistency');
-if (solutionenum == FlaimSolutionEnum)
+if (solutionenum == FlaimSolutionEnum())
 	md.private.isconsistent=true;
 	md=checkconsistency(md.mesh,md,solutionenum);
@@ -56,5 +56,5 @@
 
 %flaim analysis
-if (options.solution_type == FlaimSolutionEnum)
+if (options.solution_type == FlaimSolutionEnum())
 	md=flaim_sol(md,options);
 	md.private.solution=EnumToString(options.solution_type);
@@ -69,5 +69,5 @@
 
 %we need to make sure we have PETSC support, otherwise, we run with only one cpu: 
-if ~ispetsc,
+if ~ispetsc(),
 	disp('PETSC support not included, running on 1 cpu only!');
 	cluster.np=1;
@@ -75,5 +75,5 @@
 
 
-%Wite all input files
+%Write all input files
 marshall(md);                                          % bin file
 PetscFile(md.solver,[md.miscellaneous.name '.petsc']); % petsc file
Index: /issm/trunk-jpl/src/m/solve/solve.py
===================================================================
--- /issm/trunk-jpl/src/m/solve/solve.py	(revision 13042)
+++ /issm/trunk-jpl/src/m/solve/solve.py	(revision 13043)
@@ -5,5 +5,8 @@
 from process_solve_options import *
 from EnumDefinitions import *
+from EnumToString import EnumToString
 from ismodelselfconsistent import *
+from marshall import *
+from ispetsc import *
 
 def solve(md,solutionenum,*args):
@@ -44,5 +47,5 @@
 	#check model consistency
 	print "checking model consistency"
-	if solutionenum == FlaimSolutionEnum:
+	if solutionenum == FlaimSolutionEnum():
 		md.private.isconsistent=True
 		md.mesh.checkconsistency(md,solutionenum)
@@ -63,7 +66,7 @@
 
 	#flaim analysis
-	if options['solution_type'] == FlaimSolutionEnum:
+	if options['solution_type'] == FlaimSolutionEnum():
 		md=flaim_sol(md,options)
-		md.private.solution=EnumToString(options['solution_type'])
+		[md.private.solution]=EnumToString(options['solution_type'])
 		return md
 
@@ -73,5 +76,5 @@
 		return md
 
-	#Wite all input files
+	#Write all input files
 	marshall(md)                                           # bin file
 	md.solver.PetscFile(md.miscellaneous.name+'.petsc')    # petsc file
@@ -79,5 +82,5 @@
 
 	#we need to make sure we have PETSC support, otherwise, we run with only one cpu: 
-	if not ispetsc:
+	if not ispetsc():
 		print "PETSC support not included, running on 1 cpu only!"
 		cluster.np=1
