anchor.diff:    call map_sort(map_c)
   
     call munmap( &
  -      (/ (int(i_end-i_start+1,8)*int(j_end-j_start+2,8)*int(k_end-k_start+1,8)),int(l_end-l_start+1,8) /), 16, fd, c_pointer)
  +      (/ 12_8 * map_a % n_elements /), 8, fd, c_pointer)
  +  deallocate(l_pointer)
   
   end
  
positive.code:         cycle
        endif
        
        ll = l-l_start+1
  !      T2d = 0.d0
  !      do a=2,a_array(1,ll),3
  !        ik = a_array(a,ll)
  !        j = a_array(a+1,ll)
  !        T2d(ik,j) = transfer(a_array(a+2,ll), 1.d0)
  !      enddo
  
        a=2
        do j=j_start,j_end
          ik=0
          do k=k_start,k_end
            do i=i_start,k
              ik = ik+1
              if ( (ik /= a_array(a,ll)).or.(j /= a_array(a+1,ll)) ) then
                T2d(ik,j) = 0.d0
              else
                T2d(ik,j) = transfer(a_array(a+2,ll), 1.d0)
                a=a+3
              endif
            enddo
  
negative.code:   real(integral_kind)            :: tmp
    integer(key_kind), allocatable :: key(:)
    real(integral_kind), allocatable :: value(:)
    integer*8, allocatable         :: l_pointer(:)
  
    ASSERT (k_start == i_start)
    ASSERT (l_start == j_start)
  