      SUBROUTINE MAKER(ICORE,MAXCOR,IUHF,RLECYC,MAXORD,IBOT,SINGLE,
     &                 RLETYP)
C
C DRIVER FOR FORMATION OF THE RLE R MATRIX.
C
CEND
      IMPLICIT INTEGER (A-Z)
      DIMENSION ICORE(MAXCOR)
      DOUBLE PRECISION R
      LOGICAL SINGLE
      COMMON /RMAT/ R(400)
      INDX(I,J)=I+(J-1)*MAXORD
C
C SET ALL R(I,J)=R(I-1,J-1).
C
      DO 10 IROW=MAXORD,2,-1
       DO 20 ICOL=MAXORD,2,-1
        IPOS1=INDX(IROW,ICOL)
        IPOS2=INDX(IROW-1,ICOL-1)
        R(IPOS1)=R(IPOS2)
20     CONTINUE
10    CONTINUE
C
C NOW JUST COMPUTE THE FIRST ROW AND FIRST COLUMN OF RLE MATRIX. 
C
      IF(RLETYP.EQ.0)THEN
       CALL FRMRIJ(ICORE,MAXCOR,IUHF,RLECYC,MAXORD,IBOT,0,1,SINGLE)
       CALL FRMRIJ(ICORE,MAXCOR,IUHF,RLECYC,MAXORD,IBOT,1,0,SINGLE)
      ELSEIF(RLETYP.EQ.1.OR.RLETYP.EQ.3)THEN
       CALL FRMRIJ2(ICORE,MAXCOR,IUHF,RLECYC,MAXORD,IBOT,0,1,SINGLE,
     &              RLETYP)
       CALL FRMRIJ2(ICORE,MAXCOR,IUHF,RLECYC,MAXORD,IBOT,1,0,SINGLE,
     &              RLETYP)
      ELSEIF(RLETYP.EQ.2)THEN
       CALL FRMRIJ3(ICORE,MAXCOR,IUHF,RLECYC,MAXORD,IBOT,0,1,SINGLE)
       CALL FRMRIJ3(ICORE,MAXCOR,IUHF,RLECYC,MAXORD,IBOT,1,0,SINGLE)
      ENDIF
      RETURN
      END 
