code: def _join_cond_outputs(
      jaxprs,
      all_res_avals,
      res_aval_indices_per_jaxpr,
      num_non_res_outputs,
  ):
      def augment_jaxpr(jaxpr, res_indices):
          @lu.wrap_init
          def f_aug(*args):
              outs_and_residuals = core.jaxpr_as_fun(jaxpr)(*args)
              outs, residuals = split_list(
                  outs_and_residuals, [num_non_res_outputs]
              )
              aug_residuals = map(
                  ad_util.zeros_like_aval, all_res_avals
              )
              aug_residuals = util.subvals(
                  aug_residuals, zip(res_indices, residuals)
              )
              return outs + list(aug_residuals)
  
          return _make_closed_jaxpr(f_aug, jaxpr.in_avals)
  
      return tuple(
          map(augment_jaxpr, jaxprs, res_aval_indices_per_jaxpr)
      )
  
imports: from __future__ import annotations
  import collections
  from collections.abc import Sequence
  import functools
  from functools import partial
  import inspect
  import itertools
  import operator
  from typing import Any, Callable, TypeVar
  from jax.tree_util import tree_flatten, tree_unflatten
  from jax._src import ad_util
  from jax._src import config
  from jax._src import core
  from jax._src import dispatch
  from jax._src import dtypes
  from jax._src import effects
  from jax._src import linear_util
  from jax._src import source_info_util
  from jax._src import util
  from jax._src.state.discharge import register_discharge_rule, discharge_state
  from jax._src.state.types import AbstractRef, RefEffect
  from jax._src.core import ConcreteArray, raise_to_shaped, replace_jaxpr_effects
  from jax._src.interpreters import ad
  from jax._src.interpreters import batching
  from jax._src.interpreters import mlir
  from jax._src.interpreters import partial_eval
  from jax._src.interpreters import xla
  from jax._src.lax import lax
  from jax._src.traceback_util import api_boundary
  from jax._src.util import safe_map, split_list, partition_list
  from jax._src.lib.mlir import ir
  from jax._src.lib.mlir.dialects import hlo
  import numpy
  from jax._src.lax.control_flow.common import _abstractify, _avals_short, _check_tree_and_avals, _initial_style_jaxprs_with_common_consts, _make_closed_jaxpr, _prune_zeros, _typecheck_param
label_desc: Use image node_id 14 for calling a global function with example usage: _join_cond_outputs(jaxprs, all_res_avals, res_aval_indices_per_jaxpr, num_non_res_outputs) and returns: tuple, _make_closed_jaxpr, unknown