anchor.diff:  
       end subroutine remove_unoccupied_dets
   
  -    subroutine round_low_population_spawns(rng)
  +    subroutine round_low_population_spawns(rng, lower_bound)
   
           ! Loop over all spawned walkers. For each walker with a population of
           ! less than one, round it up to one with a probability equal to its
  
positive.code: 
          ! In/Out:
          !    rng: random number generator.
  
          use dSFMT_interface, only: dSFMT_t
          use stoch_utils, only: stochastic_round
  
          type(dSFMT_t), intent(inout) :: rng
  
          integer :: i, k, itype, nremoved
          integer(int_s) :: real_factor_s
          real(dp) :: r
          integer, parameter :: thread_id = 0
  
          real_factor_s = int(real_factor, int_s)
  
          nremoved = 0
          ! [note] - It might be more efficient to combine this with insert_new_walkers.
          ! [note] - The number of particles to insert should be small by this point though...
          do i = 1, qmc_spawn%head(thread_id,0)
  
              ! spawned_population holds the spawned population in its encoded
              ! form (see comments for walker_population).
  
negative.code: 
              ! Remove low-population spawned walkers by stochastically
              ! rounding their population up to one or down to zero.
              if (real_amplitudes) call round_low_population_spawns(rng, lower_bound)
  
              ! Insert new walkers into main walker list.
              call insert_new_walkers(sys, spawn, determ_flags, lower_bound)
  