anchor.diff:    integer(i32) :: maxDepth
     integer(i32) :: imid,iPivot
     integer(i32) :: N
  -  N=right-left
  +  N=right - left + 1
     if (N < 16) then
       call argInsertionSort(this,idx,left,right)
       return
     end if
     if (maxDepth == 0) then
  -    call argHeapsort_i1D(this, idx(left:right+1))
  +    call argHeapsort_i1D(this, idx(left:right))
       return
     end if
     imid = left + N/2
     call argMedianOf3(this, idx, left, imid, right)
  -  call swap(idx(left), idx(imid))
  +  !call swap(idx(left), idx(imid))
     call argPartition(this,idx,left,right,iPivot)
     call r_argIntrosort_i1D(this,idx,left,iPivot-1,maxDepth-1)
     call r_argIntrosort_i1D(this,idx,iPivot+1,right,maxDepth-1)
  
positive.code:   integer(i32) :: left,right,maxDepth
    left=1
    right=size(this)
    maxDepth = 2*idnint(log(dble(right-left)))
    call r_introsort_d1D(this,left,right,maxDepth)
    end procedure
    !====================================================================!
  
negative.code:   integer(i32) :: maxDepth
    integer(i32) :: imid,iPivot
    integer(i32) :: N
    N = right - left + 1
    if (N < 16) then
      call argInsertionSort(this,idx,left,right)
      return
    end if
    if (maxDepth == 0) then
      call argHeapsort_d1D(this, idx(left:right))
      return
    end if
    imid = left + N/2
  