anchor.diff:      ! (on each processor).
       real(p), allocatable :: reduced_density_matrix(:,:)
       ! The trace of the ground-state RDM.
  -    ! TODO: Currently ground-state RDMs use the global rdm_traces, the same
  -    !       as instantaneous RDMs. This needs updating.
  +    ! [todo] - Currently ground-state RDMs use the global rdm_traces, the same
  +    ! [todo] - as instantaneous RDMs. This needs updating.
       real(p) :: trace
   end type dmqmc_ground_rdm_t
   
   
   !--- Type for weighted sampling parameters ---
   type dmqmc_weighted_sampling_t
  +    ! [review] - JSS: the commented bounds seem specific to the Heisenberg
  +    ! [review] - JSS: model.  Check for other systems.
       real(p), allocatable :: dmqmc_sampling_probs(:) ! (min(nel, nsites-nel))
       real(p), allocatable :: dmqmc_accumulated_probs(:) ! (min(nel, nsites-nel) + 1)
       real(p), allocatable :: dmqmc_accumulated_probs_old(:) ! (min(nel, nsites-nel) + 1)
  
positive.code:     ! [review] - JSS: both input-derived data.
      ! [review] - NSB: True, but its not really an input option, so I'm not
      ! [review] - NSB: sure it belongs in an input type. Is that what you're
      ! [review] - suggesting? They're perhaps more system, or estimator related.
      integer(i0), allocatable :: correlation_mask(:) ! (string_len)
      ! correlation_sites stores the site positions specified by the users
      ! initially (as orbital labels).
  
negative.code: 
  ! True if allowing non-integer values for psip populations.
  logical :: real_amplitudes = .false.
  
  ! Calculate replicas (ie evolve two wavefunctions/density matrices at once)?
  ! Currently only implemented for DMQMC.
  logical :: replica_tricks = .false.
  
  ! --- DMQMC input --
  
  ! [review] - JSS: derived types for input options for the base algorithm, input
  ! [review] - JSS: options for the estimators calculated (and separately for RDMs?)?
  
  ! If this logical is true then the program runs the DMQMC algorithm with
  ! importance sampling.
  