Index: /issm/trunk-jpl/src/c/analyses/HydrologyDCInefficientAnalysis.cpp
===================================================================
--- /issm/trunk-jpl/src/c/analyses/HydrologyDCInefficientAnalysis.cpp	(revision 24790)
+++ /issm/trunk-jpl/src/c/analyses/HydrologyDCInefficientAnalysis.cpp	(revision 24791)
@@ -20,4 +20,5 @@
 	int         hydro_maxiter;
 	int         hydroslices;
+	int         averaging_method;
 	int         numoutputs;
 	bool        isefficientlayer;
@@ -42,4 +43,5 @@
 	iomodel->FetchData(&hydro_maxiter,      "md.hydrology.max_iter" );
 	iomodel->FetchData(&hydroslices,        "md.hydrology.steps_per_step");
+	iomodel->FetchData(&averaging_method,   "md.hydrology.averaging");
 	iomodel->FetchData(&isefficientlayer,   "md.hydrology.isefficientlayer");
 	iomodel->FetchData(&penalty_factor,     "md.hydrology.penalty_factor" );
@@ -53,4 +55,5 @@
 	parameters->AddObject(new IntParam(HydrologydcMaxIterEnum,hydro_maxiter));
 	parameters->AddObject(new IntParam(HydrologyStepsPerStepEnum,hydroslices));
+	parameters->AddObject(new IntParam(HydrologyAveragingEnum,averaging_method));
 
 	parameters->AddObject(new BoolParam(HydrologydcIsefficientlayerEnum,isefficientlayer));
@@ -67,4 +70,5 @@
 	if(!issmb){
 		parameters->AddObject(iomodel->CopyConstantObject("md.smb.model",SmbEnum));
+		parameters->AddObject(iomodel->CopyConstantObject("md.smb.averaging",SmbAveragingEnum));
 	}
 
Index: /issm/trunk-jpl/src/c/analyses/SmbAnalysis.cpp
===================================================================
--- /issm/trunk-jpl/src/c/analyses/SmbAnalysis.cpp	(revision 24790)
+++ /issm/trunk-jpl/src/c/analyses/SmbAnalysis.cpp	(revision 24791)
@@ -208,5 +208,5 @@
 	char**  requestedoutputs = NULL;
 	bool    isdelta18o,ismungsm,isd18opd,issetpddfac,interp,isfirnwarming;
-	int     smb_model, smbslices;
+	int     smb_model, smbslices, averaging;
 	IssmDouble *temp = NULL;
 	int         N,M;
@@ -217,6 +217,9 @@
 	iomodel->FindConstant(&interp,"md.timestepping.interp_forcings");
 
-	iomodel->FetchData(&smbslices,"md.smb.steps_per_step");
+	iomodel->FindConstant(&smbslices,"md.smb.steps_per_step");
 	parameters->AddObject(new IntParam(SmbStepsPerStepEnum,smbslices));
+
+
+	parameters->AddObject(iomodel->CopyConstantObject("md.smb.averaging",SmbAveragingEnum));
 
 	switch(smb_model){
Index: /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp	(revision 24790)
+++ /issm/trunk-jpl/src/c/classes/Elements/Tria.cpp	(revision 24791)
@@ -1920,5 +1920,5 @@
 	}
 	else{
-		TriaInput2* input = this->inputs2->GetTriaInput(inputenum,start_time, end_time, int averaging_method);
+		TriaInput2* input = this->inputs2->GetTriaInput(inputenum,start_time,end_time,averaging_method);
 		if(!input) return input;
 
@@ -2211,5 +2211,5 @@
 			break;
 		case 2: /*Harmonic mean*/
-			for(int iv=0;iv<NUMVERTICES;iv++) averaged_values[iv] = (end_time - start_time)/(averaged_values[iv];
+			for(int iv=0;iv<NUMVERTICES;iv++) averaged_values[iv] = (end_time - start_time)/averaged_values[iv];
 			break;
 		default:
Index: /issm/trunk-jpl/src/c/classes/FemModel.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 24790)
+++ /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 24791)
@@ -5275,5 +5275,5 @@
 }
 /*}}}*/
