Index: /issm/trunk-jpl/src/c/analyses/HydrologyDCEfficientAnalysis.cpp
===================================================================
--- /issm/trunk-jpl/src/c/analyses/HydrologyDCEfficientAnalysis.cpp	(revision 23527)
+++ /issm/trunk-jpl/src/c/analyses/HydrologyDCEfficientAnalysis.cpp	(revision 23528)
@@ -653,5 +653,5 @@
 }/*}}}*/
 
-void  HydrologyDCEfficientAnalysis::HydrologyEPLGetMask(Vector<IssmDouble>* vec_mask, Vector<IssmDouble>* recurence, int* eplzigzag_counter, Element* element){
+void  HydrologyDCEfficientAnalysis::HydrologyEPLGetMask(Vector<IssmDouble>* vec_mask, Vector<IssmDouble>* recurence, Element* element){
 
 	bool        active_element;
@@ -709,5 +709,5 @@
 			}
 		}
-		if (old_active[i]==0.){
+		else if (old_active[i]==0.){
 			/*Activate if we have a residual from sediment*/
 			if(residual[i]>0.){
Index: /issm/trunk-jpl/src/c/analyses/HydrologyDCEfficientAnalysis.h
===================================================================
--- /issm/trunk-jpl/src/c/analyses/HydrologyDCEfficientAnalysis.h	(revision 23527)
+++ /issm/trunk-jpl/src/c/analyses/HydrologyDCEfficientAnalysis.h	(revision 23528)
@@ -1,3 +1,3 @@
-/*! \file HydrologyDCEfficientAnalysis.h 
+/*! \file HydrologyDCEfficientAnalysis.h
  *  \brief: header file for generic external result object
  */
@@ -22,5 +22,5 @@
 		void InitZigZagCounter(FemModel* femmodel);
 		void ResetCounter(FemModel* femmodel);
-			
+
 		/*Finite element Analysis*/
 		void           Core(FemModel* femmodel);
@@ -40,5 +40,5 @@
 		IssmDouble EplStoring(Element* element,Gauss* gauss, Input* epl_thick_input, Input* epl_head_input, Input* base_input);
 		IssmDouble EplTransmitivity(Element* element,Gauss* gauss, Input* epl_thick_input, Input* epl_head_input, Input* base_input);
-		void HydrologyEPLGetMask(Vector<IssmDouble>* vec_mask, Vector<IssmDouble>* recurence, int* eplzigzag_counter, Element* element);
+		void HydrologyEPLGetMask(Vector<IssmDouble>* vec_mask, Vector<IssmDouble>* recurence, Element* element);
 		void HydrologyEPLGetActive(Vector<IssmDouble>* active_vec, Element* element);
 		void GetHydrologyDCInefficientHmax(IssmDouble* ph_max,Element* element, Node* innode);
Index: /issm/trunk-jpl/src/c/classes/FemModel.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 23527)
+++ /issm/trunk-jpl/src/c/classes/FemModel.cpp	(revision 23528)
@@ -215,5 +215,5 @@
 
 	/*Checks in debugging mode*/
-	_assert_(this->analysis_type_list); 
+	_assert_(this->analysis_type_list);
 
 	/*Find analysis in list*/
@@ -929,6 +929,6 @@
 		if(profiler->Used(ESACORE)) _printf0_("   "<<setw(40)<<left<<"ESA core elapsed time:"<<setw(7)<<setprecision(6)<<profiler->TotalTime(ESACORE) << " sec\n");
 		if(profiler->Used(SLRCORE)) _printf0_("   "<<setw(40)<<left<<"SLR core elapsed time:"<<setw(7)<<setprecision(6)<<profiler->TotalTime(SLRCORE) << " sec\n");
-		if(profiler->Used(MPISERIAL)) _printf0_("   "<<setw(40)<<left<<"MPISERIAL elapsed time:"<<setw(7)<<setprecision(6)<<profiler->TotalTime(MPISERIAL) << " sec\n");		
-		
+		if(profiler->Used(MPISERIAL)) _printf0_("   "<<setw(40)<<left<<"MPISERIAL elapsed time:"<<setw(7)<<setprecision(6)<<profiler->TotalTime(MPISERIAL) << " sec\n");
+
 		/*Add to results: */
 		results->AddObject(new GenericExternalResult<IssmDouble>(results->Size()+1, ProfilingSolutionTimeEnum,  solution_time));
@@ -1188,5 +1188,5 @@
 
 		/*Update signed distance*/
-		_assert_(vertex->lid<vertices->Size()); 
+		_assert_(vertex->lid<vertices->Size());
 		distances[vertex->lid] = sqrt(dmin);
 	}
@@ -2539,5 +2539,5 @@
 
 	int index=AnalysisIndex(config_type);
-	_assert_(this->analysis_type_list[index]==config_type); 
+	_assert_(this->analysis_type_list[index]==config_type);
 
 	/*start module: */
@@ -2719,5 +2719,5 @@
 	/*Finally: interpolate all inputs and insert them into the new elements.*/
 	this->InterpolateInputs(new_vertices,new_elements);
-	
+
 	/*Delete old structure and set new pointers*/
 	delete this->vertices;		this->vertices		= new_vertices;
@@ -3383,8 +3383,8 @@
 /*}}}*/
 void FemModel::GetMesh(int** elementslist, IssmDouble** x, IssmDouble** y, int* numberofvertices, int* numberofelements){/*{{{*/
-	
-	int amrtype;	
+
+	int amrtype;
 	this->parameters->FindParam(&amrtype,AmrTypeEnum);
-   
+
 	switch(amrtype){
 
@@ -3401,8 +3401,8 @@
 }/*}}}*/
 void FemModel::SetMesh(int** elementslist, IssmDouble** x, IssmDouble** y, int* numberofvertices, int* numberofelements){/*{{{*/
-	
-	int amrtype;	
+
+	int amrtype;
 	this->parameters->FindParam(&amrtype,AmrTypeEnum);
-   
+
 	switch(amrtype){
 
@@ -3566,5 +3566,5 @@
 		}
 	}
-	
+
 	/*Cleanup*/
 	xDelete<IssmDouble>(spc);
@@ -4644,5 +4644,5 @@
 	for (int i=0;i<elements->Size();i++){
 		Element* element=xDynamicCast<Element*>(elements->GetObjectByOffset(i));
-		effanalysis->HydrologyEPLGetMask(mask,recurence,eplzigzag_counter,element);
+		effanalysis->HydrologyEPLGetMask(mask,recurence,element);
 	}
 	/*check for changes and increment zigzag counter, change the mask if necessary*/
@@ -4652,5 +4652,5 @@
 		Node* node=xDynamicCast<Node*>(nodes->GetObjectByOffset(i));
 		if(serial_rec[node->Sid()]==1.)eplzigzag_counter[node->Lid()] ++;
-		if(eplzigzag_counter[node->Lid()]>eplflip_lock & eplflip_lock!=0){
+		if(eplzigzag_counter[node->Lid()]>eplflip_lock && eplflip_lock!=0){
 			mask->SetValue(node->Sid(),old_active[node->Sid()],INS_VAL);
 		}
@@ -5146,5 +5146,5 @@
    Vector<IssmDouble>* vminvertexdistance = new Vector<IssmDouble>(numberofvertices);
 	IssmDouble* pminvertexdistance 			= NULL;
-	IssmDouble* levelset_points				= NULL; 
+	IssmDouble* levelset_points				= NULL;
 	IssmDouble x,y;
 	IssmDouble threshold,resolution;
@@ -5174,5 +5174,5 @@
       sid= vertex->Sid();
 		minvertexdistance=INFINITY;
-      
+
 		/*Find the minimum vertex distance*/
 		for(int j=0;j<numberofpoints;j++){
@@ -5181,5 +5181,5 @@
     	}
 		/*Now, insert in the vector*/
-		vminvertexdistance->SetValue(sid,minvertexdistance,INS_VAL);	
+		vminvertexdistance->SetValue(sid,minvertexdistance,INS_VAL);
    }
 	/*Assemble*/
@@ -5283,5 +5283,5 @@
 				else hmaxvertices[vid]=min(max(maxlength[i]/2.,resolution),hmaxvertices[vid]);//Try first dividing the element
 			}
-		} 
+		}
 		else {
 			/*Try unrefine the element*/
@@ -5295,5 +5295,5 @@
 					}
 				}
