Index: /issm/trunk-jpl/src/m/io/loadvars.py
===================================================================
--- /issm/trunk-jpl/src/m/io/loadvars.py	(revision 21251)
+++ /issm/trunk-jpl/src/m/io/loadvars.py	(revision 21252)
@@ -89,4 +89,6 @@
 				if classtype[mod][0]=='list':
 					keylist=[key for key in curclass.groups]
+					steplist=[int(key) for key in curclass.groups]
+					indexlist=[index*(len(curclass.groups)-1)/max(steplist) for index in steplist]
 					listtype=curclass.groups[keylist[0]].classtype
 					if listtype=='dict':
@@ -118,5 +120,5 @@
 						if vardim==0:
 							if type(Tree)==list:
-								t=int(keylist[i][-1])-1
+								t=indexlist[i]
 								if listtype=='dict':
 									Tree[t][str(var)]=varval.getValue()
@@ -142,5 +144,5 @@
 							else:
 								if type(Tree)==list:
-									t=int(keylist[i][-1])-1
+									t=indexlist[i]
 									if listtype=='dict':
 										Tree[t][str(var)]=varval[:]
@@ -152,5 +154,4 @@
 										mdtype=type(Tree.__dict__[str(var)])
 									except KeyError:
-										print 'not defined yet'
 										mdtype=float
 									if mdtype==list:
@@ -164,5 +165,6 @@
 							else:
 								if type(Tree)==list:
-									t=int(keylist[i][-1])-1
+									#t=int(keylist[i][-1])-1
+									t=indexlist[i]
 									if listtype=='dict':
 										Tree[t][str(var)]=varval[:,:]
@@ -173,5 +175,5 @@
 						elif vardim==3:
 							if type(Tree)==list:
-								t=int(keylist[i][-1])-1
+								t=indexlist[i]
 								if listtype=='dict':
 									Tree[t][str(var)]=varval[:,:,:]
@@ -185,5 +187,5 @@
 					if  attr!='classtype': #classtype is for treatment, don't get it back
 						if type(Tree)==list:
-							t=int(keylist[i][-1])-1
+							t=indexlist[i]
 							if listtype=='dict':
 								Tree[t][str(attr)]=str(listclass.getncattr(attr))
