docs: def await_result(obj, timeout=None):
      """
      Return the result of a `Future` object.
  
      :param obj:
          Value object.
      :type obj: concurrent.futures.Future | object
  
      :param timeout:
          The number of seconds to wait for the result if the future isn't done.
          If None, then there is no limit on the wait time.
      :type timeout: int
  
      :return:
          Result.
      :rtype: object
  
      Example::
  
          >>> from concurrent.futures import Future
          >>> fut = Future()
          >>> fut.set_result(3)
          >>> await_result(fut), await_result(4)
          (3, 4)
      """
      from concurrent.futures import Future
      return obj.result(timeout) if isinstance(obj, Future) else obj