anchor.diff:  
     estimate = h_dir(alpha)
   
  -  call dirichlet_finalize()
  +  call finalize()
   
   end subroutine dirichlet
   
   subroutine nsb(n,counts,nc,estimate,err_estimate)
     use iso_fortran_env
  -  use dirichlet_mod, only: initialize_dirichlet, compute_multiplicities, dirichlet_finalize
  +  use dirichlet_mod, only: initialize_dirichlet, compute_multiplicities, finalize
     use nsb_mod, only: hnsb
     use nsb_mod, only: compute_integration_range
     implicit none
  
positive.code: 
    ! call hnsb(estimate,err_estimate, err)
  
    call dirichlet_finalize()
  
    call cpu_time(finish)
  
  
negative.code: 
    end subroutine compute_multiplicities
  
    subroutine finalize()
  
      if (allocated(multi)) then
         deallocate(multi)
      end if
  
      if (allocated(multi_z)) then
         deallocate(multi_z)
      end if
  
    end subroutine finalize
  
    pure real(real64) function log_pna(alpha)
      ! log(p(n|a)) (log of) marginal probability of data given alpha
  