Index: CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/AA_make
===================================================================
--- CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/AA_make	(revision 943)
+++ CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/AA_make	(revision 944)
@@ -88,5 +88,5 @@
 
 orca2:
-	(cd ../../modeles/NEMO/WORK; $(M_K) FCM=use USER_INC='-I ../$(PRISM_DIR)/$(PRISM_ARCH)/build/lib/psmile.$(LIB_MPI)' USER_LIB='-L../$(PRISM_DIR)/$(PRISM_ARCH)/lib -lpsmile.$(LIB_MPI) -lmpp_io' P_P='key_trabbl_dif key_vectopt_loop key_vectopt_memory key_orca_r2 key_lim2 key_dynspg_flt key_ldfslp key_traldf_c2d key_traldf_eiv key_dynldf_c3d key_dtatem key_dtasal key_coupled key_trabbc key_zdftke key_zdftmx key_zdfddm key_oasis3 key_diahth key_diaeiv key_mpp_mpi key_iomput key_diaar5 key_top key_pisces key_trcbbl_dif key_trcldf_eiv key_trc_zdfddm key_trc_diaadd key_trc_dia3d' ; )
+	(cd ../../modeles/NEMO/WORK; $(M_K) FCM=use USER_INC='-I ../$(PRISM_DIR)/$(PRISM_ARCH)/build/lib/psmile.$(LIB_MPI)' USER_LIB='-L../$(PRISM_DIR)/$(PRISM_ARCH)/lib -lpsmile.$(LIB_MPI) -lmpp_io' P_P='key_trabbl_dif key_vectopt_loop key_vectopt_memory key_orca_r2 key_lim2 key_dynspg_flt key_ldfslp key_traldf_c2d key_traldf_eiv key_dynldf_c3d key_dtatem key_dtasal key_coupled key_trabbc key_zdftke key_zdftmx key_zdfddm key_oasis3 key_diahth key_diaeiv key_mpp_mpi key_iomput key_diaar5 key_top key_pisces key_trcbbl_dif key_trcldf_eiv key_trc_zdfddm key_trc_diaadd key_trc_dia3d key_dtatrc' ; )
 
 verif:
Index: CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/EXP00/COMP/pisces.card
===================================================================
--- CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/EXP00/COMP/pisces.card	(revision 943)
+++ CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/EXP00/COMP/pisces.card	(revision 944)
@@ -9,5 +9,13 @@
 [BoundaryFiles]
 List=	()
-ListNonDel= (${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_ORCA_version}/dust.orca.nc, .), \
+ListNonDel= (${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_ORCA_version}/data_1m_DIC_nomask.nc, .), \
+            (${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_ORCA_version}/data_1m_Alkalini_nomask.nc, .), \
+            (${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_ORCA_version}/data_1m_O2_nomask.nc, .), \
+            (${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_ORCA_version}/data_1m_NO3_nomask.nc, .), \
+            (${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_ORCA_version}/data_1m_PO4_nomask.nc, .), \
+            (${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_ORCA_version}/data_1m_Si_nomask.nc, .), \
+            (${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_ORCA_version}/data_1m_DOC_nomask.nc, .), \
+            (${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_ORCA_version}/data_1m_Fer_nomask.nc, .), \
+            (${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_ORCA_version}/dust.orca.nc, .), \
             (${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_ORCA_version}/bathy.orca.nc, .), \
             (${R_BC}/OCE/${config_UserChoices_TagName}/${opa9_UserChoices_ORCA_version}/river.orca.nc, .), \
Index: CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/EXP00/PARAM/namelist_pisces_ORCA2
===================================================================
--- CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/EXP00/PARAM/namelist_pisces_ORCA2	(revision 943)
+++ CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/EXP00/PARAM/namelist_pisces_ORCA2	(revision 944)
@@ -175,3 +175,4 @@
 !,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
    ln_pisdmp    =  .true.     !  Relaxation fo some tracers to a mean value
+   ln_pisclo    =  .true.    !  Restoring of tracer to initial value on closed sea ("key_dtatrc")
 /
Index: CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/EXP00/PARAM/namelist_top_ORCA2
===================================================================
--- CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/EXP00/PARAM/namelist_top_ORCA2	(revision 943)
+++ CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/EXP00/PARAM/namelist_top_ORCA2	(revision 944)
@@ -23,18 +23,18 @@
 !              !           !                                           !           ! from file    ! or not ! 
 !              !           !                                           !           ! or not       !        !
-   tracer(1)   = 'DIC     ' , 'Dissolved inorganic Concentration      ',  'mol-C/L' ,  .false.     ,  .true.
-   tracer(2)   = 'Alkalini' , 'Total Alkalinity Concentration         ',  'eq/L ' ,  .false.     ,  .true.
-   tracer(3)   = 'O2      ' , 'Dissolved Oxygen Concentration         ',  'mol-C/L' ,  .false.     ,  .true.
+   tracer(1)   = 'DIC     ' , 'Dissolved inorganic Concentration      ',  'mol-C/L' ,  .true.      ,  .true.
+   tracer(2)   = 'Alkalini' , 'Total Alkalinity Concentration         ',  'eq/L '   ,  .true.      ,  .true.
+   tracer(3)   = 'O2      ' , 'Dissolved Oxygen Concentration         ',  'mol-C/L' ,  .true.      ,  .true.
    tracer(4)   = 'CaCO3   ' , 'Calcite Concentration                  ',  'mol-C/L' ,  .false.     ,  .true.
