<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _GetKeysDefaultEmpty(self, top_level, keys, depth=1):
 """Retrieves plist keys, defaulting to empty values. Args: top_level (plistlib._InternalDict):
 top level plist object. keys (set[str]):
 names of keys that should be returned. depth (int):
 depth within the plist, where 1 is top level. Returns: dict[str, str]: values of the requested keys. """

    keys = set(keys)
    match = {}

    if depth == 1:
      for key in keys:
        value = top_level.get(key, None)
        if value is not None:
          match[key] = value
    else:
      for _, parsed_key, parsed_value in plist_interface.RecurseKey(
          top_level, depth=depth):
        if parsed_key in keys:
          match[parsed_key] = parsed_value
          if set(match.keys()) == keys:
            return match
    return match