+
    iT9                    2   R t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	H
t
HtHtHtHtHtHtHtHtHt ^ RI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H t  ^ RIH!t! ^ RIH"t" ^ RIH#t# ^ RI$t]PJ                  ! ]&4      t'RPQ                  ]PR                  4      t*^ t+]PX                  ! R4      RJt-]P\                  P^                  ]P\                  P`                  ]P\                  Pb                  ]P\                  Pd                  ]P\                  Pf                  ]P\                  Ph                  3t5]P\                  P^                  ]P\                  P`                  ]P\                  Pb                  ]P\                  Pd                  ]P\                  Ph                  3t6]P\                  P^                  ]P\                  Pd                  ]P\                  Pf                  ]P\                  Ph                  3t7]P\                  P^                  ]P\                  Pd                  ]P\                  Ph                  3t8Rt9Rt:Rt;R R lt<R R lt= ! R R]>4      t?R R lt@R R ltAR R  ltBR! R" ltCR# R$ ltD ! R% R&]P                  ]P                  ]P                  4      tH ! R' R(]P                  ]P                  4      tJ ! R) R*]J]P                  ]P                  4      tK ! R+ R,]J]P                  ]P                  4      tLR- R. ltMR/ R0 ltNR1 R2 ltOR3 R4 ltPR5 R6 ltQ ! R7 R8]P                  4      tS ! R9 R:]P                  4      tU ! R; R<]P                  4      tV ! R= R>]P                  4      tX ! R? R@]P                  4      tZ ! RA RB][4      t\ ! RC RD]>4      t]RE RF lt^RG RH lt_ ! RI RJ]>4      t`RK RL ltaRM RN ltbRO RP ltcRQ RR ltdRS RT lteRU RV ltfRW RX ltgRY RZ lth ! R[ R\]P                  4      tiR# )]z.Invocation-side implementation of gRPC Python.N)
AnyCallableDictIteratorListOptionalSequenceSetTupleUnion)_common)_compression)_grpcio_metadata)_observability)cygrpc)ChannelArgumentType)DeserializingFunction)IntegratedCallFactory)MetadataType)NullaryCallbackType)ResponseType)SerializingFunction)UserTagzgrpc-python/{}!GRPC_SINGLE_THREADED_UNARY_STREAMz0Exception calling channel subscription callback!z?<{} of RPC that terminated with:
	status = {}
	details = "{}"
>zZ<{} of RPC that terminated with:
	status = {}
	details = "{}"
	debug_error_string = "{}"
>c                \    V ^8  d   QhR\         \        ,          R\         \        ,          /#    timeoutreturnr   float)formats   "`/Users/igloo/.openclaw/workspace/scratch/fb_ad_env/lib/python3.14/site-packages/grpc/_channel.py__annotate__r#   m   s"     > >x >8E? >    c                 F    V f   R # \         P                   ! 4       V ,           # N)timer   s   &r"   	_deadliner)   m   s    ?4=		g(==r$   c                |    V ^8  d   QhR\         \        P                  ,          R\         \        ,          R\        /# )r   unknown_cygrpc_codedetailsr   )r   grpc
StatusCodestr)r!   s   "r"   r#   r#   q   s1      !$//2=Ec]r$   c                 $    R P                  W4      # )z,Server sent unknown code {} and details "{}")r!   )r+   r,   s   &&r"   _unknown_code_detailsr1   q   s     :@@ r$   c                   D   a  ] tR t^yt o V 3R lR ltR tV 3R ltRtV tR# )	_RPCStatec                   < V ^8  d   QhRS[ S[P                  ,          RS[S[,          RS[S[,          RS[S[P                  ,          RS[S[,          /# )r   dueinitial_metadatatrailing_metadatacoder,   )r   r   OperationTyper   r   r-   r.   r/   )r!   __classdict__s   "r"   r#   _RPCState.__annotate__   s_     &2 &2f**+&2 #<0&2 $L1	&2
 t'&2 #&2r$   c                .   \         P                  ! 4       V n        \        V4      V n        W n        R V n        W0n        W@n        WPn	        R V n
        R V n        R V n        R V n        R V n        RV n        . V n        \"        P$                  ! 4       V n        R # )NF)	threading	Condition	conditionsetr5   r6   responser7   r8   r,   debug_error_stringrpc_start_timerpc_end_timemethodtarget	cancelled	callbacksr   get_fork_epoch
