      SUBROUTINE TRIPLY(L,I,D,J,U,K,Y,LY,M,N)
      INTEGER M,N,I,J,K,LY
      REAL L(N,I),D(N,J),U(N,K),Y(N,LY)                                         
      INTEGER II,IM,IMTOP,MIN0,MAX0,MOD,ODDBIT,ITEMP                            
      IF(.NOT.(N.LE.0))GOTO 23114                                               
         RETURN                                                                 
23114 CONTINUE                                                                  
      ODDBIT = MOD(N-1,5)                                                       
      DO 23132 II=1,M                                                        
      IMTOP=MIN0(N,1+ODDBIT)                                                    
      DO 23116 IM=2,IMTOP,1                                                     
                  Y(IM,II)= Y(IM,II)- L(IM,II)* Y(IM-1,II)                      
23116    CONTINUE                                                               
      ITEMP=IMTOP+1                                                             
      DO 23120 IM=ITEMP,N,5                                                     
                  Y(IM,II)= Y(IM,II)- L(IM,II)* Y(IM-1,II)                      
                  Y(IM+1,II)= Y(IM+1,II)- L(IM+1,II)* Y(IM,II)                  
                  Y(IM+2,II)= Y(IM+2,II)- L(IM+2,II)* Y(IM+1,II)                
                  Y(IM+3,II)= Y(IM+3,II)- L(IM+3,II)* Y(IM+2,II)                
                  Y(IM+4,II)= Y(IM+4,II)- L(IM+4,II)* Y(IM+3,II)                
23120    CONTINUE                                                               
             Y(N,II)= Y(N,II)* D(N,II)                                          
      IMTOP=MAX0(1,N-ODDBIT)                                                    
      ITEMP=N-1                                                                 
      DO 23126 IM=ITEMP,IMTOP,-1                                                
                 Y(IM,II)= Y(IM,II)* D(IM,II)- U(IM,II)* Y(IM+1,II)             
23126    CONTINUE                                                               
      ITEMP=IMTOP-1                                                             
      DO 23130 IM=ITEMP,1,-5                                                    
             Y(IM,II)=Y(IM,II)* D(IM,II)- U(IM,II)* Y(IM+1,II)                  
             Y(IM-1,II)=Y(IM-1,II)*D(IM-1,II)-U(IM-1,II)*Y(IM,II)               
             Y(IM-2,II)=Y(IM-2,II)*D(IM-2,II)-U(IM-2,II)*Y(IM-1,II)             
             Y(IM-3,II)=Y(IM-3,II)*D(IM-3,II)-U(IM-3,II)*Y(IM-2,II)             
             Y(IM-4,II)=Y(IM-4,II)*D(IM-4,II)-U(IM-4,II)*Y(IM-3,II)             
23130    CONTINUE                                                               
23132 CONTINUE                                                              
      RETURN                                                                    
      END                                                                       
