      subroutine exchange_r2d_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_r2d_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_r2d_tile(Istr,Iend,Jstr,Jend,A, Agrif_tab
     &vars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvars_l(1
     &1)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%iarra
     &y0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, Agrif
     &_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_r2d_tile.h"
      subroutine exchange_r2d_3pts_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_r2d_3pts_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_r2d_3pts_tile(Istr,Iend,Jstr,Jend,A, Agri
     &f_tabvars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvar
     &s_l(11)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%
     &iarray0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, 
     &Agrif_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_r2d_3pts_tile.h"
      subroutine exchange_u2d_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_u2d_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_u2d_tile(Istr,Iend,Jstr,Jend,A, Agrif_tab
     &vars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvars_l(1
     &1)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%iarra
     &y0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, Agrif
     &_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_u2d_tile.h"
      subroutine exchange_u2d_3pts_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_u2d_3pts_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_u2d_3pts_tile(Istr,Iend,Jstr,Jend,A, Agri
     &f_tabvars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvar
     &s_l(11)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%
     &iarray0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, 
     &Agrif_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_u2d_3pts_tile.h"
      subroutine exchange_v2d_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_v2d_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_v2d_tile(Istr,Iend,Jstr,Jend,A, Agrif_tab
     &vars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvars_l(1
     &1)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%iarra
     &y0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, Agrif
     &_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_v2d_tile.h"
      subroutine exchange_v2d_3pts_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_v2d_3pts_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_v2d_3pts_tile(Istr,Iend,Jstr,Jend,A, Agri
     &f_tabvars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvar
     &s_l(11)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%
     &iarray0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, 
     &Agrif_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_v2d_3pts_tile.h"
      subroutine exchange_p2d_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_p2d_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_p2d_tile(Istr,Iend,Jstr,Jend,A, Agrif_tab
     &vars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvars_l(1
     &1)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%iarra
     &y0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, Agrif
     &_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_p2d_tile.h"
      subroutine exchange_p2d_3pts_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_p2d_3pts_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_p2d_3pts_tile(Istr,Iend,Jstr,Jend,A, Agri
     &f_tabvars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvar
     &s_l(11)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%
     &iarray0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, 
     &Agrif_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_p2d_3pts_tile.h"
      subroutine exchange_r3d_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_r3d_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0,1:N) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_r3d_tile(Istr,Iend,Jstr,Jend,A, Agrif_tab
     &vars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvars_l(1
     &1)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%iarra
     &y0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, Agrif
     &_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_r3d_tile.h"
      subroutine exchange_r3d_3pts_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_r3d_3pts_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0,1:N) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_r3d_3pts_tile(Istr,Iend,Jstr,Jend,A, Agri
     &f_tabvars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvar
     &s_l(11)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%
     &iarray0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, 
     &Agrif_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_r3d_3pts_tile.h"
      subroutine exchange_u3d_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_u3d_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0,1:N) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_u3d_tile(Istr,Iend,Jstr,Jend,A, Agrif_tab
     &vars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvars_l(1
     &1)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%iarra
     &y0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, Agrif
     &_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_u3d_tile.h"
      subroutine exchange_u3d_3pts_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_u3d_3pts_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0,1:N) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_u3d_3pts_tile(Istr,Iend,Jstr,Jend,A, Agri
     &f_tabvars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvar
     &s_l(11)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%
     &iarray0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, 
     &Agrif_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_u3d_3pts_tile.h"
      subroutine exchange_v3d_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_v3d_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0,1:N) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_v3d_tile(Istr,Iend,Jstr,Jend,A, Agrif_tab
     &vars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvars_l(1
     &1)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%iarra
     &y0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, Agrif
     &_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_v3d_tile.h"
      subroutine exchange_v3d_3pts_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_v3d_3pts_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0,1:N) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_v3d_3pts_tile(Istr,Iend,Jstr,Jend,A, Agri
     &f_tabvars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvar
     &s_l(11)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%
     &iarray0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, 
     &Agrif_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_v3d_3pts_tile.h"
      subroutine exchange_p3d_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_p3d_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0,1:N) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_p3d_tile(Istr,Iend,Jstr,Jend,A, Agrif_tab
     &vars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvars_l(1
     &1)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%iarra
     &y0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, Agrif
     &_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_p3d_tile.h"
      subroutine exchange_p3d_3pts_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_p3d_3pts_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0,1:N) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_p3d_3pts_tile(Istr,Iend,Jstr,Jend,A, Agri
     &f_tabvars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvar
     &s_l(11)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%
     &iarray0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, 
     &Agrif_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_p3d_3pts_tile.h"
      subroutine exchange_w3d_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_w3d_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0,0:N) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_w3d_tile(Istr,Iend,Jstr,Jend,A, Agrif_tab
     &vars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvars_l(1
     &1)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%iarra
     &y0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, Agrif
     &_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_w3d_tile.h"
      subroutine exchange_w3d_3pts_tile (Istr,Iend,Jstr,Jend, A)      


      use Agrif_Util
#include "Param_BeforeCall_exchange_w3d_3pts_tile.h"
      real, dimension(-1: Agrif_tabvars_i(2)%iarray0+2+ Agrif_tabvars_i(
     &13)%iarray0,-1: Agrif_tabvars_i(4)%iarray0+2+ Agrif_tabvars_i(14)%
     &iarray0,0:N) :: A
      integer(4) :: Istr
      integer(4) :: Iend
      integer(4) :: Jstr
      integer(4) :: Jend
      

        call Sub_Loop_exchange_w3d_3pts_tile(Istr,Iend,Jstr,Jend,A, Agri
     &f_tabvars_l(13)%larray0, Agrif_tabvars_l(14)%larray0, Agrif_tabvar
     &s_l(11)%larray0, Agrif_tabvars_l(12)%larray0, Agrif_tabvars_i(14)%
     &iarray0, Agrif_tabvars_i(4)%iarray0, Agrif_tabvars_i(13)%iarray0, 
     &Agrif_tabvars_i(2)%iarray0)

      end


#include "Sub_Loop_exchange_w3d_3pts_tile.h"
