+
    4O|jA'  ã                  óŽ   € R t ^ RIHt ^ RIt^ RIt^ RI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Ht  ! R	 R
4      tR# )z’Represent one server the driver is connected to.

.. seealso:: This module is compatible with both the synchronous and asynchronous PyMongo APIs.
)ÚannotationsN)ÚAnyÚMappingÚOptional)ÚEPOCH_NAIVE)ÚObjectId)ÚHello)ÚSERVER_TYPE)ÚClusterTimeÚ_Addressc                  ó  € ] tR t^ t$ RtRLtRMR R llt]R R l4       t]R R l4       t	]R	 R
 l4       t
]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R  l4       t]R! R" l4       t]R# R$ l4       t]R% R& l4       t]R' R( l4       t]R) R* l4       t]R+ R, l4       t]R- R. l4       t]R/ R0 l4       t]R1 R2 l4       t]R3 R4 l4       t]R5 R6 l4       t ]R7 R8 l4       t!]R9 R: l4       t"]R; R< l4       t#]R= R> l4       t$]R? R@ l4       t%RNRA RB llt&RC RD lt'RE RF lt(RG RH lt)/ t*RI]+RJ&   RKt,R# )OÚServerDescriptiona:  Immutable representation of one server.

:param address: A (host, port) pair
:param hello: Optional Hello instance
:param round_trip_time: Optional float
:param error: Optional, the last error attempting to connect to the server
:param round_trip_time: Optional float, the min latency from the most recent samples
Nc               ó0   € V ^8„  d   QhRRRRRRRRR	R
RR/# )é   Úaddressr   ÚhellozOptional[Hello[dict[str, Any]]]Úround_trip_timeúOptional[float]ÚerrorúOptional[Exception]Úmin_round_trip_timeÚfloatÚreturnÚNone© )Úformats   "ÚSC:\Users\alokc\chatbot\backend\venv\Lib\site-packages\pymongo/server_description.pyÚ__annotate__ÚServerDescription.__annotate__E   sF   € ÷ -)ñ -)àð-)ð /ð-)ð )ð	-)ð
 #ð-)ð #ð-)ð 
