code: def __create_tooltip_variables(
      attribute_df, metric, fairness_threshold
  ):
      """Creates disparity explanation and formatted group size tooltip variables."""
  
      # PARITY TEST EXPLANATION
      attribute_df[
          f"tooltip_parity_test_explanation_{metric}"
      ] = attribute_df.apply(
          lambda row: get_tooltip_text_parity_test_explanation(
              row[f"{metric}_parity_result"],
              fairness_threshold,
          ),
          axis=1,
      )
  
      # DISPARITY EXPLANATION
      ref_group = attribute_df["ref_group_value"].iloc[0]
  
      attribute_df[
          f"tooltip_disparity_explanation_{metric}"
      ] = attribute_df.apply(
          lambda row: get_tooltip_text_disparity_explanation(
              row[f"{metric}_disparity_scaled"],
              row["attribute_value"],
              metric,
              ref_group,
          ),
          axis=1,
      )
      # FORMATTED GROUP SIZE
  
      attribute_df["tooltip_group_size"] = attribute_df.apply(
          lambda row: get_tooltip_text_group_size(
              row["group_size"], row["total_entities"]
          ),
          axis=1,
      )
  
imports: import altair
  import pandas
  from aequitas.plot.commons.helpers import no_axis, transform_ratio, format_number, get_chart_metadata
  from aequitas.plot.commons.tooltips import get_tooltip_text_group_size, get_tooltip_text_disparity_explanation, get_tooltip_text_parity_test_explanation
  from aequitas.plot.commons.style.classes import Title, Subtitle, Parity_Result, Annotation, Legend
  from aequitas.plot.commons.style.text import FONT
  from aequitas.plot.commons.style.sizes import Summary_Chart
  from aequitas.plot.commons import initializers
  from aequitas.plot.commons import validators
  from aequitas.plot.commons import labels
label_desc: Use image node_id 12 for calling a global function with example usage: __create_tooltip_variables(attribute_df, metric, fairness_threshold) without return types