+
    i+                     D   R t ^ RIt^ RIt^ RIt^ RIt^ RIHtHtHtH	t	 ^ RI
t
^ RI
Ht ^ RIHt ]P                  ! ]4      tRt ! R R]P$                  ! RR4      ]
P&                  4      t ! R	 R
]
P(                  4      t ! R R]
P,                  4      tR R ltR R ltR# )z#Internal utilities for gRPC Python.N)CallableDictOptionalSequence)_commonDoneCallbackTypez6Exception calling connectivity future "done" callback!c                       ] tR t^!tRtR# )RpcMethodHandler N)__name__
__module____qualname____firstlineno____static_attributes__r       b/Users/igloo/.openclaw/workspace/scratch/fb_ad_env/lib/python3.14/site-packages/grpc/_utilities.pyr
   r
   !   s      	r   r
   _RpcMethodHandlerc                   b   a  ] tR t^4t o V 3R lR ltV 3R lR ltV 3R lR ltV 3R ltRtV t	R	# )
DictionaryGenericHandlerc                P   < V ^8  d   QhRS[ RS[S[ S[P                  3,          /# )   servicemethod_handlersstrr   grpcr
   )format__classdict__s   "r   __annotate__%DictionaryGenericHandler.__annotate__8   s-     
 

-1#t7L7L2L-M
r   c                    Wn         VP                  4        UUu/ uF  w  r4\        P                  ! W4      VbK  	  uppV n        R # u uppi N)_nameitemsr   fully_qualified_method_method_handlers)selfr   r   methodmethod_handlers   &&&  r   __init__!DictionaryGenericHandler.__init__8   sL     
 +:*?*?*A!
*A& **7;^K*A!
 !
s   "Ac                    < V ^8  d   QhRS[ /# r   return)r   )r   r   s   "r   r   r    A   s      c r   c                    V P                   # r"   )r#   r'   s   &r   service_name%DictionaryGenericHandler.service_nameA   s    zzr   c                ^   < V ^8  d   QhRS[ P                  RS[S[ P                  ,          /# )r   handler_call_detailsr.   )r   HandlerCallDetailsr   r
   )r   r   s   "r   r   r    D   s.     
 
$($;$;
	$''	(
r   c                P    VP                   pV P                  P                  V4      # r"   )r(   r&   get)r'   r4   details_methods   && r   r    DictionaryGenericHandler.serviceD   s+     .44$$((
 	
r   c                \   < V ^8  d   Qh/ S[ ;R&   S[S[ S[P                  3,          ;R&   # )r   r#   r&   r   )r   r   s   "r   r   r    4   s*     J 3 5 5566 r   )r&   r#   N)
r   r   r   r   r*   r1   r   __annotate_func__r   __classdictcell__r   s   @r   r   r   4   s*     
 
 
 
!  r   r   c                   
  a  ] tR t^Mt o V 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R	 lR
 ltV 3R lR lt	V 3R lR lt
RV 3R lR lltRV 3R lR lltRV 3R lR lltV 3R lR ltR tR tV 3R ltRtV tR# )_ChannelReadyFuturec                4   < V ^8  d   QhRS[ P                  /# )r   channel)r   Channel)r   r   s   "r   r    _ChannelReadyFuture.__annotate__T   s     " " "r   c                p    \         P                  ! 4       V n        Wn        R V n        R V n        . V n        R# )FN)	threading	Condition
_condition_channel_matured
_cancelled_done_callbacks)r'   rA   s   &&r   r*   _ChannelReadyFuture.__init__T   s-    #--/!r   c                4   < V ^8  d   QhRS[ S[,          RR/# r   timeoutr.   Nr   float)r   r   s   "r   r   rC   \   s     < <huo <$ <r   c                   Vf   R M\         P                   ! 4       V,           pV P                  ;_uu_ 4         V P                  '       d   \        P                  ! 4       hV P
                  '       d    R R R 4       R # Vf   V P                  P                  4        Ke  V\         P                   ! 4       ,
          pV^ 8  d   \        P                  ! 4       hV P                  P                  VR7       K    + '       g   i     R # ; i)N)rO   )timerG   rJ   r   FutureCancelledErrorrI   waitFutureTimeoutError)r'   rO   until	remainings   &&  r   _block_ChannelReadyFuture._block\   s    TYY[7-B___???3355=== _ =OO((* %		 3I 1}"5577OO(((; __s   C3&C32C3=A6C33D	c                H   < V ^8  d   QhRS[ S[P                  ,          RR/# )r   connectivityr.   N)r   r   ChannelConnectivity)r   r   s   "r   r   rC   l   s*     H HHT-E-E$F H4 Hr   c                   V P                   ;_uu_ 4        V P                  '       g   V\        P                  P                  J dd   R V n        V P                  P                  V P                  4       V P                   P                  4        \        V P                  4      pRV n        M RRR4       R#  RRR4       X F  p V! V 4       K  	  R#   + '       g   i     L$; i  \         d    \        P                  \        4        KL  i ; i)TN)rG   rJ   r   r]   READYrI   rH   unsubscribe_update
notify_alltuplerK   	Exception_LOGGER	exception$_DONE_CALLBACK_EXCEPTION_LOG_MESSAGE)r'   r\   done_callbacksdone_callbacks   &&  r   ra   _ChannelReadyFuture._updatel   s    ___OOO D$<$<$B$BB $))$,,7**,!&t';';!<'+$ _ %  ,MHd# , _   H!!"FGHs   BCC$C!	$$DDc                    < V ^8  d   QhRS[ /# r-   bool)r   r   s   "r   r   rC      s       r   c                   V P                   ;_uu_ 4        V P                  '       gd   R V n        V P                  P	                  V P
                  4       V P                   P                  4        \        V P                  4      pRV n        M RRR4       R#  RRR4       X F  p V! V 4       K  	  R #   + '       g   i     L$; i  \         d    \        P                  \        4        KL  i ; i)TNF)rG   rI   rJ   rH   r`   ra   rb   rc   rK   rd   re   rf   rg   )r'   rh   ri   s   &  r   cancel_ChannelReadyFuture.cancel   s    ___==="&))$,,7**,!&t';';!<'+$ _ %  ,MHd# , ! _  H!!"FGHs   A7B3%C3C	$C.-C.c                    < V ^8  d   QhRS[ /# r-   rl   )r   r   s   "r   r   rC      s     # #4 #r   c                    V P                   ;_uu_ 4        V P                  uuR R R 4       #   + '       g   i     R # ; ir"   )rG   rJ   r0   s   &r   	cancelled_ChannelReadyFuture.cancelled   s    ___?? ___s   ,=	c                    < V ^8  d   QhRS[ /# r-   rl   )r   r   s   "r   r   rC      s     = = =r   c                    V P                   ;_uu_ 4        V P                  '       * ;'       d    V P                  '       * uuR R R 4       #   + '       g   i     R # ; ir"   rG   rJ   rI   r0   s   &r   running_ChannelReadyFuture.running   s0    ___&<<t}}+< ___s   *A

A	c                    < V ^8  d   QhRS[ /# r-   rl   )r   r   s   "r   r   rC      s     4 4d 4r   c                    V P                   ;_uu_ 4        V P                  ;'       g    V P                  uuR R R 4       #   + '       g   i     R # ; ir"   rw   r0   s   &r   done_ChannelReadyFuture.done   s*    ___??33dmm ___s    A  A	Nc                4   < V ^8  d   QhRS[ S[,          RR/# rN   rP   )r   r   s   "r   r   rC      s      huo  r   c                (    V P                  V4       R # r"   rY   r'   rO   s   &&r   result_ChannelReadyFuture.result       Gr   c                4   < V ^8  d   QhRS[ S[,          RR/# rN   rP   )r   r   s   "r   r   rC            % D r   c                (    V P                  V4       R # r"   r   r   s   &&r   rf   _ChannelReadyFuture.exception   r   r   c                4   < V ^8  d   QhRS[ S[,          RR/# rN   rP   )r   r   s   "r   r   rC      r   r   c                (    V P                  V4       R # r"   r   r   s   &&r   	traceback_ChannelReadyFuture.traceback   r   r   c                    < V ^8  d   QhRS[ /# )r   fnr   )r   r   s   "r   r   rC      s      $4 r   c                
   V P                   ;_uu_ 4        V P                  '       g9   V P                  '       g'   V P                  P	                  V4        R R R 4       R # R R R 4       V! V 4       R #   + '       g   i     L; ir"   )rG   rJ   rI   rK   append)r'   r   s   &&r   add_done_callback%_ChannelReadyFuture.add_done_callback   sM    ___???4===$$++B/ __
 	4 _s   $A2A22B	c                    V P                   ;_uu_ 4        V P                  P                  V P                  R R7       RRR4       R#   + '       g   i     R# ; i)T)try_to_connectN)rG   rH   	subscribera   r0   s   &r   start_ChannelReadyFuture.start   s2    ___MM##DLL#F ___s   (AA	c                    V P                   ;_uu_ 4        V P                  '       g8   V P                  '       g&   V P                  P	                  V P
                  4       R R R 4       R #   + '       g   i     R # ; ir"   )rG   rJ   rI   rH   r`   ra   r0   s   &r   __del___ChannelReadyFuture.__del__   s>    ___???4===))$,,7 ___s   $A)%A))A:	c                   < V ^8  d   Qh/ S[ P                  ;R&   S[P                  ;R&   S[;R&   S[;R&   S[S[,          ;R&   # )r   rG   rH   rI   rJ   rK   )rE   rF   r   rB   rm   r   r   )r   r   s   "r   r   rC   M   sP     ### ll  N  	 
 h'' r   )rJ   rH   rG   rK   rI   r"   )r   r   r   r   r*   rY   ra   ro   rs   rx   r|   r   rf   r   r   r   r   r;   r   r<   r=   s   @r   r?   r?   M   s     " "< < H H( &# #= =4 4    G8O  r   r?   c                D    V ^8  d   QhR\         P                  R\        /# )r   rA   r.   )r   rB   r?   )r   s   "r   r   r      s      $,, 3F r   c                 <    \        V 4      pVP                  4        V# r"   )r?   r   )rA   ready_futures   & r   channel_ready_futurer      s    &w/Lr   c                <    V ^8  d   QhR\         R\         R\        /# )r   version1version2r.   )r   rm   )r   s   "r   r   r      s!     3 3S 3C 3D 3r   c                ^   V P                  R4      pVP                  R4      p \        ^4       FS  p\        W$,          4      \        W4,          4      8  d    R# \        W$,          4      \        W4,          4      8  g   KR   R# 	  \	        T4      \	        T4      8  #   \         d     R# i ; i)a\  
Compares two versions in the format '1.60.1' or '1.60.1.dev0'.

This method will be used in all stubs generated by grpcio-tools to check whether
the stub version is compatible with the runtime grpcio.

Args:
    version1: The first version string.
    version2: The second version string.

Returns:
    True if version1 is lower, False otherwise.
.TF)splitrangeint
ValueErrorlen)r   r   version1_listversion2_listis   &&   r   first_version_is_lowerr      s     NN3'MNN3'MqA=#$s=+;'<<=#$s=+;'<<	  }M 222  s#   4B "B B B B,+B,)request_streamingresponse_streamingrequest_deserializerresponse_serializerunary_unaryunary_streamstream_unarystream_stream)__doc__collectionsloggingrE   rS   typingr   r   r   r   r   r   grpc._typingr   	getLoggerr   re   rg   
namedtupler
   ServiceRpcHandlerr   Futurer?   r   r   r   r   r   <module>r      s    *     5 5   )


H
% = %
			
 		&
t55 
2j8$++ j8Z3r   