anchor.diff:  
       dx = 0.0D0
   
  -    maxd = 0.0D0
  -
  -    do i = 1, nItems
  -
  -       j = rItems(i)
  -
  -       if ( dy + iWidth(j) .gt. cWidth ) then 
  -
  -          call random_number(rnumber)
  -
  -          dx = dx + maxd
  -
  -          dy = 0.0D0
  -
  -          maxd = 0.0D0
  -
  -       end if
  -
  -       x(2 * (j - 1) + 1) = dx
  -       
  -       x(2 * j) = dy
  -
  -       call random_number(rnumber)
  -
  -       dy = dy + iWidth(j)
  -
  -       maxd = max(maxd, iLength(j))
  -
  -    end do
  -
  -    if ( strip ) x(2 * nItems + 1) = dx + maxd
  -
  -    deallocate(ritems)
  +    call recInitialPoint(rItems, 1, nItems, dx, dy, &
  +         cWidth, 10.0D0 * cLength, x, itmp)
  +
  +    if ( strip ) x(2 * nItems + 1) = x(2 * nItems - 1)
  +
  +    deallocate(rItems)
   
     end subroutine initialpoint
   
  
positive.code: ! ******************************************************************
  ! ******************************************************************
  
    subroutine initialpoint(x, s, strip)
  
      ! This subroutine sets up an random initial position of the items,
  
negative.code: 
      ! LOCAL SCALARS
      integer :: i, j, nseed, itmp, ri
      real(8) :: rnumber, cl, dx, dy, nextx, nexty, maxdx
  
      ! LOCAL ARRAYS
      integer, allocatable :: seed(:), ritems(:)
  