code: def _add_cross_slice_key_data(
      slice_key: slicer.CrossSliceKeyType,
      metrics: view_types.MetricsByTextKey,
      data: List[Any],
  ):
      """Adds data for cross slice key.
  
      Baseline and comparison slice keys are joined by '__XX__'.
      Args:
        slice_key: Cross slice key.
        metrics: Metrics data for the cross slice key.
        data: List where UI data is to be appended.
      """
      baseline_key = slice_key[0]
      comparison_key = slice_key[1]
      stringify_slice_value = (
          stringify_slice_key_value(baseline_key)
          + "__XX__"
          + stringify_slice_key_value(comparison_key)
      )
      stringify_slice = (
          slicer.stringify_slice_key(baseline_key)
          + "__XX__"
          + slicer.stringify_slice_key(comparison_key)
      )
      data.append(
          {
              "sliceValue": stringify_slice_value,
              "slice": stringify_slice,
              "metrics": metrics,
          }
      )
  
file_path: model-analysis/tensorflow_model_analysis/addons/fairness/view/widget_view.py
imports: from typing import Optional, Dict, Callable, Any, List, Tuple
  import tensorflow
  from tensorflow_model_analysis.addons.fairness.notebook import visualization
  from tensorflow_model_analysis.slicer import slicer_lib
  from tensorflow_model_analysis.view import view_types
label_desc: Use image node_id 2 for calling a global function with example usage: _add_cross_slice_key_data(slice_key, metrics, data) without return types