-			} 
+			}
 		}
 	}
@@ -5306,5 +5306,5 @@
 /*}}}*/
 void FemModel::GetVerticeDistanceToZeroLevelSet(IssmDouble** pverticedistance,int levelset_type){/*{{{*/
-	
+
 	//itapopo esse metodo pode ser deletado
 
@@ -5325,5 +5325,5 @@
    IssmDouble* x					= NULL;
    IssmDouble* y					= NULL;
-	int* elementslist				= NULL;	
+	int* elementslist				= NULL;
 	int numberofpoints;
 	IssmDouble distance;
@@ -5382,5 +5382,5 @@
 		this->amr->ExecuteRefinement(gl_distance,if_distance,deviatoricerror,thicknesserror,
 												&newdatalist,&newxylist,&newelementslist);
-		if(newdatalist[0]<=0 || newdatalist[1]<=0) _error_("Error in the ReMeshNeopz.");	
+		if(newdatalist[0]<=0 || newdatalist[1]<=0) _error_("Error in the ReMeshNeopz.");
 	}
 
@@ -5459,5 +5459,5 @@
 	this->parameters->FindParam(&this->amr->deviatoricerror_groupthreshold,AmrDeviatoricErrorGroupThresholdEnum);
 	this->parameters->FindParam(&this->amr->deviatoricerror_maximum,AmrDeviatoricErrorMaximumEnum);