-void FemModel::AverageTransientInputx(int* transientinput_enum,int* averagedinput_enum,IssmDouble init_time,IssmDouble end_time,int numoutputs,int averaging_method){ /*{{{*/
+void FemModel::AverageTransientInputx(int* transientinput_enum,int* averagedinput_enum,IssmDouble init_time,IssmDouble end_time,int numoutputs, int averaging_method){ /*{{{*/
 
 	for(int i=0;i<numoutputs;i++){
Index: /issm/trunk-jpl/src/c/classes/Inputs2/Input2.h
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs2/Input2.h	(revision 24790)
+++ /issm/trunk-jpl/src/c/classes/Inputs2/Input2.h	(revision 24791)
@@ -1,5 +1,5 @@
 /*!\file:  Input2.h
  * \brief abstract class for Input2 object
- */ 
+ */
 
 #ifndef _INPUT2_H_
@@ -44,4 +44,6 @@
 
 		virtual void   AXPY(Input2* xinput,IssmDouble scalar){_error_("Not implemented yet");};
+		virtual void   PointWiseMult(Input2* xinput){_error_("Not implemented yet");};
+		virtual void   Pow(IssmDouble scale_factor){_error_("Not implemented yet");};
 		virtual void   Scale(IssmDouble scale_factor){_error_("Not implemented yet");};
 
@@ -50,5 +52,5 @@
 		virtual int  GetResultNumberOfNodes(void){_error_("Not implemented yet");};
 		//virtual void ResultToMatrix(IssmDouble* values,int ncols,int sid){_error_("not supported yet");};
-		//virtual void ResultToPatch(IssmDouble* values,int nodesperelement,int sid){_error_("not supported yet");}; 
+		//virtual void ResultToPatch(IssmDouble* values,int nodesperelement,int sid){_error_("not supported yet");};
 };
 #endif
Index: /issm/trunk-jpl/src/c/classes/Inputs2/TransientInput2.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Inputs2/TransientInput2.cpp	(revision 24790)
+++ /issm/trunk-jpl/src/c/classes/Inputs2/TransientInput2.cpp	(revision 24791)
@@ -467,6 +467,6 @@
 				}
 				else{
-					this->stepinput->Scale(dt);
-					this->current_input->PointWiseMult(stepinput)
+					stepinput->Scale(dt);
+					this->current_input->PointWiseMult(stepinput);
 				}
 				break;
@@ -478,5 +478,5 @@
 				}
 				else{
-					this->stepinput->Pow(-1);
+					stepinput->Pow(-1);
 					this->current_input->AXPY(stepinput,dt);
 				}
Index: /issm/trunk-jpl/src/c/shared/Enum/Enum.vim
===================================================================
--- /issm/trunk-jpl/src/c/shared/Enum/Enum.vim	(revision 24790)
+++ /issm/trunk-jpl/src/c/shared/Enum/Enum.vim	(revision 24791)
@@ -163,4 +163,5 @@
 syn keyword cConstant GroundinglineMeltInterpolationEnum
 syn keyword cConstant GroundinglineMigrationEnum
+syn keyword cConstant HydrologyAveragingEnum
 syn keyword cConstant HydrologyCavitySpacingEnum
 syn keyword cConstant HydrologyChannelConductivityEnum
@@ -340,4 +341,5 @@
 syn keyword cConstant SmbAccurefEnum
 syn keyword cConstant SmbAdThreshEnum
+syn keyword cConstant SmbAveragingEnum
 syn keyword cConstant SmbDesfacEnum
 syn keyword cConstant SmbDpermilEnum
@@ -1341,4 +1343,5 @@
 syn keyword cType Cfsurfacesquare
 syn keyword cType Channel
+syn keyword cType classes
 syn keyword cType Constraint
 syn keyword cType Constraints
@@ -1347,6 +1350,6 @@
 syn keyword cType ControlInput2
 syn keyword cType Covertree
+syn keyword cType DatasetInput2
 syn keyword cType DataSetParam
-syn keyword cType DatasetInput2
 syn keyword cType Definition
 syn keyword cType DependentObject
@@ -1360,6 +1363,6 @@
 syn keyword cType ElementInput2
 syn keyword cType ElementMatrix
+syn keyword cType Elements
 syn keyword cType ElementVector
