code: def _extract_compute_skew_result(
      results: beam.pvalue.DoOutputsTuple,
  ) -> Tuple[
      beam.PCollection[
          Tuple[str, feature_skew_results_pb2.FeatureSkew]
      ],
      beam.PCollection[feature_skew_results_pb2.SkewPair],
      beam.PCollection[np.ndarray],
      Optional[
          beam.PCollection[
              Tuple[_ConfusionFeatureValue, _ConfusionFeatureValue, str]
          ]
      ],
  ]:
      """Extracts results of _ComputeSkew and fixes type hints."""
  
      # Fix output type hints.
      # TODO(b/211806179): Revert this hack.
      results_skew_results = results[
          SKEW_RESULTS_KEY
      ] | "FixSkewResultsTypeHints" >> beam.Map(
          lambda x: x
      ).with_output_types(
          Tuple[str, feature_skew_results_pb2.FeatureSkew]
      )
      results_skew_pairs = results[
          SKEW_PAIRS_KEY
      ] | "FixSkewPairsTypeHints" >> beam.Map(
          lambda x: x
      ).with_output_types(
          feature_skew_results_pb2.SkewPair
      )
      results_match_stats = results[
          MATCH_STATS_KEY
      ] | "FixMatchStatsTypeHints" >> beam.Map(
          lambda x: x
      ).with_output_types(
          np.ndarray
      )
      try:
          results_confusion_tuples = results[
              CONFUSION_KEY
          ] | "FixConfusionTypeHints" >> beam.Map(
              lambda x: x
          ).with_output_types(
              Tuple[_ConfusionFeatureValue, _ConfusionFeatureValue, str]
          )
      except ValueError:
          results_confusion_tuples = None
      return (
          results_skew_results,
          results_skew_pairs,
          results_match_stats,
          results_confusion_tuples,
      )
  
imports: from typing import Any, Dict, Iterable, Iterator, List, Optional, Tuple, Union
  import apache_beam
  import farmhash
  import numpy
  import tensorflow
  from tensorflow_data_validation import constants
  from tensorflow_data_validation import types
  from tensorflow_data_validation.utils import artifacts_io_impl
  from tensorflow_data_validation.skew.protos import feature_skew_results_pb2
label_desc: Use image node_id 11 for calling a global function with example usage: _extract_compute_skew_result(results) and returns: results_skew_results,  results_skew_pairs,  results_match_stats,  results_confusion_tuples