docs: def set_default_timeout(timeout=None, connect_timeout=None, read_timeout=None):
      """
      The purpose of this function is to install default socket timeouts that
      different than those used by boto3 and botocore. Clients obtained from the
      `fleece.boto3.client()` function will have these timeouts set, unless
      explicitly overriden.
  
      The default timeouts set through this option apply to the entire process.
      For that reason, it is recommended that this function is only called once
      during startup, and from the main thread, before any other threads are
      spawned.
  
      Socket timeouts are automatically retried by boto, according to its own
      retry policies.
  
      :param timeout timeout for socket connections and reads in seconds. This is
                     a convenience argument that applies the same default to both
                     connection and read timeouts.
      :param connect_timeout timeout for socket connections in seconds.
      :param read_timeout timeout for socket reads in seconds.
      """
      global DEFAULT_TIMEOUT
      global DEFAULT_CONNECT_TIMEOUT
      global DEFAULT_READ_TIMEOUT
      DEFAULT_TIMEOUT = timeout
      DEFAULT_CONNECT_TIMEOUT = connect_timeout
      DEFAULT_READ_TIMEOUT = read_timeout