include file: champ.cdk 32
      integer, parameter  :: single = 4
      integer, parameter  :: double = 8
C -----------------------------------------------------------------
      integer, PARAMETER :: N   =    64
      integer, PARAMETER :: KTX =   N/3
C -----------------------------------------------------------------
      Integer, PARAMETER :: KTY =KTX
      integer, PARAMETER :: IKTX=KTX+1
      integer, PARAMETER :: IKTY=KTY+KTY+1
      integer, PARAMETER :: PXLIM=KTX+KTX+1
      integer, PARAMETER :: N2=N+2
      integer, PARAMETER :: LWRK=N2*(N+1)
      integer, PARAMETER :: NFMAX=20
      integer, PARAMETER :: NTRAJC=218
c      integer, PARAMETER :: NTRAJC=552

      COMPLEX :: ZTRAJ(IKTX,IKTY,NTRAJC)
      COMPLEX :: STRAJ(IKTX,IKTY,NTRAJC)      
      COMPLEX :: ZTRA1(IKTX,IKTY,NTRAJC)
      COMPLEX :: STRA1(IKTX,IKTY,NTRAJC)
      COMPLEX :: ZTRA2(IKTX,IKTY,NTRAJC)
      COMPLEX :: STRA2(IKTX,IKTY,NTRAJC)
C
      COMPLEX :: ZOBS(IKTX,IKTY,NTRAJC)
      COMPLEX :: Zb(IKTX,IKTY,NTRAJC)
      COMPLEX :: ZA(IKTX,IKTY)
      COMPLEX :: ZT(IKTX,IKTY),ST(IKTX,IKTY)
      COMPLEX :: NTK(IKTX,IKTY)
      COMPLEX :: ZN(IKTX,IKTY),ZO(IKTX,IKTY),ZG(IKTX,IKTY)
      COMPLEX :: ZM(IKTX,IKTY),ZF(IKTX,IKTY),ZGM1(IKTX,IKTY)
      COMPLEX :: SN(IKTX,IKTY),SO(IKTX,IKTY)
      COMPLEX :: SM(IKTX,IKTY),SF(IKTX,IKTY)
      COMPLEX :: RHZ(IKTX,IKTY),RHS(IKTX,IKTY)
      COMPLEX :: NZK(IKTX,IKTY),NSK(IKTX,IKTY)
      COMPLEX :: UK(IKTX,IKTY) ,WK(IKTX,IKTY)
      COMPLEX :: ZI
      COMPLEX :: Ftilde(IKTX,IKTY)

      REAL :: ZR(N,N),SR(N,N),UR(N,N),WR(N,N),TR(N,N)
      REAL :: NZR(N,N),NSR(N,N)
      REAL :: NTR(N,N)
      REAL :: FF1(N2,N2),FF2(N2,N2),FF3(N2,N2)
      REAL :: WN(PXLIM,IKTY)
      REAL :: KAPPA(IKTX,IKTY),NU(IKTX,IKTY),GAMMA(IKTX,IKTY)
      REAL :: SPZ(KTX)
      REAL :: TRIGS(3*N/2)
      REAL :: WORK(LWRK),WRK(N,N),CHAMP(N,N)
      REAL :: DELT,D2,ROBERT
      REAL :: DELX,D 
      REAL :: TWOPI,V1,V2,K1,K2,G1,G2,AMPS,AMPV,AJ,BJ,BE
      REAL :: FORCING,U0
      REAL :: sigmab,F(N,N)
      REAL :: b_r(N,N)

      INTEGER :: NTRAJ,NS(KTX),L(PXLIM,IKTY),IW,JW,IKX,IKY,NT
      INTEGER :: ILAP,NSTOP,IFAX(10),NCO,GRFLAG,OBFLAG,TRFLAG,JXFLAG
      INTEGER :: TEFLAG,KF,RMFLAG
      INTEGER :: NSORTIE,NP,NOITR,NOSTR

      COMMON /A1/
     .NTRAJ,ZTRAJ,STRAJ,
     .ZTRA1,STRA1,ZTRA2,STRA2,
     .ZOBS,
     .Zb,ZA,
     .ZT,ST,
     .NTK,
     .ZN,ZO,ZG,
     .ZM,ZF,ZGM1,
     .SN,SO,
     .SM,SF,
     .RHZ,RHS,
     .NZK,NSK,
     .UK,WK,
     .ZI,
     .ZR,SR,UR,WR,TR,
     .NZR,NSR,
     .NTR,
     .FF1,FF2,FF3,
     .WN,
     .KAPPA,NU,GAMMA,
     .SPZ,
     .TRIGS,
     .WORK,WRK,CHAMP,
     .DELT,D2,ROBERT,
     .DELX,D, 
     .TWOPI,V1,V2,K1,K2,G1,G2,AMPS,AMPV,AJ,BJ,BE,
     .FORCING,U0,
     .NS,L,IW,JW,IKX,IKY,NT,
     .ILAP,NSTOP,IFAX,NCO,GRFLAG,OBFLAG,TRFLAG,JXFLAG,
     .TEFLAG,KF,RMFLAG,
     .NSORTIE,NP,NOITR,NOSTR,
     .sigmab,
     .F,Ftilde,
     .b_r