diff --git a/src/MNH/firemodel.f90 b/src/MNH/firemodel.f90
index 05565b73bfdcfc395900e836e9b0ff6d87b04184..1a8ce4139874325a59742a1c718e698f8e16cb44 100644
--- a/src/MNH/firemodel.f90
+++ b/src/MNH/firemodel.f90
@@ -52,14 +52,6 @@ SUBROUTINE FIRE_GRADPHI( PLSPHI, PGRADLSPHIX, PGRADLSPHIY )
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_PARAMETERS
-  USE MODD_CST
-  !
-  USE MODD_FIRE_n
-  !
-  USE MODE_MPPDB
-  USE MODD_TIME_n, ONLY : TDTCUR
-  !
   IMPLICIT NONE
   !
   !*       0.1  Declarations of arguments
@@ -204,14 +196,8 @@ SUBROUTINE FIRE_PROPAGATE( PLSPHI, PBMAP, PFMIGNITION, PFMWALKIG, PGRADLSPHIX, P
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_PARAMETERS
-  USE MODD_CST
-  
-  USE MODD_FIRE_n
-  USE MODD_TIME_n, ONLY : TDTCUR
   USE MODD_LUNIT_n, ONLY: TLUOUT
-  
-  USE MODE_MPPDB
+  USE MODD_TIME_n,  ONLY: TDTCUR
   
   IMPLICIT NONE
   
@@ -355,11 +341,7 @@ SUBROUTINE FIRE_NOWINDROS( PFIREFUELMAP, PFMR0, PFMRFA, PFMWF0, PFMR00, PFMFUELT
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_PARAMETERS
-  USE MODD_CST, ONLY : XSTEFAN
-  USE MODD_CONF, ONLY: CCONF
-  USE MODE_MPPDB
-  USE MODD_FIRE_n
+  USE MODD_CST, ONLY: XSTEFAN
   
   IMPLICIT NONE
   
@@ -670,16 +652,7 @@ SUBROUTINE FIRE_GETWIND( PUT, PVT, PWT, PGRADLSPHIX, PGRADLSPHIY, PFIREWIND, KTC
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_CONF,    ONLY: CCONF
-  USE MODD_FIRE_n
-  USE MODD_GRID_n,  ONLY: XXHAT,XYHAT
-  !
-  USE MODI_SHUMAN,  ONLY: MXF, MYF
-  !
-  USE MODE_MPPDB
-
-  ! tmp use
-  USE MODD_TIME_n,     ONLY : TDTCUR
+  USE MODI_SHUMAN, ONLY: MXF, MYF
   !
   IMPLICIT NONE
   !
@@ -932,10 +905,6 @@ SUBROUTINE FIRE_RATEOFSPREAD( PFMFUELTYPE, PFMR0, PFMRFA, PFMWF0, PFMR00, PFIREW
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_FIRE_n
-  USE MODE_MPPDB
-  USE MODD_TIME_n, ONLY : TDTCUR
-
   IMPLICIT NONE
   !*       0.1  Declarations of arguments
   !!        -------------------------
@@ -1091,10 +1060,7 @@ SUBROUTINE FIRE_HEATFLUXES( PLSPHI, PBMAP, PFIRETAU, PATMDT, PFLUXPARAMH, PFLUXP
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_FIRE_n
-  USE MODD_TIME_n, ONLY : TDTCUR
-  !
-  USE MODE_MPPDB
+  USE MODD_TIME_n, ONLY: TDTCUR
   !
   IMPLICIT NONE
   !
@@ -1353,13 +1319,9 @@ SUBROUTINE FIRE_VERTICALFLUXDISTRIB( PFMFLUXHDH, PFMFLUXHDW, PRTHS, PRRS, PSFTS,
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_CST
-  USE MODD_FIRE_n
-  USE MODD_TIME_n, ONLY : TDTCUR
-  USE MODD_GRID_n, ONLY : XZS, XZZ
-  USE MODD_NSV
-  !
-  USE MODE_MPPDB
+  USE MODD_CST,    ONLY: XCPD, XCPV
+  USE MODD_GRID_n, ONLY: XZZ
+  USE MODD_NSV,    ONLY: NSV_FIRE, NSV_FIREBEG
   !
   IMPLICIT NONE
   !
@@ -1530,13 +1492,13 @@ SUBROUTINE FIRE_READFUEL( TPFILE, PFIREFUELMAP, PFMIGNITION, PFMWALKIG )
   !!             ============
   !
   USE MODD_FIELD,            ONLY: NMNHDIM_NI, NMNHDIM_NJ, NMNHDIM_NOTLISTED, TFIELDMETADATA, TYPEREAL
-  USE MODD_FIRE_n,           ONLY: NFIREENTRIES
   USE MODD_IO,               ONLY: TFILEDATA
+  USE MODD_LUNIT_n,          ONLY: TLUOUT
+  USE MODD_PARAMETERS,       ONLY: NMNHNAMELGTMAX, NUNITLGTMAX
+
   USE MODE_IO_FIELD_READ,    ONLY: IO_Field_read
   USE MODE_IO_FILE,          ONLY: IO_File_close, IO_File_open
   USE MODE_IO_MANAGE_STRUCT, ONLY: IO_FILE_ADD2LIST
-  USE MODD_LUNIT_n,          ONLY: TLUOUT
-  USE MODD_PARAMETERS,       ONLY: NMNHNAMELGTMAX, NUNITLGTMAX
   !
   IMPLICIT NONE
   !
@@ -1692,12 +1654,12 @@ SUBROUTINE FIRE_READBMAP(TPFILE, PBMAP)
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_FIRE_n,           ONLY: CBMAPFILE
   USE MODD_IO,               ONLY: TFILEDATA
+  USE MODD_LUNIT_n,          ONLY: TLUOUT
+
   USE MODE_IO_FIELD_READ,    ONLY: IO_Field_read
   USE MODE_IO_FILE,          ONLY: IO_File_close, IO_File_open
   USE MODE_IO_MANAGE_STRUCT, ONLY: IO_FILE_ADD2LIST
-  USE MODD_LUNIT_n,          ONLY: TLUOUT
   !
   IMPLICIT NONE
   !
@@ -1773,18 +1735,14 @@ SUBROUTINE FIRE_RK( PLSPHI, PLSPHI1, PGRADLSPHIX, PGRADLSPHIY, PFIRERW, PFIREDT
   !*       0.    DECLARATIONS
   !              ------------
   !
-  USE MODE_ll
-  USE MODD_ARGSLIST_ll, ONLY : LIST_ll, HALO2LIST_ll
-  USE MODD_PARAMETERS,  ONLY : JPVEXT
-  USE MODD_CONF,        ONLY : NHALO
-  USE MODD_LUNIT_n,        ONLY: TLUOUT
-  USE MODD_PRECISION,      ONLY: MNHTIME
+  USE MODD_ARGSLIST_ll, ONLY: LIST_ll
+  USE MODE_EXCHANGE_ll, ONLY: UPDATE_HALO_ll
+  USE MODD_LUNIT_n,     ONLY: TLUOUT
+  USE MODD_PRECISION,   ONLY: MNHTIME
   !
-  USE MODI_GET_HALO
-  USE MODE_MPPDB
+  USE MODE_ARGSLIST_ll, ONLY: ADD3DFIELD_ll, CLEANLIST_ll
+  use MODE_MNH_TIMING,  ONLY: SECOND_MNH2
   USE MODE_MSG
-  USE MODD_FIRE_n
-  use MODE_MNH_TIMING,  ONLY : SECOND_MNH2
   !
   IMPLICIT NONE
   !
@@ -2043,14 +2001,6 @@ SUBROUTINE FIRE_WENO_1( PLSPHI2D, PGRADLSPHIX2D, PGRADLSPHIY2D, PGRADMASKX, PGRA
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_PARAMETERS
-  USE MODD_CST
-  !
-  USE MODD_FIRE_n
-  USE MODD_TIME_n, ONLY : TDTCUR
-  !
-  USE MODE_MPPDB
-  !
   IMPLICIT NONE
   !
   !*       0.1  Declarations of arguments
@@ -2130,13 +2080,6 @@ SUBROUTINE FIRE_GRADMASK( PLSPHI2D, PGRADMASKX, PGRADMASKY, KMASKORDER )
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_PARAMETERS
-  USE MODD_CST
-  USE MODD_FIRE_n
-  USE MODD_TIME_n, ONLY : TDTCUR
-  !
-  USE MODE_MPPDB
-  !
   IMPLICIT NONE
   !
   !*       0.1  Declarations of arguments
@@ -2233,14 +2176,6 @@ SUBROUTINE FIRE_WENO_3( PLSPHI2D, PGRADLSPHIX2D, PGRADLSPHIY2D, PGRADMASKX, PGRA
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_PARAMETERS
-  USE MODD_CST
-  !
-  USE MODD_FIRE_n
-  USE MODD_TIME_n, ONLY : TDTCUR
-  !
-  USE MODE_MPPDB
-  !
   IMPLICIT NONE
   !
   !*       0.1  Declarations of arguments
@@ -2542,14 +2477,6 @@ SUBROUTINE FIRE_LSDIFFU( PLSPHI, PLSDIFFUX, PLSDIFFUY )
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_PARAMETERS
-  USE MODD_CST
-  !
-  USE MODD_FIRE_n
-  !
-  USE MODE_MPPDB
-  USE MODD_TIME_n, ONLY : TDTCUR
-  !
   IMPLICIT NONE
   !
   !*       0.1  Declarations of arguments
@@ -2680,14 +2607,6 @@ SUBROUTINE FIRE_ROSDIFFU( PFIRERW )
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_PARAMETERS
-  USE MODD_CST
-  !
-  USE MODD_FIRE_n
-  !
-  USE MODE_MPPDB
-  USE MODD_TIME_n, ONLY : TDTCUR
-  !
   IMPLICIT NONE
   !
   !*       0.1  Declarations of arguments
@@ -2823,11 +2742,6 @@ SUBROUTINE FIRE_SUBGRIDSURFACE( PLSPHI2D, PSURFRATIO2D )
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_FIRE_n
-  USE MODD_TIME_n, ONLY : TDTCUR
-  !
-  USE MODE_MPPDB
-  !
   IMPLICIT NONE
   !
   !*       0.1  Declarations of arguments
@@ -2950,11 +2864,6 @@ SUBROUTINE FIRE_QUANDRANTSURFACE( PPHI1, PPHI2, PPHI3, PPHI4, PSURFRATIO2D )
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_FIRE_n
-  USE MODD_TIME_n, ONLY : TDTCUR
-  !
-  USE MODE_MPPDB
-  !
   IMPLICIT NONE
   !
   !*       0.1  Declarations of arguments
@@ -3127,9 +3036,6 @@ FUNCTION FIRE_SURF_68( PPHI1, PPHI2, PPHI3, PPHI4 ) RESULT( PSURF )
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_FIRE_n
-  USE MODE_MPPDB
-  !
   IMPLICIT NONE
   !
   !*       0.1  Declarations of arguments
@@ -3167,9 +3073,6 @@ FUNCTION FIRE_SURF_70( PPHI1, PPHI2, PPHI3, PPHI4 ) RESULT( PSURF )
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_FIRE_n
-  USE MODE_MPPDB
-  !
   IMPLICIT NONE
   !
   !*       0.1  Declarations of arguments
@@ -3210,9 +3113,6 @@ FUNCTION FIRE_SURF_22( PPHI1, PPHI2, PPHI3, PPHI4 ) RESULT( PSURF )
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_FIRE_n
-  USE MODE_MPPDB
-
   IMPLICIT NONE
 
   !*       0.1  Declarations of arguments
@@ -3253,10 +3153,6 @@ FUNCTION FIRE_SURF_28( PPHI1, PPHI2, PPHI3, PPHI4 ) RESULT( PSURF )
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_FIRE_n
-  !
-  USE MODE_MPPDB
-  !
   IMPLICIT NONE
   !
   !*       0.1  Declarations of arguments
@@ -3312,10 +3208,7 @@ SUBROUTINE FIRE_LS_RECONSTRUCTION_FROM_BMAP( PLSPHI, PBMAP, PATMDT )
   !
   !*       0.    DECLARATIONS
   !
-  USE MODD_FIRE_n
-  USE MODD_TIME_n, ONLY : TDTCUR
-  !
-  USE MODE_MPPDB
+  USE MODD_TIME_n, ONLY: TDTCUR
   !
   IMPLICIT NONE
   !
@@ -3392,10 +3285,6 @@ SUBROUTINE FIRE_GRAD_OROGRAPHY( PZS, PFMGRADOROX, PFMGRADOROY )
   !
   !*       0.    DECLARATIONS
   !
-  USE MODD_FIRE_n,  ONLY: XFIREMESHSIZE, NREFINX, NREFINY
-  !
-  USE MODE_MPPDB
-  !
   IMPLICIT NONE
   !
   !*      0.1  Declarations of arguments
@@ -3645,9 +3534,6 @@ FUNCTION FGET_I(PLINDEX,PMINDEX) RESULT(POUTINDEX)
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_FIRE_n, ONLY : NREFINX,NREFINY
-  USE MODE_MPPDB
-  !
   IMPLICIT NONE
   !
   !*       0.1  Declarations of arguments
@@ -3691,9 +3577,6 @@ FUNCTION FGET_J(PLINDEX,PMINDEX) RESULT(POUTINDEX)
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_FIRE_n, ONLY : NREFINX,NREFINY
-  USE MODE_MPPDB
-  !
   IMPLICIT NONE
   !
   !*       0.1  Declarations of arguments
@@ -3736,9 +3619,6 @@ FUNCTION FGET_K(PLINDEX,PMINDEX) RESULT(POUTINDEX)
   !*       0.    DECLARATIONS
   !!             ============
   !
-  USE MODD_FIRE_n, ONLY : NREFINX,NREFINY
-  USE MODE_MPPDB
-  !
   IMPLICIT NONE
   !
   !*       0.1  Declarations of arguments