fork_epoch)selfr5   r6   r7   r8   r,   s   &&&&&&r"   __init___RPCState.__init__   s     #,,. s8 0!2	"& #   //1r$   c                :    \         P                  ! 4       V n        R # r&   )r=   r>   r?   rK   s   &r"   reset_postfork_child_RPCState.reset_postfork_child   s    ",,.r$   c                  < V ^8  d   Qh/ S[ P                  ;R&   S[S[P                  ,          ;R&   S[S[,          ;R&   S[;R&   S[S[,          ;R&   S[S[P                  ,          ;R&   S[S[
,          ;R&   S[S[
,          ;R&   S[;R	&   S[S[,          ;R
&   S[S[,          ;R&   S[S[,          ;R&   S[S[,          ;R&   S[S[
,          ;R&   S[S[
,          ;R&   # )r   r?   r5   r6   rA   r7   r8   r,   rB   rG   rH   rJ   rC   rD   rE   rF   )r=   r>   r	   r   r9   r   r   r   r-   r.   r/   boolr   r   intr    )r!   r:   s   "r"   r#   r;   y   s    """ 	V!!	""  |,,  M	 
  --  4??
##  c]  !%  O  '((    UO#  5/!  SM  SM r$   )rH   rG   r8   r?   rB   r,   r5   rJ   r6   rE   rA   rD   rC   rF   r7   N	__name__
__module____qualname____firstlineno__rL   rP   __annotate_func____static_attributes____classdictcell__r:   s   @r"   r3   r3   y   s     "&2 &2P/s  r$   r3   c                T    V ^8  d   QhR\         R\        P                  R\        RR/# )r   stater8   r,   r   N)r3   r-   r.   r/   )r!   s   "r"   r#   r#      s,     % %) %4?? %S %T %r$   c                 v    V P                   f+   Wn         W n        V P                  f   RV n        RV n        R # R # N )r8   r,   r6   r7   )r_   r8   r,   s   &&&r"   _abortrc      s7    zz
!!)%'E""$ r$   c          	          V ^8  d   QhR\         P                  R\        R\        \        ,          R\
        \        ,          /# )r   eventr_   response_deserializerr   )r   	BaseEventr3   r   r   r   r   )r!   s   "r"   r#   r#      sB     ) ))) $$9:) 

	)r$   c                 b   . pV P                    EF  pVP                  4       pVP                  P                  V4       V\        P
                  P                  8X  d   VP                  4       Vn        Ke  V\        P
                  P                  8X  db   VP                  4       pVeL   \        P                  ! Wb4      pVf*   Rp\        V\        P                  P                  V4       K  Wqn        K  K  V\        P
                  P"                  8X  g   EK  VP%                  4       Vn        VP&                  f   \        P(                  P+                  VP'                  4       4      p	V	f?   \        P                  P,                  Vn        \/        WP1                  4       4      Vn        M0Wn        VP1                  4       Vn        VP3                  4       Vn        \6        P8                  ! 4       Vn        \<        P>                  ! V4       VPA                  VPB                  4       R Vn!        EK  	  V# )Nz!Exception deserializing response!)"batch_operationstyper5   remover   r9   receive_initial_metadatar6   receive_messagemessager   deserializerc   r-   r.   INTERNALrA   receive_status_on_clientr7   r8   !CYGRPC_STATUS_CODE_TO_STATUS_CODEgetUNKNOWNr1   r,   error_stringrB   r'   perf_counterrD   r   maybe_record_rpc_latencyextendrH   )
re   r_   rf   rH   batch_operationoperation_typeserialized_responserA   r,   r8   s
   &&&       r"   _handle_eventr|      s   
 I 11(--/		(V11JJJ%4%E%E%GE"v33CCC"1"9"9";"."..' #AG5$//":":GD%-N / v33LLL&5&G&G&IE#zz!@@DD#((* <!%!8!8EJ$9557%EM "&J$3$;$;$=EM/>/K/K/ME,!%!2!2!4E33E:U__-"EOE 2F r$   c                R    V ^8  d   QhR\         R\        \        ,          R\        /# )r   r_   rf   r   )r3   r   r   r   )r!   s   "r"   r#   r#      s*      -56K-Lr$   c                    a a VV 3R  lpV# )c           	        < SP                   ;_uu_ 4        \        V SS4      pSP                   P                  4        SP                  '       * pR R R 4       X F  p V! 4        K  	  X;'       d#    SP                  \        P                  ! 4       8  #   + '       g   i     LM; i  \         d?   p\
        P                  R\        TP                  4      \        T4      4        R p?K  R p?ii ; i)NzException in callback %s: %s)r?   r|   
notify_allr5   	Exception_LOGGERerrorreprfuncrJ   r   rI   )re   rH   donecallbackerf   r_   s   &    r"   handle_event$_event_handler.<locals>.handle_event   s    ___%eU4IJIOO&&(yy=D  "H
 " CC((F,A,A,CCC _   2D4Ga s#   9BB'B$	'C023C++C0rb   )r_   rf   r   s   ff r"   _event_handlerr      s    D  r$   c                    V ^8  d   QhR\         R\        R\        \        P                  \        P
                  3,          R\        R\        \        ,          RR/# )r   request_iteratorr_   callrequest_serializerevent_handlerr   N)	r   r3   r   r   IntegratedCallSegregatedCallr   r   r   )r!   s   "r"   r#   r#     sg     [ [[[ %%v'<'<<
=[ ,	[
 G$[ 
[r$   c                   a aaaa VVV VV3R lp\         P                  ! VR7      pVP                  R4       VP                  4        R# )z'Consume a request supplied by the user.c            
        <  Rp  \         P                  ! 4        \        S
4      p T '       g   \         P                  ! 4        \        P                  ! TS4      pSP                   ;_uu_ 4        SP"                  Ef   SP$                  '       Egv   Tf[   \        P                  P&                  pRpSP                  \        P                  T,          T4       \        SY#4        RRR4       R# SP(                  P+                  \         P,                  P.                  4       \         P0                  ! T\2        4      3pSP5                  TS	4      pT'       g?   SP(                  P7                  \         P,                  P.                  4        RRR4       R# T3R lp\        P8                  ! SP                   P8                  T\:        P<                  ! \         P>                  S4      R7       SP"                  e    RRR4       R# M RRR4       R#  RRR4       EK    \         d!     T '       g   \         P                  ! 4        M\
         d    \         P                  ! 4        R p \        P                  P                  pRp\        P                  T4       SP                  \        P                  T,          T4       \        SY#4        T '       g   \         P                  ! 4        R# R# i ; i  T '       g   \         P                  ! 4        i i ; i  + '       g   i     EK&  ; iSP                   ;_uu_ 4        SP"                  f   SP(                  P+                  \         P,                  P@                  4       \         PB                  ! \2        4      3pSP5                  TS	4      pT'       g4   SP(                  P7                  \         P,                  P@                  4       RRR4       R#   + '       g   i     R# ; i)TFzException iterating requests!NException serializing request!c                  ~   < S P                   R J;'       g(    \        P                  P                  S P                  9  # r&   )r8   r   r9   send_messager5   )r_   s   r"   _doneJ_consume_request_iterator.<locals>.consume_request_iterator.<locals>._done<  s9    !JJd2 - -%33@@#(99 -r$   )spin_cb)"r   enter_user_request_generatornextStopIteration"return_from_user_request_generatorr   r-   r.   rt   r   	exceptioncancelr   !STATUS_CODE_TO_CYGRPC_STATUS_CODErc   	serializer?   r8   rG   rp   r5   addr9   r   SendMessageOperation_EMPTY_FLAGSoperaterk   wait	functoolspartialblock_if_fork_in_progresssend_close_from_clientSendCloseFromClientOperation)*return_from_user_request_generator_invokedrequestr8   r,   serialized_request
operations	operatingr   r   r   r   r   r_   s           r"   consume_request_iterator;_consume_request_iterator.<locals>.consume_request_iterator  s    9>6@335/0 B==?!(!2!27<N!O::%eooo)1#77"B#EEdK# ud4 ! IIMM&"6"6"C"CD33."J
 !%Z GI$		(()=)=)J)JK) !, LL,, ) 1 1"<<e! zz-K !H . O !H .I !# !  B==?  
99;=A:..9!!'*==dCW ud,A==? B
 B==? B !P ___zz!		f22IIJ77E
 !LL]C	 II$$,,CC ___sv    H /"LAL0A(L4LA%LLK0)K3 K0A<K0K3 /K00K3 3 LL(	?A6O363O33P	rF   TNr   ForkManagedThread	setDaemonstart)r   r_   r   r   r   r   consumption_threads   fffff  r"   _consume_request_iteratorr     sB    L L\  11'   &r$   c                <    V ^8  d   QhR\         R\        R\         /# )r   
class_name	rpc_stater   )r/   r3   )r!   s   "r"   r#   r#   a  s!     
 
# 
) 
 
r$   c                   VP                   ;_uu_ 4        VP                  f   RP                  V 4      uuRRR4       # VP                  \        P                  P
                  J d5   \        P                  WP                  VP                  4      uuRRR4       # \        P                  V VP                  VP                  VP                  4      uuRRR4       #   + '       g   i     R# ; i)z Calculates error string for RPC.Nz<{} object>)
r?   r8   r!   r-   r.   OK_OK_RENDEZVOUS_REPR_FORMATr,   _NON_OK_RENDEZVOUS_REPR_FORMATrB   )r   r   s   &&r"   _rpc_state_stringr   a  s    				>>! ''
3 
	 >>T__///-44NNI,=,=	 
	 .44NN((	
 
			s   CAC5CC,	c                   r  a  ] tR tRt o R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
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R(V 3R$ lR% lltV 3R& ltR'tV tR# ))_InactiveRpcErrorir  zAn RPC error not tied to the execution of a particular RPC.

The RPC represented by the state object must not be in-progress or
cancelled.

Attributes:
  _state: An instance of _RPCState.
c                    < V ^8  d   QhRS[ /# r   r_   r3   )r!   r:   s   "r"   r#   _InactiveRpcError.__annotate__~  s     
Q 
Qi 
Qr$   c                   VP                   ;_uu_ 4        \        R\        P                  ! VP                  4      \        P                  ! VP
                  4      VP                  \        P                  ! VP                  4      4      V n        \        P                  ! VP                  4      V P                  n	        \        P                  ! VP                  4      V P                  n
        R R R 4       R #   + '       g   i     R # ; ira   )r?   r3   copydeepcopyr6   r7   r8   r,   _staterA   rB   rK   r_   s   &&r"   rL   _InactiveRpcError.__init__~  s    ___#e445e556

emm,DK $(99U^^#<DKK -1YYu7O7O-PDKK* ___s   CC66D	c                0   < V ^8  d   QhRS[ S[,          /# r   r   r   r   )r!   r:   s   "r"   r#   r     s     , ,(<"8 ,r$   c                .    V P                   P                  # r&   r   r6   rO   s   &r"   r6   "_InactiveRpcError.initial_metadata  s    {{+++r$   c                0   < V ^8  d   QhRS[ S[,          /# r   r   )r!   r:   s   "r"   r#   r     s     - -8L#9 -r$   c                .    V P                   P                  # r&   r   r7   rO   s   &r"   r7   #_InactiveRpcError.trailing_metadata  s    {{,,,r$   c                D   < V ^8  d   QhRS[ S[P                  ,          /# r   r   r-   r.   )r!   r:   s   "r"   r#   r     s        ht/  r$   c                .    V P                   P                  # r&   r   r8   rO   s   &r"   r8   _InactiveRpcError.code  s    {{r$   c                0   < V ^8  d   QhRS[ S[,          /# r   r   r/   )r!   r:   s   "r"   r#   r     s     3 3# 3r$   c                V    \         P                  ! V P                  P                  4      # r&   )r   decoder   r,   rO   s   &r"   r,   _InactiveRpcError.details  s    ~~dkk1122r$   c                0   < V ^8  d   QhRS[ S[,          /# r   r   )r!   r:   s   "r"   r#   r     s     > >HSM >r$   c                V    \         P                  ! V P                  P                  4      # r&   )r   r   r   rB   rO   s   &r"   rB   $_InactiveRpcError.debug_error_string  s    ~~dkk<<==r$   c                    < V ^8  d   QhRS[ /# r   r/   )r!   r:   s   "r"   r#   r          G Gs Gr$   c                V    \        V P                  P                  V P                  4      # r&   r   	__class__rV   r   rO   s   &r"   _repr_InactiveRpcError._repr       !8!8$++FFr$   c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   r           # r$   c                "    V P                  4       # r&   r   rO   s   &r"   __repr___InactiveRpcError.__repr__      zz|r$   c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   r            r$   c                "    V P                  4       # r&   r   rO   s   &r"   __str___InactiveRpcError.__str__  r   r$   c                    < V ^8  d   QhRS[ /# r   rS   )r!   r:   s   "r"   r#   r     s       r$   c                    R# )zSee grpc.Future.cancel.Frb   rO   s   &r"   r   _InactiveRpcError.cancel      r$   c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   r     s      4 r$   c                    R# )zSee grpc.Future.cancelled.Frb   rO   s   &r"   rG   _InactiveRpcError.cancelled  r   r$   c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   r     s       r$   c                    R# )zSee grpc.Future.running.Frb   rO   s   &r"   running_InactiveRpcError.running  r   r$   c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   r     s      d r$   c                    R# )zSee grpc.Future.done.Trb   rO   s   &r"   r   _InactiveRpcError.done  s    r$   Nc                6   < V ^8  d   QhRS[ S[,          RS[/# r   r   r    r   )r!   r:   s   "r"   r#   r     s!      	r$   c                    V h)zSee grpc.Future.result.rb   rK   r   s   &&r"   result_InactiveRpcError.result  s	     
r$   c                F   < V ^8  d   QhRS[ S[,          RS[ S[,          /# r   r   r    r   )r!   r:   s   "r"   r#   r     s&      	)	r$   c                    V # )zSee grpc.Future.exception.rb   r  s   &&r"   r   _InactiveRpcError.exception  s	     r$   c                Z   < V ^8  d   QhRS[ S[,          RS[ S[P                  ,          /# r   r   r    typesTracebackType)r!   r:   s   "r"   r#   r     s,     % %%	%%%	&%r$   c                v     V h  \         P                   d     \        P                  ! 4       ^,          u # i ; i)zSee grpc.Future.traceback.)r-   RpcErrorsysexc_infor  s   &&r"   	traceback_InactiveRpcError.traceback  s0    	%J}} 	%<<>!$$	%s    188c                d   < V ^8  d   QhRS[ S[P                  .R3,          RS[S[,          RR/# )r   fnNr   r   )r   r-   Futurer   r    )r!   r:   s   "r"   r#   r     s=      dkk]D() % 
	r$   c                    V! V 4       R# )z"See grpc.Future.add_done_callback.Nrb   )rK   r  r   s   &&&r"   add_done_callback#_InactiveRpcError.add_done_callback  s     	4r$   c                &   < V ^8  d   Qh/ S[ ;R&   # r   r   r   )r!   r:   s   "r"   r#   r   r  s       r$   )r   r&   )rV   rW   rX   rY   __doc__rL   r6   r7   r8   r,   rB   r   r   r   r   rG   r  r   r  r   r  r"  rZ   r[   r\   r]   s   @r"   r   r   r  s     
Q 
Q, ,- -   3 3> >G G        % % k  r$   r   c                     a a ] tR tRt oRtV3R lV 3R l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 t
R tR tR 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tRtVtV ;t# )_Rendezvousi  a  An RPC iterator.

Attributes:
  _state: An instance of _RPCState.
  _call: An instance of SegregatedCall or IntegratedCall.
    In either case, the _call object is expected to have operate, cancel,
    and next_event methods.
  _response_deserializer: A callable taking bytes and return a Python
    object.
  _deadline: A float representing the deadline of the RPC in seconds. Or
    possibly None, to represent an RPC with no deadline at all.
c          	         < V ^8  d   QhRS[ RS[S[P                  S[P                  3,          RS[S[,          RS[S[,          /# )r   r_   r   rf   deadliner3   r   r   r   r   r   r   r    )r!   r:   s   "r"   r#   _Rendezvous.__annotate__  sS     " "" F))6+@+@@A"  ((=>	"
 5/"r$   c                \   < \         \        V `  4        Wn        W n        W0n        W@n        R # r&   )superr(  rL   r   _call_response_deserializerr)   )rK   r_   r   rf   r*  r   s   &&&&&r"   rL   _Rendezvous.__init__  s'     	k4)+
&;#!r$   c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   r,    s     , ,4 ,r$   c                    V P                   P                  ;_uu_ 4        V P                   P                  RJ uuRRR4       #   + '       g   i     R# ; i)zSee grpc.RpcContext.is_activeNr   r?   r8   rO   s   &r"   	is_active_Rendezvous.is_active  s3    [[""";;##t+ #"""   AA	c                0   < V ^8  d   QhRS[ S[,          /# r   r   )r!   r:   s   "r"   r#   r,    s     8 8 8r$   c                   V P                   P                  ;_uu_ 4        V P                  f    RRR4       R# \        V P                  \        P                  ! 4       ,
          ^ 4      uuRRR4       #   + '       g   i     R# ; i)z"See grpc.RpcContext.time_remainingN)r   r?   r)   maxr'   rO   s   &r"   time_remaining_Rendezvous.time_remaining  sQ    [["""~~% #" t~~		3Q7 #"""s   A3/A33B	c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   r,    s       r$   c                   V P                   P                  ;_uu_ 4        V P                   P                  f   \        P                  P
                  pRpV P                  P                  \        P                  V,          V4       RV P                   n
        \        V P                   W4       V P                   P                  P                  4         RRR4       R#  RRR4       R#   + '       g   i     R# ; i)zSee grpc.RpcContext.cancelNz!Locally cancelled by application!TF)r   r?   r8   r-   r.   	CANCELLEDr/  r   r   r   rG   rc   r   )rK   r8   r,   s   &  r"   r   _Rendezvous.cancel  s    [["""{{'00=

!!==dCW )-%t{{D2%%002 #"  #"""s   B2C&C&&C7	c                &   < V ^8  d   QhRS[ RS[/# )r   r   r   )r   rS   )r!   r:   s   "r"   r#   r,    s      %8 T r$   c                   V P                   P                  ;_uu_ 4        V P                   P                  f    RRR4       R# V P                   P                  P                  V4        RRR4       R#   + '       g   i     R# ; i)z See grpc.RpcContext.add_callbackNFT)r   r?   rH   appendrK   r   s   &&r"   add_callback_Rendezvous.add_callback  sY    [["""{{$$, #" KK!!((2	 #"""s   A3&A33B	c                    V # r&   rb   rO   s   &r"   __iter___Rendezvous.__iter__      r$   c                "    V P                  4       # r&   _nextrO   s   &r"   r   _Rendezvous.next  r   r$   c                "    V P                  4       # r&   rL  rO   s   &r"   __next___Rendezvous.__next__  r   r$   c                    \        4       hr&   NotImplementedErrorrO   s   &r"   rM  _Rendezvous._next      !##r$   c                0   < V ^8  d   QhRS[ S[,          /# r   r   )r!   r:   s   "r"   r#   r,    s     $ $HSM $r$   c                    \        4       hr&   rS  rO   s   &r"   rB   _Rendezvous.debug_error_string  rV  r$   c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   r,  "  r   r$   c                V    \        V P                  P                  V P                  4      # r&   r   rO   s   &r"   r   _Rendezvous._repr"  r   r$   c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   r,  %  r   r$   c                "    V P                  4       # r&   r   rO   s   &r"   r   _Rendezvous.__repr__%  r   r$   c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   r,  (  r   r$   c                "    V P                  4       # r&   r   rO   s   &r"   r   _Rendezvous.__str__(  r   r$   c                   < V ^8  d   QhRR/# r   r   Nrb   )r!   r:   s   "r"   r#   r,  +  s     
3 
3 
3r$   c                <   V P                   P                  ;_uu_ 4        V P                   P                  f   \        P                  P
                  V P                   n        RV P                   n        RV P                   n        V P                  P                  \        P                  V P                   P                  ,          V P                   P                  4       V P                   P                  P                  4        R R R 4       R #   + '       g   i     R # ; i)Nz"Cancelled upon garbage collection!T)r   r?   r8   r-   r.   r?  r,   rG   r/  r   r   r   r   rO   s   &r"   __del___Rendezvous.__del__+  s    [["""{{'#'??#<#< &J#(,%

!!==dkk>N>NOKK'' %%002 #"""s   C!D

D	c                   < V ^8  d   Qh/ S[ ;R&   S[S[P                  S[P                  3,          ;R&   S[S[,          ;R&   S[S[,          ;R&   # )r   r   r/  r0  r)   r+  )r!   r:   s   "r"   r#   r,    sY        &&(=(==>>   %%:;;! " # r$   )r/  r)   r0  r   )rV   rW   rX   rY   r&  rL   r5  r;  r   rE  rH  r   rP  rM  rB   r   r   r   rf  rZ   r[   r\   __classcell__r   r:   s   @@r"   r(  r(    s     $" ", ,
8 8  $$ $G G  
3 
3w  r$   r(  c                   \  a  ] tR tRt o R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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V 3R" lR# ltV 3R$ ltR%tV tR# )'_SingleThreadedRendezvousi8  a*  An RPC iterator operating entirely on a single thread.

The __next__ method of _SingleThreadedRendezvous does not depend on the
existence of any other thread, including the "channel spin thread".
However, this means that its interface is entirely synchronous. So this
class cannot completely fulfill the grpc.Future interface. The result,
exception, and traceback methods will never block and will instead raise
an exception if calling the method would result in blocking.

This means that these methods are safe to call from add_done_callback
handlers.
c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   &_SingleThreadedRendezvous.__annotate__J       , ,d ,r$   c                2    V P                   P                  R J# r&   r   rO   s   &r"   _is_complete&_SingleThreadedRendezvous._is_completeJ      {{t++r$   c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   rn  M       ) )4 )r$   c                    V P                   P                  ;_uu_ 4        V P                   P                  uuR R R 4       #   + '       g   i     R # ; ir&   r   r?   rG   rO   s   &r"   rG   #_SingleThreadedRendezvous.cancelledM  .    [[""";;(( #"""   A  A	c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   rn  Q       , , ,r$   c                    V P                   P                  ;_uu_ 4        V P                   P                  R J uuR R R 4       #   + '       g   i     R # ; ir&   r4  rO   s   &r"   r  !_SingleThreadedRendezvous.runningQ  3    [[""";;##t+ #"""r7  c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   rn  U       0 0d 0r$   c                    V P                   P                  ;_uu_ 4        V P                   P                  R JuuR R R 4       #   + '       g   i     R # ; ir&   r4  rO   s   &r"   r   _SingleThreadedRendezvous.doneU  3    [[""";;##4/ #"""r7  Nc                6   < V ^8  d   QhRS[ S[,          RS[/# r   r  )r!   r:   s   "r"   r#   rn  Y  s      huo  r$   c                   ?V P                   P                  ;_uu_ 4        V P                  4       '       g"   Rp\        P                  P                  V4      hV P                   P                  \        P                  P                  J d!   V P                   P                  uuRRR4       # V P                   P                  '       d   \        P                  ! 4       hV h  + '       g   i     R# ; i)a  Returns the result of the computation or raises its exception.

This method will never block. Instead, it will raise an exception
if calling this method would otherwise result in blocking.

Since this method will never block, any `timeout` argument passed will
be ignored.
zJ_SingleThreadedRendezvous only supports result() when the RPC is complete.N)r   r?   rq  r-   experimental
UsageErrorr8   r.   r   rA   rG   FutureCancelledErrorrK   r   	error_msgs   && r"   r   _SingleThreadedRendezvous.resultY  s     [["""$$&&9  ''229=={{4??#5#55{{++ #" {{$$$//11J #""s   A?C*CCC.	c                F   < V ^8  d   QhRS[ S[,          RS[ S[,          /# r   r  )r!   r:   s   "r"   r#   rn  p  s$      % HY<O r$   c                   ?V P                   P                  ;_uu_ 4        V P                  4       '       g"   Rp\        P                  P                  V4      hV P                   P                  \        P                  P                  J d    RRR4       R# V P                   P                  '       d   \        P                  ! 4       hV uuRRR4       #   + '       g   i     R# ; i)a  Return the exception raised by the computation.

This method will never block. Instead, it will raise an exception
if calling this method would otherwise result in blocking.

Since this method will never block, any `timeout` argument passed will
be ignored.
zM_SingleThreadedRendezvous only supports exception() when the RPC is complete.N)r   r?   rq  r-   r  r  r8   r.   r   rG   r  r  s   && r"   r   #_SingleThreadedRendezvous.exceptionp  s     [["""$$&&<  ''229=={{4??#5#55 #" {{$$$//11 #"""s   A+CC1CC#	c                Z   < V ^8  d   QhRS[ S[,          RS[ S[P                  ,          /# r   r  )r!   r:   s   "r"   r#   rn    s,     ) ))	%%%	&)r$   c                <   ?V P                   P                  ;_uu_ 4        V P                  4       '       g"   Rp\        P                  P                  V4      hV P                   P                  \        P                  P                  J d    RRR4       R# V P                   P                  '       d   \        P                  ! 4       h V h  \        P                   d*    \        P                  ! 4       ^,          u uuRRR4       # i ; i  + '       g   i     R# ; i)a  Access the traceback of the exception raised by the computation.

This method will never block. Instead, it will raise an exception
if calling this method would otherwise result in blocking.

Since this method will never block, any `timeout` argument passed will
be ignored.
zM_SingleThreadedRendezvous only supports traceback() when the RPC is complete.N)r   r?   rq  r-   r  r  r8   r.   r   rG   r  r  r  r  )rK   r   msgs   && r"   r  #_SingleThreadedRendezvous.traceback  s     [["""$$&&<  ''22377{{4??#5#55 #" {{$$$//11)
== )||~a(( #") #""s6   A+D
D
1D
C		1D:D
DD

D	c                N   < V ^8  d   QhRS[ S[P                  .R3,          RR/# r   r  Nr   r   r-   r   )r!   r:   s   "r"   r#   rn    +      Hdkk]D-@$A d r$   c                D   V P                   P                  ;_uu_ 4        V P                   P                  fE   V P                   P                  P	                  \
        P                  ! W4      4        R R R 4       R #  R R R 4       V! V 4       R #   + '       g   i     L; ir&   r   r?   r8   rH   rC  r   r   rK   r  s   &&r"   r"  +_SingleThreadedRendezvous.add_done_callback  j    [["""{{'%%,,Y->->r-HI #"' #
 	4 #"   ABB	c                0   < V ^8  d   QhRS[ S[,          /# r   r   )r!   r:   s   "r"   r#   rn    s     0 0(<"8 0r$   c                    V P                   P                  ;_uu_ 4        V P                   P                  f   V P                  4        K*  V P                   P                  uuRRR4       #   + '       g   i     R# ; i)See grpc.Call.initial_metadataN)r   r?   r6   _consume_next_eventrO   s   &r"   r6   *_SingleThreadedRendezvous.initial_metadata  sL    [[""" ++..6((*;;// #"""s   A A**A;	c                0   < V ^8  d   QhRS[ S[,          /# r   r   )r!   r:   s   "r"   r#   rn         1 18L#9 1r$   c                   V P                   P                  ;_uu_ 4        V P                   P                  f"   Rp\        P                  P                  V4      hV P                   P                  uuRRR4       #   + '       g   i     R# ; i)See grpc.Call.trailing_metadataNz4Cannot get trailing metadata until RPC is completed.)r   r?   r7   r-   r  r  rK   r  s   & r"   r7   +_SingleThreadedRendezvous.trailing_metadata  s_    [["""{{,,4J  ''229==;;00 #"""   AA99B
	c                D   < V ^8  d   QhRS[ S[P                  ,          /# r   r   )r!   r:   s   "r"   r#   rn    s     $ $ht/ $r$   c                   V P                   P                  ;_uu_ 4        V P                   P                  f"   Rp\        P                  P                  V4      hV P                   P                  uuRRR4       #   + '       g   i     R# ; i)See grpc.Call.codeNz'Cannot get code until RPC is completed.)r   r?   r8   r-   r  r  r  s   & r"   r8   _SingleThreadedRendezvous.code  sZ    [["""{{'E	''229==;;##	 #"""r  c                0   < V ^8  d   QhRS[ S[,          /# r   r   )r!   r:   s   "r"   r#   rn    s     7 7# 7r$   c                B   V P                   P                  ;_uu_ 4        V P                   P                  f"   Rp\        P                  P                  V4      h\        P                  ! V P                   P                  4      uuRRR4       #   + '       g   i     R# ; i)See grpc.Call.detailsNz*Cannot get details until RPC is completed.)r   r?   r,   r-   r  r  r   r   r  s   & r"   r,   !_SingleThreadedRendezvous.details  sc    [["""{{""*H	''229==>>$++"5"56	 #"""   A#BB	c                D   < V ^8  d   QhRS[ S[P                  ,          /# r   )r   r   rg   )r!   r:   s   "r"   r#   rn    s     
 
Xf.>.>%? 
r$   c                   V P                   P                  4       pV P                  P                  ;_uu_ 4        \	        WP                  V P
                  4      pV F
  pV! 4        K  	  R R R 4       V#   + '       g   i     T# ; ir&   )r/  
next_eventr   r?   r|   r0  )rK   re   rH   r   s   &   r"   r  -_SingleThreadedRendezvous._consume_next_event  sl    

%%'[["""%{{D$?$?I & 
 &	 #  #" s   1A44B	c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   rn    s     # # #r$   c                J    V P                  4        V P                  P                  ;_uu_ 4        V P                  P                  e4   V P                  P                  pRV P                  n        VuuRRR4       # \        P
                  P                  V P                  P                  9  dW   V P                  P                  \        P                  P                  J d   \        4       hV P                  P                  e   V hRRR4       EK    + '       g   i     EK!  ; iTN)r  r   r?   rA   r   r9   rm   r5   r8   r-   r.   r   r   )rK   rA   s   & r"   _next_response(_SingleThreadedRendezvous._next_response  s    $$&&&&;;''3#{{33H+/DKK(#	 '&
 ''77t{{N{{''4??+=+==+o-{{''3"
 '&&&s   AD<B	DD"	c                    < V ^8  d   QhRS[ /# r   r  )r!   r:   s   "r"   r#   rn    s     % %s %r$   c                   V P                   P                  ;_uu_ 4        V P                   P                  f   V P                   P                  P	                  \
        P                  P                  4       V P                  P                  \
        P                  ! \        4      3R 4      pV'       g>   V P                   P                  P                  \
        P                  P                  4       M>V P                   P                  \        P                  P                  J d   \!        4       hV hR R R 4       V P#                  4       #   + '       g   i     T P#                  4       # ; ir&   )r   r?   r8   r5   r   r   r9   rm   r/  r   ReceiveMessageOperationr   rk   r-   r.   r   r   r  )rK   r   s   & r"   rM  _SingleThreadedRendezvous._next  s    [["""{{' ##F$8$8$H$HI JJ..33LACT	 !KKOO**6+?+?+O+OP!!T__%7%77#o%
- #. ""$$/ #". ""$$s   BE2A<EE%	c                0   < V ^8  d   QhRS[ S[,          /# r   r   )r!   r:   s   "r"   r#   rn         B BHSM Br$   c                B   V P                   P                  ;_uu_ 4        V P                   P                  f"   Rp\        P                  P                  V4      h\        P                  ! V P                   P                  4      uuR R R 4       #   + '       g   i     R # ; i)Nz5Cannot get debug error string until RPC is completed.)r   r?   rB   r-   r  r  r   r   r  s   & r"   rB   ,_SingleThreadedRendezvous.debug_error_string  sh    [["""{{--5K  ''229==>>$++"@"@A #"""r  c                &   < V ^8  d   Qh/ S[ ;R&   # r%  r   )r!   r:   s   "r"   r#   rn  8  s       ! r$   rb   r&   )rV   rW   rX   rY   r&  rq  rG   r  r   r  r   r  r"  r6   r7   r8   r,   r  r  rM  rB   rZ   r[   r\   r]   s   @r"   rl  rl  8  s     , ,) ), ,0 0 . .) )8 0 01 1$ $7 7
 
# #% %4B BU  r$   rl  c                   8  a  ] tR tRt o R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
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V 3R lR ltV 3R  ltR!tV tR# )#_MultiThreadedRendezvousi  a  An RPC iterator that depends on a channel spin thread.

This iterator relies upon a per-channel thread running in the background,
dequeueing events from the completion queue, and notifying threads waiting
on the threading.Condition object in the _RPCState object.

This extra thread allows _MultiThreadedRendezvous to fulfill the grpc.Future interface
and to mediate a bidirection streaming RPC.
c                0   < V ^8  d   QhRS[ S[,          /# r   r   )r!   r:   s   "r"   r#   %_MultiThreadedRendezvous.__annotate__  s     0 0(<"8 0r$   c                   a  S P                   P                  ;_uu_ 4        V 3R lp\        P                  ! S P                   P                  P                  V4       S P                   P                  uuRRR4       #   + '       g   i     R# ; i)r  c                  4   < S P                   P                  R J# r&   r   rO   s   r"   r   8_MultiThreadedRendezvous.initial_metadata.<locals>._done  s    {{334??r$   N)r   r?   r   r   r6   rK   r   s   f r"   r6   )_MultiThreadedRendezvous.initial_metadata  sU    [["""@ LL..33U;;;// #"""   AA<<B	c                0   < V ^8  d   QhRS[ S[,          /# r   r   )r!   r:   s   "r"   r#   r  %  r  r$   c                   a  S P                   P                  ;_uu_ 4        V 3R lp\        P                  ! S P                   P                  P                  V4       S P                   P                  uuRRR4       #   + '       g   i     R# ; i)r  c                  4   < S P                   P                  R J# r&   r   rO   s   r"   r   9_MultiThreadedRendezvous.trailing_metadata.<locals>._done)  s    {{44D@@r$   N)r   r?   r   r   r7   r  s   f r"   r7   *_MultiThreadedRendezvous.trailing_metadata%  sU    [["""A LL..33U;;;00 #"""r  c                D   < V ^8  d   QhRS[ S[P                  ,          /# r   r   )r!   r:   s   "r"   r#   r  /  s     $ $ht/ $r$   c                   a  S P                   P                  ;_uu_ 4        V 3R lp\        P                  ! S P                   P                  P                  V4       S P                   P                  uuRRR4       #   + '       g   i     R# ; i)r  c                  4   < S P                   P                  R J# r&   r   rO   s   r"   r   ,_MultiThreadedRendezvous.code.<locals>._done3  s    {{''t33r$   N)r   r?   r   r   r8   r  s   f r"   r8   _MultiThreadedRendezvous.code/  sT    [["""4 LL..33U;;;## #"""r  c                0   < V ^8  d   QhRS[ S[,          /# r   r   )r!   r:   s   "r"   r#   r  9  s     7 7# 7r$   c                H  a  S P                   P                  ;_uu_ 4        V 3R lp\        P                  ! S P                   P                  P                  V4       \        P                  ! S P                   P
                  4      uuRRR4       #   + '       g   i     R# ; i)r  c                  4   < S P                   P                  R J# r&   )r   r,   rO   s   r"   r   /_MultiThreadedRendezvous.details.<locals>._done=  s    {{**$66r$   N)r   r?   r   r   r   r,   r  s   f r"   r,    _MultiThreadedRendezvous.details9  s]    [["""7 LL..33U;>>$++"5"56 #"""   A%BB!	c                0   < V ^8  d   QhRS[ S[,          /# r   r   )r!   r:   s   "r"   r#   r  C  r  r$   c                H  a  S P                   P                  ;_uu_ 4        V 3R  lp\        P                  ! S P                   P                  P                  V4       \        P                  ! S P                   P
                  4      uuRRR4       #   + '       g   i     R# ; i)c                  4   < S P                   P                  R J# r&   )r   rB   rO   s   r"   r   :_MultiThreadedRendezvous.debug_error_string.<locals>._doneF  s    {{55TAAr$   N)r   r?   r   r   r   rB   r  s   f r"   rB   +_MultiThreadedRendezvous.debug_error_stringC  s^    [["""B LL..33U;>>$++"@"@A #"""r  c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   r  L  ru  r$   c                    V P                   P                  ;_uu_ 4        V P                   P                  uuR R R 4       #   + '       g   i     R # ; ir&   rw  rO   s   &r"   rG   "_MultiThreadedRendezvous.cancelledL  ry  rz  c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   r  P  r|  r$   c                    V P                   P                  ;_uu_ 4        V P                   P                  R J uuR R R 4       #   + '       g   i     R # ; ir&   r4  rO   s   &r"   r   _MultiThreadedRendezvous.runningP  r  r7  c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   r  T  r  r$   c                    V P                   P                  ;_uu_ 4        V P                   P                  R JuuR R R 4       #   + '       g   i     R # ; ir&   r4  rO   s   &r"   r   _MultiThreadedRendezvous.doneT  r  r7  c                    < V ^8  d   QhRS[ /# r   r   )r!   r:   s   "r"   r#   r  X  ro  r$   c                2    V P                   P                  R J# r&   r   rO   s   &r"   rq  %_MultiThreadedRendezvous._is_completeX  rs  r$   Nc                6   < V ^8  d   QhRS[ S[,          RS[/# r   r  )r!   r:   s   "r"   r#   r  [  s      huo  r$   c                .   V P                   P                  ;_uu_ 4        \        P                  ! V P                   P                  P                  V P                  VR7      pV'       d   \
        P                  ! 4       hV P                   P                  \
        P                  P                  J d!   V P                   P                  uuRRR4       # V P                   P                  '       d   \
        P                  ! 4       hV h  + '       g   i     R# ; i)zrReturns the result of the computation or raises its exception.

See grpc.Future.result for the full API contract.
r(   N)r   r?   r   r   rq  r-   FutureTimeoutErrorr8   r.   r   rA   rG   r  rK   r   	timed_outs   && r"   r  _MultiThreadedRendezvous.result[  s    
 [["""%%**D,=,=wI --//{{4??#5#55{{++ #" {{$$$//11J #""s   B&DD,DD	c                F   < V ^8  d   QhRS[ S[,          RS[ S[,          /# r   r  )r!   r:   s   "r"   r#   r  l  s$      % HY<O r$   c                   V P                   P                  ;_uu_ 4        \        P                  ! V P                   P                  P                  V P                  VR7      pV'       d   \
        P                  ! 4       hV P                   P                  \
        P                  P                  J d    RRR4       R# V P                   P                  '       d   \
        P                  ! 4       hV uuRRR4       #   + '       g   i     R# ; i)zfReturn the exception raised by the computation.

See grpc.Future.exception for the full API contract.
r(   N)r   r?   r   r   rq  r-   r  r8   r.   r   rG   r  r  s   && r"   r   "_MultiThreadedRendezvous.exceptionl  s    
 [["""%%**D,=,=wI --//{{4??#5#55 #" {{$$$//11 #"""s   BC8;C8C88D		c                Z   < V ^8  d   QhRS[ S[,          RS[ S[P                  ,          /# r   r  )r!   r:   s   "r"   r#   r  }  s,     ) ))	%%%	&)r$   c                   V P                   P                  ;_uu_ 4        \        P                  ! V P                   P                  P                  V P                  VR7      pV'       d   \
        P                  ! 4       hV P                   P                  \
        P                  P                  J d    RRR4       R# V P                   P                  '       d   \
        P                  ! 4       h V h  \
        P                   d*    \        P                  ! 4       ^,          u uuRRR4       # i ; i  + '       g   i     R# ; i)zwAccess the traceback of the exception raised by the computation.

See grpc.future.traceback for the full API contract.
r(   N)r   r?   r   r   rq  r-   r  r8   r.   r   rG   r  r  r  r  r  s   && r"   r  "_MultiThreadedRendezvous.traceback}  s     [["""%%**D,=,=wI --//{{4??#5#55 #" {{$$$//11)
== )||~a(( #") #""s6   BD0;D0D0-C//1D- D0,D--D00E	c                N   < V ^8  d   QhRS[ S[P                  .R3,          RR/# r  r  )r!   r:   s   "r"   r#   r    r  r$   c                D   V P                   P                  ;_uu_ 4        V P                   P                  fE   V P                   P                  P	                  \
        P                  ! W4      4        R R R 4       R #  R R R 4       V! V 4       R #   + '       g   i     L; ir&   r  r  s   &&r"   r"  *_MultiThreadedRendezvous.add_done_callback  r  r  c                    < V ^8  d   QhRS[ /# r   r  )r!   r:   s   "r"   r#   r    s     ! !s !r$   c                  a  S P                   P                  ;_uu_ 4        S P                   P                  f   \        S P                   S P                  4      pS P                   P
                  P                  \        P                  P                  4       S P                  P                  \        P                  ! \        4      3V4      pV'       g>   S P                   P
                  P                  \        P                  P                  4       M>S P                   P                  \        P                   P"                  J d   \%        4       hS hV 3R lp\&        P(                  ! S P                   P                  P(                  V4       S P                   P*                  e4   S P                   P*                  pR S P                   n        VuuR R R 4       # \        P                  P                  S P                   P
                  9  dW   S P                   P                  \        P                   P"                  J d   \%        4       hS P                   P                  e   S hR R R 4       R #   + '       g   i     R # ; i)Nc                     < S P                   P                  R J;'       gR    \        P                  P                  S P                   P
                  9  ;'       d    S P                   P                  R J# r&   )r   rA   r   r9   rm   r5   r8   rO   s   r"   _response_ready7_MultiThreadedRendezvous._next.<locals>._response_ready  s\    {{++47  ((88O 5 5((4r$   )r   r?   r8   r   r0  r5   r   r   r9   rm   r/  r   r  r   rk   r-   r.   r   r   r   r   rA   )rK   r   r   r  rA   s   f    r"   rM  _MultiThreadedRendezvous._next  s   [["""{{' .KK!<!<! ##F$8$8$H$HI JJ..33LAC!	 !KKOO**6+?+?+O+OP!!T__%7%77#o%
 LL..33_E{{##/;;//'+$7 #"8 ##334;;??J;;##t'9'99'/);;##/JA #"""s   F*I(B	I((I9	c                &   < V ^8  d   Qh/ S[ ;R&   # r%  r   )r!   r:   s   "r"   r#   r    s       r$   rb   r&   )rV   rW   rX   rY   r&  r6   r7   r8   r,   rB   rG   r  r   rq  r  r   r  r"  rM  rZ   r[   r\   r]   s   @r"   r  r    s     0 01 1$ $7 7B B) ), ,0 0, , " ") ), ! !_  r$   r  c                    V ^8  d   QhR\         R\        \        ,          R\        R\        \        \        ,          \        \
        ,          \        \        P                  ,          3,          /# )r   r   r   r   r   )r   r   r    r   r
   bytesr-   r  )r!   s   "r"   r#   r#     sQ     . ..e_. ,. 8E?HUOXdmm-DDE	.r$   c                     \        V4      p\        P                  ! W4      pVf8   \        RRR\        P
                  P                  R4      p\        V4      pVR V3# W4R 3# )Nr   rb   )r)   r   r   r3   r-   r.   rp   r   )r   r   r   r*  r   r_   r   s   &&&    r"   _start_unary_requestr
    sl    
 !H **7G!OO$$,
 "%(u$$--r$   c                    V ^8  d   QhR\         R\        P                  R\        R\        \
        ,          R\        \        \        \        \        P                  3,          3,          /# )r   r_   r   	with_callr*  r   )r3   r   r   rS   r   r    r   r   r
   r-   Call)r!   s   "r"   r#   r#     s\     # ##


# # uo	#
 <|TYY6778#r$   c                     V P                   \        P                  P                  J d0   V'       d   \	        WR V4      pV P
                  V3# V P
                  # \        V 4      hr&   )r8   r-   r.   r   r  rA   r   )r_   r   r  r*  
rendezvouss   &&&& r"   _end_unary_response_blockingr    sO     zzT__'''1%tXNJ>>:--~~
E
""r$   c                    V ^8  d   QhR\         \        ,          R\        R\        \        \        P
                  ,          ,          /# r   metadatainitial_metadata_flagsr   )r   r   rT   r   r   	Operation)r!   s   "r"   r#   r#     s9      |$>Ahv''()r$   c                     \         P                  ! W4      \         P                  ! \        4      \         P                  ! \        4      3\         P
                  ! \        4      33# r&   )r   SendInitialMetadataOperationr  r   ReceiveStatusOnClientOperationReceiveInitialMetadataOperationr  r  s   &&r"   #_stream_unary_invocation_operationsr    sU    
 // **<811,?	
 
	/	/	=?	 	r$   c          
          V ^8  d   QhR\         \        ,          R\        R\        \        \        \
        P                  ,          \         \        ,          3,          ,          /# r  )r   r   rT   r   r
   r   r  r   )r!   s   "r"   r#   r#     sH      |$>AeHV--.0AABCr$   c                 ~    \         ;QJ d    . R  \        W4       4       F  NK  	  5# ! R  \        W4       4       4      # )c              3   *   "   T F	  pVR 3x  K  	  R # 5ir&   rb   ).0r   s   & r"   	<genexpr>?_stream_unary_invocation_operations_and_tags.<locals>.<genexpr>  s#      

J 	

   )tupler  r  s   &&r"   ,_stream_unary_invocation_operations_and_tagsr$    sJ     5 
 >
5 5 
 >
  r$   c                \    V ^8  d   QhR\         \        ,          R\         \        ,          /# )r   user_deadliner   r   )r!   s   "r"   r#   r#     s"     / /x /8E? /r$   c                 ~    \         P                  ! 4       pVf   V f   R # Ve   V f   V# V e   Vf   V # \        W4      # r&   )r   get_deadline_from_contextmin)r&  parent_deadlines   & r"   _determine_deadliner+    sK    668O=#8"}'< _%<..r$   c                      a  ] tR tRt o . RO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	RV 3R lR llt
V 3R ltRtV tR# )_UnaryUnaryMultiCallablei	  c                   < V ^8  d   QhRS[ P                  RS[RS[RS[RS[S[,          RS[S[,          RS[S[,          /# r   channelmanaged_callrE   rF   r   rf   _registered_call_handler   Channelr   r  r   r   r   rT   )r!   r:   s   "r"   r#   %_UnaryUnaryMultiCallable.__annotate__  e     ? ?? ,? 	?
 ? %%89?  ((=>? "*#?r$   c                    Wn         W n        W0n        W@n        WPn        W`n        \        P                  ! 4       V n        Wpn	        R # r&   
_channel_managed_call_method_target_request_serializerr0  r   build_census_context_contextr2  rK   r0  r1  rE   rF   r   rf   r2  s   &&&&&&&&r"   rL   !_UnaryUnaryMultiCallable.__init__  ;      )#5 &;#335'>$r$   c                (  < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[,          RS[S[P                  ,          RS[S[S[,          S[S[	S[
P                  ,          ,          S[S[,          S[S[P                  ,          3,          /# )r   r   r   r  wait_for_readycompressionr   )r   r   r    r   rS   r-   Compressionr
   r3   r   r   r  r  )r!   r:   s   "r"   r#   r5  1  s     #1 #1#1 %#1 <(	#1
 !#1 d../#1 
&**+,	!
#1r$   c                    \        WV P                  4      w  rgp\        4       P                  V4      p	\        P
                  ! W54      p
Vf   R R R V3# \        \        R R R R 4      p\        P                  ! W4      \        P                  ! V\        4      \        P                  ! \        4      \        P                  ! \        4      \        P                  ! \        4      \        P                  ! \        4      3pWVR 3# r&   )r
  r=  _InitialMetadataFlagswith_wait_for_readyr   augment_metadatar3   _UNARY_UNARY_INITIAL_DUEr   r  r   r   r   r  r  r  )rK   r   r   r  rD  rE  r*  r   r  r  augmented_metadatar_   r   s   &&&&&&       r"   _prepare!_UnaryUnaryMultiCallable._prepare1  s     4Hd664
0j "7!8!L!L"
 *::
 %tZ//2D$dK//" ''(:LI//=22<@**<811,?	

 (D00r$   Nc                   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[P
                  ,          RS[S[,          RS[S[P                  ,          RS[S[	S[
P                  3,          /# r   r   r   r  credentialsrD  rE  r   )r   r   r    r   r-   CallCredentialsrS   rF  r
   r3   r   r   )r!   r:   s   "r"   r#   r5  V  s     # ## %# <(	#
 d223# !# d../# 
y&///	0#r$   c                >   V P                  WW5V4      w  rxrVf   V
h\        P                  ! 4       Vn        \        P
                  ! V P                  4      Vn        \        P
                  ! V P                  4      Vn	        V P                  P                  \        P                  P                  V P                  R \        V	4      TVf   R MVP                   VR 33V P"                  V P$                  4	      pVP'                  4       p\)        WV P*                  4       W{3# r&   )rM  r'   rv   rC   r   r   r;  rE   r<  rF   r9  segregated_callr   PropagationConstantsGRPC_PROPAGATE_DEFAULTSr+  _credentialsr?  r2  r  r|   r0  )rK   r   r   r  rQ  rD  rE  r_   r   r*  r  r   re   s   &&&&&&&      r"   	_blocking"_UnaryUnaryMultiCallable._blockingV  s     37--h3
/8 =#002~~dll3~~dll3}},,''??LL)'D[-E-E  MM((
  !eD$?$?@{r$   c                   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[P
                  ,          RS[S[,          RS[S[P                  ,          RS[ /# rP  )r   r   r    r   r-   rR  rS   rF  )r!   r:   s   "r"   r#   r5  {  s}     F FF %F <(	F
 d223F !F d../F 
Fr$   c                F    V P                  WW4WV4      w  rx\        WxR R4      # FNrX  r  	rK   r   r   r  rQ  rD  rE  r_   r   s	   &&&&&&&  r"   __call__!_UnaryUnaryMultiCallable.__call__{  s,     nnh^
 ,EEEr$   c                   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[P
                  ,          RS[S[,          RS[S[P                  ,          RS[S[ S[P                  3,          /# rP  )
r   r   r    r   r-   rR  rS   rF  r
   r  )r!   r:   s   "r"   r#   r5    s     E EE %E <(	E
 d223E !E d../E 
sDII~	Er$   c                F    V P                  WW4WV4      w  rx\        WxR R4      # r  r]  r^  s	   &&&&&&&  r"   r  "_UnaryUnaryMultiCallable.with_call  s,     nnh^
 ,EtDDr$   c                   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[P
                  ,          RS[S[,          RS[S[P                  ,          RS[/# rP  	r   r   r    r   r-   rR  rS   rF  r  )r!   r:   s   "r"   r#   r5    st      
  
 
 % 
 <(	 

 d223 
 ! 
 d../ 
 
" 
r$   c                   V P                  WW5V4      w  rxrVf   V
h\        WpP                  4      p\        P                  ! 4       Vn        \        P                  ! V P                  4      Vn	        \        P                  ! V P                  4      Vn        T P                  \        P                  P                  V P                  R T	TVf   R MVP                   V3VV P"                  V P$                  4
      p\'        W|V P                  V	4      # r&   )rM  r   r0  r'   rv   rC   r   r   r;  rE   r<  rF   r:  r   rU  rV  rW  r?  r2  r  )rK   r   r   r  rQ  rD  rE  r_   r   r*  r  r   r   s   &&&&&&&      r"   future_UnaryUnaryMultiCallable.future  s     37--h3
/8 =&u.I.IJ#002~~dll3~~dll3!!''??LL'D[-E-EMMM((
 (44h
 	
r$   c                   < V ^8  d   Qh/ S[ P                  ;R&   S[;R&   S[;R&   S[;R&   S[S[,          ;R&   S[S[,          ;R&   S[;R&   S[S[,          ;R&   # 	r   r9  r:  r;  r<  r=  r0  r?  r2  	r   r4  r   r  r   r   r   r   rT   )r!   r:   s   "r"   r#   r5  	  z     nn ((  N  N	 
 ""566  %%:;;  M  &c]* r$   r9  r?  r:  r;  r2  r=  r0  r<  r9  r?  r:  r;  r=  r0  r<  NNNNN)rV   rW   rX   rY   	__slots__rL   rM  rX  r_  r  rg  rZ   r[   r\   r]   s   @r"   r-  r-  	  sV     I? ?&#1 #1J# #JF FE E 
  
]  r$   r-  c                   \   a  ] tR tRt o . R	OtV 3R lR ltR
V 3R lR lltV 3R ltRtV t	R# )'_SingleThreadedUnaryStreamMultiCallablei  c                b   < V ^8  d   QhRS[ P                  RS[RS[RS[RS[RS[S[,          /# )r   r0  rE   rF   r   rf   r2  )r   r4  r  r   r   r   rT   )r!   r:   s   "r"   r#   4_SingleThreadedUnaryStreamMultiCallable.__annotate__  sO     ? ?? ? 	?
 0?  5? "*#?r$   c                    Wn         W n        W0n        W@n        WPn        \
        P                  ! 4       V n        W`n        R # r&   )	r9  r;  r<  r=  r0  r   r>  r?  r2  )rK   r0  rE   rF   r   rf   r2  s   &&&&&&&r"   rL   0_SingleThreadedUnaryStreamMultiCallable.__init__  s5      #5 &;#335'>$r$   Nc                   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[P
                  ,          RS[S[,          RS[S[P                  ,          RS[/# rP  )	r   r   r    r   r-   rR  rS   rF  rl  )r!   r:   s   "r"   r#   rt    st     =
 =
=
 %=
 <(	=

 d223=
 !=
 d../=
 
#=
r$   c                |   \        V4      p\        P                  ! WP                  4      pVf3   \	        RRR\
        P                  P                  R4      p	\        V	4      h\	        \        R R R R 4      p	Vf   R MVP                  p
\        4       P                  V4      p\        P                  ! W64      p\        P                   ! W4      \        P"                  ! V\$        4      \        P&                  ! \$        4      3\        P(                  ! \$        4      3\        P*                  ! \$        4      33p\,        ;QJ d    . R V 4       F  NK  	  5M! R V 4       4      p\.        P0                  ! 4       V	n        \        P4                  ! V P6                  4      V	n        \        P4                  ! V P:                  4      V	n        V P>                  PA                  \        PB                  PD                  V P6                  R \G        V4      VV
VV PH                  V PJ                  4	      p\M        WV PN                  V4      # )Nr   c              3   (   "   T F  qR 3x  K
  	  R # 5ir&   rb   )r  opss   & r"   r   C_SingleThreadedUnaryStreamMultiCallable.__call__.<locals>.<genexpr>
  s     #F:C$K:s   rb   )(r)   r   r   r=  r3   r-   r.   rp   r   _UNARY_STREAM_INITIAL_DUErW  rH  rI  r   rJ  r   r  r   r   r   r  r  r#  r'   rv   rC   r   r;  rE   r<  rF   r9  rT  rU  rV  r+  r?  r2  rl  r0  )rK   r   r   r  rQ  rD  rE  r*  r   r_   call_credentialsr  rL  r   operations_and_tagsr   s   &&&&&&&         r"   r_  0_SingleThreadedUnaryStreamMultiCallable.__call__  s    W%$..--
 %((0E $E**3T4tL'D[-E-E 	 "7!8!L!L"
 *::

 33& ++,>M33LA 22<@B33LAC


 $e#F:#Fee#F:#FF#002~~dll3~~dll3}},,''??LL)MM((

 )44h
 	
r$   c                   < V ^8  d   Qh/ S[ P                  ;R&   S[;R&   S[;R&   S[S[,          ;R&   S[S[,          ;R&   S[;R&   S[S[,          ;R&   # )r   r9  r;  r<  r=  r0  r?  r2  )r   r4  r  r   r   r   r   rT   )r!   r:   s   "r"   r#   rt    sm     nn N  N  ""566	 
 %%:;;  M  &c]* r$   )r9  r?  r;  r2  r=  r0  r<  )r9  r?  r;  r=  r0  r<  ro  
rV   rW   rX   rY   rp  rL   r_  rZ   r[   r\   r]   s   @r"   rr  rr    s(     I? ?"=
 =
I  r$   rr  c                   \   a  ] tR tRt o . R	OtV 3R lR ltR
V 3R lR lltV 3R ltRtV t	R# )_UnaryStreamMultiCallablei  c                h   < V ^8  d   QhRS[ P                  RS[RS[RS[RS[RS[RS[S[,          /# r/  )r   r4  r   r  r   r   r   rT   )r!   r:   s   "r"   r#   &_UnaryStreamMultiCallable.__annotate__3  sY     ? ?? ,? 	?
 ? 0?  5? "*#?r$   c                    Wn         W n        W0n        W@n        WPn        W`n        \        P                  ! 4       V n        Wpn	        R # r&   r8  r@  s   &&&&&&&&r"   rL   "_UnaryStreamMultiCallable.__init__3  rB  r$   Nc                   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[P
                  ,          RS[S[,          RS[S[P                  ,          RS[/# rP  re  )r!   r:   s   "r"   r#   r  F  st     1
 1
1
 %1
 <(	1

 d2231
 !1
 d../1
 
"1
r$   c                   \        WV P                  4      w  rxp	\        4       P                  V4      p
Vf   V	h\        P
                  ! W64      p\        \        R R R R 4      p\        P                  ! W4      \        P                  ! V\        4      \        P                  ! \        4      \        P                  ! \        4      3\        P                  ! \        4      33p\        P                   ! 4       Vn        \$        P&                  ! V P(                  4      Vn        \$        P&                  ! V P,                  4      Vn        T P1                  \        P2                  P4                  V P(                  R \7        V4      TVf   R MVP8                  V\;        WP<                  4      V P>                  V P@                  4
      p\C        WV P<                  V4      # r&   )"r
  r=  rH  rI  r   rJ  r3   r|  r   r  r   r   r   r  r  r'   rv   rC   r   r   r;  rE   r<  rF   r:  rU  rV  r+  rW  r   r0  r?  r2  r  )rK   r   r   r  rQ  rD  rE  r*  r   r  r  rL  r_   r   r   s   &&&&&&&        r"   r_  "_UnaryStreamMultiCallable.__call__F  s    4Hd664
0j "7!8!L!L"
 %)::
 3T4tL 33& ++,>M33LA55lC 33LAC


  $002~~dll3~~dll3!!''??LL)'D[-E-E5"="=>MM((
 (44h
 	
r$   c                   < V ^8  d   Qh/ S[ P                  ;R&   S[;R&   S[;R&   S[;R&   S[S[,          ;R&   S[S[,          ;R&   S[;R&   S[S[,          ;R&   # rj  rk  )r!   r:   s   "r"   r#   r    rl  r$   rm  rn  ro  r  r]   s   @r"   r  r    s(     I? ?&1
 1
Q  r$   r  c                      a  ] tR tRt o . RO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t
RtV tR# )_StreamUnaryMultiCallableiz  c                   < V ^8  d   QhRS[ P                  RS[RS[RS[RS[S[,          RS[S[,          RS[S[,          /# r/  r3  )r!   r:   s   "r"   r#   &_StreamUnaryMultiCallable.__annotate__  r6  r$   c                    Wn         W n        W0n        W@n        WPn        W`n        \        P                  ! 4       V n        Wpn	        R # r&   r8  r@  s   &&&&&&&&r"   rL   "_StreamUnaryMultiCallable.__init__  rB  r$   c                   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[P
                  ,          RS[S[,          RS[S[P                  ,          RS[S[	S[
P                  3,          /# r   r   r   r  rQ  rD  rE  r   )r   r   r    r   r-   rR  rS   rF  r
   r3   r   r   )r!   r:   s   "r"   r#   r    s     + +"+ %+ <(	+
 d223+ !+ d../+ 
y&///	0+r$   c                   \        V4      p\        \        R R R R 4      p\        4       P	                  V4      p	\
        P                  ! W64      p
\        P                  ! 4       Vn	        \        P                  ! V P                  4      Vn        \        P                  ! V P                  4      Vn        V P                   P#                  \$        P&                  P(                  V P                  R \+        V4      T
Vf   R MVP,                  \/        W4      V P0                  V P2                  4	      p\5        WWP6                  R 4        VP9                  4       pVP:                  ;_uu_ 4        \=        WV P>                  4       VP:                  PA                  4        VPB                  '       g    R R R 4       W3#  R R R 4       K    + '       g   i     K  ; ir&   )"r)   r3   _STREAM_UNARY_INITIAL_DUErH  rI  r   rJ  r'   rv   rC   r   r   r;  rE   r<  rF   r9  rT  r   rU  rV  r+  rW  r$  r?  r2  r   r=  r  r?   r|   r0  r   r5   )rK   r   r   r  rQ  rD  rE  r*  r_   r  rL  r   re   s   &&&&&&&      r"   rX  #_StreamUnaryMultiCallable._blocking  sk    W%3T4tL!6!8!L!L"
 *::
  $002~~dll3~~dll3}},,''??LL)'D[-E-E8" MM((
 	"T+C+CT	
 OO%EeD,G,GH**,yyy	 !
 { ! !s   )AGG	Nc                   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[P
                  ,          RS[S[,          RS[S[P                  ,          RS[/# r  )	r   r   r    r   r-   rR  rS   rF  r   )r!   r:   s   "r"   r#   r    s}     F F"F %F <(	F
 d223F !F d../F 
Fr$   c                L    V P                  VVVVVV4      w  rx\        WxR R4      # r\  r]  	rK   r   r   r  rQ  rD  rE  r_   r   s	   &&&&&&&  r"   r_  "_StreamUnaryMultiCallable.__call__  s7     nn
 ,EEEr$   c                   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[P
                  ,          RS[S[,          RS[S[P                  ,          RS[S[	S[P                  3,          /# r  )r   r   r    r   r-   rR  rS   rF  r
   r   r  )r!   r:   s   "r"   r#   r    s     E E"E %E <(	E
 d223E !E d../E 
sDII~	Er$   c                L    V P                  VVVVVV4      w  rx\        WxR R4      # r  r]  r  s	   &&&&&&&  r"   r  #_StreamUnaryMultiCallable.with_call  s7     nn
 ,EtDDr$   c                   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[P
                  ,          RS[S[,          RS[S[P                  ,          RS[/# r  	r   r   r    r   r-   rR  rS   rF  r  )r!   r:   s   "r"   r#   r    st     ,
 ,
",
 %,
 <(	,

 d223,
 !,
 d../,
 
",
r$   c                   \        V4      p\        \        R R R R 4      p\        WP                  4      p	\        4       P                  V4      p
\        P                  ! W64      p\        P                  ! 4       Vn        \        P                  ! V P                  4      Vn        \        P                  ! V P                   4      Vn        T P%                  \&        P(                  P*                  V P                  R TTVf   R MVP,                  \/        W:4      V	V P0                  V P2                  4
      p\5        VVVV P6                  V	4       \9        WV P                  V4      # r&   )r)   r3   r  r   r0  rH  rI  r   rJ  r'   rv   rC   r   r   r;  rE   r<  rF   r:  r   rU  rV  rW  r  r?  r2  r   r=  r  )rK   r   r   r  rQ  rD  rE  r*  r_   r   r  rL  r   s   &&&&&&&      r"   rg   _StreamUnaryMultiCallable.future  s3    W%3T4tL&u.I.IJ!6!8!L!L"
 *::
  $002~~dll3~~dll3!!''??LL'D[-E-E/ MM((
 	"$$	
 (44h
 	
r$   c                   < V ^8  d   Qh/ S[ P                  ;R&   S[;R&   S[;R&   S[;R&   S[S[,          ;R&   S[S[,          ;R&   S[;R&   S[S[,          ;R&   # rj  rk  )r!   r:   s   "r"   r#   r  z  rl  r$   rm  rn  ro  )rV   rW   rX   rY   rp  rL   rX  r_  r  rg  rZ   r[   r\   r]   s   @r"   r  r  z  sK     I? ?&+ +ZF F&E E&,
 ,
w  r$   r  c                   \   a  ] tR tRt o . R	OtV 3R lR ltR
V 3R lR lltV 3R ltRtV t	R# )_StreamStreamMultiCallablei$  c                   < V ^8  d   QhRS[ P                  RS[RS[RS[RS[S[,          RS[S[,          RS[S[,          /# r/  r3  )r!   r:   s   "r"   r#   '_StreamStreamMultiCallable.__annotate__9  r6  r$   c                    Wn         W n        W0n        W@n        WPn        W`n        \        P                  ! 4       V n        Wpn	        R # r&   r8  r@  s   &&&&&&&&r"   rL   #_StreamStreamMultiCallable.__init__9  rB  r$   Nc                   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[P
                  ,          RS[S[,          RS[S[P                  ,          RS[/# r  r  )r!   r:   s   "r"   r#   r  L  st     3
 3
"3
 %3
 <(	3

 d2233
 !3
 d../3
 
"3
r$   c                V   \        V4      p\        \        R R R R 4      p\        4       P	                  V4      p	\
        P                  ! W64      p
\        P                  ! W4      \        P                  ! \        4      3\        P                  ! \        4      33p\        WP                  4      p\        P                  ! 4       Vn        \"        P$                  ! V P&                  4      Vn        \"        P$                  ! V P*                  4      Vn        T P/                  \        P0                  P2                  V P&                  R \5        V4      T
Vf   R MVP6                  VVV P8                  V P:                  4
      p\=        VVVV P>                  V4       \A        WV P                  V4      # r&   )!r)   r3   _STREAM_STREAM_INITIAL_DUErH  rI  r   rJ  r   r  r  r   r  r   r0  r'   rv   rC   r   r   r;  rE   r<  rF   r:  rU  rV  r+  rW  r?  r2  r   r=  r  )rK   r   r   r  rQ  rD  rE  r*  r_   r  rL  r   r   r   s   &&&&&&&       r"   r_  #_StreamStreamMultiCallable.__call__L  sp    W%4dD$M!6!8!L!L"
 *::

 33& 55lC	 33LAC

 'u.I.IJ#002~~dll3~~dll3!!''??LL)'D[-E-EMM((
 	"$$	
 (44h
 	
r$   c                   < V ^8  d   Qh/ S[ P                  ;R&   S[;R&   S[;R&   S[;R&   S[S[,          ;R&   S[S[,          ;R&   S[;R&   S[S[,          ;R&   # rj  rk  )r!   r:   s   "r"   r#   r  $  rl  r$   rm  rn  ro  r  r]   s   @r"   r  r  $  s(     I? ?&3
 3
Q  r$   r  c                   Z   a a ] tR tRt oRt]3V3R lV 3R llltV3R lR ltRtVt	V ;t
# )rH  i  z'Stores immutable initial metadata flagsc                    < V ^8  d   QhRS[ /# )r   value)rT   )r!   r:   s   "r"   r#   "_InitialMetadataFlags.__annotate__  s     E EC Er$   c                l   < V\         P                  P                  ,          p\        \        V `  W4      # r&   )r   InitialMetadataFlags	used_maskr.  rH  __new__)clsr  r   s   &&r"   r  _InitialMetadataFlags.__new__  s,    ,,666*C8DDr$   c                6   < V ^8  d   QhRS[ S[,          RS[/# )r   rD  r   )r   rS   rT   )r!   r:   s   "r"   r#   r    s      (4. S r$   c                l   Ve   V'       dP   V P                  V \        P                  P                  ,          \        P                  P                  ,          4      # V'       gQ   V P                  V \        P                  P                  ( ,          \        P                  P                  ,          4      # V # r&   )r   r   r  rD  wait_for_ready_explicitly_set)rK   rD  s   &&r"   rI  )_InitialMetadataFlags.with_wait_for_ready  s    %~~11@@A11OOP 
 "~~F77FFFF11OOP  r$   rb   )rV   rW   rX   rY   r&  r   r  rI  r[   r\   ri  rj  s   @@r"   rH  rH    s&     1". E E  r$   rH  c                   V   a  ] tR tRt o V 3R lR ltV 3R lR ltR tV 3R ltRtV t	R	# )
_ChannelCallStatei  c                4   < V ^8  d   QhRS[ P                  /# r   r0  )r   r4  )r!   r:   s   "r"   r#   _ChannelCallState.__annotate__  s       r$   c                b    \         P                  ! 4       V n        Wn        ^ V n        RV n         R# )    FN)r=   Locklockr0  managed_callsrK   r0  s   &&r"   rL   _ChannelCallState.__init__  s$    NN$	r$   c                   < V ^8  d   QhRR/# rd  rb   )r!   r:   s   "r"   r#   r    s      d r$   c                    ^ V n         R# )r  N)r  rO   s   &r"   rP   &_ChannelCallState.reset_postfork_child  s
    r$   c                     V P                   P                  \        P                  P                  R 4       R#   \
        \        3 d     R# i ; i)zChannel deallocated!N)r0  closer   r.   rG   	TypeErrorAttributeErrorrO   s   &r"   rf  _ChannelCallState.__del__  sD    	LL!!++-C >* 		s   48 AAc                R   < V ^8  d   Qh/ S[ P                  ;R&   S[;R&   S[;R&   # )r   r0  r  r=   )r   r4  rT   rS   )r!   r:   s   "r"   r#   r    s+     ^^   O r$   )r0  r  r  r=   N)
rV   rW   rX   rY   rL   rP   rf  rZ   r[   r\   r]   s   @r"   r  r    s%     
    r$   r  c                (    V ^8  d   QhR\         RR/# r   r_   r   Nr  )r!   s   "r"   r#   r#     s        $5  $  r$   c                    a  V 3R  lp\         P                  ! VR7      pVP                  R4       VP                  4        R# )c                    <  \         P                  ! S4       SP                  P                  4       p V P                  \         P
                  P                  8X  d   K\  V P                  V 4      pV'       g   Kw  SP                  ;_uu_ 4        S;P                  ^,          un	        SP                  ^ 8X  d    RRR4       R#  RRR4       K    + '       g   i     K  ; ir  )
r   r   r0  next_call_eventcompletion_typeCompletionTypequeue_timeouttagr  r  )re   call_completedr_   s     r"   channel_spin._run_channel_spin_thread.<locals>.channel_spin  s    ,,U3MM113E$$(=(=(K(KK"YYu-N~ZZZ''1,'**a/  Z/  ZZZs   ,CC	r   TNr   )r_   r  channel_spin_threads   f  r"   _run_channel_spin_threadr    s5     !22,G!!$'r$   c                $    V ^8  d   QhR\         /# r   r  )r!   s   "r"   r#   r#     s     = =,= =r$   c                    a  R  V 3R llpV# )c                r   V ^8  d   QhR\         R\        R\        \        ,          R\        \        ,          R\        \
        ,          R\        \        P                  ,          R\        \        \        P                  ,          ,          R\        R	\        R
\        \         ,          R\        P                  /# )r   flagsrE   hostr*  r  rQ  r   r   contextr2  r   )rT   r  r   r/   r    r   r   rR  r   r  r   r   r   )r!   s   "r"   r#   6_channel_managed_call_management.<locals>.__annotate__  s     9 999 sm9 5/	9
 <(9 f4459 Xf&6&6789 9 9 "*#9 
		9r$   c
                  <a \         ;QJ d    . V3R lV 4       F  NK  	  5M! V3R lV 4       4      p
SP                  ;_uu_ 4        SP                  P                  V VVVVVV
VV	4	      pSP                  ^ 8X  d   ^Sn        \        S4       MS;P                  ^,          un        VuuRRR4       #   + '       g   i     R# ; i)a   Creates a cygrpc.IntegratedCall.

Args:
  flags: An integer bitfield of call flags.
  method: The RPC method.
  host: A host string for the created call.
  deadline: A float to be the deadline of the created call or None if
    the call is to have an infinite deadline.
  metadata: The metadata for the call or None.
  credentials: A cygrpc.CallCredentials or None.
  operations: A sequence of sequences of cygrpc.Operations to be
    started on the call.
  event_handler: A behavior to call to handle the events resultant from
    the operations on the call.
  context: Context object for distributed tracing.
  _registered_call_handle: An int representing the call handle of the
    method, or None if the method is not registered.

Returns:
  A cygrpc.IntegratedCall with which to conduct an RPC.
c              3   ,   <"   T F	  pVS3x  K  	  R # 5ir&   rb   )r  	operationr   s   & r"   r   C_channel_managed_call_management.<locals>.create.<locals>.<genexpr>  s$      $

 (	  (s   N)r#  r  r0  integrated_callr  r  )r  rE   r  r*  r  rQ  r   r   r  r2  r~  r   r_   s   &&&&&&&f&&  r"   create0_channel_managed_call_management.<locals>.create  s    B $e $

 ($
ee $

 ($
 
 ZZZ==00#'
D ""a'&'#(/##q(## ZZZs   	A"B66C	rb   )r_   r  s   f r"    _channel_managed_call_managementr    s    9 9v Mr$   c                   P   a  ] tR tRt o V 3R lR ltV 3R lR ltV 3R ltRtV tR# )	_ChannelConnectivityStatei  c                4   < V ^8  d   QhRS[ P                  /# r  )r-   r4  )r!   r:   s   "r"   r#   &_ChannelConnectivityState.__annotate__  s          r$   c                    \         P                  ! 4       V n        Wn        R V n        RV n        R V n        . V n        R V n        R# r\  )	r=   RLockr  r0  pollingconnectivitytry_to_connectcallbacks_and_connectivities
deliveringr  s   &&r"   rL   "_ChannelConnectivityState.__init__  s;    OO%	 #,.)r$   c                   < V ^8  d   QhRR/# rd  rb   )r!   r:   s   "r"   r#   r    s        d  r$   c                L    R V n         RV n        R V n        . V n        R V n        R# r\  )r  r  r  r  r  rO   s   &r"   rP   ._ChannelConnectivityState.reset_postfork_child  s(     #,.)r$   c                .  < V ^8  d   Qh/ S[ P                  ;R&   S[P                  ;R&   S[;R&   S[P
                  ;R&   S[;R&   S[S[S[S[	S[P
                  .R3,          S[
S[P
                  ,          3,          ,          ,          ;R&   S[;R&   # )	r   r  r0  r  r  r  Nr  r  )r=   r  r-   r4  rS   ChannelConnectivityr   r   r   r   r   )r!   r:   s   "r"   r#   r    s     
// \\  M  ***	 
   #'$223T9:1124	
#    r$   )r  r0  r  r  r  r  r  NrU   r]   s   @r"   r  r    s      "      5  r$   r  c                v    V ^8  d   QhR\         R\        \        \        P                  .R3,          ,          /# r  )r  r   r   r-   r  )r!   s   "r"   r#   r#   %  s4     	$ 	$$	$	(D,,-t3
45	$r$   c                     . pV P                    F8  pVw  r4W@P                  Jg   K  VP                  V4       V P                  V^&   K:  	  V# )   )r  r  rC  )r_   callbacks_needing_updatecallback_and_connectivityr   callback_connectivitys   &    r"   _deliveriesr  %  sW      "%*%G%G!*C' (:(::$++H5+0+=+=%a(	 &H
 $#r$   c          	          V ^8  d   QhR\         R\        P                  R\        \        \        P                  .R3,          ,          RR/# )r   r_   initial_connectivityinitial_callbacksNr   )r  r-   r  r   r   )r!   s   "r"   r#   r#   1  sN      $22  $*B*B)CT)I JK 
	r$   c                 ~   TpTp V F"  p\         P                  ! V 4        V! V4       K$  	  V P                  ;_uu_ 4        \        V 4      pV'       d   V P                  pMRV n	         RRR4       R#  RRR4       K{    \         d    \        P	                  \
        4        K  i ; i  + '       g   i     K  ; i)TFN)
r   r   r   r   r   0_CHANNEL_SUBSCRIPTION_CALLBACK_ERROR_LOG_MESSAGEr  r  r  r  )r_   r  r	  r  rH   r   s   &&&   r"   _deliverr  1  s    
 (L!I
!H,,U3& " ZZZ#E*I$11#(  Z  Z	  !!D ZZs   B )B+ $B('B(+B<	c                z    V ^8  d   QhR\         R\        \        \        P                  .R3,          ,          RR/# )r   r_   rH   Nr   )r  r   r   r-   r  )r!   s   "r"   r#   r#   J  s>      $$":":!;T!ABC 
r$   c                     \         P                  ! \        V V P                  V3R 7      pVP	                  R4       VP                  4        RV n        R# )rF   argsTN)r   r   r  r  r   r   r  )r_   rH   delivering_threads   && r"   _spawn_deliveryr  J  sP     00
 %Er$   c                T    V ^8  d   QhR\         R\        P                  R\        RR/# )r   r_   r0  initial_try_to_connectr   N)r  r-   r4  rS   )r!   s   "r"   r#   r#   \  s4     .: .:$.:\\.: !.: 
	.:r$   c                    TpVP                  V4      pV P                  ;_uu_ 4        \        P                  V,          V n        \
        ;QJ d    . R  V P                   4       F  NK  	  5M! R  V P                   4       4      pV P                   F  pV P                  V^&   K  	  V'       d   \        W4       RRR4        VP                  V\        P                  ! 4       R,           4      p\        P                  ! V 4       V P                  ;_uu_ 4        V P                  '       g,   V P                  '       g   RV n        RV n         RRR4       R# V P                  pRV n        RRR4       VP                  '       g   V'       g   K  VP                  V4      pV P                  ;_uu_ 4        \        P                  V,          V n        V P                  '       g   \!        V 4      pV'       d   \        W4       RRR4       EKI    + '       g   i     ELZ; i  + '       g   i     L; i  + '       g   i     EK  ; i)c              3   *   "   T F	  w  rVx  K  	  R # 5ir&   rb   )r  r   _s   &  r"   r   %_poll_connectivity.<locals>.<genexpr>i  s      
(JH(Jr"  Ng?F)check_connectivity_stater  r   1CYGRPC_CONNECTIVITY_STATE_TO_CHANNEL_CONNECTIVITYr  r#  r  r  watch_connectivity_stater'   r   r   r  r  successr  r  )r_   r0  r  r  r  rH   r  re   s   &&&     r"   _poll_connectivityr  \  s   
 ,N33NCL	EE 	
 E 
(-(J(J
EE 
(-(J(J
 
	 */)K)K%+0+=+=%a( *LE- 
 00$))++
 	((/ZZZ666,,, %%)" Z #11N#(E   ===NN";;NKLMM$ "
 ''' +E 2I '9 = 
$ Z s7   BH/H$H>HH3AH2H	H/	2I	c                p    V ^8  d   QhR\         R\        \        P                  .R3,          R\        RR/# )r   r_   r   Nr  r   )r  r   r-   r  rS   )r!   s   "r"   r#   r#     sI     H H$H001478H H 
	Hr$   c           
         V P                   ;_uu_ 4        V P                  '       g   V P                  '       gx   \        P                  ! \
        W P                  \        V4      3R 7      pVP                  R4       VP                  4        RV n        V P                  P                  VR.4       MV P                  '       gd   V P                  eV   \        W34       V ;P                  \        V4      ,          un        V P                  P                  WP                  .4       M?V ;P                  \        V4      ,          un        V P                  P                  VR.4       RRR4       R#   + '       g   i     R# ; ir  )r  r  r  r   r   r  r0  rS   r   r   rC  r  r  r  r  )r_   r   r  polling_threads   &&& r"   
_subscriber!    s   
 
111%---#55)]]D,@AN $$T*  " EM..55x6FG!!!e&8&8&DE;/  D$88 ..55--.   D$88 ..55x6FG% 
s   $E/BE/B"E//F 	c                d    V ^8  d   QhR\         R\        \        P                  .R3,          RR/# )r   r_   r   Nr   )r  r   r-   r  )r!   s   "r"   r#   r#     s9     
 
$
001478
 

r$   c                     V P                   ;_uu_ 4        \        V P                  4       F+  w  pw  r4W8X  g   K  V P                  P                  V4        M	  R R R 4       R #   + '       g   i     R # ; ir&   )r  	enumerater  pop)r_   r   indexsubscribed_callback_unused_connectivitys   &&   r"   _unsubscriber)    s[     
BK..C
>E>' .2266u=C
 
s   !A$A$$A5	c                    V ^8  d   QhR\         \        ,          R\        \        P                  ,          R\         \        ,          /# )r   base_optionsrE  r   )r   r   r   r-   rF  )r!   s   "r"   r#   r#     s=      ./$**+ !"r$   c                     \         P                  ! V4      p\        V 4      V,           \        P                  P
                  \        33,           # r&   )r   create_channel_optionr#  r   ChannelArgKeyprimary_user_agent_string_USER_AGENT)r+  rE  compression_options   && r"   _augment_optionsr2    sM     &;;KHl
	 $$>>
	
	r$   c                    V ^8  d   QhR\         \        ,          R\        \         \        ,          \         \        ,          3,          /# )r   optionsr   )r   r   r
   )r!   s   "r"   r#   r#     s8     ( ()*(
8'((3F*GGH(r$   c                    . p. pV  FW  pV^ ,          \         P                  P                  P                  8X  d   VP	                  V4       KF  VP	                  V4       KY  	  W!3# )z;Separates core channel options from Python channel options.)r-   r  ChannelOptionsSingleThreadedUnaryStreamrC  )r4  core_optionspython_optionspairs   &   r"   _separate_channel_optionsr;    sc     LNG  //IIJ !!$'%  ''r$   c                   @  a  ] tR tRt o R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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R$V 3R lR lltV 3R lR ltV 3R lR ltV 3R lR ltR tR tV 3R lR ltR  tV 3R! ltR"tV tR	# )%r4  i  z7A cygrpc.Channel-backed implementation of grpc.Channel.c          	         < V ^8  d   QhRS[ RS[S[,          RS[S[P
                  ,          RS[S[P                  ,          /# )r   rF   r4  rQ  rE  )r/   r   r   r   r-   ChannelCredentialsrF  )r!   r:   s   "r"   r#   Channel.__annotate__  sO     4 44 -.4 d556	4
 d../4r$   c                   \        V4      w  rV\        V n        V P                  V4       \        P
                  ! \        P                  ! V4      \        Wd4      V4      V n	        Wn
        \        V P                  4      V n        \        V P                  4      V n        \        P                  ! V 4       \        P                   '       d   \        P"                  ! 4        R# R# )a  Constructor.

Args:
  target: The target to which to connect.
  options: Configuration options for the channel.
  credentials: A cygrpc.ChannelCredentials or None.
  compression: An optional value indicating the compression method to be
    used over the lifetime of the channel.
N)r;  %_DEFAULT_SINGLE_THREADED_UNARY_STREAM_single_threaded_unary_stream_process_python_optionsr   r4  r   encoder2  r9  r<  r  _call_stater  _connectivity_statefork_register_channelg_gevent_activatedgevent_increment_channel_count)rK   rF   r4  rQ  rE  r9  r8  s   &&&&&  r"   rL   Channel.__init__  s      (A'I$1 	* 	$$^4NN6"\7

 ,T]];#<T]]#K $$T*$$$113 %r$   c                &   < V ^8  d   QhRS[ RS[/# )r   rE   r   )r/   rT   )r!   r:   s   "r"   r#   r?    s     P P# P# Pr$   c                `    V P                   P                  \        P                  ! V4      4      # )a(  
Get the registered call handle for a method.

This is a semi-private method. It is intended for use only by gRPC generated code.

This method is not thread-safe.

Args:
  method: Required, the method name for the RPC.

Returns:
  The registered call handle pointer in the form of a Python Long.
)r9  get_registered_call_handler   rD  )rK   rE   s   &&r"   _get_registered_call_handle#Channel._get_registered_call_handle  s"     }}77v8NOOr$   c                4   < V ^8  d   QhRS[ S[,          RR/# )r   r9  r   N)r   r   )r!   r:   s   "r"   r#   r?    s#     	: 	:&':;	:		:r$   c                    V F<  pV^ ,          \         P                  P                  P                  8X  g   K5  RV n        K>  	  R# )zASets channel attributes according to python-only channel options.TN)r-   r  r6  r7  rB  )rK   r9  r:  s   && r"   rC  Channel._process_python_options  s:     #DQ$$33MMN 6:2 #r$   Nc                d   < V ^8  d   QhRS[ S[P                  .R3,          RS[S[,          RR/# )r   r   Nr  r   )r   r-   r  r   rS   )r!   r:   s   "r"   r#   r?    sE     G GD445t;<G !G 
	Gr$   c                2    \        V P                  W4       R # r&   )r!  rF  )rK   r   r  s   &&&r"   	subscribeChannel.subscribe  s    
 	4++XFr$   c                N   < V ^8  d   QhRS[ S[P                  .R3,          RR/# )r   r   Nr   )r   r-   r  )r!   r:   s   "r"   r#   r?  #  s0     9 9 $":":!;T!AB9	9r$   c                2    \        V P                  V4       R # r&   )r)  rF  rD  s   &&r"   unsubscribeChannel.unsubscribe#  s     	T--x8r$   c          
      |   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[,          RS[P                  /# r   rE   r   rf   _registered_methodr   )r/   r   r   r   rS   r-   UnaryUnaryMultiCallable)r!   r:   s   "r"   r#   r?  )  sS     
 

 %%89
  ((=>	

 %TN
 
	%	%
r$   c           	         R pV'       d   V P                  V4      p\        V P                  \        V P                  4      \
        P                  ! V4      \
        P                  ! V P                  4      VVV4      # r&   )rN  r-  r9  r  rE  r   rD  r<  rK   rE   r   rf   r]  r2  s   &&&&& r"   unary_unaryChannel.unary_unary)  se     #'&*&F&Fv&N#'MM,T-=-=>NN6"NN4<<(!#
 	
r$   c          
      |   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[,          RS[P                  /# r\  )r/   r   r   r   rS   r-   UnaryStreamMultiCallable)r!   r:   s   "r"   r#   r?  >  sS     
 

 %%89
  ((=>	

 %TN
 
	&	&
r$   c           	        R pV'       d   V P                  V4      pV P                  '       dM   \        V P                  \        P
                  ! V4      \        P
                  ! V P                  4      VVV4      # \        V P                  \        V P                  4      \        P
                  ! V4      \        P
                  ! V P                  4      VVV4      # r&   )
rN  rB  rr  r9  r   rD  r<  r  r  rE  r`  s   &&&&& r"   unary_streamChannel.unary_stream>  s     #'&*&F&Fv&N#
 ---:v&t||,"%'  )MM,T-=-=>NN6"NN4<<(!#
 	
r$   c          
      |   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[,          RS[P                  /# r\  )r/   r   r   r   rS   r-   StreamUnaryMultiCallable)r!   r:   s   "r"   r#   r?  `  sS     
 

 %%89
  ((=>	

 %TN
 
	&	&
r$   c           	         R pV'       d   V P                  V4      p\        V P                  \        V P                  4      \
        P                  ! V4      \
        P                  ! V P                  4      VVV4      # r&   )rN  r  r9  r  rE  r   rD  r<  r`  s   &&&&& r"   stream_unaryChannel.stream_unary`  se     #'&*&F&Fv&N#(MM,T-=-=>NN6"NN4<<(!#
 	
r$   c          
      |   < V ^8  d   QhRS[ RS[S[,          RS[S[,          RS[S[,          RS[P                  /# r\  )r/   r   r   r   rS   r-   StreamStreamMultiCallable)r!   r:   s   "r"   r#   r?  u  sS     
 

 %%89
  ((=>	

 %TN
 
	'	'
r$   c           	         R pV'       d   V P                  V4      p\        V P                  \        V P                  4      \
        P                  ! V4      \
        P                  ! V P                  4      VVV4      # r&   )rN  r  r9  r  rE  r   rD  r<  r`  s   &&&&& r"   stream_streamChannel.stream_streamu  se     #'&*&F&Fv&N#)MM,T-=-=>NN6"NN4<<(!#
 	
r$   c                   < V ^8  d   QhRR/# rd  rb   )r!   r:   s   "r"   r#   r?    s     : :$ :r$   c                    V P                   pV'       d-   VP                  ;_uu_ 4        VP                  R  RRR4       R# R#   + '       g   i     R# ; i):NNNN)rF  r  r  r   s   & r"   _unsubscribe_allChannel._unsubscribe_all  s;    ((66q9  s   AA	c                   < V ^8  d   QhRR/# rd  rb   )r!   r:   s   "r"   r#   r?    s     4 4 4r$   c                   V P                  4        V P                  P                  \        P                  P
                  R 4       \        P                  ! V 4       \        P                  '       d   \        P                  ! 4        R# R# )zChannel closed!N)	rt  r9  r  r   r.   rG   fork_unregister_channelrH  gevent_decrement_channel_countrO   s   &r"   _closeChannel._close  sZ    F--779JK&&t,$$$113 %r$   c                   < V ^8  d   QhRR/# rd  rb   )r!   r:   s   "r"   r#   r?    s     
 
 
r$   c                    V P                  4        V P                  P                  \        P                  P
                  R 4       R# )zChannel closed due to forkN)rt  r9  close_on_forkr   r.   rG   rO   s   &r"   _close_on_forkChannel._close_on_fork  s2    ##'')E	
r$   c                    V # r&   rb   rO   s   &r"   	__enter__Channel.__enter__  rJ  r$   c                &    V P                  4        R # )Frz  )rK   exc_typeexc_valexc_tbs   &&&&r"   __exit__Channel.__exit__  s    r$   c                   < V ^8  d   QhRR/# rd  rb   )r!   r:   s   "r"   r#   r?    s      t r$   c                &    V P                  4        R # r&   r  rO   s   &r"   r  Channel.close  s    r$   c                8     V P                  4        R #     R # ; ir&   )rt  rO   s   &r"   rf  Channel.__del__  s    	!!#	 s    c                   < V ^8  d   Qh/ S[ ;R&   S[P                  ;R&   S[;R&   S[;R&   S[;R&   S[S[S[3,          ;R&   # )r   rB  r9  rE  rF  r<  _registered_call_handles)rS   r   r4  r  r  r/   r   rT   )r!   r:   s   "r"   r#   r?    s^      $('  nn	 
 #"  32  L  #38n, r$   )rE  r9  rF  rB  r<  r&   )NNF)rV   rW   rX   rY   r&  rL   rN  rC  rU  rY  ra  rf  rk  rp  rt  rz  r  r  r  r  rf  rZ   r[   r\   r]   s   @r"   r4  r4    s     A4 4BP P 	: 	:G G9 9
 
*
 
D
 
*
 
(: :4 4
 
 a  r$   r4  )jr&  r   r   loggingosr  r=   r'   r  typingr   r   r   r   r   r   r   r	   r
   r   r-   r   r   r   r   grpc._cythonr   grpc._typingr   r   r   r   r   r   r   r   grpc.experimental	getLoggerrV   r   r!   __version__r0  r   getenvrA  r9   send_initial_metadatar   r   rl   rm   rq   rK  r|  r  r  r  r   r   r)   r1   objectr3   rc   r|   r   r   r   r  r  r   r   
RpcContextr(  rl  r  r
  r  r  r$  r+  r^  r-  rd  rr  r  ri  r  rn  r  rT   rH  r  r  r  r  r  r  r  r  r!  r)  r2  r;  r4  rb   r$   r"   <module>r     s   5    	 
         !   , . . % , % ,   


H
%%%&6&B&BC
 II12$> &
 ..
%%
//
11
((
11  ..
%%
//
11
11  ..
11
((
11	  ..
11
11  7 1
 K 
 >:/ :/z%)X0[|
"[tyy$++ [|e3$-- e3PQBDKKQBhpDKKpf.(#/n
t;; n
ba
d.K.K a
HY
 = = Y
xg
 = = g
T[
!?!? [
|C . . &=@   D	$2$.:bH4
"("_dll _r$   