code: def _mac_binary_formats(version, cpu_arch):
      # type: (MacVersion, str) -> List[str]
      formats = [cpu_arch]
      if cpu_arch == "x86_64":
          if version < (10, 4):
              return []
          formats.extend(["intel", "fat64", "fat32"])
  
      elif cpu_arch == "i386":
          if version < (10, 4):
              return []
          formats.extend(["intel", "fat32", "fat"])
  
      elif cpu_arch == "ppc64":
          # TODO: Need to care about 32-bit PPC for ppc64 through 10.2?
          if version > (10, 5) or version < (10, 4):
              return []
          formats.append("fat64")
  
      elif cpu_arch == "ppc":
          if version > (10, 6):
              return []
          formats.extend(["fat32", "fat"])
  
      if cpu_arch in {"arm64", "x86_64"}:
          formats.append("universal2")
  
      if cpu_arch in {"x86_64", "i386", "ppc64", "ppc", "intel"}:
          formats.append("universal")
  
      return formats
  
imports: from __future__ import absolute_import
  import distutils.util
  import collections
  import logging
  import os
  import platform
  import re
  import struct
  import sys
  import sysconfig
  import warnings
  from ._typing import TYPE_CHECKING, cast
label_desc: Use image node_id 13 for calling a global function with example usage: _mac_binary_formats(version, cpu_arch) and returns: formats, list, list, list, list