anchor.diff:  
     call allocate(ar1D, N)
     call allocate(br1D, N)
  +  call allocate(cr1D, N)
   
     call allocate(a1D, N)
  -  call allocate(b1D, N)
   
     call allocate(ia1D, N)
  -  call allocate(ib1D, N)
     call allocate(ic1D, N)
  -
  -  call allocate(iad1D, N)
  -  call allocate(ibd1D, N)
   
     call rngNormal(a1D)
     ar1D = real(a1D)
  +  call rngInteger(ia1D, 1, N)
   
     br1D = ar1D
     ic = (size(br1D+1))/2 ! Get the median
  
positive.code:   br1D = ar1D
    call arange(ic1D, 1, N)
    call argSelect(br1D,ic1D, ic, ia)
    la = all(br1D((ic1D(1:ic-1))) <= br1D(ia)) .and. all(br1D(ic1D(ic+1:ib)) >= br1D(ia))
    call test%test(la,'argQuickSelect_r1D')
  
    b1D = a1D
    ic = (size(b1D+1))/2 ! Get the median
    call select(b1D, ic, a)
  
    la = all(b1D(1:ic-1) <= b1D(ic)) .and. all(b1D(ic+1:ib) >= b1D(ic))
  
negative.code:   use m_allocate, only: allocate
    use m_array1D, only: arange
    use m_deallocate, only: deallocate
    use m_random, only: rngNormal, rngInteger
    use m_sort, only: sort
    use m_unitTester, only: tester
  
  