+
    iBc                        R t ^ RIt^ RIt^ RIH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 ^ 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.t"Rt#Rt$Rt%Rt&Rt'Rt(Rt)]PT                  ! ]+4      t, ! R R]PZ                  4      t.R R lt/ ! R R4      t0 ! R  R!]Pb                  4      t2 ! R" R#]0]] ,          4      t3 ! R$ R%]04      t4 ! R& R']04      t5 ! R( R]3]0]Pl                  4      t6 ! R) R]4]0]Pn                  4      t7 ! R* R+]5]3]0]Pp                  4      t8 ! R, R-]5]4]0]Pr                  4      t9R# )/z6Invocation-side implementation of gRPC Asyncio Python.N)partial)AnyAsyncIterator	GeneratorGenericOptionalTupleUnion)_common)cygrpc)
_base_callMetadata)DeserializingFunctionDoneCallbackType)EOFType)MetadataType)MetadatumTypeRequestIterableTypeRequestTypeResponseType)SerializingFunctionAioRpcErrorCallUnaryStreamCallUnaryUnaryCallz!Locally cancelled by application!z"Cancelled upon garbage collection!zRPC already finished.z0RPC is half closed after calling "done_writing".zBThe iterator and read/write APIs may not be mixed on a single RPC.z?<{} of RPC that terminated with:
	status = {}
	details = "{}"
>zZ<{} of RPC that terminated with:
	status = {}
	details = "{}"
	debug_error_string = "{}"
>c                      a a ] tR t^It oRtRV3R lV 3R l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R tV3R ltRtVtV ;t# )r   zAn implementation of RpcError to be used by the asynchronous API.

