anchor.diff:             
               if (allowed_excitation) then
   
  -                ! 4b. Parity of permutation required to line up determinants.
  +                ! Parity of permutation required to line up determinants.
                   ! NOTE: connection%from_orb and connection%to_orb *must* be ordered.
                   call find_excitation_permutation2(sys%basis%excit_mask, cdet%f, connection)
   
  -                ! 5b. Find the connecting matrix element.
  +                ! Find the connecting matrix element.
                   hmatel = slater_condon2_excit_ptr(sys, connection%from_orb(1), connection%from_orb(2), &
                                               connection%to_orb(1), connection%to_orb(2), connection%perm)
               else
  
positive.code:             ! virtual orbitals there.
  
              if (a_found .and. (jb_weights_tot > 0.0_p)) then
                  ! Use the alias method to select b with the appropriate probability
                  b_ind = select_weighted_value(rng, sys%read_in%pg_sym%nbasis_sym_spin(imsb,isymb), jb_weights, jb_weights_tot)
                  b = sys%read_in%pg_sym%sym_spin_basis_fns(b_ind,imsb,isymb)
  
                  if (.not.btest(cdet%f(sys%basis%bit_lookup(2,b)), sys%basis%bit_lookup(1,b))) then
           
                      ! 3b. Probability of generating this excitation.
  
                      ! Calculate p(ab|ij) = p(a|i) p(j|b) + p(b|i)p(a|j)
                      if (ij_spin==0) then
  
negative.code:             ! We actually choose a|i then b|j, but since we could have also generated the excitation b from i and a from j,
              ! we need to include that prob too.
  
              ! 3. Find a.
              ! Given i, construct the weights of all possible a
              if (sys%basis%basis_fns(i)%Ms < 0) then
                  ! [todo] - Consider doing a binary/linear search instead of using the alias method.
  