anchor.diff:          integer             :: i, col_mins(3)
   
           col_mins = minval(p1, 2)
  -        forall (i = 1:size(p1, 2))
  +        do i = 1, size(p1, 2)
               p2(:, i) = p1(:, i) - col_mins + 1
  -        end forall
  +        end do
       end function
   
       pure function sparse_to_dense(p1, id) result(p2)
  
positive.code:         integer, intent(inout) :: mrot(3, 3, 3, 4)
          integer                :: theta ! In 90 degree increments
  
          forall (theta = 1:3)
              mrot(:, :, :, theta) =                                &
                  reshape((/ 1,           0,             0,         &
                             0, icos(theta),  -isin(theta),         &
  
negative.code:                            isin(theta),   icos(theta),      0,    &
                                       0,             0,      1 /), &
                          (/ 3, 3, 3 /))
          end do
      end subroutine
  
      pure function rotate(p1, axis, theta) result(p2)
  