Raised RpcError is a snapshot of the final status of the RPC, values are
determined. Hence, its methods no longer needs to be coroutines.
c                p   < V ^8  d   QhRS[ P                  RS[RS[RS[S[,          RS[S[,          RR/# )   codeinitial_metadatatrailing_metadatadetailsdebug_error_stringreturnN)grpc
StatusCoder   r   str)format__classdict__s   "a/Users/igloo/.openclaw/workspace/scratch/fb_ad_env/lib/python3.14/site-packages/grpc/aio/_call.py__annotate__AioRpcError.__annotate__V   sS     6 6oo6 #6 $	6
 #6 %SM6 
6    c                `   < \         SV `  4        Wn        W@n        W n        W0n        WPn        R# )aV  Constructor.

Args:
  code: The status code with which the RPC has been finalized.
  initial_metadata: Optional initial metadata that could be sent by the
    Server.
  trailing_metadata: Optional metadata that could be sent by the Server.
  details: Optional details explaining the reason of the error.
  debug_error_string: Optional string
N)super__init___code_details_initial_metadata_trailing_metadata_debug_error_string)selfr#   r$   r%   r&   r'   	__class__s   &&&&&&r.   r4   AioRpcError.__init__V   s,    $ 	
!1"3#5 r1   c                4   < V ^8  d   QhRS[ P                  /# r"   r(   r)   r*   )r,   r-   s   "r.   r/   r0   o   s      doo r1   c                    V P                   # )z\Accesses the status code sent by the server.

Returns:
  The `grpc.StatusCode` status code.
)r5   r:   s   &r.   r#   AioRpcError.codeo   s     zzr1   c                0   < V ^8  d   QhRS[ S[,          /# r>   )r   r+   )r,   r-   s   "r.   r/   r0   w   s      # r1   c                    V P                   # )zSAccesses the details sent by the server.

Returns:
  The description of the error.
)r6   rA   s   &r.   r&   AioRpcError.detailsw   s     }}r1   c                    < V ^8  d   QhRS[ /# r>   r   )r,   r-   s   "r.   r/   r0      s     & &( &r1   c                    V P                   # )z]Accesses the initial metadata sent by the server.

Returns:
  The initial metadata received.
)r7   rA   s   &r.   r$   AioRpcError.initial_metadata   s     %%%r1   c                    < V ^8  d   QhRS[ /# r>   r   )r,   r-   s   "r.   r/   r0      s     ' '8 'r1   c                    V P                   # )z_Accesses the trailing metadata sent by the server.

Returns:
  The trailing metadata received.
)r8   rA   s   &r.   r%   AioRpcError.trailing_metadata   s     &&&r1   c                    < V ^8  d   QhRS[ /# r>   r+   )r,   r-   s   "r.   r/   r0      s     ( (C (r1   c                    V P                   # )zaAccesses the debug error string sent by the server.

Returns:
  The debug error string received.
)r9   rA   s   &r.   r'   AioRpcError.debug_error_string   s     '''r1   c                    < V ^8  d   QhRS[ /# r>   rM   )r,   r-   s   "r.   r/   r0      s     
 
s 
r1   c                    \         P                  V P                  P                  V P                  V P
                  V P                  4      # )z-Assembles the error string for the RPC error.)_NON_OK_CALL_REPRESENTATIONr,   r;   __name__r5   r6   r9   rA   s   &r.   _reprAioRpcError._repr   s9    *11NN##JJMM$$	
 	
r1   c                    < V ^8  d   QhRS[ /# r>   rM   )r,   r-   s   "r.   r/   r0            # r1   c                "    V P                  4       # NrT   rA   s   &r.   __repr__AioRpcError.__repr__       zz|r1   c                    < V ^8  d   QhRS[ /# r>   rM   )r,   r-   s   "r.   r/   r0             r1   c                "    V P                  4       # rY   rZ   rA   s   &r.   __str__AioRpcError.__str__   r]   r1   c                    \        V 4      V P                  V P                  V P                  V P                  V P
                  33# rY   )typer5   r7   r8   r6   r9   rA   s   &r.   
__reduce__AioRpcError.__reduce__   sA    J

&&''((	
 		
r1   c                   < V ^8  d   Qh/ S[ P                  ;R&   S[S[,          ;R&   S[S[,          ;R&   S[S[,          ;R&   S[S[,          ;R&   # )r"   r5   r6   r7   r8   r9   )r)   r*   r   r+   r   )r,   r-   s   "r.   r/   r0   I   s\      ??  sm   ))  !**  "#& r1   )r5   r9   r6   r7   r8   )NN)rS   
__module____qualname____firstlineno____doc__r4   r#   r&   r$   r%   r'   rT   r[   ra   re   __annotate_func____static_attributes____classdictcell____classcell__r;   r-   s   @@r.   r   r   I   sq     6 62  & &' '( (
 
  

{  r1   c                P    V ^8  d   QhR\         R\        P                  R\        /# )r"   r$   statusr(   )r   r   AioRpcStatusr   )r,   s   "r.   r/   r/      s,     
 
"

 
r1   c                    \        \        P                  VP                  4       ,          \        P
                  ! V 4      \        P
                  ! VP                  4       4      VP                  4       VP                  4       R 7      # ))r&   r'   )	r   r
   !CYGRPC_STATUS_CODE_TO_STATUS_CODEr#   r   
from_tupler%   r&   r'   )r$   rr   s   &&r.   _create_rpc_errorrw      sa     11&++-@,-F4467 !446 r1   c                   b  a  ] tR t^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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&# )'r   zqBase implementation of client RPC Call object.

Implements logic around final status, metadata and cancellation.
c                   < V ^8  d   QhRS[ P                  RS[RS[S[,          RS[S[,          RS[P                  RR/# )r"   cython_callmetadatarequest_serializerresponse_deserializerloopr(   N)r   _AioCallr   r   r   r   asyncioAbstractEventLoop)r,   r-   s   "r.   r/   Call.__annotate__   s]     < <__< < %%89	<
  ((=>< ''< 
<r1   c                V    WPn         Wn        \        V4      V n        W0n        W@n        R # rY   )_loop_cython_calltuple	_metadata_request_serializer_response_deserializer)r:   rz   r{   r|   r}   r~   s   &&&&&&r.   r4   Call.__init__   s&     
'x#5 &;#r1   c                   < V ^8  d   QhRR/# r"   r(   N )r,   r-   s   "r.   r/   r      s     3 3 3r1   c                    \        V R 4      '       d:   V P                  P                  4       '       g   V P                  \        4       R# R# R# )r   N)hasattrr   done_cancel_GC_CANCELLATION_DETAILSrA   s   &r.   __del__Call.__del__   s9    4((1B1B1G1G1I1ILL12 2J(r1   c                    < V ^8  d   QhRS[ /# r>   bool)r,   r-   s   "r.   r/   r      s     - -4 -r1   c                6    V P                   P                  4       # rY   )r   	cancelledrA   s   &r.   r   Call.cancelled   s      **,,r1   c                &   < V ^8  d   QhRS[ RS[/# )r"   r&   r(   )r+   r   )r,   r-   s   "r.   r/   r      s      s t r1   c                    V P                   P                  4       '       g   V P                   P                  V4       R# R# )z0Forwards the application cancellation reasoning.TF)r   r   cancel)r:   r&   s   &&r.   r   Call._cancel   s1      %%''$$W-r1   c                    < V ^8  d   QhRS[ /# r>   r   )r,   r-   s   "r.   r/   r      s     9 9 9r1   c                ,    V P                  \        4      # rY   )r   _LOCAL_CANCELLATION_DETAILSrA   s   &r.   r   Call.cancel   s    ||788r1   c                    < V ^8  d   QhRS[ /# r>   r   )r,   r-   s   "r.   r/   r      s     ( (d (r1   c                6    V P                   P                  4       # rY   )r   r   rA   s   &r.   r   	Call.done   s      %%''r1   c                $   < V ^8  d   QhRS[ RR/# )r"   callbackr(   Nr   )r,   r-   s   "r.   r/   r      s     0 0*: 0t 0r1   c                R    \        W4      pV P                  P                  V4       R # rY   )r   r   add_done_callback)r:   r   cbs   && r.   r   Call.add_done_callback   s     X$++B/r1   c                0   < V ^8  d   QhRS[ S[,          /# r>   )r   float)r,   r-   s   "r.   r/   r      s     2 2 2r1   c                6    V P                   P                  4       # rY   )r   time_remainingrA   s   &r.   r   Call.time_remaining   s      //11r1   c                    < V ^8  d   QhRS[ /# r>   r   )r,   r-   s   "r.   r/   r      s     7 7 7r1   c                ~   "   V P                   P                  4       G R j  xL
 p\        P                  ! V4      #  L5irY   )r   r$   r   rv   r:   raw_metadata_tuples   & r.   r$   Call.initial_metadata   s5     #'#4#4#E#E#GG""#566 Hs   =;=c                    < V ^8  d   QhRS[ /# r>   r   )r,   r-   s   "r.   r/   r      s     7 7 7r1   c                   "   V P                   P                  4       G R j  xL
 P                  4       p\        P                  ! V4      #  L(5irY   )r   rr   r%   r   rv   r   s   & r.   r%   Call.trailing_metadata   sA     ##**,,


 	 ""#566 -s   AA	)Ac                4   < V ^8  d   QhRS[ P                  /# r>   r?   )r,   r-   s   "r.   r/   r     s     F FDOO Fr1   c                   "   V P                   P                  4       G R j  xL
 P                  4       p\        P                  V,          #  L)5irY   )r   rr   r#   r
   ru   )r:   cygrpc_codes   & r.   r#   	Call.code  s;     !..5577==?88EE 8s   AA
*Ac                    < V ^8  d   QhRS[ /# r>   rM   )r,   r-   s   "r.   r/   r     s     < <s <r1   c                n   "   V P                   P                  4       G R j  xL
 P                  4       #  L5irY   )r   rr   r&   rA   s   &r.   r&   Call.details  s)     ''..0099;;0   535c                    < V ^8  d   QhRS[ /# r>   rM   )r,   r-   s   "r.   r/   r     s     G G# Gr1   c                n   "   V P                   P                  4       G R j  xL
 P                  4       #  L5irY   )r   rr   r'   rA   s   &r.   r'   Call.debug_error_string  s)     ''..00DDFF0r   c                   < V ^8  d   QhRR/# r   r   )r,   r-   s   "r.   r/   r     s       r1   c                v  "   V P                   P                  4       '       d   \        P                  ! 4       hV P	                  4       G R j  xL
 pV\
        P                  P                  8w  dC   \        V P                  4       G R j  xL
 V P                   P                  4       G R j  xL
 4      hR #  Lg L- L5irY   )r   is_locally_cancelledr   CancelledErrorr#   r)   r*   OKrw   r$   rr   )r:   r#   s   & r.   _raise_for_statusCall._raise_for_status  s     1133((**YY[ 4??%%%#++--''..00  & ! .0s6   A	B9B3;B9B5 B9(B7
)B95B97B9c                    < V ^8  d   QhRS[ /# r>   rM   )r,   r-   s   "r.   r/   r     s     ' 's 'r1   c                ,    \        V P                  4      # rY   )reprr   rA   s   &r.   rT   
Call._repr  s    D%%&&r1   c                    < V ^8  d   QhRS[ /# r>   rM   )r,   r-   s   "r.   r/   r     rW   r1   c                "    V P                  4       # rY   rZ   rA   s   &r.   r[   Call.__repr__  r]   r1   c                    < V ^8  d   QhRS[ /# r>   rM   )r,   r-   s   "r.   r/   r     r_   r1   c                "    V P                  4       # rY   rZ   rA   s   &r.   ra   Call.__str__  r]   r1   c                   < V ^8  d   Qh/ S[ P                  ;R&   S[P                  ;R&   S[P
                  ;R&   S[S[R3,          ;R&   S[S[	,          ;R&   S[S[
,          ;R&   # )r"   r   r5   r   .r   r   r   )r   r   r)   r*   r   r   r   r   r   r   r   )r,   r-   s   "r.   r/   r      sw      $$$  ??  //!  ]C'((  ""566  %%:;; r1   )r   r   r   r   r   N)rS   rh   ri   rj   rk   r4   r   r   r   r   r   r   r   r$   r%   r#   r&   r'   r   rT   r[   ra   rl   rm   rn   )r-   s   @r.   r   r      s     < <3 3
- - 9 9( (0 02 27 77 7F F< <G G ' '  w  r1   c                   "    ] tR tRt^ t^t^tRtR# )	_APIStylei  r   N)rS   rh   ri   rj   UNKNOWNASYNC_GENERATORREADER_WRITERrm   r   r1   r.   r   r     s    GOMr1   r   c                   n   a a ] tR tRt oV3R lR ltV3R lV 3R lltV3R lR ltV3R ltR	tVt	V ;t
# )
_UnaryResponseMixini%  c                4   < V ^8  d   QhRS[ P                  /# )r"   response_taskr   Task)r,   r-   s   "r.   r/    _UnaryResponseMixin.__annotate__(  s     , , ,r1   c                    Wn         R # rY   _call_response)r:   r   s   &&r.   _init_unary_response_mixin._UnaryResponseMixin._init_unary_response_mixin(  s    +r1   c                    < V ^8  d   QhRS[ /# r>   r   )r,   r-   s   "r.   r/   r   +         r1   c                h   < \         SV `  4       '       d   V P                  P                  4        R # R# TF)r3   r   r   r:   r;   s   &r.   r   _UnaryResponseMixin.cancel+  s(    7>&&(r1   c                8   < V ^8  d   QhRS[ S[RS[3,          /# r   )r   r   r   )r,   r-   s   "r.   r/   r   1  s       9S$%<= r1   c              #    "    V P                    Rj  xL
 pT\
        P                  J dj   T P                  P                  4       '       d   \        P                  ! 4       h\        T P                  P                  T P                  P                  4      hT#  L  \        P                   d)    T P                  4       '       g   T P	                  4        h i ; i5i)z+Wait till the ongoing RPC request finishes.N)r   r   r   r   r   r   EOFr   r   rw   r7   _status)r:   responses   & r.   	__await___UnaryResponseMixin.__await__1  s     		"&"5"55H vzz!  5577,,..'%%77%%-- 
 O1 6%% 	
 >>##	s8   CB BB 3CACB *CCCc                :   < V ^8  d   Qh/ S[ P                  ;R&   # )r"   r   r   )r,   r-   s   "r.   r/   r   %  s     LL  r1   r   )rS   rh   ri   rj   r   r   r   rl   rm   rn   ro   rp   s   @@r.   r   r   %  s*     , ,    r1   r   c                      a 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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
V3R ltRtVtV ;t# )_StreamResponseMixiniO  c                4   < V ^8  d   QhRS[ P                  /# )r"   preparationr   )r,   r-   s   "r.   r/   !_StreamResponseMixin.__annotate__T  s     1 1w|| 1r1   c                J    R V n         Wn        \        P                  V n        R # rY   )_message_aiter_preparationr   r   _response_style)r:   r   s   &&r.   _init_stream_response_mixin0_StreamResponseMixin._init_stream_response_mixinT  s    "'(00r1   c                    < V ^8  d   QhRS[ /# r"   styler   )r,   r-   s   "r.   r/   r   Y  s     6 6I 6r1   c                    V P                   \        P                  J d	   Wn         R # V P                   VJd   \        P                  ! \
        4      hR # rY   )r   r   r   r   
UsageError_API_STYLE_ERRORr:   r  s   &&r.   _update_response_style+_StreamResponseMixin._update_response_styleY  sA    9#4#44#( !!.##$455 /r1   c                    < V ^8  d   QhRS[ /# r>   r   )r,   r-   s   "r.   r/   r   _  r   r1   c                h   < \         SV `  4       '       d   V P                  P                  4        R # R# r   )r3   r   r   r   s   &r.   r   _StreamResponseMixin.cancel_  s(    7>$$&r1   c                    < V ^8  d   QhRS[ /# r>   r   )r,   r-   s   "r.   r/   r   e  s     ' '| 'r1   c                  "   V P                  4       G R j  xL
 pV\        P                  Jd    V5x  V P                  4       G R j  xL
 pK3  V P                  4       G R j  xL
  R #  LQ L" L
5irY   )_readr   r   r   )r:   messages   & r.   _fetch_stream_responses,_StreamResponseMixin._fetch_stream_responsese  sU     

$VZZ'M JJL(G $$&&& % ) 	's3   A.A(0A.A*A.!A,"A.*A.,A.c                0   < V ^8  d   QhRS[ S[,          /# r>   )r   r   )r,   r-   s   "r.   r/   r   n  s     # #=6 #r1   c                    V P                  \        P                  4       V P                  f   V P	                  4       V n        V P                  # rY   )r  r   r   r   r  rA   s   &r.   	__aiter___StreamResponseMixin.__aiter__n  s?    ##I$=$=>&"&">">"@D"""r1   c                    < V ^8  d   QhRS[ /# r>   r   )r,   r-   s   "r.   r/   r   t  s     N N\ Nr1   c                  "   V P                   G R j  xL
   V P                  P                  4       G R j  xL
 pT\        P                  J d   \        P                  # \        P                  ! YP                  4      #  Lk LJ  \        P                   d)    T P                  4       '       g   T P                  4        h i ; i5irY   )r   r   receive_serialized_messager   r   r   r   r   r   r
   deserializer   )r:   raw_responses   & r.   r  _StreamResponseMixin._readt  s     	!%!2!2!M!M!OOL 6::%::""<1L1LMM 	  P%% 	>>##	s<   CA>CB B B AC B *B?-B??Cc                6   < V ^8  d   QhRS[ S[S[3,          /# r>   )r	   r   r   )r,   r-   s   "r.   r/   r     s        E'<"78  r1   c                \  "   V P                  4       '       d)   V P                  4       G R j  xL
  \        P                  # V P	                  \
        P                  4       V P                  4       G R j  xL
 pV\        P                  J d   V P                  4       G R j  xL
  V#  Ly L4 L
5irY   )r   r   r   r   r  r   r   r  )r:   response_messages   & r.   read_StreamResponseMixin.read  s     99;;((***::##I$;$;<!%-vzz)((*** + . +s4   *B,B&AB,3B(4+B,B* B,(B,*B,c                b   < V ^8  d   Qh/ S[ S[,          ;R&   S[P                  ;R&   S[;R&   # )r"   r   r   r   )r   r   r   r   r   )r,   r-   s   "r.   r/   r   O  s1     !,// ,,   r1   )r   r   r   )rS   rh   ri   rj   r   r  r   r  r  r  r   rl   rm   rn   ro   rp   s   @@r.   r   r   O  sU     
1 1
6 6 ' '# #N N    k  r1   r   c                      a 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V 3R ll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R ltV3R ltRtVtV ;t# )_StreamRequestMixini  c                0   < V ^8  d   QhRS[ S[,          /# )r"   request_iterator)r   r   )r,   r-   s   "r.   r/    _StreamRequestMixin.__annotate__  s     : : ()< =:r1   c                   \         P                  ! 4       V n        R V n        VeG   V P                  P                  V P                  V4      4      V n        \        P                  V n
        R# RV n        \        P                  V n
        R# )FN)r   Event_metadata_sent_done_writing_flagr   create_task_consume_request_iterator_async_request_pollerr   r   _request_styler   )r:   r&  s   &&r.   _init_stream_request_mixin._StreamRequestMixin._init_stream_request_mixin  sn     &mmo"' ')-)?)?../?@*D& #,";";D)-D&"+"9"9Dr1   c                    < V ^8  d   QhRS[ /# r  r  )r,   r-   s   "r.   r/   r'    s     6 6	 6r1   c                Z    V P                   VJd   \        P                  ! \        4      hR # rY   )r/  r   r  r  r  s   &&r.   _raise_for_different_style._StreamRequestMixin._raise_for_different_style  s'    e+##$455 ,r1   c                    < V ^8  d   QhRS[ /# r>   r   )r,   r-   s   "r.   r/   r'    s       r1   c                   < \         SV `  4       '       d+   V P                  e   V P                  P                  4        R# R# )NTF)r3   r   r.  r   s   &r.   r   _StreamRequestMixin.cancel  s4    7>))5**113r1   c                :    V P                   P                  4        R # rY   )r*  setrA   s   &r.   _metadata_sent_observer+_StreamRequestMixin._metadata_sent_observer  s    !r1   c                $   < V ^8  d   QhRS[ RR/# )r"   r&  r(   Nr   )r,   r-   s   "r.   r/   r'    s     * * 3*	*r1   c                  "    \         P                  ! V4      '       g   \        VR 4      '       d)   V  Rj  xL
  p V P                  V4      G Rj  xL
  K&  V F  p V P                  V4      G Rj  xL
  K  	  V P                  4       G Rj  xL
  R#  L^ LE  \         d#   p\
        P                  RT4        Rp? R# Rp?ii ; iDLP LX  \         d#   p\
        P                  RT4        Rp? R# Rp?ii ; i Ln   \
        P                  R\        P                  ! 4       4       T P                  4         R# ; i5i)r  Nz2Exception while consuming the request_iterator: %sz,Client request_iterator raised exception:
%s)inspect
isasyncgenr   _writer   _LOGGERdebug_done_writing	traceback
format_excr   )r:   r&  request	rpc_errors   &&  r.   r-  -_StreamRequestMixin._consume_request_iterator  s'    '	!!"233w +8 8 &6  '
"kk'222  0G
"kk'222  0 $$&&&52& !8 &  &6 3& !8 &  '	 MM?$$& KKMs   E0D CBCD BBBD  C4C5C9D C?D ECBC&C<D ECD CC<C70D 5E7C<<D ;D?<Ec                $   < V ^8  d   QhRS[ RR/# r"   rG  r(   Nr   )r,   r-   s   "r.   r/   r'    s      K D r1   c                p  "   V P                  4       '       d   \        P                  ! \        4      hV P                  '       d   \        P                  ! \
        4      hV P                  P                  4       '       gQ   V P                  P                  4       G R j  xL
  V P                  4       '       d   V P                  4       G R j  xL
  \        P                  ! WP                  4      p V P                  P                  V4      G R j  xL
  R #  Lx LL L
  \        P                    dI   pT P                  P#                  \%        T4      4       T P                  4       G R j  xL 
   R p?R # R p?i\        P&                   d)    T P)                  4       '       g   T P+                  4        h i ; i5irY   )r   r   InvalidStateError_RPC_ALREADY_FINISHED_DETAILSr+  _RPC_HALF_CLOSED_DETAILSr*  is_setwaitr   r
   	serializer   r   send_serialized_messager   InternalErrorset_internal_errorr+   r   r   r   )r:   rG  serialized_requesterrs   &&  r.   rA  _StreamRequestMixin._write  s8    99;;++,IJJ"""++,DEE""))++%%**,,,yy{{,,...$..--
	##;;<NOOO -. P## 	+00S:((***%% 	>>##	s   AF69F6?F6DF67F6
D$F60D DD F6F6D F307E3'E*(E3-F63F3
F3!F33F6c                   < V ^8  d   QhRR/# r   r   )r,   r-   s   "r.   r/   r'    s      T r1   c                >  "   V P                  4       '       d   R # V P                  '       g-   RV n         V P                  P                  4       G R j  xL
  R # R #  L  \        P
                   d)    T P                  4       '       g   T P                  4        h i ; i5i)NT)r   r+  r   send_receive_closer   r   r   r   rA   s   &r.   rD  !_StreamRequestMixin._done_writing  s{     99;;&&&&*D#''::<<<	 ' =)) ~~''KKMs9   *BBA AA BA *BBBc                $   < V ^8  d   QhRS[ RR/# rK  r   )r,   r-   s   "r.   r/   r'    s     # #; #4 #r1   c                   "   V P                  \        P                  4       V P                  V4      G R j  xL
  R #  L5irY   )r4  r   r   rA  )r:   rG  s   &&r.   write_StreamRequestMixin.write  s+     ''	(?(?@kk'"""s   4?=?c                   < V ^8  d   QhRR/# r   r   )r,   r-   s   "r.   r/   r'    s     # #D #r1   c                   "   V P                  \        P                  4       V P                  4       G Rj  xL
  R#  L5i)zESignal peer that client is done writing.

This method is idempotent.
N)r4  r   r   rD  rA   s   &r.   done_writing _StreamRequestMixin.done_writing  s-     
 	''	(?(?@  """s   3><>c                   < V ^8  d   QhRR/# r   r   )r,   r-   s   "r.   r/   r'         + +4 +r1   c                   "   V P                   P                  4       G R j  xL
  V P                  4       '       d   V P                  4       G R j  xL
  R # R #  L6 L
5irY   )r*  rQ  r   r   rA   s   &r.   wait_for_connection'_StreamRequestMixin.wait_for_connection  sG     !!&&(((99;;((***  	)*s&   AAAAA	AAc                   < V ^8  d   Qh/ S[ P                  ;R&   S[;R&   S[S[ P                  ,          ;R&   S[;R&   # )r"   r*  r+  r.  r/  )r   r)  r   r   r   r   )r,   r-   s   "r.   r/   r'    sB     MM!   $GLL11  	 r1   )r.  r+  r*  r/  )rS   rh   ri   rj   r0  r4  r   r;  r-  rA  rD  r_  rc  rh  rl   rm   rn   ro   rp   s   @@r.   r$  r$    sm     : : 6 6 "* *X . # ## #+ +C  r1   r$  c                   r   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tR
t	Vt
V ;t# )r   i  zuObject for managing unary-unary RPC calls.

Returned when an instance of `UnaryUnaryMultiCallable` object is called.
c                   < V ^8  d   QhRS[ RS[S[,          RS[RS[S[P
                  ,          RS[S[,          RS[P                  RS[	RS[S[
,          R	S[S[,          R
S[P                  RR/# r"   rG  deadliner{   credentialswait_for_readychannelmethodr|   r}   r~   r(   Nr   r   r   r   r)   CallCredentialsr   r   
AioChannelbytesr   r   r   r   )r,   r-   s   "r.   r/   UnaryUnaryCall.__annotate__#  s     ? ?? 5/? 	?
 d223? !? ""? ? %%89?  ((=>? ''? 
?r1   c                  < \         SV `  VP                  WrWE4      VVV	V
4       Wn        \        P
                  ! 4       V n        V
P                  V P                  4       4      V n	        V P                  V P                  4       R # rY   )r3   r4   call_requestr   build_census_context_contextr,  _invoke_invocation_taskr   r:   rG  rn  r{   ro  rp  rq  rr  r|   r}   r~   r;   s   &&&&&&&&&&&r.   r4   UnaryUnaryCall.__init__#  sp     	LL;G!	
  335 $ 0 0 @''(=(=>r1   c                    < V ^8  d   QhRS[ /# r>   r   )r,   r-   s   "r.   r/   rw  <  s      | r1   c                  "   \         P                  ! V P                  V P                  4      p V P                  P                  WP                  V P                  4      G R j  xL
 pV P                  P                  4       '       d"   \         P                  ! XV P                  4      # \        P                   #  LU  \        P                   d*    T P                  4       '       g   T P                  4         Li ; i5irY   )r
   rR  rz  r   r   unary_unaryr   r|  r   r   r   r   is_okr  r   r   r   )r:   rV  serialized_responses   &  r.   r}  UnaryUnaryCall._invoke<  s     $..MM433
	(,(9(9(E(E"NNDMM) # ""$$&&#T%@%@  zz# %% 	>>##	sF   ,C;3B: "B8#B: 'C;1C;8B: :*C8%C85C;7C88C;c                   < V ^8  d   QhRR/# r   r   )r,   r-   s   "r.   r/   rw  R  rf  r1   c                   "   V P                   G R j  xL
  V P                  4       '       d   V P                  4       G R j  xL
  R # R #  L6 L
5irY   )r~  r   r   rA   s   &r.   rh  "UnaryUnaryCall.wait_for_connectionR  s>     ####99;;((***  	$*&   AA	AA A	AAc                F   < V ^8  d   Qh/ S[ ;R&   S[P                  ;R&   # )r"   rz  r~  r   r   r   )r,   r-   s   "r.   r/   rw    s#        ll" r1   )r|  r~  rz  )rS   rh   ri   rj   rk   r4   r}  rh  rl   rm   rn   ro   rp   s   @@r.   r   r     s0     ? ?2 ,+ +s  r1   c                   r   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tR
t	Vt
V ;t# )r   iX  zwObject for managing unary-stream RPC calls.

Returned when an instance of `UnaryStreamMultiCallable` object is called.
c                   < V ^8  d   QhRS[ RS[S[,          RS[RS[S[P
                  ,          RS[S[,          RS[P                  RS[	RS[S[
,          R	S[S[,          R
S[P                  RR/# rm  rs  )r,   r-   s   "r.   r/   UnaryStreamCall.__annotate__b  s     H HH 5/H 	H
 d223H !H ""H H %%89H  ((=>H ''H 
Hr1   c                  < \         SV `  VP                  WrWE4      VVV	V
4       Wn        \        P
                  ! 4       V n        V
P                  V P                  4       4      V n	        V P                  V P                  4       R # rY   )r3   r4   ry  rz  r   r{  r|  r,  _send_unary_request_send_unary_request_taskr   r  s   &&&&&&&&&&&r.   r4   UnaryStreamCall.__init__b  sx     	LL;G!	
  335(,(8(8$$&)
% 	(()F)FGr1   c                    < V ^8  d   QhRS[ /# r>   r   )r,   r-   s   "r.   r/   r  }  s      < r1   c                Z  "   \         P                  ! V P                  V P                  4      p V P                  P                  WP                  V P                  4      G R j  xL
  R #  L  \        P                   d)    T P                  4       '       g   T P                  4        h i ; i5irY   )r
   rR  rz  r   r   initiate_unary_streamr   r|  r   r   r   r   )r:   rV  s   & r.   r  #UnaryStreamCall._send_unary_request}  s     $..MM433
	##99"NNDMM   %% 	>>##	s4   ,B+3A+ "A)#A+ 'B+)A+ +*B(B((B+c                   < V ^8  d   QhRR/# r   r   )r,   r-   s   "r.   r/   r    rf  r1   c                   "   V P                   G R j  xL
  V P                  4       '       d   V P                  4       G R j  xL
  R # R #  L6 L
5irY   )r  r   r   rA   s   &r.   rh  #UnaryStreamCall.wait_for_connection  s>     ++++99;;((***  	,*r  c                F   < V ^8  d   Qh/ S[ ;R&   S[P                  ;R&   # )r"   rz  r  r  )r,   r-   s   "r.   r/   r  X  s#        &ll* r1   )r|  rz  r  )rS   rh   ri   rj   rk   r4   r  rh  rl   rm   rn   ro   rp   s   @@r.   r   r   X  s2     H H6 + +e  r1   c                   T   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RtVtV ;t	# )StreamUnaryCalli  zwObject for managing stream-unary RPC calls.

Returned when an instance of `StreamUnaryMultiCallable` object is called.
c                   < V ^8  d   QhRS[ S[,          RS[ S[,          RS[RS[ S[P
                  ,          RS[ S[,          RS[P                  RS[	RS[ S[
,          R	S[ S[,          R
S[P                  RR/# r"   r&  rn  r{   ro  rp  rq  rr  r|   r}   r~   r(   Nr   r   r   r   r)   rt  r   r   ru  rv  r   r   r   r   )r,   r-   s   "r.   r/   StreamUnaryCall.__annotate__  s     O O"#67O 5/O 	O
 d223O !O ""O O %%89O  ((=>O ''O 
Or1   c                   < \         SV `  VP                  WrWE4      VVV	V
4       \        P                  ! 4       V n        V P                  V4       V P                  V
P                  V P                  4       4      4       R # rY   )
r3   r4   ry  r   r{  r|  r0  r   r,  _conduct_rpcr:   r&  rn  r{   ro  rp  rq  rr  r|   r}   r~   r;   s   &&&&&&&&&&&r.   r4   StreamUnaryCall.__init__  so     	LL;G!	
 335''(89''(8(89J9J9L(MNr1   c                    < V ^8  d   QhRS[ /# r>   r   )r,   r-   s   "r.   r/   r    s      L r1   c                  "    V P                   P                  V P                  V P                  V P                  4      G R j  xL
 pT P                   P                  4       '       d!   \        P                  ! YP                  4      # \        P                  #  LT  \
        P                   d)    T P                  4       '       g   T P                  4        h i ; i5irY   )r   stream_unaryr   r;  r|  r   r   r   r   r  r
   r  r   r   r   )r:   r  s   & r.   r  StreamUnaryCall._conduct_rpc  s     	(,(9(9(F(F < <dmm) # ""$$&&#%@%@  zz# %% 	>>##	s:   C>B BB C'0CB *CCC)r|  )
rS   rh   ri   rj   rk   r4   r  rm   rn   ro   rp   s   @@r.   r  r    s%     O O2  r1   r  c                   T   a a ] tR tRt oRtV3R lV 3R lltR tV3R ltRtVt	V ;t
# )StreamStreamCalli  zyObject for managing stream-stream RPC calls.

Returned when an instance of `StreamStreamMultiCallable` object is called.
c                   < V ^8  d   QhRS[ S[,          RS[ S[,          RS[RS[ S[P
                  ,          RS[ S[,          RS[P                  RS[	RS[ S[
,          R	S[ S[,          R
S[P                  RR/# r  r  )r,   r-   s   "r.   r/   StreamStreamCall.__annotate__  s     < <"#67< 5/< 	<
 d223< !< ""< < %%89<  ((=>< ''< 
<r1   c                6  < \         SV `  VP                  WrWE4      VVV	V
4       \        P                  ! 4       V n        V P                  P                  V P                  4       4      V n	        V P                  V4       V P                  V P                  4       R # rY   )r3   r4   ry  r   r{  r|  r   r,  _prepare_rpc_initializerr0  r   r  s   &&&&&&&&&&&r.   r4   StreamStreamCall.__init__  s     	LL;G!	
 335 JJ2243D3D3FG''(89(():):;r1   c                $  "    V P                   P                  V P                  V P                  V P                  4      G Rj  xL
  R#  L  \
        P                   d.    T P                  4       '       g   T P                  4         R#  R# i ; i5i)zPrepares the RPC for receiving/sending messages.

All other operations around the stream should only happen after the
completion of this method.
N)	r   initiate_stream_streamr   r;  r|  r   r   r   r   rA   s   &r.   r  StreamStreamCall._prepare_rpc  sn     	##:: < <dmm   %% 	>>## $	s@   B>A A	A B	A *B6BBBBc                :   < V ^8  d   Qh/ S[ P                  ;R&   # )r"   r  r   )r,   r-   s   "r.   r/   r    s      ,, r1   )r|  r  )rS   rh   ri   rj   rk   r4   r  rl   rm   rn   ro   rp   s   @@r.   r  r    s!     < <2I  r1   r  )r   r   r   r   ):rk   r   enum	functoolsr   r?  loggingrE  typingr   r   r   r   r   r   r	   r)   r
   grpc._cythonr    r   r   r   _typingr   r   r   r   r   r   r   r   r   __all__r   r   rN  rO  r  _OK_CALL_REPRESENTATIONrR   	getLoggerrS   rB  RpcErrorr   rw   r   IntEnumr   r   r   r$  r   r   r  r  r   r1   r.   <module>r     so   =              * %  ! " (   ! (
DA ?  7 M H 
 K 
  

H
%g
$-- g
T
\ \~ '$ 5 'T@ 4 @ FD+$ D+N<+($
0I0I <+~5+*D*2L2L 5+r0,dJ4N4N0f0-tZ5P5P0r1   