anchor.diff:  
       !$OMP CRITICAL
       call map_append(map_c, key, value, idx) 
  -    call map_sort(map_c)
       !$OMP END CRITICAL
   
   
  
positive.code:       if (dabs(matrix_B(l,d)) < 1.d-10) then
          cycle
        endif
        print *,  d, l
        
        T2d = 0.d0
        do a=2,a_array(1,1,l-l_start+1)
          i = a_array(1,a,l-l_start+1)
          j = a_array(2,a,l-l_start+1)
          k = a_array(3,a,l-l_start+1)
          ik = (i-i_start+1) + ishft( (k-k_start+1)*(k-k_start), -1)
          T2d(ik,j) = transfer(a_array(4,a,l-l_start+1), 1.d0)
        enddo
  
  !      V2d = 0.d0
  !      do b=b_start,d
  !        do j=j_start,j_end
  !         do ik=1, ishft( (i_end-i_start+1)*(i_end-i_start+2), -1)
  !           V2d(ik,b) = V2d(ik,b) + T2d(ik,j)*matrix_B(j,b)
  !         enddo
  !        enddo
  !      enddo
        call DGEMM('N','N', ishft( (i_end-i_start+1)*(i_end-i_start+2), -1),&
            (d-b_start+1),                                             &
            (j_end-j_start+1), 1.d0,                                   &
            T2d(1,j_start), size(T2d,1),                               &
            matrix_B(j_start,b_start), size(matrix_B,1),0.d0,          &
            V2d(1,b_start), size(V2d,1) )
       
  
        do b=b_start,d
          V(:,:) = 0.d0
          ik = 0
          do k=k_start,k_end
            do i=i_start,k
  
negative.code:   double precision, allocatable  :: T2d(:,:), V2d(:,:)
    integer                        :: i_max, j_max, k_max, l_max
    integer                        :: i_min, j_min, k_min, l_min
    integer                        :: i, j, k, l, ik, ll
    integer                        :: a, b, c, d
    double precision, external     :: get_ao_bielec_integral
    integer(key_kind)              :: idx
  