-   tracer(5)   = 'PO4     ' , 'Phosphate Concentration                ',  'mol-C/L' ,  .false.     ,  .true.
+   tracer(5)   = 'PO4     ' , 'Phosphate Concentration                ',  'mol-C/L' ,  .true.      ,  .true.
    tracer(6)   = 'POC     ' , 'Small organic carbon Concentration     ',  'mol-C/L' ,  .false.     ,  .true.
-   tracer(7)   = 'Si      ' , 'Silicate Concentration                 ',  'mol-C/L' ,  .false.     ,  .true.
+   tracer(7)   = 'Si      ' , 'Silicate Concentration                 ',  'mol-C/L' ,  .true.      ,  .true.
    tracer(8)   = 'PHY     ' , 'Nanophytoplankton Concentration        ',  'mol-C/L' ,  .false.     ,  .true.
    tracer(9)   = 'ZOO     ' , 'Microzooplankton Concentration         ',  'mol-C/L' ,  .false.     ,  .true.
-   tracer(10)  = 'DOC     ' , 'Dissolved organic Concentration        ',  'mol-C/L' ,  .false.     ,  .true.
+   tracer(10)  = 'DOC     ' , 'Dissolved organic Concentration        ',  'mol-C/L' ,  .true.      ,  .true.
    tracer(11)  = 'PHY2    ' , 'Diatoms Concentration                  ',  'mol-C/L' ,  .false.     ,  .true.
    tracer(12)  = 'ZOO2    ' , 'Mesozooplankton Concentration          ',  'mol-C/L' ,  .false.     ,  .true.
    tracer(13)  = 'BSi     ' , 'Diatoms Silicate Concentration         ',  'mol-C/L' ,  .false.     ,  .true.
-   tracer(14)  = 'Fer     ' , 'Dissolved Iron Concentration           ',  'mol-C/L' ,  .false.     ,  .true.
+   tracer(14)  = 'Fer     ' , 'Dissolved Iron Concentration           ',  'mol-C/L' ,  .true.      ,  .true.
    tracer(15)  = 'BFe     ' , 'Big iron particles Concentration       ',  'mol-C/L' ,  .false.     ,  .true.
    tracer(16)  = 'GOC     ' , 'Big organic carbon Concentration       ',  'mol-C/L' ,  .false.     ,  .true.
@@ -45,5 +45,5 @@
    tracer(21)  = 'NCHL    ' , 'Nano chlorophyl Concentration          ',  'mol-C/L' ,  .false.     ,  .true.
    tracer(22)  = 'DCHL    ' , 'Diatoms chlorophyl Concentration       ',  'mol-C/L' ,  .false.     ,  .true.
-   tracer(23)  = 'NO3     ' , 'Nitrates Concentration                 ',  'mol-C/L' ,  .false.     ,  .true.
+   tracer(23)  = 'NO3     ' , 'Nitrates Concentration                 ',  'mol-C/L' ,  .true.      ,  .true.
    tracer(24)  = 'NH4     ' , 'Ammonium Concentration                 ',  'mol-C/L' ,  .false.     ,  .true.
 /
Index: CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/scripts/BB_make
===================================================================
--- CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/scripts/BB_make	(revision 943)
+++ CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v3/scripts/BB_make	(revision 944)
@@ -201,4 +201,5 @@
      key_vvl \
      key_zco \
+     key_zco \
      key_zdfcst \
      key_zdfddm \
@@ -212,4 +213,5 @@
 		$(MODEL_LIB)(lib_cray.o)\
 		$(MODEL_LIB)(lib_print.o)\
+		$(MODEL_LIB)(agrif_oce.o)\
 		$(MODEL_LIB)(agrif_opa_interp.o)\
 		$(MODEL_LIB)(agrif_opa_sponge.o)\
@@ -218,4 +220,5 @@
 		$(MODEL_LIB)(agrif_top_sponge.o)\
 		$(MODEL_LIB)(agrif_top_update.o)\
+		$(MODEL_LIB)(agrif_user.o)\
 		$(MODEL_LIB)(albedo.o)\
 		$(MODEL_LIB)(bdydta.o)\
@@ -476,5 +479,10 @@
 		$(MODEL_LIB)(trcopt.o)\
 		$(MODEL_LIB)(trcrad.o)\
+		$(MODEL_LIB)(trcrst_c14b.o)\
+		$(MODEL_LIB)(trcrst_cfc.o)\
 		$(MODEL_LIB)(trcrst.o)\
+		$(MODEL_LIB)(trcrst_lobster.o)\
+		$(MODEL_LIB)(trcrst_my_trc.o)\
+		$(MODEL_LIB)(trcrst_pisces.o)\
 		$(MODEL_LIB)(trcsbc.o)\
 		$(MODEL_LIB)(trcsed.o)\
@@ -690,16 +698,329 @@
 		@if [ -f $(PREF)$*.L ] ; then mv $(PREF)$*.L $(TMP) ; fi
 
+$(MODEL_LIB)(agrif_oce.o) :	\
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	par_kind.F90 \
+	par_oce.F90 \
+	dom_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	par_oce.F90 \
+	KEY_CPP \
+	agrif_oce.F90
 $(MODEL_LIB)(agrif_opa_interp.o) :	\
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	lib_print.f90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	par_kind.F90 \
+	par_oce.F90 \
+	agrif_oce.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	oce.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	sol_oce.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	$(AGRIF_LIB) \
+	KEY_CPP \
 	agrif_opa_interp.F90
 $(MODEL_LIB)(agrif_opa_sponge.o) :	\
