include file: OARRYSIZ 75
!                                                                          OARRYSIZ.2      
! Define integer variables which are used in dimensioning arrays           OARRYSIZ.3      
! whose size and use is dependent on which logical switches                OARRYSIZ.4      
! are defined. (Typically, these are used in arrays whose use              OARRYSIZ.5      
! was controlled by *IFs prior to version 3.5 of the UM.                   OARRYSIZ.6      
!                                                                          OARRYSIZ.7      
      INTEGER MAX_SKP                                                      OARRYSIZ.8      
     &,  KM_SKP   ! No of columns for skip land                            OARRYSIZ.9      
     &,  JMT_SKP  ! No of rows for skip land                               OARRYSIZ.10     
     &,  KM_VTD   ! No of levels for variable timestep with depth          OARRYSIZ.11     
     &,  IMT_FLX  ! No of cols when L_FLUXCORR = true                      OARRYSIZ.12     
     &,  JMT_FLX  ! No of rows when L_FLUXCORR = true                      OARRYSIZ.13     
     &,  IMT_IHY  ! IMT for L_IHANEY                                       OARRYSIZ.14     
     &,  JMT_IHY  ! No of rows when L_IHANEY   = true                      OARRYSIZ.15     
     &,  IMT_PIIC_MIX ! No of cols (L_OPSEUDIC or L_SEAICE), L_OMIXLAY     OARRYSIZ.16     
     &,  ICOL_CYC ! No of columns dependent on cyclic conditions.          OARRYSIZ.17     
     &,  IFROM_CYC ! Start col index - depends on L_OCYCLIC                OARRYSIZ.18     
     &,  ITO_CYC    !  End col index - depends on L_OCYCLIC                OARRYSIZ.19     
     &,  IMT_SOLAL  ! No of cols for solar pen                             OARRYSIZ.20     
     &,  KM_SOLAL   ! No of levels for solar pen                           OARRYSIZ.21     
     &,  KM_NOSOLAL ! No of levels for no solar pen                        OARRYSIZ.22     
     &,  IMT_PIIC   ! No of cols for (L_OPSEUDIC or L_SEAICE)              OARRYSIZ.23     
                                                                           OARRYSIZ.24     
      INTEGER                                                              OARRYSIZ.25     
     &   IMT_ASM, JMT_ASM     ! Set if L_OCNASSM                           OARRYSIZ.26     
     &,  IMT_idr, JMTM1_idr, JMT_idr ! Set if L_ICEFREEDR                  ODC1F405.357    
     &,  IMT_RIC, KM_RIC        ! Set if L_ORICHARD                        OARRYSIZ.28     
     &,  IMT_GNU, KM_GNU                                                   OARRYSIZ.29     
     &,  IMU_GNUZ, KM_GNUZ                                                 OARRYSIZ.30     
     &,  IMT_VIS,JMT_VIS ! for visbeck scheme                              OLA2F403.7      
     &,  IMT_QLARGE  ! IMT for quadratic large scheme                      OLA3F403.10     
     &,  IMT_FULARGE ! IMT FOR FULL LARGE SCHEME                           OOM1F405.407    
     &,  IMTIMT_FLT   ! IMTIMT if L_OFILTER                                OARRYSIZ.31     
     &,  IMT_ROT       ! IMT if L_OROTATE else 1                           OARRYSIZ.32     
     &,  IMT_MIX       ! IMT if L_OMIXLAY else 1                           OARRYSIZ.33     
     &,  JMT_MIX       ! JMT if L_OMIXLAY else 1                           OARRYSIZ.34     
     &,  KM_MIX        ! KM  if L_OMIXLAY else 1                           OARRYSIZ.35     
     &,  IMT_NOMIX     ! IMT if NOT L_OMIXLAY, else 1                      OARRYSIZ.36     
     &,  IMT_drsa      ! IMT if L_ICESIMPLE or L_ICEFREEDR else 1          ODC1F405.358    
     &,  JMT_drsa      ! JMT if L_ICEESIMPLE or L_ICEFREEDR else 1         ODC1F405.359    
     &,  JMTM1_drsa    ! JMTM1 if L_ICESIMPLE or L_ICEFREEDR else 1        ODC1F405.360    
     &,  IMT_CLN       ! IMT if L_ONOCLIN = false else 1                   OARRYSIZ.40     
     &,  IMT_STREAM    ! IMT if L_ONOCLIN and L_OFREESFC = false else 1    OARRYSIZ.41     
     &,  JMT_STREAM    ! JMT if L_ONOCLIN and L_OFREESFC = false else 1    OARRYSIZ.42     
     &,  IMT_FSF       ! IMT if L_OFREESFC else 1                          OARRYSIZ.43     
     &,  JMT_FSF       ! JMT if L_OFREESFC else 1                          OARRYSIZ.44     
     &,  JMTM1_FSF     ! JMTM1 if L_OFREESFC else 1                        ORL1F404.127    
     &,  IMT_IPD_MIX   ! IMT if L_OMIXLAY and L_OISOPYC                    OARRYSIZ.45     
     &,  JMT_IPD_MIX   ! JMT if L_OMIXLAY and L_OISOPYC                    OARRYSIZ.46     
     &,  IMT_NOIPD_MIX ! IMT if L_OISOPYC and not L_OMIXLAY                OARRYSIZ.47     
     &,  KM_IPD        ! KM if L_OISOPYC                                   OARRYSIZ.48     
      INTEGER                                                              OARRYSIZ.49     
     &   IMT_CLN_FSF   ! IMT if L_ONOCLIN = f and L_OFREESFC = t           OARRYSIZ.50     
     &,  JMT_CLN_FSF   ! JMT if L_ONOCLIN = f and L_OFREESFC = t           OARRYSIZ.51     
     &,  SWNCOL_CLN    ! SWNCOL if L_ONOCLIN = f                           OARRYSIZ.52     
     &,  JMT_CLN       ! JMT if L_ONOCLIN = f                              OARRYSIZ.53     
                                                                           OARRYSIZ.54     
     &,  IMT_ICE_ICP   ! IMT if L_SEAICE = t and L_OICECOUP = t            OARRYSIZ.55     
     &,  JMT_ICE_ICP   ! JMT if L_SEAICE = t and L_OICECOUP = t            OARRYSIZ.56     
     &,  IMT_ICE_NOICP ! IMT if L_SEAICE = t and L_OICECOUP = f            OARRYSIZ.57     
     &,  JMT_ICE_NOICP ! JMT if L_SEAICE = t and L_OICECOUP = f            OARRYSIZ.58     
     &,  IMT_ICE       ! IMT if L_SEAICE = t                               OARRYSIZ.59     
     &,  JMT_ICE       ! JMT if L_SEAICE = t                               OARRYSIZ.60     
     &,  JMTM1_ICE     ! JMTM1 if L_SEAICE else 1                          ODC1F405.361    
     &,  IMT_ICE_SOSO   ! IMT if L_SEAICE = t and L_OSOLAR or              OARRYSIZ.61     
     &                 !        L_OSOLARAL = t                             OARRYSIZ.62     
     &,  SWNCOL_BIO    ! SWNCOL if L_OBIOLOGY = t else 1                   OARRYSIZ.63     
     &,  KM_BIO        ! KM     "    "                                     OARRYSIZ.64     
     &,  IMT_BIO       ! IMT    "    "                                     OARRYSIZ.65     
     &,  JMT_BIO       ! JMT    "    "                                     OARRYSIZ.66     
     &,  IMT_PIC_MIX   ! IMT if L_OPSEUDIC and L_OMIXLAY                   OARRYSIZ.67     
     &,  IMT_PIC       ! IMT if L_OPSEUDIC                                 OARRYSIZ.68     
     &,  IMT_ICE_MIX   ! IMT if L_SEAICE and _OMIXLAY                      OARRYSIZ.69     
     &,  KM_ICE_MIX    ! KM  if L_SEAICE and _OMIXLAY                      OARRYSIZ.70     
     &,  IMT_WME       !                                                   OARRYSIZ.71     
     &,  IMT_IPD       ! IMT if L_OISOPYC                                  OARRYSIZ.72     
     &,  NT_IPD        ! NT  if L_OISOPYC                                  OARRYSIZ.73     
     &,  KMP1_IPD      ! KMP1 if L_OISOPYC                                 OARRYSIZ.74     
     &,  IMT_CAR, IMT_CAR_MIX, IMT_CAR_ICE, IMT_CAR_PIC                    OARRYSIZ.75     
     &,  IMT_OHY       ! IMT if L_OHANEY                                   OARRYSIZ.76     
      INTEGER                                                              OLA0F401.11     
     &   IMT_GM        ! IMT if L_OISOPYCGM                                OLA0F401.12     
     &,  KM_GM         ! KM  if L_OISOPYCGM                                OLA0F401.13     
     &,  KMP1_GM       ! KMP1 if L_OISOPYCGM                               OLA0F401.14     
      INTEGER                                                              OOM1F405.18     
     &   IMT_ISO,       ! IMT if L_OISOMOM                                 OOM1F405.19     
     &   KM_ISO         ! KM if L_OISOMOM                                  OOM1F405.20     
      INTEGER                                                              OOM1F405.21     
     &   IMT_GMM,       ! IMT if L_OISOGM                                  OOM1F405.22     
     &   KM_GMM,         ! KM if L_OISOGM                                  OOM1F405.23     
     &   KMP1_GMM        ! KMP1 if L_OISOGM                                OOM1F405.24     
      INTEGER                                                              OOM3F405.6      
     &   IMT_BIH,       ! IMT if L_OBIMOM or L_OBIHARMGM                   OOM3F405.7      
     &   KM_BIH         ! KM if L_OBIMOM or L_OBIHARMGM                    OOM3F405.8      
      INTEGER                                                              OARRYSIZ.77     
     &   NT_MEA            ! NT for L_OHMEAD                               OARRYSIZ.78     
     &,  LSEGC_MEA         ! LSEGC for "                                   OARRYSIZ.79     
     &,  O_MAX_TRACERS_MEA ! Max tracers for mead diagnostics              OARRYSIZ.80     
     &,  IMT_idr_MIX       ! IMT if L_ICEFREEDR and L_OMIXLAY              ODC1F405.362    
     &,  JMT_idr_MIX       ! JMT  "    "       "      "                    ODC1F405.363    
     &,  JMTM1_idr_MIX     ! JMTM1 "   "       "      "                    ODC1F405.364    
     &,  IMT_GLN           ! IMT if L_OBGILLN = true                       OARRYSIZ.84     
     &,  KM_GLN            ! KM if L_OBGILLN = true                        OARRYSIZ.85     
     &,  IMT_IPD_NOMIX     ! IMT if L_OISOPYC and not L_OMIXLAY            OARRYSIZ.86     
     &,  JMT_IPD_NOMIX     ! JMT  "     "       "  "     "                 OARRYSIZ.87     
     &,  IMT_ZVRT         ! IMT for barotropic vorticity diagnostics       OMB3F401.5      
     &,  JMT_ZVRT         ! IMT for barotropic vorticity diagnostics       OMB3F401.6      
     &,  N_ZVRT           ! number of barotropic vorticity diagnostics     OMB3F401.7      
! Common block containing array sizes for dynamic allocation               OARRYSIZ.88     
! These values are set based on the values of logical variables            OARRYSIZ.89     
! in CNTLOCN.                                                              OARRYSIZ.90     
      COMMON /OARRYSIZ/                                                    OARRYSIZ.91     
     &   MAX_SKP, KM_SKP, JMT_SKP, KM_VTD                                  OARRYSIZ.92     
     &  ,IMT_IHY, JMT_IHY, IMT_FLX, JMT_FLX                                OARRYSIZ.93     
     &,  IMT_PIIC, IMT_PIIC_MIX                                            OARRYSIZ.94     
     &  ,ICOL_CYC, IFROM_CYC, ITO_CYC                                      OARRYSIZ.95     
     &,  IMT_SOLAL,  KM_SOLAL, KM_NOSOLAL                                  OARRYSIZ.96     
     &,  IMT_ASM, JMT_ASM                                                  OARRYSIZ.97     
     &,  IMT_idr, JMT_idr, JMTM1_idr                                       ODC1F405.365    
     &,  IMT_GNU, KM_GNU, IMU_GNUZ, KM_GNUZ                                OARRYSIZ.99     
     &,  IMT_VIS,JMT_VIS                                                   OLA2F403.8      
     &,  IMT_QLARGE                                                        OLA3F403.11     
     &,  IMT_FULARGE                                                       OOM1F405.408    
     &,  IMTIMT_FLT, IMT_ROT                                               OARRYSIZ.100    
     &,  IMT_MIX, JMT_MIX, IMT_NOMIX, KM_MIX                               OARRYSIZ.101    
     &,  IMT_drsa, JMT_drsa, JMTM1_drsa                                    ODC1F405.366    
     &,  IMT_STREAM, JMT_STREAM, IMT_FSF, JMT_FSF                          OARRYSIZ.103    
     &,  JMTM1_FSF                                                         ORL1F404.128    
     &,  IMT_IPD_MIX, JMT_IPD_MIX                                          OARRYSIZ.104    
     &,  IMT_IPD_NOMIX, JMT_IPD_NOMIX                                      OARRYSIZ.105    
     &,  IMT_CLN_FSF, JMT_CLN_FSF                                          OARRYSIZ.106    
     &,  IMT_CLN, SWNCOL_CLN, JMT_CLN                                      OARRYSIZ.107    
     &,  IMT_idr_MIX, JMT_idr_MIX, JMTM1_idr_MIX                           ODC1F405.367    
     &,  IMT_BIO, SWNCOL_BIO, KM_BIO, JMT_BIO                              OARRYSIZ.109    
     &,  IMT_IPD, NT_IPD, KMP1_IPD                                         OARRYSIZ.110    
     &,  IMT_NOIPD_MIX, KM_IPD                                             OARRYSIZ.111    
     &,  IMT_GM, KM_GM, KMP1_GM                                            OLA0F401.15     
     &,  IMT_ISO,KM_ISO,IMT_GMM,KM_GMM,KMP1_GMM                            OOM1F405.25     
     &,  IMT_BIH,KM_BIH                                                    OOM3F405.9      
     &,  IMT_PIC_MIX, IMT_PIC                                              OARRYSIZ.112    
     &,  IMT_ICE_MIX, KM_ICE_MIX                                           OARRYSIZ.113    
     &,  IMT_ICE_ICP, JMT_ICE_ICP                                          OARRYSIZ.114    
     &,  IMT_ICE_NOICP, JMT_ICE_NOICP                                      OARRYSIZ.115    
     &,  IMT_ICE, IMT_ICE_SOSO, JMT_ICE                                    OARRYSIZ.116    
     &,  JMTM1_ICE                                                         ODC1F405.368    
     &,  IMT_WME                                                           OARRYSIZ.117    
     &,  IMT_RIC, KM_RIC                                                   OARRYSIZ.118    
     &,  IMT_CAR, IMT_CAR_MIX, IMT_CAR_ICE, IMT_CAR_PIC                    OARRYSIZ.119    
     &,  IMT_OHY, IMT_GLN, KM_GLN                                          OARRYSIZ.120    
     &,  O_MAX_TRACERS_MEA, LSEGC_MEA, NT_MEA                              OARRYSIZ.121    
     &,  IMT_ZVRT, JMT_ZVRT, N_ZVRT                                        OMB3F401.8      
!- End of COMDECK OARRYSIZ                                                 OARRYSIZ.122