anchor.diff:        dimension expo(6)
   C
         dimension buf2(10,nbls,lt1,lt2)
  +c
   c               buf2(1,nbls,lt1,lt2) - ordinary contraction
   c               buf2(2,nbls,lt1,lt2) - rescaled with 2*a_exp
   c               buf2(3,nbls,lt1,lt2) - rescaled with 2*b_exp
  
positive.code:       ENDIF
        end
  c=======================================================================
  c=======================================================================
        subroutine conbuf2_der22(firstc,nbls,nbls1,xt1,lt1,lt2, buf2,indx,
       *                         aax,bbx,ccx)
  c
  
negative.code:           expo(i,5)=bbx(i)*bbx(i)
            expo(i,6)=ccx(i)*ccx(i)
          enddo
  c------------------------------------------------
          ij1=nfu(nqij)
          ij2=nfu(nsij-1)
          ij3=nfu(nsij)
          ij4=nfu(nsij+1)
  c
          kl1=nfu(nqkl)
          kl2=nfu(nskl-1)
          kl3=nfu(nskl)
          kl4=nfu(nskl+1)
  c-------
          IF(FIRSTC) THEN
             do kl=kl1+1,kl2
                do ij=ij1+1,ij2
                   do i=1,nbls1
                   ijkl=indx(i)
                   buf2(1,ijkl,IJ,KL)=  XT1(i,IJ,KL)
                   buf2(2,ijkl,IJ,KL)=XT1(i,IJ,KL)*aax(i)
                   buf2(3,ijkl,IJ,KL)=XT1(i,IJ,KL)*bbx(i)
                   buf2(4,ijkl,IJ,KL)=XT1(i,IJ,KL)*ccx(i)
                   buf2(5,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,1)
                   buf2(6,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,2)
                   buf2(7,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,3)
                   buf2(8,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,4)
                   buf2(9,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,5)
                   buf2(10,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,6)
                   enddo
                enddo
                do ij=ij2+1,ij3
                   do i=1,nbls1
                   ijkl=indx(i)
                   buf2(2,ijkl,IJ,KL)=XT1(i,IJ,KL)*aax(i)
                   buf2(3,ijkl,IJ,KL)=XT1(i,IJ,KL)*bbx(i)
                   buf2(5,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,1)
                   buf2(6,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,2)
                   buf2(7,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,3)
                   buf2(8,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,4)
                   buf2(9,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,5)
                   enddo
                enddo
                do ij=ij3+1,ij4
                   do i=1,nbls1
                   ijkl=indx(i)
                   buf2(5,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,1)
                   buf2(8,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,4)
                   buf2(9,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,5)
                   enddo
                enddo
             enddo
             do kl=kl2+1,kl3
                do ij=ij1+1,ij2
                   do i=1,nbls1
                   ijkl=indx(i)
                   buf2(4,ijkl,IJ,KL)=XT1(i,IJ,KL)*ccx(i)
                   buf2(6,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,2)
                   buf2(7,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,3)
                   buf2(10,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,6)
                   enddo
                enddo
                do ij=ij2+1,ij3
                   do i=1,nbls1
                   ijkl=indx(i)
                   buf2(6,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,2)
                   buf2(7,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,3)
                   enddo
                enddo
             enddo
             do kl=kl3+1,kl4
                do ij=ij1+1,ij2
                   do i=1,nbls1
                   ijkl=indx(i)
                   buf2(10,ijkl,IJ,KL)=XT1(i,IJ,KL)*expo(i,6)
                   enddo
                enddo
             enddo
             FIRSTC=.FALSE.
          ELSE
             do kl=kl1+1,kl2
                do ij=ij1+1,ij2
                   do i=1,nbls1
                   ijkl=indx(i)
                buf2(1,ijkl,IJ,KL)=buf2(1,ijkl,IJ,KL)+XT1(i,IJ,KL)
              buf2(2,ijkl,IJ,KL)=buf2(2,ijkl,IJ,KL)+XT1(i,IJ,KL)*aax(i)
              buf2(3,ijkl,IJ,KL)=buf2(3,ijkl,IJ,KL)+XT1(i,IJ,KL)*bbx(i)
              buf2(4,ijkl,IJ,KL)=buf2(4,ijkl,IJ,KL)+XT1(i,IJ,KL)*ccx(i)
              buf2(5,ijkl,IJ,KL)=buf2(5,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,1)
              buf2(6,ijkl,IJ,KL)=buf2(6,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,2)
              buf2(7,ijkl,IJ,KL)=buf2(7,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,3)
              buf2(8,ijkl,IJ,KL)=buf2(8,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,4)
              buf2(9,ijkl,IJ,KL)=buf2(9,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,5)
            buf2(10,ijkl,IJ,KL)=buf2(10,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,6)
                   enddo
                enddo
                do ij=ij2+1,ij3
                   do i=1,nbls1
                   ijkl=indx(i)
              buf2(2,ijkl,IJ,KL)=buf2(2,ijkl,IJ,KL)+XT1(i,IJ,KL)*aax(i)
              buf2(3,ijkl,IJ,KL)=buf2(3,ijkl,IJ,KL)+XT1(i,IJ,KL)*bbx(i)
              buf2(5,ijkl,IJ,KL)=buf2(5,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,1)
              buf2(6,ijkl,IJ,KL)=buf2(6,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,2)
              buf2(7,ijkl,IJ,KL)=buf2(7,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,3)
              buf2(8,ijkl,IJ,KL)=buf2(8,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,4)
              buf2(9,ijkl,IJ,KL)=buf2(9,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,5)
                   enddo
                enddo
                do ij=ij3+1,ij4
                   do i=1,nbls1
                   ijkl=indx(i)
              buf2(5,ijkl,IJ,KL)=buf2(5,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,1)
              buf2(8,ijkl,IJ,KL)=buf2(8,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,4)
              buf2(9,ijkl,IJ,KL)=buf2(9,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,5)
                   enddo
                enddo
             enddo
             do kl=kl2+1,kl3
                do ij=ij1+1,ij2
                   do i=1,nbls1
                   ijkl=indx(i)
              buf2(4,ijkl,IJ,KL)=buf2(4,ijkl,IJ,KL)+XT1(i,IJ,KL)*ccx(i)
              buf2(6,ijkl,IJ,KL)=buf2(6,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,2)
              buf2(7,ijkl,IJ,KL)=buf2(7,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,3)
            buf2(10,ijkl,IJ,KL)=buf2(10,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,6)
                   enddo
                enddo
                do ij=ij2+1,ij3
                   do i=1,nbls1
                   ijkl=indx(i)
              buf2(6,ijkl,IJ,KL)=buf2(6,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,2)
              buf2(7,ijkl,IJ,KL)=buf2(7,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,3)
                   enddo
                enddo
             enddo
             do kl=kl3+1,kl4
                do ij=ij1+1,ij2
                   do i=1,nbls1
                   ijkl=indx(i)
            buf2(10,ijkl,IJ,KL)=buf2(10,ijkl,IJ,KL)+XT1(i,IJ,KL)*expo(i,6)
                   enddo
                enddo
             enddo
          ENDIF
  c------------------------------------------------
        end
  c=======================================================================
  c
  C moved into the gencon.f file :
  c     subroutine assemblg(bl,firstc,nbls,nbls1,l01,l02,ngcd,
  