code: def _average_utility_report(
      report: metrics.UtilityReport,
      sums_actual: Tuple,
      total_weight: float,
  ) -> None:
      """Averages fields of the 'report' across partitions."""
      if not report.metric_errors:
          return
  
      for sum_actual, metric_error in zip(
          sums_actual, report.metric_errors
      ):
          scaling_factor = (
              0 if total_weight == 0 else 1.0 / total_weight
          )
          _multiply_float_dataclasses_field(
              metric_error,
              scaling_factor,
              fields_to_ignore=["noise_std", "ratio_data_dropped"],
          )
          dropped_scaling_factor = (
              1 if sum_actual == 0 else 1.0 / sum_actual
          )
          _multiply_float_dataclasses_field(
              metric_error.ratio_data_dropped, dropped_scaling_factor
          )
  
imports: import copy
  import pipeline_dp
  from analysis import metrics
  import dataclasses
  from typing import List, Tuple, Callable
  import math
label_desc: Use image node_id 13 for calling a global function with example usage: _average_utility_report(report, sums_actual, total_weight) without return types