+	dom_oce.F90 \
+	lib_print.f90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	par_kind.F90 \
+	par_oce.F90 \
+	agrif_oce.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	oce.F90 \
+	par_oce.F90 \
+	domzgr_substitute.h90 \
+	$(AGRIF_LIB) \
+	KEY_CPP \
 	agrif_opa_sponge.F90
 $(MODEL_LIB)(agrif_opa_update.o) :	\
+	bdy_oce.F90 \
+	cla_div.F90 \
+	diaar5.F90 \
+	divcur.F90 \
+	dom_oce.F90 \
+	domvvl.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	lbclnk.F90 \
+	lib_mpp.F90 \
+	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(cla_div.o) \
+	$(MODEL_LIB)(diaar5.o) \
+	$(MODEL_LIB)(divcur.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(domvvl.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(obc_oce.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(restart.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	obc_oce.F90 \
+	obc_par.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	restart.F90 \
+	sbc_oce.F90 \
+	agrif_oce.F90 \
+	cla_div.F90 \
+	divcur.F90 \
+	dom_oce.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(cla_div.o) \
+	$(MODEL_LIB)(divcur.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(sshwzv.o) \
+	oce.F90 \
+	par_oce.F90 \
+	sshwzv.F90 \
+	domzgr_substitute.h90 \
+	$(AGRIF_LIB) \
+	KEY_CPP \
 	agrif_opa_update.F90
 $(MODEL_LIB)(agrif_top_interp.o) :	\
+	dom_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(par_trc.o) \
+	par_kind.F90 \
+	par_oce.F90 \
+	par_trc.F90 \
+	agrif_oce.F90 \
+	dom_oce.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(trc.o) \
+	oce.F90 \
+	par_oce.F90 \
+	sol_oce.F90 \
+	trc.F90 \
+	domzgr_substitute.h90 \
+	vectopt_loop_substitute.h90 \
+	$(AGRIF_LIB) \
+	KEY_CPP \
 	agrif_top_interp.F90
 $(MODEL_LIB)(agrif_top_sponge.o) :	\
+	dom_oce.F90 \
+	lib_print.f90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(par_trc.o) \
+	par_kind.F90 \
+	par_oce.F90 \
+	par_trc.F90 \
+	agrif_oce.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(trc.o) \
+	oce.F90 \
+	par_oce.F90 \
+	trc.F90 \
+	domzgr_substitute.h90 \
+	$(AGRIF_LIB) \
+	KEY_CPP \
 	agrif_top_sponge.F90
 $(MODEL_LIB)(agrif_top_update.o) :	\
+	dom_oce.F90 \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(par_trc.o) \
+	par_kind.F90 \
+	par_oce.F90 \
+	par_trc.F90 \
+	agrif_oce.F90 \
+	dom_oce.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(trc.o) \
+	oce.F90 \
+	par_oce.F90 \
+	trc.F90 \
+	domzgr_substitute.h90 \
+	$(AGRIF_LIB) \
+	KEY_CPP \
 	agrif_top_update.F90
+$(MODEL_LIB)(agrif_user.o) :	\
+	agrif_oce.F90 \
+	bdyini.F90 \
+	bdy_par.F90 \
+	c1d.F90 \
+	cla_div.F90 \
+	cpl_oasis3.F90 \
+	cpl_oasis4.F90 \
+	diaptr.F90 \
+	divcur.F90 \
+	domain.F90 \
+	domcfg.F90 \
+	dom_oce.F90 \
+	dtasal.F90 \
+	dtatem.F90 \
+	dyncor_c1d.F90 \
+	dynhpg.F90 \
+	dynspg_oce.F90 \
+	eosbn2.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	istate.F90 \
+	ldfdyn.F90 \
+	ldftra.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(bdyini.o) \
+	$(MODEL_LIB)(bdy_par.o) \
+	$(MODEL_LIB)(c1d.o) \
+	$(MODEL_LIB)(cla_div.o) \
+	$(MODEL_LIB)(cpl_oasis3.o) \
+	$(MODEL_LIB)(cpl_oasis4.o) \
+	$(MODEL_LIB)(diaptr.o) \
+	$(MODEL_LIB)(divcur.o) \
+	$(MODEL_LIB)(domain.o) \
+	$(MODEL_LIB)(domcfg.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(dtasal.o) \
+	$(MODEL_LIB)(dtatem.o) \
+	$(MODEL_LIB)(dyncor_c1d.o) \
+	$(MODEL_LIB)(dynhpg.o) \
+	$(MODEL_LIB)(dynspg_oce.o) \
+	$(MODEL_LIB)(eosbn2.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(istate.o) \
+	$(MODEL_LIB)(ldfdyn.o) \
+	$(MODEL_LIB)(ldftra.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(mppini.o) \
+	$(MODEL_LIB)(obcini.o) \
+	$(MODEL_LIB)(obc_par.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(par_trc.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(prtctl.o) \
+	$(MODEL_LIB)(sbcmod.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(sshwzv.o) \
+	$(MODEL_LIB)(step_c1d.o) \
+	$(MODEL_LIB)(step.o) \
+	$(MODEL_LIB)(trcini.o) \
+	$(MODEL_LIB)(trc.o) \
+	$(MODEL_LIB)(trdmod.o) \
+	$(MODEL_LIB)(trdmod_oce.o) \
+	$(MODEL_LIB)(zdfini.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	mppini.F90 \
+	obcini.F90 \
+	obc_par.F90 \
+	oce.F90 \
+	par_kind.F90 \
+	par_oce.F90 \
+	par_trc.F90 \
+	phycst.F90 \
+	prtctl.F90 \
+	sbcmod.F90 \
+	sbc_oce.F90 \
+	sol_oce.F90 \
+	sshwzv.F90 \
+	step_c1d.F90 \
+	step.F90 \
+	trc.F90 \
+	trcini.F90 \
+	trdmod.F90 \
+	trdmod_oce.F90 \
+	zdfini.F90 \
+	zdfmxl.F90 \
+	zdf_oce.F90 \
+	agrif_oce.F90 \
+	agrif_opa_interp.F90 \
+	agrif_opa_sponge.F90 \
+	agrif_opa_update.F90 \
+	agrif_top_interp.F90 \
+	agrif_top_sponge.F90 \
+	agrif_top_update.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
+	$(MODEL_LIB)(agrif_opa_interp.o) \
+	$(MODEL_LIB)(agrif_opa_sponge.o) \
+	$(MODEL_LIB)(agrif_opa_update.o) \
+	$(MODEL_LIB)(agrif_top_interp.o) \
+	$(MODEL_LIB)(agrif_top_sponge.o) \
+	$(MODEL_LIB)(agrif_top_update.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(opa.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(tradmp.o) \
+	$(MODEL_LIB)(trc.o) \
+	oce.F90 \
+	opa.F90 \
+	par_oce.F90 \
+	sol_oce.F90 \
+	tradmp.F90 \
+	trc.F90 \
+	$(AGRIF_LIB) \
+	KEY_CPP \
+	agrif_user.F90
 $(MODEL_LIB)(albedo.o) :	\
 	in_out_manager.F90 \
@@ -3009,7 +3330,10 @@
 	dynnxt_c1d.F90
 $(MODEL_LIB)(dynnxt.o) :	\
+	agrif_oce.F90 \
 	bdy_oce.F90 \
 	bdy_par.F90 \
 	bdytides.F90 \
+	cla_div.F90 \
+	divcur.F90 \
 	dom_oce.F90 \
 	dynadv_cen2.F90 \
@@ -3024,7 +3348,10 @@
 	lib_mpp.F90 \
 	lib_print.f90 \
+	$(MODEL_LIB)(agrif_oce.o) \
 	$(MODEL_LIB)(bdy_oce.o) \
 	$(MODEL_LIB)(bdy_par.o) \
 	$(MODEL_LIB)(bdytides.o) \
+	$(MODEL_LIB)(cla_div.o) \
+	$(MODEL_LIB)(divcur.o) \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(dynadv_cen2.o) \
@@ -3046,4 +3373,6 @@
 	$(MODEL_LIB)(phycst.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(sshwzv.o) \
 	obc_oce.F90 \
 	obc_par.F90 \
@@ -3053,4 +3382,6 @@
 	phycst.F90 \
 	sbc_oce.F90 \
+	sol_oce.F90 \
+	sshwzv.F90 \
 	agrif_opa_interp.F90 \
 	agrif_opa_update.F90 \
@@ -3296,4 +3627,5 @@
 	dynspg.F90
 $(MODEL_LIB)(dynspg_flt.o) :	\
+	agrif_oce.F90 \
 	bdy_oce.F90 \
 	bdy_par.F90 \
@@ -3319,4 +3651,5 @@
 	lib_mpp.F90 \
 	lib_print.f90 \
+	$(MODEL_LIB)(agrif_oce.o) \
 	$(MODEL_LIB)(bdy_oce.o) \
 	$(MODEL_LIB)(bdy_par.o) \
@@ -6528,4 +6861,8 @@
 	trc.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	top_substitute.h90 \
+	vectopt_loop_substitute.h90 \
 	KEY_CPP \
 	p4zbio.F90
@@ -6570,4 +6907,8 @@
 	trc.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	top_substitute.h90 \
+	vectopt_loop_substitute.h90 \
 	KEY_CPP \
 	p4zche.F90
@@ -6644,4 +6985,8 @@
 	trc.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	top_substitute.h90 \
+	vectopt_loop_substitute.h90 \
 	KEY_CPP \
 	p4zflx.F90
@@ -6727,4 +7072,8 @@
 	trc.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	top_substitute.h90 \
+	vectopt_loop_substitute.h90 \
 	KEY_CPP \
 	p4zlim.F90
@@ -6862,4 +7211,8 @@
 	trc.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	top_substitute.h90 \
+	vectopt_loop_substitute.h90 \
 	KEY_CPP \
 	p4zmeso.F90
@@ -6936,4 +7289,8 @@
 	trc.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	top_substitute.h90 \
+	vectopt_loop_substitute.h90 \
 	KEY_CPP \
 	p4zmicro.F90
@@ -6992,4 +7349,8 @@
 	trc.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	top_substitute.h90 \
+	vectopt_loop_substitute.h90 \
 	KEY_CPP \
 	p4zmort.F90
@@ -7052,4 +7413,8 @@
 	trc_oce.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	top_substitute.h90 \
+	vectopt_loop_substitute.h90 \
 	KEY_CPP \
 	p4zopt.F90
@@ -7132,4 +7497,8 @@
 	trc.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	top_substitute.h90 \
+	vectopt_loop_substitute.h90 \
 	KEY_CPP \
 	p4zprod.F90
@@ -7206,4 +7575,8 @@
 	trc.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	top_substitute.h90 \
+	vectopt_loop_substitute.h90 \
 	KEY_CPP \
 	p4zrem.F90
@@ -7382,4 +7755,8 @@
 	trc.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	top_substitute.h90 \
+	vectopt_loop_substitute.h90 \
 	KEY_CPP \
 	p4zsink.F90
@@ -9704,4 +10081,5 @@
 	step_c1d.F90
 $(MODEL_LIB)(step.o) :	\
+	agrif_oce.F90 \
 	agrif_opa_interp.F90 \
 	agrif_opa_update.F90 \
@@ -9766,4 +10144,5 @@
 	lib_print.f90 \
 	limwri_2.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
 	$(MODEL_LIB)(agrif_opa_interp.o) \
 	$(MODEL_LIB)(agrif_opa_update.o) \
@@ -11559,5 +11938,8 @@
 	tranpc.F90
 $(MODEL_LIB)(tranxt.o) :	\
+	agrif_oce.F90 \
 	bdy_oce.F90 \
+	cla_div.F90 \
+	divcur.F90 \
 	dom_oce.F90 \
 	in_out_manager.F90 \
@@ -11567,5 +11949,8 @@
 	lib_mpp.F90 \
 	lib_print.f90 \
+	$(MODEL_LIB)(agrif_oce.o) \
 	$(MODEL_LIB)(bdy_oce.o) \
+	$(MODEL_LIB)(cla_div.o) \
+	$(MODEL_LIB)(divcur.o) \
 	$(MODEL_LIB)(dom_oce.o) \
 	$(MODEL_LIB)(in_out_manager.o) \
@@ -11582,4 +11967,6 @@
 	$(MODEL_LIB)(prtctl.o) \
 	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sol_oce.o) \
+	$(MODEL_LIB)(sshwzv.o) \
 	$(MODEL_LIB)(trdicp.o) \
 	$(MODEL_LIB)(trdicp_oce.o) \
@@ -11598,4 +11985,6 @@
 	prtctl.F90 \
 	sbc_oce.F90 \
+	sol_oce.F90 \
+	sshwzv.F90 \
 	trdicp.F90 \
 	trdicp_oce.F90 \
@@ -13511,7 +13900,11 @@
 	$(MODEL_LIB)(trclsm_pisces.o) \
 	$(MODEL_LIB)(trc.o) \
+	$(MODEL_LIB)(trcrst_c14b.o) \
+	$(MODEL_LIB)(trcrst_cfc.o) \
+	$(MODEL_LIB)(trcrst_lobster.o) \
+	$(MODEL_LIB)(trcrst_my_trc.o) \
+	$(MODEL_LIB)(trcrst_pisces.o) \
 	$(MODEL_LIB)(trcsms_c14b.o) \
 	$(MODEL_LIB)(trcsms_cfc.o) \
-	$(MODEL_LIB)(trcsms_my_trc.o) \
 	$(MODEL_LIB)(trctrp_ctl.o) \
 	$(MODEL_LIB)(trctrp_lec.o) \
@@ -13547,7 +13940,11 @@
 	trclsm_my_trc.F90 \
 	trclsm_pisces.F90 \
+	trcrst_c14b.F90 \
+	trcrst_cfc.F90 \
+	trcrst_lobster.F90 \
+	trcrst_my_trc.F90 \
+	trcrst_pisces.F90 \
 	trcsms_c14b.F90 \
 	trcsms_cfc.F90 \
-	trcsms_my_trc.F90 \
 	trctrp_ctl.F90 \
 	trctrp_lec.F90 \
@@ -14539,4 +14936,5 @@
 	trclsm_pisces.F90
 $(MODEL_LIB)(trcnxt.o) :	\
+	agrif_oce.F90 \
 	dianam.F90 \
 	dom_oce.F90 \
@@ -14547,4 +14945,5 @@
 	ldftra_oce.F90 \
 	lib_mpp.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
 	$(MODEL_LIB)(dianam.o) \
 	$(MODEL_LIB)(dom_oce.o) \
@@ -14565,4 +14964,5 @@
 	$(MODEL_LIB)(sms_lobster.o) \
 	$(MODEL_LIB)(sms_pisces.o) \
+	$(MODEL_LIB)(sol_oce.o) \
 	$(MODEL_LIB)(trabbl.o) \
 	$(MODEL_LIB)(traqsr.o) \
@@ -14585,4 +14985,5 @@
 	sms_lobster.F90 \
 	sms_pisces.F90 \
+	sol_oce.F90 \
 	trabbl.F90 \
 	traqsr.F90 \
@@ -14678,4 +15079,8 @@
 	trc.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	top_substitute.h90 \
+	vectopt_loop_substitute.h90 \
 	KEY_CPP \
 	trcopt.F90
@@ -14756,5 +15161,5 @@
 	KEY_CPP \
 	trcrad.F90
-$(MODEL_LIB)(trcrst.o) :	\
+$(MODEL_LIB)(trcrst_c14b.o) :	\
 	dianam.F90 \
 	domngb.F90 \
@@ -14767,8 +15172,8 @@
 	iom_rstdimg.F90 \
 	lbclnk.F90 \
-	lbcnfd.F90 \
 	ldfslp.F90 \
 	ldftra_oce.F90 \
 	lib_mpp.F90 \
+	lib_print.f90 \
 	$(MODEL_LIB)(dianam.o) \
 	$(MODEL_LIB)(domngb.o) \
@@ -14781,11 +15186,17 @@
 	$(MODEL_LIB)(iom_rstdimg.o) \
 	$(MODEL_LIB)(lbclnk.o) \
-	$(MODEL_LIB)(lbcnfd.o) \
 	$(MODEL_LIB)(ldfslp.o) \
 	$(MODEL_LIB)(ldftra_oce.o) \
 	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
 	$(MODEL_LIB)(oce.o) \
 	$(MODEL_LIB)(oce_trc.o) \
-	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(par_c14b.o) \
+	$(MODEL_LIB)(par_cfc.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_lobster.o) \
+	$(MODEL_LIB)(par_my_trc.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(par_pisces.o) \
 	$(MODEL_LIB)(par_trc.o) \
 	$(MODEL_LIB)(phycst.o) \
@@ -14797,5 +15208,4 @@
 	$(MODEL_LIB)(trdmld_trc.o) \
 	$(MODEL_LIB)(trdmld_trc_oce.o) \
-	$(MODEL_LIB)(trp_trc.o) \
 	$(MODEL_LIB)(zdfddm.o) \
 	$(MODEL_LIB)(zdfmxl.o) \
@@ -14803,5 +15213,11 @@
 	oce.F90 \
 	oce_trc.F90 \
-	par_oce.F90 \
+	par_c14b.F90 \
+	par_cfc.F90 \
+	par_kind.F90 \
+	par_lobster.F90 \
+	par_my_trc.F90 \
+	par_oce.F90 \
+	par_pisces.F90 \
 	par_trc.F90 \
 	phycst.F90 \
@@ -14813,4 +15229,173 @@
 	trdmld_trc.F90 \
 	trdmld_trc_oce.F90 \
+	zdfddm.F90 \
+	zdfmxl.F90 \
+	zdf_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(oce_trc.o) \
+	$(MODEL_LIB)(par_trc.o) \
+	$(MODEL_LIB)(trc.o) \
+	$(MODEL_LIB)(trcsms_c14b.o) \
+	oce_trc.F90 \
+	par_trc.F90 \
+	trc.F90 \
+	trcsms_c14b.F90 \
+	KEY_CPP \
+	trcrst_c14b.F90
+$(MODEL_LIB)(trcrst_cfc.o) :	\
+	dianam.F90 \
+	domngb.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom_def.F90 \
+	iom.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(domngb.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(oce_trc.o) \
+	$(MODEL_LIB)(par_c14b.o) \
+	$(MODEL_LIB)(par_cfc.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_lobster.o) \
+	$(MODEL_LIB)(par_my_trc.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(par_pisces.o) \
+	$(MODEL_LIB)(par_trc.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcrnf.o) \
+	$(MODEL_LIB)(trabbl.o) \
+	$(MODEL_LIB)(traqsr.o) \
+	$(MODEL_LIB)(trc.o) \
+	$(MODEL_LIB)(trdmld_trc.o) \
+	$(MODEL_LIB)(trdmld_trc_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	oce.F90 \
+	oce_trc.F90 \
+	par_c14b.F90 \
+	par_cfc.F90 \
+	par_kind.F90 \
+	par_lobster.F90 \
+	par_my_trc.F90 \
+	par_oce.F90 \
+	par_pisces.F90 \
+	par_trc.F90 \
+	phycst.F90 \
+	sbc_oce.F90 \
+	sbcrnf.F90 \
+	trabbl.F90 \
+	traqsr.F90 \
+	trc.F90 \
+	trdmld_trc.F90 \
+	trdmld_trc_oce.F90 \
+	zdfddm.F90 \
+	zdfmxl.F90 \
+	zdf_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(oce_trc.o) \
+	$(MODEL_LIB)(par_trc.o) \
+	$(MODEL_LIB)(trc.o) \
+	$(MODEL_LIB)(trcsms_cfc.o) \
+	oce_trc.F90 \
+	par_trc.F90 \
+	trc.F90 \
+	trcsms_cfc.F90 \
+	KEY_CPP \
+	trcrst_cfc.F90
+$(MODEL_LIB)(trcrst.o) :	\
+	dianam.F90 \
+	domngb.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom_def.F90 \
+	iom.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	lbcnfd.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(domngb.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(lbcnfd.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(oce_trc.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(par_trc.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcrnf.o) \
+	$(MODEL_LIB)(sms_lobster.o) \
+	$(MODEL_LIB)(sms_pisces.o) \
+	$(MODEL_LIB)(trabbl.o) \
+	$(MODEL_LIB)(traqsr.o) \
+	$(MODEL_LIB)(trcdta.o) \
+	$(MODEL_LIB)(trc.o) \
+	$(MODEL_LIB)(trcsms_c14b.o) \
+	$(MODEL_LIB)(trcsms_cfc.o) \
+	$(MODEL_LIB)(trcsms_lobster.o) \
+	$(MODEL_LIB)(trcsms_pisces.o) \
+	$(MODEL_LIB)(trp_trc.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	oce.F90 \
+	oce_trc.F90 \
+	par_oce.F90 \
+	par_trc.F90 \
+	phycst.F90 \
+	sbc_oce.F90 \
+	sbcrnf.F90 \
+	sms_lobster.F90 \
+	sms_pisces.F90 \
+	trabbl.F90 \
+	traqsr.F90 \
+	trcdta.F90 \
+	trc.F90 \
+	trcsms_c14b.F90 \
+	trcsms_cfc.F90 \
+	trcsms_lobster.F90 \
+	trcsms_pisces.F90 \
 	trp_trc.F90 \
 	zdfddm.F90 \
@@ -14822,18 +15407,18 @@
 	$(MODEL_LIB)(lib_mpp.o) \
 	$(MODEL_LIB)(oce_trc.o) \
-	$(MODEL_LIB)(sms_lobster.o) \
-	$(MODEL_LIB)(sms_pisces.o) \
 	$(MODEL_LIB)(trc.o) \
-	$(MODEL_LIB)(trcsms_c14b.o) \
-	$(MODEL_LIB)(trcsms_cfc.o) \
-	$(MODEL_LIB)(trcsms_my_trc.o) \
+	$(MODEL_LIB)(trcrst_c14b.o) \
+	$(MODEL_LIB)(trcrst_cfc.o) \
+	$(MODEL_LIB)(trcrst_lobster.o) \
+	$(MODEL_LIB)(trcrst_my_trc.o) \
+	$(MODEL_LIB)(trcrst_pisces.o) \
 	$(MODEL_LIB)(trctrp_lec.o) \
 	oce_trc.F90 \
-	sms_lobster.F90 \
-	sms_pisces.F90 \
 	trc.F90 \
-	trcsms_c14b.F90 \
-	trcsms_cfc.F90 \
-	trcsms_my_trc.F90 \
+	trcrst_c14b.F90 \
+	trcrst_cfc.F90 \
+	trcrst_lobster.F90 \
+	trcrst_my_trc.F90 \
+	trcrst_pisces.F90 \
 	trctrp_lec.F90 \
 	domzgr_substitute.h90 \
@@ -14844,4 +15429,205 @@
 	KEY_CPP \
 	trcrst.F90
+$(MODEL_LIB)(trcrst_lobster.o) :	\
+	dianam.F90 \
+	domngb.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom_def.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(domngb.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(oce_trc.o) \
+	$(MODEL_LIB)(par_c14b.o) \
+	$(MODEL_LIB)(par_cfc.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_lobster.o) \
+	$(MODEL_LIB)(par_my_trc.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(par_pisces.o) \
+	$(MODEL_LIB)(par_trc.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcrnf.o) \
+	$(MODEL_LIB)(trabbl.o) \
+	$(MODEL_LIB)(traqsr.o) \
+	$(MODEL_LIB)(trcbio.o) \
+	$(MODEL_LIB)(trcexp.o) \
+	$(MODEL_LIB)(trc.o) \
+	$(MODEL_LIB)(trcopt.o) \
+	$(MODEL_LIB)(trcsed.o) \
+	$(MODEL_LIB)(trdmld_trc.o) \
+	$(MODEL_LIB)(trdmld_trc_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	oce.F90 \
+	oce_trc.F90 \
+	par_c14b.F90 \
+	par_cfc.F90 \
+	par_kind.F90 \
+	par_lobster.F90 \
+	par_my_trc.F90 \
+	par_oce.F90 \
+	par_pisces.F90 \
+	par_trc.F90 \
+	phycst.F90 \
+	sbc_oce.F90 \
+	sbcrnf.F90 \
+	trabbl.F90 \
+	traqsr.F90 \
+	trcbio.F90 \
+	trcexp.F90 \
+	trc.F90 \
+	trcopt.F90 \
+	trcsed.F90 \
+	trdmld_trc.F90 \
+	trdmld_trc_oce.F90 \
+	zdfddm.F90 \
+	zdfmxl.F90 \
+	zdf_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(oce_trc.o) \
+	$(MODEL_LIB)(par_trc.o) \
+	$(MODEL_LIB)(sms_lobster.o) \
+	$(MODEL_LIB)(trc.o) \
+	$(MODEL_LIB)(trcsms_lobster.o) \
+	oce_trc.F90 \
+	par_trc.F90 \
+	sms_lobster.F90 \
+	trc.F90 \
+	trcsms_lobster.F90 \
+	KEY_CPP \
+	trcrst_lobster.F90
+$(MODEL_LIB)(trcrst_my_trc.o) :	\
+	KEY_CPP \
+	trcrst_my_trc.F90
+$(MODEL_LIB)(trcrst_pisces.o) :	\
+	dianam.F90 \
+	domngb.F90 \
+	dom_oce.F90 \
+	in_out_manager.F90 \
+	iom_def.F90 \
+	iom.F90 \
+	iom_ioipsl.F90 \
+	iom_nf90.F90 \
+	iom_rstdimg.F90 \
+	lbclnk.F90 \
+	ldfslp.F90 \
+	ldftra_oce.F90 \
+	lib_mpp.F90 \
+	lib_print.f90 \
+	$(MODEL_LIB)(dianam.o) \
+	$(MODEL_LIB)(domngb.o) \
+	$(MODEL_LIB)(dom_oce.o) \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom_def.o) \
+	$(MODEL_LIB)(iom_ioipsl.o) \
+	$(MODEL_LIB)(iom_nf90.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(iom_rstdimg.o) \
+	$(MODEL_LIB)(lbclnk.o) \
+	$(MODEL_LIB)(ldfslp.o) \
+	$(MODEL_LIB)(ldftra_oce.o) \
+	$(MODEL_LIB)(lib_mpp.o) \
+	$(MODEL_LIB)(lib_print.o) \
+	$(MODEL_LIB)(oce.o) \
+	$(MODEL_LIB)(oce_trc.o) \
+	$(MODEL_LIB)(p4zbio.o) \
+	$(MODEL_LIB)(p4zche.o) \
+	$(MODEL_LIB)(p4zflx.o) \
+	$(MODEL_LIB)(p4zint.o) \
+	$(MODEL_LIB)(p4zlys.o) \
+	$(MODEL_LIB)(p4zsed.o) \
+	$(MODEL_LIB)(par_c14b.o) \
+	$(MODEL_LIB)(par_cfc.o) \
+	$(MODEL_LIB)(par_kind.o) \
+	$(MODEL_LIB)(par_lobster.o) \
+	$(MODEL_LIB)(par_my_trc.o) \
+	$(MODEL_LIB)(par_oce.o) \
+	$(MODEL_LIB)(par_pisces.o) \
+	$(MODEL_LIB)(par_trc.o) \
+	$(MODEL_LIB)(phycst.o) \
+	$(MODEL_LIB)(sbc_oce.o) \
+	$(MODEL_LIB)(sbcrnf.o) \
+	$(MODEL_LIB)(sedmodel.o) \
+	$(MODEL_LIB)(sms_pisces.o) \
+	$(MODEL_LIB)(trabbl.o) \
+	$(MODEL_LIB)(traqsr.o) \
+	$(MODEL_LIB)(trc.o) \
+	$(MODEL_LIB)(trdmld_trc.o) \
+	$(MODEL_LIB)(trdmld_trc_oce.o) \
+	$(MODEL_LIB)(zdfddm.o) \
+	$(MODEL_LIB)(zdfmxl.o) \
+	$(MODEL_LIB)(zdf_oce.o) \
+	oce.F90 \
+	oce_trc.F90 \
+	p4zbio.F90 \
+	p4zche.F90 \
+	p4zflx.F90 \
+	p4zint.F90 \
+	p4zlys.F90 \
+	p4zsed.F90 \
+	par_c14b.F90 \
+	par_cfc.F90 \
+	par_kind.F90 \
+	par_lobster.F90 \
+	par_my_trc.F90 \
+	par_oce.F90 \
+	par_pisces.F90 \
+	par_trc.F90 \
+	phycst.F90 \
+	sbc_oce.F90 \
+	sbcrnf.F90 \
+	sedmodel.F90 \
+	sms_pisces.F90 \
+	trabbl.F90 \
+	traqsr.F90 \
+	trc.F90 \
+	trdmld_trc.F90 \
+	trdmld_trc_oce.F90 \
+	zdfddm.F90 \
+	zdfmxl.F90 \
+	zdf_oce.F90 \
+	in_out_manager.F90 \
+	iom.F90 \
+	$(MODEL_LIB)(in_out_manager.o) \
+	$(MODEL_LIB)(iom.o) \
+	$(MODEL_LIB)(oce_trc.o) \
+	$(MODEL_LIB)(par_trc.o) \
+	$(MODEL_LIB)(sms_pisces.o) \
+	$(MODEL_LIB)(trcdta.o) \
+	$(MODEL_LIB)(trc.o) \
+	$(MODEL_LIB)(trcsms_pisces.o) \
+	oce_trc.F90 \
+	par_trc.F90 \
+	sms_pisces.F90 \
+	trcdta.F90 \
+	trc.F90 \
+	trcsms_pisces.F90 \
+	KEY_CPP \
+	trcrst_pisces.F90
 $(MODEL_LIB)(trcsbc.o) :	\
 	dianam.F90 \
@@ -15000,4 +15786,8 @@
 	trdmld_trc_oce.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	top_substitute.h90 \
+	vectopt_loop_substitute.h90 \
 	KEY_CPP \
 	trcsed.F90
@@ -15618,4 +16408,9 @@
 	$(MODEL_LIB)(trc.o) \
 	$(MODEL_LIB)(trcrad.o) \
+	$(MODEL_LIB)(trcrst_c14b.o) \
+	$(MODEL_LIB)(trcrst_cfc.o) \
+	$(MODEL_LIB)(trcrst_lobster.o) \
+	$(MODEL_LIB)(trcrst_my_trc.o) \
+	$(MODEL_LIB)(trcrst_pisces.o) \
 	$(MODEL_LIB)(trcsbc.o) \
 	$(MODEL_LIB)(trcsms_c14b.o) \
@@ -15665,4 +16460,9 @@
 	trcnxt.F90 \
 	trcrad.F90 \
+	trcrst_c14b.F90 \
+	trcrst_cfc.F90 \
+	trcrst_lobster.F90 \
+	trcrst_my_trc.F90 \
+	trcrst_pisces.F90 \
 	trcsbc.F90 \
 	trcsms_c14b.F90 \
@@ -15757,4 +16557,5 @@
 	trctrp_ctl.F90
 $(MODEL_LIB)(trctrp.o) :	\
+	agrif_oce.F90 \
 	agrif_top_interp.F90 \
 	agrif_top_update.F90 \
@@ -15767,4 +16568,5 @@
 	ldftra_oce.F90 \
 	lib_mpp.F90 \
+	$(MODEL_LIB)(agrif_oce.o) \
 	$(MODEL_LIB)(agrif_top_interp.o) \
 	$(MODEL_LIB)(agrif_top_update.o) \
@@ -15870,4 +16672,8 @@
 	zpshde_trc.F90 \
 	domzgr_substitute.h90 \
+	ldfeiv_substitute.h90 \
+	ldftra_substitute.h90 \
+	top_substitute.h90 \
+	vectopt_loop_substitute.h90 \
 	$(AGRIF_LIB) \
 	KEY_CPP \