ñ-)ó    c                	ó  € Wn         V'       g   \        / 4      pVP                  V n        VP                  V n        VP                  V n        VP                  V n	        VP                  V n        VP                  V n        VP                  V n        VP                   V n        VP$                  V n        VP(                  V n        VP,                  V n        VP0                  V n        VP4                  V n        VP8                  V n        VP<                  V n        VP@                  V n!        W0n"        WPn#        VPH                  V n%        \L        PN                  ! 4       V n(        W@n)        VPT                  V n+        V'       d:   \Y        VR R4      p\[        V\\        4      '       d   VP_                  R4      V n+        V  VP`                  '       d/   VP`                  \b        ,
          pVPe                  4       V n3        R# RV n3        R# )ÚdetailsNÚtopologyVersion)4Ú_addressr   Úserver_typeÚ_server_typeÚ	all_hostsÚ
_all_hostsÚtagsÚ_tagsÚreplica_set_nameÚ_replica_set_nameÚprimaryÚ_primaryÚmax_bson_sizeÚ_max_bson_sizeÚmax_message_sizeÚ_max_message_sizeÚmax_write_batch_sizeÚ_max_write_batch_sizeÚmin_wire_versionÚ_min_wire_versionÚmax_wire_versionÚ_max_wire_versionÚset_versionÚ_set_versionÚelection_idÚ_election_idÚcluster_timeÚ_cluster_timeÚis_writableÚ_is_writableÚis_readableÚ_is_readableÚlogical_session_timeout_minutesÚ_ls_timeout_minutesÚ_round_trip_timeÚ_min_round_trip_timeÚmeÚ_meÚtimeÚ	monotonicÚ_last_update_timeÚ_errorÚtopology_versionÚ_topology_versionÚgetattrÚ
isinstanceÚdictÚgetÚlast_write_dater   Útotal_secondsÚ_last_write_date)Úselfr   r   r   r   r   r!   Údeltas   &&&&&&  r   Ú__init__ÚServerDescription.__init__E   s�  € ð  ŒßÜ˜"“IˆEà!×-Ñ-ˆÔØŸ/™/ˆŒØ—Z‘ZˆŒ
Ø!&×!7Ñ!7ˆÔØŸ™ˆŒØ#×1Ñ1ˆÔØ!&×!7Ñ!7ˆÔØ%*×%?Ñ%?ˆÔ"Ø!&×!7Ñ!7ˆÔØ!&×!7Ñ!7ˆÔØ!×-Ñ-ˆÔØ!×-Ñ-ˆÔØ"×/Ñ/ˆÔØ!×-Ñ-ˆÔØ!×-Ñ-ˆÔØ#(×#HÑ#HˆÔ Ø /ÔØ$7Ô!Ø—8‘8ˆŒÜ!%§¢Ó!1ˆÔØŒØ!&×!7Ñ!7ˆÔßÜ˜e Y°Ó5ˆGÜ˜'¤4×(Ò(Ø)0¯©Ð5FÓ)G�Ô&áØ× × Ð à×)Ñ)¬KÕ7ˆEØ$)×$7Ñ$7Ó$9ˆDÖ!à$(ˆDÖ!r   c               ó   € V ^8„  d   QhRR/# )r   r   r   r   )r   s   "r   r   r   u   s   € ÷ ñ ˜ñ r   c                ó   € V P                   # )z(The address (host, port) of this server.)r#   ©rU   s   &r   r   ÚServerDescription.addresst   ó   € ð �}‰}Ðr   c               ó   € V ^8„  d   QhRR/# ©r   r   Úintr   )r   s   "r   r   r   z   s   € ÷ !ñ !˜Sñ !r   c                ó   € V P                   # )zThe type of this server.)r%   r[   s   &r   r$   ÚServerDescription.server_typey   s   € ð × Ñ Ð r   c               ó   € V ^8„  d   QhRR/# ©r   r   Ústrr   )r   s   "r   r   r      s   € ÷ 6ñ 6 #ñ 6r   c                óD   € \         P                  V P                  ,          # )zCThe server type as a human readable string.

.. versionadded:: 3.4
)r	   Ú_fieldsr%   r[   s   &r   Úserver_type_nameÚ"ServerDescription.server_type_name~   s   € ô ×"Ñ" 4×#4Ñ#4Õ5Ð5r   c               ó   € V ^8„  d   QhRR/# )r   r   zset[tuple[str, int]]r   )r   s   "r   r   r   ‡   s   € ÷ ñ Ð/ñ r   c                ó   € V P                   # )z;List of hosts, passives, and arbiters known to this server.)r'   r[   s   &r   r&   ÚServerDescription.all_hosts†   s   € ð �‰Ðr   c               ó   € V ^8„  d   QhRR/# )r   r   zMapping[str, Any]r   )r   s   "r   r   r   Œ   s   € ÷ ñ Ð'ñ r   c                	ó   € V P                   # ©N)r)   r[   s   &r   r(   ÚServerDescription.tags‹   s   € à�z‰zÐr   c               ó   € V ^8„  d   QhRR/# )r   r   zOptional[str]r   )r   s   "r   r   r   �   s   € ÷ &ñ & -ñ &r   c                ó   € V P                   # )zReplica set name or None.)r+   r[   s   &r   r*   Ú"ServerDescription.replica_set_name�   s   € ð ×%Ñ%Ð%r   c               ó   € V ^8„  d   QhRR/# ©r   r   zOptional[tuple[str, int]]r   )r   s   "r   r   r   •   s   € ÷ ñ Ð2ñ r   c                ó   € V P                   # )z8This server's opinion about who the primary is, or None.)r-   r[   s   &r   r,   ÚServerDescription.primary”   r]   r   c               ó   € V ^8„  d   QhRR/# r_   r   )r   s   "r   r   r   š   s   € ÷ #ñ #˜sñ #r   c                	ó   € V P                   # ro   )r/   r[   s   &r   r.   ÚServerDescription.max_bson_size™   s   € à×"Ñ"Ð"r   c               ó   € V ^8„  d   QhRR/# r_   r   )r   s   "r   r   r   ž   ó   € ÷ &ñ & #ñ &r   c                	ó   € V P                   # ro   )r1   r[   s   &r   r0   Ú"ServerDescription.max_message_size�   ó   € à×%Ñ%Ð%r   c               ó   € V ^8„  d   QhRR/# r_   r   )r   s   "r   r   r   ¢   s   € ÷ *ñ * cñ *r   c                	ó   € V P                   # ro   )r3   r[   s   &r   r2   Ú&ServerDescription.max_write_batch_size¡   s   € à×)Ñ)Ð)r   c               ó   € V ^8„  d   QhRR/# r_   r   )r   s   "r   r   r   ¦   r|   r   c                	ó   € V P                   # ro   )r5   r[   s   &r   r4   Ú"ServerDescription.min_wire_version¥   r   r   c               ó   € V ^8„  d   QhRR/# r_   r   )r   s   "r   r   r   ª   r|   r   c                	ó   € V P                   # ro   ©r7   r[   s   &r   r6   Ú"ServerDescription.max_wire_version©   r   r   c               ó   € V ^8„  d   QhRR/# ©r   r   zOptional[int]r   )r   s   "r   r   r   ®   s   € ÷ !ñ !˜]ñ !r   c                	ó   € V P                   # ro   )r9   r[   s   &r   r8   ÚServerDescription.set_version­   ó   € à× Ñ Ð r   c               ó   € V ^8„  d   QhRR/# )r   r   zOptional[ObjectId]r   )r   s   "r   r   r   ²   s   € ÷ !ñ !Ð/ñ !r   c                	ó   € V P                   # ro   )r;   r[   s   &r   r:   ÚServerDescription.election_id±   rŽ   r   c               ó   € V ^8„  d   QhRR/# )r   r   zOptional[ClusterTime]r   )r   s   "r   r   r   ¶   s   € ÷ "ñ "Ð3ñ "r   c                	ó   € V P                   # ro   )r=   r[   s   &r   r<   ÚServerDescription.cluster_timeµ   s   € à×!Ñ!Ð!r   c               ó   € V ^8„  d   QhRR/# )r   r   z(tuple[Optional[int], Optional[ObjectId]]r   )r   s   "r   r   r   º   s   € ÷ 4ñ 4Ð Hñ 4r   c                	ól   € \         P                  ! R \        ^R7       V P                  V P                  3# )zL'election_tuple' is deprecated, use  'set_version' and 'election_id' instead)Ú
stacklevel)ÚwarningsÚwarnÚDeprecationWarningr9   r;   r[   s   &r   Úelection_tupleÚ ServerDescription.election_tuple¹   s0   € ä�ŠØZÜØõ	
ð
 × Ñ  $×"3Ñ"3Ð3Ð3r   c               ó   € V ^8„  d   QhRR/# ru   r   )r   s   "r   r   r   Ã   s   € ÷ ñ Ð-ñ r   c                	ó   € V P                   # ro   )rG   r[   s   &r   rF   ÚServerDescription.meÂ   s   € à�x‰xˆr   c               ó   € V ^8„  d   QhRR/# r‹   r   )r   s   "r   r   r   Ç   s   € ÷ (ñ (°ñ (r   c                	ó   € V P                   # ro   )rC   r[   s   &r   rB   Ú1ServerDescription.logical_session_timeout_minutesÆ   s   € à×'Ñ'Ð'r   c               ó   € V ^8„  d   QhRR/# ©r   r   r   r   )r   s   "r   r   r   Ë   s   € ÷ %ñ % ñ %r   c                	ó   € V P                   # ro   )rT   r[   s   &r   rR   Ú!ServerDescription.last_write_dateÊ   s   € à×$Ñ$Ð$r   c               ó   € V ^8„  d   QhRR/# ©r   r   r   r   )r   s   "r   r   r   Ï   s   € ÷ &ñ & %ñ &r   c                	ó   € V P                   # ro   )rJ   r[   s   &r   Úlast_update_timeÚ"ServerDescription.last_update_timeÎ   r   r   c               ó   € V ^8„  d   QhRR/# r¤   r   )r   s   "r   r   r   Ó   s   € ÷ %ñ % ñ %r   c                óŠ   € V P                   V P                  9   d   V P                  V P                   ,          # V P                  # )z$The current average latency or None.)r#   Ú_host_to_round_trip_timerD   r[   s   &r   r   Ú!ServerDescription.round_trip_timeÒ   s7   € ð �=‰=˜D×9Ñ9Ô9Ø×0Ñ0°·±Õ?Ð?à×$Ñ$Ð$r   c               ó   € V ^8„  d   QhRR/# r¨   r   )r   s   "r   r   r   Ü   s   € ÷ )ñ ) Uñ )r   c                ó   € V P                   # )z-The min latency from the most recent samples.)rE   r[   s   &r   r   Ú%ServerDescription.min_round_trip_timeÛ   s   € ð ×(Ñ(Ð(r   c               ó   € V ^8„  d   QhRR/# )r   r   r   r   )r   s   "r   r   r   á   s   € ÷ ñ Ð*ñ r   c                ó   € V P                   # )z<The last error attempting to connect to the server, or None.)rK   r[   s   &r   r   ÚServerDescription.errorà   s   € ð �{‰{Ðr   c               ó   € V ^8„  d   QhRR/# ©r   r   Úboolr   )r   s   "r   r   r   æ   ó   € ÷ !ñ !˜Tñ !r   c                	ó   € V P                   # ro   )r?   r[   s   &r   r>   ÚServerDescription.is_writableå   rŽ   r   c               ó   € V ^8„  d   QhRR/# r·   r   )r   s   "r   r   r   ê   r¹   r   c                	ó   € V P                   # ro   )rA   r[   s   &r   r@   ÚServerDescription.is_readableé   rŽ   r   c               ó   € V ^8„  d   QhRR/# r·   r   )r   s   "r   r   r   î   s   € ÷ 7ñ 7˜ñ 7r   c                	ó<   € V P                   \        P                  8H  # ro   )r%   r	   ÚMongosr[   s   &r   ÚmongosÚServerDescription.mongosí   s   € à× Ñ ¤K×$6Ñ$6Ñ6Ð6r   c               ó   € V ^8„  d   QhRR/# r·   r   )r   s   "r   r   r   ò   s   € ÷ 7ñ 7 dñ 7r   c                	ó<   € V P                   \        P                  8g  # ro   )r$   r	   ÚUnknownr[   s   &r   Úis_server_type_knownÚ&ServerDescription.is_server_type_knownñ   s   € à×Ñ¤;×#6Ñ#6Ñ6Ð6r   c               ó   € V ^8„  d   QhRR/# r·   r   )r   s   "r   r   r   ö   s   € ÷ ;ñ ;¨Dñ ;r   c                ó¦   € V P                   \        P                  \        P                  39   ;'       g    V P                   \        P                  8H  # ©z0Checks if this server supports retryable writes.)r%   r	   rÁ   Ú	RSPrimaryÚLoadBalancerr[   s   &r   Úretryable_writes_supportedÚ,ServerDescription.retryable_writes_supportedõ   sF   € ð ×Ñ¤+×"4Ñ"4´k×6KÑ6KÐ!LÑL÷;ð ;à×Ñ¤+×":Ñ":Ñ:ð	;r   c               ó   € V ^8„  d   QhRR/# r·   r   )r   s   "r   r   r   ý   s   € ÷ +ñ +¨4ñ +r   c                ó    € V P                   ^8¬  # rË   rˆ   r[   s   &r   Úretryable_reads_supportedÚ+ServerDescription.retryable_reads_supportedü   s   € ð ×%Ñ%¨Ñ*Ð*r   c               ó   € V ^8„  d   QhRR/# )r   r   zOptional[Mapping[str, Any]]r   )r   s   "r   r   r     s   € ÷ &ñ &Ð"=ñ &r   c                	ó   € V P                   # ro   )rM   r[   s   &r   rL   Ú"ServerDescription.topology_version  r   r   c               ó    € V ^8„  d   QhRRRR/# )r   r   r   r   r   r   )r   s   "r   r   r     s   € ÷ ñ Ð 3ð Ð?Pñ r   c                	óV   € \        V P                  VR 7      pV P                  Vn        V# ))r   )r   r   rL   rM   )rU   r   Úunknowns   && r   Ú
to_unknownÚServerDescription.to_unknown  s%   € Ü# D§L¡L¸Ô>ˆØ$(×$9Ñ$9ˆÔ!Øˆr   c               ó    € V ^8„  d   QhRRRR/# ©r   Úotherr   r   r¸   r   )r   s   "r   r   r   
  s   € ÷ ñ ˜Cð  Dñ r   c                	ó�  € \        V\        4      '       Ed«   V P                  VP                  8H  ;'       Ed‰    V P                  VP
                  8H  ;'       Edg    V P                  VP                  8H  ;'       EdE    V P                  VP                  8H  ;'       Ed#    V P                  VP                  8H  ;'       Ed    V P                  VP                  8H  ;'       dà    V P                  VP                  8H  ;'       d¿    V P                   VP"                  8H  ;'       dž    V P$                  VP&                  8H  ;'       d}    V P(                  VP*                  8H  ;'       d\    V P,                  VP.                  8H  ;'       d;    V P0                  VP2                  8H  ;'       d    V P4                  VP6                  8H  # \8        # ro   )rO   r   r#   r   r%   r$   r5   r4   r7   r6   rG   rF   r'   r&   r)   r(   r+   r*   r9   r8   r;   r:   r-   r,   rC   rB   rK   r   ÚNotImplemented©rU   rÞ   s   &&r   Ú__eq__ÚServerDescription.__eq__
  s•  € Ü�eÔ.×/Ó/à—‘ %§-¡-Ñ/÷ 1ñ 1Ø×&Ñ&¨%×*;Ñ*;Ñ;÷1ñ 1à×+Ñ+¨u×/EÑ/EÑE÷1ñ 1ð ×+Ñ+¨u×/EÑ/EÑE÷1ñ 1ð —X‘X §¡Ñ)÷	1ñ 1ð
 —_‘_¨¯©Ñ7÷1ð 1ð —Z‘Z 5§:¡:Ñ-÷1ð 1ð ×+Ñ+¨u×/EÑ/EÑE÷1ð 1ð ×&Ñ&¨%×*;Ñ*;Ñ;÷1ð 1ð ×&Ñ&¨%×*;Ñ*;Ñ;÷1ð 1ð —]‘] e§m¡mÑ3÷1ð 1ð ×-Ñ-°×1VÑ1VÑV÷1ð 1ð —[‘[ E§K¡KÑ/ðô  Ðr   c               ó    € V ^8„  d   QhRRRR/# rÝ   r   )r   s   "r   r   r     s   € ÷ !ñ !˜Cð ! Dñ !r   c                	ó   € W8X  * # ro   r   rá   s   &&r   Ú__ne__ÚServerDescription.__ne__  s   € ØÒ Ð r   c               ó   € V ^8„  d   QhRR/# rd   r   )r   s   "r   r   r   !  s   € ÷ 

ñ 

˜#ñ 

r   c                	óØ   € R pV P                   '       d   RV P                   : 2pRP                  V P                  P                  V P                  V P
                  V P                  V4      # )Ú z, error=z"<{} {} server_type: {}, rtt: {}{}>)r   r   Ú	__class__Ú__name__r   rh   r   )rU   Úerrmsgs   & r   Ú__repr__ÚServerDescription.__repr__!  s\   € ØˆØ�:�:ˆ:Ø §
¡
™~Ð.ˆFØ3×:Ñ:Ø�N‰N×#Ñ#Ø�L‰LØ×!Ñ!Ø× Ñ Øó
ð 	
r   rP   r®   )r#   r'   r=   r;   rK   rA   r?   rJ   rT   rC   r/   r1   r7   r3   rG   rE   r5   r-   r+   rD   r%   r9   r)   rM   )r#   r%   r'   r)   r+   r-   r/   r1   r3   r5   r7   rD   rE   rG   r?   rA   rC   rK   r9   r;   r=   rT   rJ   rM   )NNNg        ro   )-rì   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú	__slots__rW   Úpropertyr   r$   rh   r&   r(   r*   r,   r.   r0   r2   r4   r6   r8   r:   r<   r›   rF   rB   rR   rª   r   r   r   r>   r@   rÂ   rÇ   rÎ   rÒ   rL   rÚ   râ   ræ   rî   r®   Ú__annotations__Ú__static_attributes__r   r   r   r   r       s�  ‡ ñð€I÷6-)ð^ ôó ðð ô!ó ð!ð ô6ó ð6ð ôó ðð ôó ðð ô&ó ð&ð ôó ðð ô#ó ð#ð ô&ó ð&ð ô*ó ð*ð ô&ó ð&ð ô&ó ð&ð ô!ó ð!ð ô!ó ð!ð ô"ó ð"ð ô4ó ð4ð ôó ðð ô(ó ð(ð ô%ó ð%ð ô&ó ð&ð ô%ó ð%ð ô)ó ð)ð ôó ðð ô!ó ð!ð ô!ó ð!ð ô7ó ð7ð ô7ó ð7ð ô;ó ð;ð ô+ó ð+ð ô&ó ð&÷õ
õ(!õ

ð &(Ð˜d×'r   r   )ró   Ú
__future__r   rH   r˜   Útypingr   r   r   Úbsonr   Úbson.objectidr   Úpymongo.hellor   Úpymongo.server_typer	   Úpymongo.typingsr
   r   r   r   r   r   Ú<module>rÿ      s6   ðñõ #ã Û ß )Ñ )å Ý "Ý Ý +ß 1÷N(ó N(r   