-syn keyword cType Elements
 syn keyword cType ExponentialVariogram
 syn keyword cType ExternalResult
@@ -1368,9 +1371,10 @@
 syn keyword cType Friction
 syn keyword cType Gauss
+syn keyword cType GaussianVariogram
+syn keyword cType gaussobjects
 syn keyword cType GaussPenta
 syn keyword cType GaussSeg
 syn keyword cType GaussTetra
 syn keyword cType GaussTria
-syn keyword cType GaussianVariogram
 syn keyword cType GenericExternalResult
 syn keyword cType GenericOption
@@ -1387,4 +1391,5 @@
 syn keyword cType IssmDirectApplicInterface
 syn keyword cType IssmParallelDirectApplicInterface
+syn keyword cType krigingobjects
 syn keyword cType Load
 syn keyword cType Loads
@@ -1397,4 +1402,5 @@
 syn keyword cType Matice
 syn keyword cType Matlitho
+syn keyword cType matrixobjects
 syn keyword cType MatrixParam
 syn keyword cType Misfit
@@ -1409,6 +1415,6 @@
 syn keyword cType Observations
 syn keyword cType Option
+syn keyword cType Options
 syn keyword cType OptionUtilities
-syn keyword cType Options
 syn keyword cType Param
 syn keyword cType Parameters
@@ -1424,10 +1430,10 @@
 syn keyword cType Regionaloutput
 syn keyword cType Results
+syn keyword cType Riftfront
 syn keyword cType RiftStruct
-syn keyword cType Riftfront
 syn keyword cType Seg
 syn keyword cType SegInput2
+syn keyword cType Segment
 syn keyword cType SegRef
-syn keyword cType Segment
 syn keyword cType SpcDynamic
 syn keyword cType SpcStatic
@@ -1448,8 +1454,4 @@
 syn keyword cType Vertex
 syn keyword cType Vertices
-syn keyword cType classes
-syn keyword cType gaussobjects
-syn keyword cType krigingobjects
-syn keyword cType matrixobjects
 syn keyword cType AdjointBalancethickness2Analysis
 syn keyword cType AdjointBalancethicknessAnalysis
@@ -1470,6 +1472,6 @@
 syn keyword cType FreeSurfaceBaseAnalysis
 syn keyword cType FreeSurfaceTopAnalysis
+syn keyword cType GiaIvinsAnalysis
 syn keyword cType GLheightadvectionAnalysis
-syn keyword cType GiaIvinsAnalysis
 syn keyword cType HydrologyDCEfficientAnalysis
 syn keyword cType HydrologyDCInefficientAnalysis
Index: /issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h
===================================================================
--- /issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h	(revision 24790)
+++ /issm/trunk-jpl/src/c/shared/Enum/EnumDefinitions.h	(revision 24791)
@@ -157,4 +157,5 @@
 	GroundinglineMeltInterpolationEnum,
 	GroundinglineMigrationEnum,
+	HydrologyAveragingEnum,
 	HydrologyCavitySpacingEnum,
 	HydrologyChannelConductivityEnum,
@@ -334,4 +335,5 @@
 	SmbAccurefEnum,
 	SmbAdThreshEnum,
+	SmbAveragingEnum,
 	SmbDesfacEnum,
 	SmbDpermilEnum,
Index: /issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp
===================================================================
--- /issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp	(revision 24790)
+++ /issm/trunk-jpl/src/c/shared/Enum/EnumToStringx.cpp	(revision 24791)
@@ -165,4 +165,5 @@
 		case GroundinglineMeltInterpolationEnum : return "GroundinglineMeltInterpolation";
 		case GroundinglineMigrationEnum : return "GroundinglineMigration";
+		case HydrologyAveragingEnum : return "HydrologyAveraging";
 		case HydrologyCavitySpacingEnum : return "HydrologyCavitySpacing";
 		case HydrologyChannelConductivityEnum : return "HydrologyChannelConductivity";
@@ -342,4 +343,5 @@
 		case SmbAccurefEnum : return "SmbAccuref";
 		case SmbAdThreshEnum : return "SmbAdThresh";
+		case SmbAveragingEnum : return "SmbAveraging";
 		case SmbDesfacEnum : return "SmbDesfac";
 		case SmbDpermilEnum : return "SmbDpermil";
