code: def convert_struct_to_dict(x):
      if isinstance(x, hl.Struct):
          return {
              k: convert_struct_to_dict(v) for k, v in x._fields.items()
          }
      elif isinstance(x, list):
          return [convert_struct_to_dict(elt) for elt in x]
      elif isinstance(x, tuple):
          return tuple([convert_struct_to_dict(elt) for elt in x])
      elif isinstance(x, dict):
          return {k: convert_struct_to_dict(v) for k, v in x.items()}
      else:
          return x
  
imports: from typing import Callable, TypeVar
  from typing_extensions import ParamSpec
  import os
  from timeit import default_timer
  import unittest
  import pytest
  from hailtop.hail_decorator import decorator
  from hail.utils.java import choose_backend
  import hail
label_desc: Use image node_id 6 for calling a global function with example usage: convert_struct_to_dict(x) and returns: unknown, unknown, tuple, unknown, x