fn kill_and_reap_solver_process( child: &mut Child, stdout_reader: Option<JoinHandle<Result<String, String>>>, stderr_reader: Option<JoinHandle<Result<String, String>>>, )