anchor.diff:      module procedure::realloc2DDArr
       module procedure::reallocStr
       module procedure::realloc1DHtr1DIArr
  +    module procedure::realloc1DHtr2DDArr
     end interface
     public::reallocArr
     
  
positive.code:     integer,allocatable::dat(:) !< 1D integer allocatable array
    contains
      !FIXME:final::purgeHtr1DIArr
    end type
    
    !> general data linked list
  
negative.code:     end if
    end subroutine
    
    !> reallocate the 1D allocatable array arr of the heterogeneous 2D double allocatable array
    !> to have m heterogeneous elements
    pure subroutine realloc1DHtr2DDArr(arr,m)
      type(typeHtr2DDArr),allocatable,intent(inout)::arr(:) !< 1D array to be reallocated
      integer,intent(in)::m !< number of entries
      
      if(allocated(arr))then
        if(size(arr)/=m)then
          deallocate(arr)
          allocate(arr(m))
        end if
      else
        allocate(arr(m))
      end if
    end subroutine
    
    !> extend the integer allocatable array arr by l or by 1
    pure subroutine extendIArr(arr,l)
      integer,allocatable,intent(inout)::arr(:) !< integer array to be extended
  