+
    4O|j¢  ã                  óL  € R t ^ RIHt ^ RIHtHt . ROt^t Rt Rt	 Rt
 Rt Rt ^ RIHt ^ RIHtHtHt ^ R	IHt ^ R
IHtHtHt ^ RIHt ^ RIHtHtHtHtH t H!t!H"t" ^ RI#H$t$ ^ RI%H&t& ^ RI'H(t( ^ RI)H*t* ^ RIH+t+ ^ RIH,t, ^ RIH-t- ^ RIH.t. ^ RIH/t/ ^ RIH0t0 ]t1 R R lt2R# )zPython driver for MongoDB.)Úannotations)ÚContextManagerÚOptionalÚ2dÚ2dsphereÚhashedÚtext)Ú_csot)Ú__version__Úget_version_stringÚversion_tuple)ÚAsyncMongoClient)ÚMAX_SUPPORTED_WIRE_VERSIONÚMIN_SUPPORTED_WIRE_VERSIONÚhas_c)Ú
CursorType)Ú
DeleteManyÚ	DeleteOneÚ
IndexModelÚ	InsertOneÚ
ReplaceOneÚ
UpdateManyÚ	UpdateOne)ÚReadPreference)ÚReturnDocument)ÚMongoClient)ÚWriteConcern)Ú
uri_parser)Úchange_stream)Úclient_session)Ú
collection)Úcommand_cursor)Údatabasec               ó    € V ^8„  d   QhRRRR/# )é   ÚsecondszOptional[float]ÚreturnzContextManager[None]© )Úformats   "ÚIC:\Users\alokc\chatbot\backend\venv\Lib\site-packages\pymongo/__init__.pyÚ__annotate__r*   z   s   € ÷ 8*ñ 8*�_ð 8*Ð)=ñ 8*ó    c                óú   € \        V \        \        \        R4      34      '       g   \	        R\        V 4       24      hV '       d   V ^ 8  d   \        R4      hV e   \        V 4      p \        P                  ! V 4      # )ap  **(Provisional)** Apply the given timeout for a block of operations.

.. note:: :func:`~pymongo.timeout` is currently provisional. Backwards
   incompatible changes may occur before becoming officially supported.

Use :func:`~pymongo.timeout` in a with-statement::

  with pymongo.timeout(5):
      client.db.coll.insert_one({})
      client.db.coll2.insert_one({})

When the with-statement is entered, a deadline is set for the entire
block. When that deadline is exceeded, any blocking pymongo operation
will raise a timeout exception. For example::

  try:
      with pymongo.timeout(5):
          client.db.coll.insert_one({})
          time.sleep(5)
          # The deadline has now expired, the next operation will raise
          # a timeout exception.
          client.db.coll2.insert_one({})
  except PyMongoError as exc:
      if exc.timeout:
          print(f"block timed out: {exc!r}")
      else:
          print(f"failed with non-timeout error: {exc!r}")

When nesting :func:`~pymongo.timeout`, the nested deadline is capped by
the outer deadline. The deadline can only be shortened, not extended.
When exiting the block, the previous deadline is restored::

  with pymongo.timeout(5):
      coll.find_one()  # Uses the 5 second deadline.
      with pymongo.timeout(3):
          coll.find_one() # Uses the 3 second deadline.
      coll.find_one()  # Uses the original 5 second deadline.
      with pymongo.timeout(10):
          coll.find_one()  # Still uses the original 5 second deadline.
      coll.find_one()  # Uses the original 5 second deadline.

:param seconds: A non-negative floating point number expressing seconds, or None.

:raises: :py:class:`ValueError`: When `seconds` is negative.

See `Limit Server Execution Time <https://www.mongodb.com/docs/languages/python/pymongo-driver/current/connect/connection-options/csot/#overview>`_ for more examples.

.. versionadded:: 4.2
Nz.timeout must be None, an int, or a float, not ztimeout cannot be negative)Ú
isinstanceÚintÚfloatÚtypeÚ	TypeErrorÚ
ValueErrorr	   Ú_TimeoutContext)r%   s   &r)   Útimeoutr4   z   si   € ôd �g¤¤U¬D°«JÐ7×8Ò8ÜÐHÌÈgËÈÐXÓYÐYß�7˜Q”;ÜÐ5Ó6Ð6ØÒÜ˜“.ˆÜ× Ò  Ó)Ð)r+   N)Ú	ASCENDINGÚ
DESCENDINGÚGEO2DÚ	GEOSPHEREÚHASHEDÚTEXTr   r   r
   Úversionr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r4   éÿÿÿÿ)3Ú__doc__Ú
__future__r   Útypingr   r   Ú__all__r5   r6   r7   r8   r9   r:   Úpymongor	   Úpymongo._versionr
   r   r   Ú!pymongo.asynchronous.mongo_clientr   Úpymongo.commonr   r   r   Úpymongo.cursorr   Úpymongo.operationsr   r   r   r   r   r   r   Úpymongo.read_preferencesr   Úpymongo.synchronous.collectionr   Ú pymongo.synchronous.mongo_clientr   Úpymongo.write_concernr   r   r   r   r    r!   r"   r;   r4   r'   r+   r)   Ú<module>rK      s®   ðñ !Ý "ç +ò€ð< €	Ø Ø€
Ø à€ðð
 €	ðð 
€ðð €ð	õ ß KÑ KÝ >ß XÑ XÝ %÷÷ ñ õ 4Ý 9Ý 8Ý .õ Ý !Ý "Ý Ý "Ý ð €Ø !÷8*r+   