Index: /issm/trunk-jpl/src/c/classes/Node.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Node.cpp	(revision 25480)
+++ /issm/trunk-jpl/src/c/classes/Node.cpp	(revision 25481)
@@ -258,5 +258,6 @@
 	MARSHALLING(indexingupdate);
 	MARSHALLING(analysis_enum);
-	MARSHALLING_ARRAY(coord_system,IssmDouble,9);
+	
+	for(int k=0;k<3;k++) for(int l=0;l<3;l++) MARSHALLING(coord_system[k][l]);
 
 	MARSHALLING(gsize);
Index: /issm/trunk-jpl/src/c/classes/Params/TransientArrayParam.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Params/TransientArrayParam.cpp	(revision 25480)
+++ /issm/trunk-jpl/src/c/classes/Params/TransientArrayParam.cpp	(revision 25481)
@@ -85,6 +85,6 @@
 		timesteps = xNew<IssmDouble>(N);
 	}
-	MARSHALLING_ARRAY(values,IssmDouble,M*N);
-	MARSHALLING_ARRAY(timesteps,IssmDouble,N);
+	MARSHALLING_DYNAMIC(values,IssmDouble,M*N);
+	MARSHALLING_DYNAMIC(timesteps,IssmDouble,N);
 
 }/*}}}*/
Index: /issm/trunk-jpl/src/c/classes/Params/TransientParam.cpp
===================================================================
--- /issm/trunk-jpl/src/c/classes/Params/TransientParam.cpp	(revision 25480)
+++ /issm/trunk-jpl/src/c/classes/Params/TransientParam.cpp	(revision 25481)
@@ -79,6 +79,6 @@
 		timesteps=xNew<IssmDouble>(N);
 	}
-	MARSHALLING_ARRAY(values,IssmDouble,N);
-	MARSHALLING_ARRAY(timesteps,IssmDouble,N);
+	MARSHALLING_DYNAMIC(values,IssmDouble,N);
+	MARSHALLING_DYNAMIC(timesteps,IssmDouble,N);
 
 }
Index: /issm/trunk-jpl/src/c/shared/io/Marshalling/Marshalling.h
===================================================================
--- /issm/trunk-jpl/src/c/shared/io/Marshalling/Marshalling.h	(revision 25480)
+++ /issm/trunk-jpl/src/c/shared/io/Marshalling/Marshalling.h	(revision 25481)
@@ -43,20 +43,4 @@
 
 
-#define MARSHALLING_ARRAY(FIELD,TYPE,SIZE) \
-	\
-	if(marshall_direction==MARSHALLING_FORWARD){\
-		memcpy(*pmarshalled_data,FIELD,SIZE*sizeof(TYPE));\
-		*pmarshalled_data+=SIZE*sizeof(TYPE);\
-	}\
-	else if(marshall_direction==MARSHALLING_SIZE){\
-		*pmarshalled_data_size+=SIZE*sizeof(TYPE);\
-	}\
-	else if(marshall_direction==MARSHALLING_BACKWARD){\
-		memcpy(FIELD,*pmarshalled_data,SIZE*sizeof(TYPE));\
-		*pmarshalled_data+=SIZE*sizeof(TYPE);\
-	}\
-	else _error_("Wrong direction during the Marshall process");
-
-
 #define MARSHALLING_DYNAMIC(FIELD,TYPE,SIZE) \
 	\
