anchor.diff:        integer i0bpadq, iused
         double precision dtdx, dtdy, cfl1d
         integer m,i,j, ma, ixy
  +      integer sweep_dir
   
         common /comxyt/ dtcom,dxcom,dycom,tcom,icom,jcom
   
  
positive.code:       dtdx = dt/dx
        dtdy = dt/dy
  c
        do 10 m=1,meqn
           do 10 i=1-mbc,mx+mbc
              do 10 j=1-mbc,my+mbc
                 fm(i,j,m) = 0.d0
                 fp(i,j,m) = 0.d0
                 gm(i,j,m) = 0.d0
                 gp(i,j,m) = 0.d0
     10          continue
  c
        if (mcapa.eq.0) then
  c        # no capa array:
           do 5 i=1-mbc,maxm+mbc
              dtdx1d(i) = dtdx
              dtdy1d(i) = dtdy
      5       continue
           endif
  c
  c
  c     # perform x-sweeps
  c     ==================
  c
        do 50 j = 2-mbc,my+mbc-1
  c
  c        # copy data along a slice into 1d arrays:
           do m=1,meqn
  
negative.code:             enddo
           enddo
  
  c         if (j .le. 0) then
  c            do m = 1,meqn
  c               if (block_corner_count(0) .eq. 3) then
  c                  do ibc = 1,mbc
  c                     q1d(1-ibc,m) = qold(ibc,0,m)
  c                  enddo
  c               endif
  c               if (block_corner_count(1) .eq. 3) then
  c                  do ibc = 1,mbc
  c                     q1d(mx+ibc,m) = qold(mx-ibc+1,0,m)
  c                  enddo
  c               endif
  c            enddo
  c         else if (j .eq. my+1) then
  c            do m = 1,meqn
  c               if (block_corner_count(2) .eq. 3) then
  c                  do ibc = 1,mbc
  c                     q1d(1-ibc,m) = qold(ibc,my+1,m)
  c                  enddo
  c               endif
  c               if (block_corner_count(3) .eq. 3) then
  c                  do ibc = 1,mbc
  c                     q1d(mx+ibc,m) = qold(mx-ibc+1,my+1,m)
  c                  enddo
  c               endif
  c            enddo
  c         endif
  c
           if (mcapa .gt. 0)  then
             do i = 1-mbc, mx+mbc
                 dtdx1d(i) = dtdx / aux(i,j,mcapa)
             end do
           endif
  c
           if (maux .gt. 0)  then
               do  ma=1,maux
                 do  i = 1-mbc, mx+mbc
                   aux1(i,ma) = aux(i,j-1,ma)
                   aux2(i,ma) = aux(i,j  ,ma)
                   aux3(i,ma) = aux(i,j+1,ma)
                 end do
              end do
          endif
  c
  c
  c        # Store the value of j along this slice in the common block
  