anchor.diff:  
       ! Beginning of main routine for enumeration
       open(23,file="VERSION.enum")
  -    write(23,'(A)') "v2.0.4-40-gfc3d-dirty"
  +    write(23,'(A)') "v2.0.4-42-gb169-dirty"
       close(23)
   
       ![TODO] Get rid of all the junk that crept in (writing files, making inactives table, etc. These should all be in routines so that this main routine is still readable)
  
positive.code:              if (.not. equal(rgp,nint(rgp),eps)) stop "Transform left big fractional parts"
               gp = nint(rgp) ! Move the rotated group into an integer array
               ag = nint(rag)
               gp = modulo(gp,spread(diag,2,n)) ! Mod by each entry of
               ! the SNF to bring into group Now that the rotated group
               ! is known, find the mapping of the elements between the
               ! original group and the permuted group. This is the
               ! permutation.
               skip = .false. ! This is just for efficiency
               do im = 1, n
                  do jm = 1, n
  
negative.code:     ! Make the group member list for the first SNF
      diag = (/SNF(1,1,1),SNF(2,2,1),SNF(3,3,1)/)
      call make_member_list(diag,g)
      do im=1,3;write(19,'("Member list: ",3(20(1x,i2)))') g(im,:); enddo
      call matrix_inverse(A,Ainv,err)
      if(err) stop "Invalid parent lattice vectors in get_rotation_perm_lists"
  
      do iH = 1,nH ! loop over each superlattice unless the SNF is
     ! different than the previous (they should be sorted into blocks)
     ! don't bother making the group again. Just use the same one.
     write(19,'("HNF #: ",i2)') iH
         if(iH > 1) then; if(.not. all(SNF(:,:,ih)==SNF(:,:,ih-1))) then
            diag = (/SNF(1,1,ih),SNF(2,2,ih),SNF(3,3,ih)/)
            call make_member_list(diag,g)
            write(19,'("Member list: ")') g
         endif; endif
         ! Make the transform matrices for taking the g's and rotating them
         Tinv = matmul(L(:,:,iH),Ainv); call matrix_inverse(Tinv, T, err)
  