code: def get_multizone_status(host, services=None, zconf=None):
      
  
      try:
          status = status = _get_status(
              host, services, zconf, "/setup/eureka_info?params=multizone")
  
          dynamic_groups = []
          if 'multizone' in status and 'dynamic_groups' in status['multizone']:
              for group in status['multizone']['dynamic_groups']:
                  name = group.get('name', "Unknown group name")
                  udn = group.get('uuid', None)
                  uuid = None
                  if udn:
                      uuid = UUID(udn.replace('-', ''))
                  dynamic_groups.append(MultizoneInfo(name, uuid))
  
          groups = []
          if 'multizone' in status and 'groups' in status['multizone']:
              for group in status['multizone']['groups']:
                  name = group.get('name', "Unknown group name")
                  udn = group.get('uuid', None)
                  uuid = None
                  if udn:
                      uuid = UUID(udn.replace('-', ''))
                  groups.append(MultizoneInfo(name, uuid))
  
          return MultizoneStatus(dynamic_groups, groups)
  
      except (requests.exceptions.RequestException, OSError, ValueError):
          return None
docs: :param host: Hostname or ip to fetch status from
      :type host: str
      :return: The multizone status as a named tuple.
      :rtype: pychromecast.dial.MultizoneStatus or None