anchor.diff:  contains
   
     ! calculate loop count for a (complex) pixel
  -  pure integer function pixel_value (z, n_max)
  +  integer function pixel_value (z, n_max)
       implicit none
   
       complex, intent( in ) :: z
  
positive.code:     if ( present(n_max) ) then
        n_end = n_max
      else
        n_end = 256
      end if
      z1 = 0
  
      do n = 0, n_end
        if (abs(z) > r_max) then
          pixel_value = n
          return
        end if
        z1 = z1**2 + z
  
negative.code:     offset = cmplx(x_center - 0.5*pixel_size*width, &
      y_center + 0.5*pixel_size*height)
  
      !$omp parallel do private(y, x, coord)
      do y = 1, height
        do x = 1, width
          coord = offset + cmplx(x*pixel_size, -y*pixel_size)
          image(:,x,y) = to_rgb(pixel_value(coord, 255))
        end do
      end do
      !$omp end parallel do
  
    end function image
  
  