Index: /issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp
===================================================================
--- /issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp	(revision 24790)
+++ /issm/trunk-jpl/src/c/shared/Enum/StringToEnumx.cpp	(revision 24791)
@@ -168,4 +168,5 @@
 	      else if (strcmp(name,"GroundinglineMeltInterpolation")==0) return GroundinglineMeltInterpolationEnum;
 	      else if (strcmp(name,"GroundinglineMigration")==0) return GroundinglineMigrationEnum;
+	      else if (strcmp(name,"HydrologyAveraging")==0) return HydrologyAveragingEnum;
 	      else if (strcmp(name,"HydrologyCavitySpacing")==0) return HydrologyCavitySpacingEnum;
 	      else if (strcmp(name,"HydrologyChannelConductivity")==0) return HydrologyChannelConductivityEnum;
@@ -259,9 +260,9 @@
 	      else if (strcmp(name,"MaterialsEffectiveconductivityAveraging")==0) return MaterialsEffectiveconductivityAveragingEnum;
 	      else if (strcmp(name,"MaterialsHeatcapacity")==0) return MaterialsHeatcapacityEnum;
-	      else if (strcmp(name,"MaterialsLatentheat")==0) return MaterialsLatentheatEnum;
          else stage=3;
    }
    if(stage==3){
-	      if (strcmp(name,"MaterialsLithosphereDensity")==0) return MaterialsLithosphereDensityEnum;
+	      if (strcmp(name,"MaterialsLatentheat")==0) return MaterialsLatentheatEnum;
+	      else if (strcmp(name,"MaterialsLithosphereDensity")==0) return MaterialsLithosphereDensityEnum;
 	      else if (strcmp(name,"MaterialsLithosphereShearModulus")==0) return MaterialsLithosphereShearModulusEnum;
 	      else if (strcmp(name,"MaterialsMantleDensity")==0) return MaterialsMantleDensityEnum;
@@ -348,4 +349,5 @@
 	      else if (strcmp(name,"SmbAccuref")==0) return SmbAccurefEnum;
 	      else if (strcmp(name,"SmbAdThresh")==0) return SmbAdThreshEnum;
+	      else if (strcmp(name,"SmbAveraging")==0) return SmbAveragingEnum;
 	      else if (strcmp(name,"SmbDesfac")==0) return SmbDesfacEnum;
 	      else if (strcmp(name,"SmbDpermil")==0) return SmbDpermilEnum;
@@ -381,10 +383,10 @@
 	      else if (strcmp(name,"SmbRdl")==0) return SmbRdlEnum;
 	      else if (strcmp(name,"SmbRequestedOutputs")==0) return SmbRequestedOutputsEnum;
-	      else if (strcmp(name,"SmbRlaps")==0) return SmbRlapsEnum;
-	      else if (strcmp(name,"SmbRlapslgm")==0) return SmbRlapslgmEnum;
          else stage=4;
    }
    if(stage==4){
-	      if (strcmp(name,"SmbRunoffalti")==0) return SmbRunoffaltiEnum;
+	      if (strcmp(name,"SmbRlaps")==0) return SmbRlapsEnum;
+	      else if (strcmp(name,"SmbRlapslgm")==0) return SmbRlapslgmEnum;
+	      else if (strcmp(name,"SmbRunoffalti")==0) return SmbRunoffaltiEnum;
 	      else if (strcmp(name,"SmbRunoffgrad")==0) return SmbRunoffgradEnum;
 	      else if (strcmp(name,"SmbRunoffref")==0) return SmbRunoffrefEnum;
@@ -504,10 +506,10 @@
 	      else if (strcmp(name,"CalvingHabFraction")==0) return CalvingHabFractionEnum;
 	      else if (strcmp(name,"CalvingMeltingrate")==0) return CalvingMeltingrateEnum;
-	      else if (strcmp(name,"CalvingStressThresholdFloatingice")==0) return CalvingStressThresholdFloatingiceEnum;
-	      else if (strcmp(name,"CalvingStressThresholdGroundedice")==0) return CalvingStressThresholdGroundediceEnum;
          else stage=5;
    }
    if(stage==5){
-	      if (strcmp(name,"CalvinglevermannCoeff")==0) return CalvinglevermannCoeffEnum;
+	      if (strcmp(name,"CalvingStressThresholdFloatingice")==0) return CalvingStressThresholdFloatingiceEnum;
+	      else if (strcmp(name,"CalvingStressThresholdGroundedice")==0) return CalvingStressThresholdGroundediceEnum;
+	      else if (strcmp(name,"CalvinglevermannCoeff")==0) return CalvinglevermannCoeffEnum;
 	      else if (strcmp(name,"CalvingratexAverage")==0) return CalvingratexAverageEnum;
 	      else if (strcmp(name,"Calvingratex")==0) return CalvingratexEnum;
@@ -627,10 +629,10 @@
 	      else if (strcmp(name,"Input")==0) return InputEnum;
 	      else if (strcmp(name,"InversionCostFunctionsCoefficients")==0) return InversionCostFunctionsCoefficientsEnum;
-	      else if (strcmp(name,"InversionSurfaceObs")==0) return InversionSurfaceObsEnum;
-	      else if (strcmp(name,"InversionThicknessObs")==0) return InversionThicknessObsEnum;
          else stage=6;
    }
    if(stage==6){
-	      if (strcmp(name,"InversionVelObs")==0) return InversionVelObsEnum;
+	      if (strcmp(name,"InversionSurfaceObs")==0) return InversionSurfaceObsEnum;
+	      else if (strcmp(name,"InversionThicknessObs")==0) return InversionThicknessObsEnum;
+	      else if (strcmp(name,"InversionVelObs")==0) return InversionVelObsEnum;
 	      else if (strcmp(name,"InversionVxObs")==0) return InversionVxObsEnum;
 	      else if (strcmp(name,"InversionVyObs")==0) return InversionVyObsEnum;
@@ -750,10 +752,10 @@
 	      else if (strcmp(name,"SmbMassBalanceClimate")==0) return SmbMassBalanceClimateEnum;
 	      else if (strcmp(name,"SmbMassBalance")==0) return SmbMassBalanceEnum;
-	      else if (strcmp(name,"SmbMassBalanceSubstep")==0) return SmbMassBalanceSubstepEnum;
-	      else if (strcmp(name,"SmbMassBalanceTransient")==0) return SmbMassBalanceTransientEnum;
          else stage=7;
    }
    if(stage==7){
-	      if (strcmp(name,"SmbMeanLHF")==0) return SmbMeanLHFEnum;
+	      if (strcmp(name,"SmbMassBalanceSubstep")==0) return SmbMassBalanceSubstepEnum;
+	      else if (strcmp(name,"SmbMassBalanceTransient")==0) return SmbMassBalanceTransientEnum;
+	      else if (strcmp(name,"SmbMeanLHF")==0) return SmbMeanLHFEnum;
 	      else if (strcmp(name,"SmbMeanSHF")==0) return SmbMeanSHFEnum;
 	      else if (strcmp(name,"SmbMeanULW")==0) return SmbMeanULWEnum;
@@ -873,10 +875,10 @@
 	      else if (strcmp(name,"Outputdefinition13")==0) return Outputdefinition13Enum;
 	      else if (strcmp(name,"Outputdefinition14")==0) return Outputdefinition14Enum;
-	      else if (strcmp(name,"Outputdefinition15")==0) return Outputdefinition15Enum;
-	      else if (strcmp(name,"Outputdefinition16")==0) return Outputdefinition16Enum;
          else stage=8;
    }
    if(stage==8){
-	      if (strcmp(name,"Outputdefinition17")==0) return Outputdefinition17Enum;
+	      if (strcmp(name,"Outputdefinition15")==0) return Outputdefinition15Enum;
+	      else if (strcmp(name,"Outputdefinition16")==0) return Outputdefinition16Enum;
+	      else if (strcmp(name,"Outputdefinition17")==0) return Outputdefinition17Enum;
 	      else if (strcmp(name,"Outputdefinition18")==0) return Outputdefinition18Enum;
 	      else if (strcmp(name,"Outputdefinition19")==0) return Outputdefinition19Enum;
@@ -996,10 +998,10 @@
 	      else if (strcmp(name,"BeckmannGoosseFloatingMeltRate")==0) return BeckmannGoosseFloatingMeltRateEnum;
 	      else if (strcmp(name,"BedSlopeSolution")==0) return BedSlopeSolutionEnum;
-	      else if (strcmp(name,"BoolExternalResult")==0) return BoolExternalResultEnum;
-	      else if (strcmp(name,"BoolInput")==0) return BoolInputEnum;
          else stage=9;
    }
    if(stage==9){
-	      if (strcmp(name,"BoolInput2")==0) return BoolInput2Enum;
+	      if (strcmp(name,"BoolExternalResult")==0) return BoolExternalResultEnum;
+	      else if (strcmp(name,"BoolInput")==0) return BoolInputEnum;
+	      else if (strcmp(name,"BoolInput2")==0) return BoolInput2Enum;
 	      else if (strcmp(name,"IntInput2")==0) return IntInput2Enum;
 	      else if (strcmp(name,"BoolParam")==0) return BoolParamEnum;
@@ -1119,10 +1121,10 @@
 	      else if (strcmp(name,"IceVolumeAboveFloatation")==0) return IceVolumeAboveFloatationEnum;
 	      else if (strcmp(name,"IceVolumeAboveFloatationScaled")==0) return IceVolumeAboveFloatationScaledEnum;
-	      else if (strcmp(name,"IceVolume")==0) return IceVolumeEnum;
-	      else if (strcmp(name,"IceVolumeScaled")==0) return IceVolumeScaledEnum;
          else stage=10;
    }
    if(stage==10){
-	      if (strcmp(name,"IcefrontMassFlux")==0) return IcefrontMassFluxEnum;
+	      if (strcmp(name,"IceVolume")==0) return IceVolumeEnum;
+	      else if (strcmp(name,"IceVolumeScaled")==0) return IceVolumeScaledEnum;
+	      else if (strcmp(name,"IcefrontMassFlux")==0) return IcefrontMassFluxEnum;
 	      else if (strcmp(name,"IcefrontMassFluxLevelset")==0) return IcefrontMassFluxLevelsetEnum;
 	      else if (strcmp(name,"Incremental")==0) return IncrementalEnum;
@@ -1242,10 +1244,10 @@
 	      else if (strcmp(name,"PentaInput")==0) return PentaInputEnum;
 	      else if (strcmp(name,"Profiler")==0) return ProfilerEnum;
-	      else if (strcmp(name,"ProfilingCurrentFlops")==0) return ProfilingCurrentFlopsEnum;
-	      else if (strcmp(name,"ProfilingCurrentMem")==0) return ProfilingCurrentMemEnum;
          else stage=11;
    }
    if(stage==11){
-	      if (strcmp(name,"ProfilingSolutionTime")==0) return ProfilingSolutionTimeEnum;
+	      if (strcmp(name,"ProfilingCurrentFlops")==0) return ProfilingCurrentFlopsEnum;
+	      else if (strcmp(name,"ProfilingCurrentMem")==0) return ProfilingCurrentMemEnum;
+	      else if (strcmp(name,"ProfilingSolutionTime")==0) return ProfilingSolutionTimeEnum;
 	      else if (strcmp(name,"Regionaloutput")==0) return RegionaloutputEnum;
 	      else if (strcmp(name,"Regular")==0) return RegularEnum;
Index: /issm/trunk-jpl/src/c/shared/Enum/Synchronize.sh
===================================================================
--- /issm/trunk-jpl/src/c/shared/Enum/Synchronize.sh	(revision 24790)
+++ /issm/trunk-jpl/src/c/shared/Enum/Synchronize.sh	(revision 24791)
@@ -6,6 +6,6 @@
 
 #Removed existing files
-rm $ISSM_DIR/src/c/shared/Enum/EnumToStringx.cpp
-rm $ISSM_DIR/src/c/shared/Enum/StringToEnumx.cpp
+rm $ISSM_DEV_DIR/src/c/shared/Enum/EnumToStringx.cpp
+rm $ISSM_DEV_DIR/src/c/shared/Enum/StringToEnumx.cpp
 
 #Get number of enums
@@ -16,5 +16,5 @@
 #Build EnumToAnalysis.cpp {{{
 #Header
-cat <<END > $ISSM_DIR/src/c/analyses/EnumToAnalysis.cpp
+cat <<END > $ISSM_DEV_DIR/src/c/analyses/EnumToAnalysis.cpp
 /*
 * \file EnumToAnalysis.cpp
@@ -37,8 +37,8 @@
 	grep -v DefaultAnalysis | grep -v FlaimAnalysis | grep -v SurfaceSlopeAnalysis | grep -v BedSlopeAnalysis | \
 	awk '{print "\t\t#ifdef _HAVE_"toupper(substr($1,1,length($1)-12))"_\n\t\t" "case " $1" : return new " substr($1,1,length($1)-4) "();\n\t\t#endif"}' \
-		>> $ISSM_DIR/src/c/analyses/EnumToAnalysis.cpp
+		>> $ISSM_DEV_DIR/src/c/analyses/EnumToAnalysis.cpp
 
 #Footer
-cat <<END >> $ISSM_DIR/src/c/analyses/EnumToAnalysis.cpp
+cat <<END >> $ISSM_DEV_DIR/src/c/analyses/EnumToAnalysis.cpp
 		default : _error_("enum provided not supported ("<<EnumToStringx(analysis_enum)<<")");
 	}
@@ -48,5 +48,5 @@
 #Build analyses.m4{{{
 #Header
-cat <<END > $ISSM_DIR/m4/analyses.m4
+cat <<END > $ISSM_DEV_DIR/m4/analyses.m4
 
 dnl   WARNING: DO NOT MODIFY THIS FILE
@@ -78,8 +78,8 @@
 AC_MSG_RESULT($HAVE_" toupper($1)")\n\
 dnl }}}"}' \
-	>> $ISSM_DIR/m4/analyses.m4
+	>> $ISSM_DEV_DIR/m4/analyses.m4
 
 #Footer
-cat <<END >> $ISSM_DIR/m4/analyses.m4
+cat <<END >> $ISSM_DEV_DIR/m4/analyses.m4
 
 ])
@@ -91,5 +91,5 @@
 #Build EnumToStringx.cpp {{{
 #Header
-cat <<END >  $ISSM_DIR/src/c/shared/Enum/EnumToStringx.cpp
+cat <<END >  $ISSM_DEV_DIR/src/c/shared/Enum/EnumToStringx.cpp
 /*
 * \file EnumToStringx.cpp:
@@ -112,7 +112,7 @@
 END
 #core
-cat temp |  awk '{print "\t\t" "case " $1" : return \"" substr($1,1,length($1)-4) "\";"}' >> $ISSM_DIR/src/c/shared/Enum/EnumToStringx.cpp
+cat temp |  awk '{print "\t\t" "case " $1" : return \"" substr($1,1,length($1)-4) "\";"}' >> $ISSM_DEV_DIR/src/c/shared/Enum/EnumToStringx.cpp
 #Footer
-cat <<END >> $ISSM_DIR/src/c/shared/Enum/EnumToStringx.cpp
+cat <<END >> $ISSM_DEV_DIR/src/c/shared/Enum/EnumToStringx.cpp
 		default : return "unknown";
 
@@ -144,5 +144,5 @@
 #Build StringToEnumx.cpp {{{
 #Header
-cat <<END > $ISSM_DIR/src/c/shared/Enum/StringToEnumx.cpp
+cat <<END > $ISSM_DEV_DIR/src/c/shared/Enum/StringToEnumx.cpp
 /*
 * \file StringToEnumx.cpp:
@@ -168,9 +168,9 @@
 i2=120;
 for (( i=1 ; i<=100 ; i++ )); do
-	echo "   if(stage==$i){" >> $ISSM_DIR//src/c/shared/Enum/StringToEnumx.cpp
+	echo "   if(stage==$i){" >> $ISSM_DEV_DIR//src/c/shared/Enum/StringToEnumx.cpp
 	awk -v i1=$i1 -v i2=$i2 '{if(NR>=i1 && NR<=i2) print $0 }' temp |
-	awk '{print "\t" ((NR==1)?"      if":"      else if") " (strcmp(name,\"" substr($1,1,length($1)-4) "\")==0) return " $1 ";"}' >> $ISSM_DIR//src/c/shared/Enum/StringToEnumx.cpp
-	echo "         else stage=$(($i+1));" >> $ISSM_DIR//src/c/shared/Enum/StringToEnumx.cpp
-	echo "   }" >> $ISSM_DIR//src/c/shared/Enum/StringToEnumx.cpp
+	awk '{print "\t" ((NR==1)?"      if":"      else if") " (strcmp(name,\"" substr($1,1,length($1)-4) "\")==0) return " $1 ";"}' >> $ISSM_DEV_DIR//src/c/shared/Enum/StringToEnumx.cpp
+	echo "         else stage=$(($i+1));" >> $ISSM_DEV_DIR//src/c/shared/Enum/StringToEnumx.cpp
+	echo "   }" >> $ISSM_DEV_DIR//src/c/shared/Enum/StringToEnumx.cpp
 
 	if [ $i2 -ge $NUMENUMS ]; then break; fi
@@ -180,5 +180,5 @@
 
 #footer
-cat <<END >> $ISSM_DIR/src/c/shared/Enum/StringToEnumx.cpp
+cat <<END >> $ISSM_DEV_DIR/src/c/shared/Enum/StringToEnumx.cpp
 	/*If we reach this point, the string provided has not been found*/
 	if(notfounderror)
@@ -193,5 +193,5 @@
 #Build Enum.vim{{{
 #Header
-cat <<END > $ISSM_DIR/src/c/shared/Enum/Enum.vim
+cat <<END > $ISSM_DEV_DIR/src/c/shared/Enum/Enum.vim
 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
 " ISSM specific c syntax highlighting
@@ -211,17 +211,17 @@
 "ISSM Enums
 END
-cat temp |  awk '{print "syn keyword cConstant " $1}' >> $ISSM_DIR/src/c/shared/Enum/Enum.vim
-cat <<END >> $ISSM_DIR/src/c/shared/Enum/Enum.vim
+cat temp |  awk '{print "syn keyword cConstant " $1}' >> $ISSM_DEV_DIR/src/c/shared/Enum/Enum.vim
+cat <<END >> $ISSM_DEV_DIR/src/c/shared/Enum/Enum.vim
 "ISSM Enums end
 END
 
 #Synchronize ISSM objects objects
-cat <<END >> $ISSM_DIR/src/c/shared/Enum/Enum.vim
+cat <<END >> $ISSM_DEV_DIR/src/c/shared/Enum/Enum.vim
 
 "ISSM objects
 END
-find $ISSM_DIR/src/c/classes -name "*.cpp" -o -name "*.h" | sed -e "s/\// /g" -e "s/\.cpp//" -e "s/\.h//" | awk '{print  $(NF)}' | sort | uniq | awk '{ printf "syn keyword cType " $1 "\n"}'>> $ISSM_DIR/src/c/shared/Enum/Enum.vim
-find $ISSM_DIR/src/c/analyses -name "*Analysis.h" | sed -e "s/\// /g" -e "s/\.cpp//" -e "s/\.h//" | awk '{print  $(NF)}' | sort | uniq | awk '{ printf "syn keyword cType " $1 "\n"}'>> $ISSM_DIR/src/c/shared/Enum/Enum.vim
-echo "\"ISSM objects end" >> $ISSM_DIR/src/c/shared/Enum/Enum.vim
+find $ISSM_DEV_DIR/src/c/classes -name "*.cpp" -o -name "*.h" | sed -e "s/\// /g" -e "s/\.cpp//" -e "s/\.h//" | awk '{print  $(NF)}' | sort | uniq | awk '{ printf "syn keyword cType " $1 "\n"}'>> $ISSM_DEV_DIR/src/c/shared/Enum/Enum.vim
+find $ISSM_DEV_DIR/src/c/analyses -name "*Analysis.h" | sed -e "s/\// /g" -e "s/\.cpp//" -e "s/\.h//" | awk '{print  $(NF)}' | sort | uniq | awk '{ printf "syn keyword cType " $1 "\n"}'>> $ISSM_DEV_DIR/src/c/shared/Enum/Enum.vim
+echo "\"ISSM objects end" >> $ISSM_DEV_DIR/src/c/shared/Enum/Enum.vim
 #}}}
 
