!     DEC$ NOFREEFORM
c^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
       parameter (NPAR_CTLMX=200, NLEVMX=500,NOBSMX=3000 
!    +                    , NCTLMX=20,MREC=100,MXLLP=2*200000)
     +                    , NCTLMX=20,MREC=100,MXLLP=2*700*700)
       character *150 ctln(NCTLMX), indset, wctln
       common /ctli/ NCTL,NPAR_CTL, NLEV_CTL
     +,ipf_ctl(NPAR_CTLMX), ip_ctl(NPAR_CTLMX), ipnl_ctl (NPAR_CTLMX)
     +,itl_ctl(NPAR_CTLMX), il_ctl(NPAR_CTLMX), iprec_ctl(NPAR_CTLMX)
       common /ctlxyzt/ 
     + NT_CTL(NCTLMX), IT0_CTL(NCTLMX), ITI_CTL(NCTLMX)
     +,ITF_CTL(NCTLMX) ,ITF1_CTL(NCTLMX)
cVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
     +,NOB_CTL(NCTLMX),XOB_CTL(NOBSMX),YOB_CTL(NOBSMX),ZOB_CTL(NOBSMX)
     +,JWMO_CTL(NOBSMX)
cVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
     +,NX_CTL(NCTLMX), X0_CTL (NCTLMX), XI_CTL (NCTLMX)
     +,NY_CTL(NCTLMX), Y0_CTL (NCTLMX), YI_CTL (NCTLMX)
     +,NZ_CTL(NCTLMX), Z_CTL  (NLEVMX)
     +,NREC_CTL(NCTLMX)
     +,NVAR_CTL(NCTLMX)
     +,NZE_CTL(NCTLMX)
     +,UNDEF_CTL(NCTLMX)
     +,STN_CTL(NCTLMX)
     +,RNX_CTL, RX0_CTL, RXI_CTL
     +,RNY_CTL, RY0_CTL, RYI_CTL
       common /wctlc/ wctln
       common /ctlc/ ctln, INDSET
       common /data_ctl/ NPOI_CTL,vall1(MXLLP), vall2(MXLLP)
       common /rec_ctl/ LMOD_CTL(MREC)
     +                 ,IREC1_CTL(MREC), IREC2_CTL(MREC)
c^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
c      NCTL  - number of ctl's files   ( 0 or gt NCTLMX - fmes 10)
c      NPAR_CTL  - number of all parameter ( 0 or gr NPAR_CTLMX - fmes 11)
c      MXLLP - max. number of ll points ( ii > MXLLP    - fmes 13) 
c      NREC  - number of record for one time check point ( mes 4)
c
c      NVAR  - total parameter number per ctl file ( fmes 20 )
c      ip    - parameter wmo-grib code 
c      itl   - level type wmo-grib code 
c      il    - level itself wmo-grib code 
c
c      ipf   - current parameter belongs to the which ctl file
c      ipnl  - number of level for current parameter
c      iprec - number of previous records in *.gdat for the curr. par.
c
c      NLEVMX - maximum level number for all ctl files (fmes 30)  
c      NZ    - level number in ctl file                (fmes 31)
c      Z     - levels                                  (fmes 32)
c      NZE   - ending level counter for the ctl file   (fmes 33)
c      
c      NX, NY, NZ, NT, NVAR - number of x,y,z,t,var variables 
c      X0, Y0, Z0, gdate    - starting values
c      XI, YI, ZI, IT       - increment values