-	
+
 	/*Initialize NeoPZ data structure*/
 	this->amr->SetMesh(&elements,&x,&y,&numberofvertices,&numberofelements);
Index: /issm/trunk-jpl/src/c/cores/hydrology_core.cpp
===================================================================
--- /issm/trunk-jpl/src/c/cores/hydrology_core.cpp	(revision 23527)
+++ /issm/trunk-jpl/src/c/cores/hydrology_core.cpp	(revision 23528)
@@ -50,5 +50,5 @@
 		/*intermediary: */
 		bool       isefficientlayer;
-		int        step,hydroslices;
+		int        hydrostep,hydroslices;
 		IssmDouble time,init_time,hydrotime,yts;
 		IssmDouble dt,hydrodt;
@@ -56,5 +56,4 @@
 		femmodel->parameters->FindParam(&isefficientlayer,HydrologydcIsefficientlayerEnum);
 		femmodel->parameters->FindParam(&dt,TimesteppingTimeStepEnum);
-		femmodel->parameters->FindParam(&step,StepEnum);
 		femmodel->parameters->FindParam(&time,TimeEnum);
 		femmodel->parameters->FindParam(&hydroslices,HydrologyStepsPerStepEnum);
@@ -68,4 +67,5 @@
 			hydrotime=init_time;
 			hydrodt=dt/hydroslices; //computing hydro dt from dt and a divider
+			hydrostep=0;
 			femmodel->parameters->AddObject(new DoubleParam(HydrologydtEnum,hydrodt));
 			if(hydroslices>1){
@@ -77,5 +77,8 @@
 					femmodel->InitTransientOutputx(&stackedinput[0],4);
 					while(hydrotime<time-(yts*DBL_EPSILON)){ //loop on hydro dts
+						hydrostep+=1;
 						hydrotime+=hydrodt;
+						if(VerboseSolution()) _printf0_("hydro iteration " << hydrostep << "/" << hydroslices << "  time [yr]: " << setprecision(4) << hydrotime/yts << " (time step: " << hydrodt/yts << ")\n");
+
 						/*save preceding timestep*/
 						InputDuplicatex(femmodel,SedimentHeadHydrostepEnum,SedimentHeadOldEnum);
