docs: def graceful_get(d, *args):
      """
      Obtain values from dicts and lists gracefully. Example:
  
      ::
  
          print(graceful_get({"a": [{1: 2}, {"b": "c"}]}, "a", "b"))
          c
  
      :param d: collection (usually a dict or list)
      :param args: list of keys which are used as a lookup
      :return: the value from your collection
      """
      if not d:
          return d
      value = d
      for arg in args:
          try:
              value = value[arg]
          except (IndexError, KeyError, AttributeError, TypeError) as ex:
              logger.debug("exception while getting a value %r from %s", ex, str(value)[:32])
              return None
      return value