      SUBROUTINE SREVV(NY)
C
C
C
      INCLUDE 'chm.h'
      COMMON/MRAZ/M1,M2,M3,M4,M5,M6,M7
      CALL SREV(KPR,LPR,NY,M1)
      CALL SREV(KPS,LPS,NY,M2)
      CALL SREV(KDR,LDR,NY,M3)
      CALL SREV(KDS,LDS,NY,M4)
      CALL SREV(KDW,LW,NY,M5)
      CALL SREV(KPNR,LPNR,NY,M6)
      CALL SREV(KDNR,LDNR,NY,M7)
      RETURN
      END
      SUBROUTINE SREV(K,L,NY,M)
C
C
      DIMENSION K(NY),L(NY)
      DO 3 J=1,NY
         IF(J-NY)5,2,3
   5     L(J)=K(J+1)-1
         GOTO3
   2     L(J)=M
   3     CONTINUE
      RETURN
      END

      SUBROUTINE SNDYJB(N,KS,NS,NY,NR)
      INCLUDE 'chm.h'
      DIMENSION N(2,NR),KS(NS)
      CALL SNDYJ(NDR,KDR,LDR,NY,NR,MX,N,NDYJ,NDYJ2)
      CALL SNDYJ(NDNR,KDNR,LDNR,NY,NR,MX,N,NDNYJ,NDNYJ2)
      CALL SNSYJ(NPS,KPS,LPS,NY,NS,MX,KS,NPSJ)
      CALL SNSYJ(NDS,KDS,LDS,NY,NS,MX,KS,NDSJ)
      CALL SNPYJ(NPR,KPR,LPR,NY,NR,MX,N,NPYJ1,NPYJ2)
      CALL SNPYJ(NPNR,KPNR,LPNR,NY,NR,MX,N,NPNYJ1,NPNYJ2)
      RETURN
      END
      SUBROUTINE SNDYJ(NDR,KDR,LDR,NY,NR,M,N,NDYJ,NDYJ2)
      DIMENSION NDR(M),KDR(NY),LDR(NY),N(2,NR),NDYJ(M),NDYJ2(M)
      DO 1 J=1,NY
         DO 1 J1=KDR(J),LDR(J)
            JY=1
            IF(N(JY,NDR(J1)).EQ.J)JY=2
            NDYJ(J1)=N(JY,NDR(J1))
   1        NDYJ2(J1)=N(3-JY,NDR(J1))
      RETURN
      END
      SUBROUTINE SNPYJ(NDR,KDR,LDR,NY,NR,M,N,NDYJ1,NDYJ2)
      DIMENSION NDR(M),KDR(NY),LDR(NY),N(2,NR),NDYJ1(M),NDYJ2(M)
      DO 1 J=1,NY
         DO 1 J1=KDR(J),LDR(J)
            NDYJ1(J1)=N(1,NDR(J1))
   1        NDYJ2(J1)=N(2,NDR(J1))
      RETURN
      END
      SUBROUTINE SNSYJ(NDR,KDR,LDR,NY,NR,M,N,NDYJ)
      DIMENSION NDR(M),KDR(NY),LDR(NY),N(NR),NDYJ(M)
      DO 1 J=1,NY
         DO 1 J1=KDR(J),LDR(J)
   1        NDYJ(J1)=N(NDR(J1))
      RETURN
      END


