diff --git a/src/LIB/SURCOUCHE/src/mode_io_manage_struct.f90 b/src/LIB/SURCOUCHE/src/mode_io_manage_struct.f90
index 84bb172aa144ef0103d988dcaf43e6d329546b7e..45e3c0054be93125a0745fb8d275a527e6e8b90e 100644
--- a/src/LIB/SURCOUCHE/src/mode_io_manage_struct.f90
+++ b/src/LIB/SURCOUCHE/src/mode_io_manage_struct.f90
@@ -55,13 +55,14 @@ SUBROUTINE IO_Bakout_struct_prepare( KSUP, PSEGLEN )
 !###################################################
 !
 USE MODD_BAKOUT
-USE MODD_CONF,       ONLY: NMODEL
-USE MODD_DYN,        ONLY: XSEGLEN
-USE MODD_DYN_n,      ONLY: DYN_MODEL
-USE MODD_FIELD,      ONLY: TFIELDLIST
-USE MODD_NESTING,    ONLY: NDAD
-USE MODD_OUT_n,      ONLY: OUT_MODEL
-USE MODD_VAR_ll,     ONLY: IP
+USE MODD_CONF,        ONLY: NMODEL
+USE MODD_DYN,         ONLY: XSEGLEN
+USE MODD_DYN_n,       ONLY: DYN_MODEL
+USE MODD_FIELD,       ONLY: TFIELDLIST
+USE MODD_NESTING,     ONLY: NDAD
+USE MODD_SUB_MODEL_N, ONLY: NFILE_BACKUP_CURRENT, NFILE_OUTPUT_CURRENT, SUB_MODEL_MODEL
+USE MODD_OUT_n,       ONLY: OUT_GOTO_MODEL, OUT_MODEL
+USE MODD_VAR_ll,      ONLY: IP
 
 use mode_field, only: Find_field_id_from_mnhname
 
@@ -587,6 +588,11 @@ DEALLOCATE(XBAK_TIME)
 DEALLOCATE(XOUT_TIME)
 DEALLOCATE(COUT_VAR)
 !
+! Set/initialize the pointers (necessary to use them now without OUT_MODEL(1)%...)
+CALL OUT_GOTO_MODEL( 1, 1 )
+NFILE_BACKUP_CURRENT => SUB_MODEL_MODEL(1)%NFILE_BACKUP_CURRENT
+NFILE_OUTPUT_CURRENT => SUB_MODEL_MODEL(1)%NFILE_OUTPUT_CURRENT
+!
 CONTAINS
 !
 !#########################################################################
@@ -738,7 +744,7 @@ FUNCTION IO_Is_backup_time( KMI, KTCOUNT, KNUMBAK ) RESULT( OBAK )
   KNUMBAK = NNEGUNDEF
 
   ! No more backups to do
-  IF ( NFILE_BACKUP_CURRENT >= OUT_MODEL(KMI)%NBAK_NUMB ) RETURN
+  IF ( NFILE_BACKUP_CURRENT >= NBAK_NUMB ) RETURN
 
   ! Check if it is time for a regular backup
   IF ( NBAK_STEPFREQ > 0 .AND. KTCOUNT >= NBAK_STEPFREQFIRST ) THEN
@@ -782,7 +788,7 @@ FUNCTION IO_Is_output_time( KMI, KTCOUNT, KNUMOUT ) RESULT( OOUT )
   KNUMOUT = NNEGUNDEF
 
   ! No more outputs to do
-  IF ( NFILE_OUTPUT_CURRENT >= OUT_MODEL(KMI)%NOUT_NUMB ) RETURN
+  IF ( NFILE_OUTPUT_CURRENT >= NOUT_NUMB ) RETURN
 
   ! Check if it is time for a regular output
   IF ( NOUT_STEPFREQ > 0 .AND. KTCOUNT >= NOUT_STEPFREQFIRST ) THEN