+
    jHàjEJ  ã                  ó¢   € R t ^ RIHt ^ RIt^ RIHtHt ^ RIHt ^ RI	t	^ RI
t
^ RIHt ^ RIHtHt ^ RIHtHt ]! RR	04      tRt ! R
 R4      tR# )zóPrivate hosted-room producer over the gateway's canonical local-session FIFO.

One instance belongs to a durable room/member/profile binding. The service supplies
its principal and current-membership check; neither is taken from RPC payloads.
)ÚannotationsN)ÚasdictÚreplace)Úpartial)ÚTaskIdentity)Ú
SessionRefÚ
Submission)ÚRuntimeStoreErrorÚlist_session_admissionsÚinterruptedÚ	cancelledc                  óÜ   € ] tR t^tRtRRR^/R ltR tR tR tR	 t	R
 t
R tR tR tR tR tR tR tR tR tR tR tR tR tR tRRRR/R ltR tRR/R ltR tR  tR! tR" tR#t R# )$ÚHostedRoomAuthorityRPCTÚauthorize_writeNÚtimeoutc               	óÎ  € WuV n         V n        W4VuV n        V n        V n        WgV	uV n        V n        V n        W€n        / V n	        \        P                  ! W4V.RR7      p
R\        P                  ! V
P                  4       4      P                  4       ,           V n        ^ RIHp \'        VP(                  V! VP(                  VP*                  V P                   4      4      V n        R# )Ú,)Ú
separatorsúhosted:)Úlocal_identityN©r   Ú:)Ú	authorityÚloopÚroom_idÚ	member_idÚprofileÚ	principalÚ
authorizerr   r   Ú	callbacksÚjsonÚdumpsÚhashlibÚsha256ÚencodeÚ	hexdigestÚcreation_idÚgateway.session_local_recoveryr   r   Ú
profile_idÚsubjectÚref)Úselfr   r   r   r   r   r   Ú	authorizer   r   Úbindingr   s   &&&$$$$$$$  Ú?/home/ubuntu/.hermes/hermes-agent/gateway/session_hosted_rpc.pyÚ__init__ÚHostedRoomAuthorityRPC.__init__   s¹   € à$-Ð!ˆŒ˜œ	Ø5<ÈÐ2ˆŒ�d”n d¤lØ8AÈgÐ5ˆŒ˜œ¨¬Ø.ÔØˆŒÜ—*’*˜g°'Ð:ÀzÔRˆØ$¤w§~¢~°g·n±nÓ6FÓ'G×'QÑ'QÓ'SÕSˆÔÝAÜ˜i×2Ñ2±NØ× Ñ  )×"3Ñ"3°T×5EÑ5Eó5Gó HˆŽó    c                	ót  €  \         P                  ! 4       pW0P                  J d   \	        R4      hV P                  P                  4       '       g   \	        R4      h\         P                  ! V P                  W4      V P                  4      pVP                  V P                  4      #   \         d    R p LŸi ; i)NÚinvalid_paramsÚruntime_draining)
ÚasyncioÚget_running_loopÚRuntimeErrorr   r	   Ú
is_runningÚrun_coroutine_threadsafeÚ	_dispatchÚresultr   )r+   Ú	operationÚparamsÚrunningÚfutures   &&,  r.   Ú_callÚHostedRoomAuthorityRPC._call'   s—   € ð	Ü×.Ò.Ó0ˆGð —i‘iÓÜ#Ð$4Ó5Ð5Ø�y‰y×#Ñ#×%Ò%Ü#Ð$6Ó7Ð7Ü×1Ò1°$·.±.ÀÓ2SÐUY×U^ÑU^Ó_ˆà�}‰}˜TŸ\™\Ó*Ð*øô ô 	ØŠGð	ús   ‚B' Â'B7Â6B7c              ƒ  	ó¾   "  € ^ RI Hp V! V P                  4      ;_uu_ 4        V P                  W4      G Rj  x€L
 uuRRR4       #  L  + '       g   i     R# ; i5i)é    )Úowner_scopeN)Úgateway.session_authoritiesrD   r   Ú_dispatch_owned)r+   r<   r=   rD   s   &&& r.   r:   Ú HostedRoomAuthorityRPC._dispatch4   s>   é € Ý;Ù˜Ÿ™×(Õ(Ø×-Ñ-¨iÓ@×@÷ )Ò(Ù@÷ )×(Ð(üs+   ‚!A£A	¸A¹A	¼AÁA	Á	A	Á	Ac              ƒ  	ó|  "  € VP                  R V P                  4      V P                  8w  g0   V P                  P                  V P                  P                  8w  d   \        R4      hVP                  RR4      R8w  gq   VP                  RV P                  P                  4      V P                  P                  8w  g2   VP                  RRV P                   24      RV P                   28w  d   \        R4      hVP                  R4      VP                  R	4      rCVR
8X  dW   \        V\        4      '       d6   VP                  V P                  8w  g   \        V4      \        Jg   V^8  d   \        R4      hV P                  WV4      RJd   \        R4      h\        V RV,           4      ! V4      G Rj  x€L
 #  L5i)r   Úprofile_mismatchÚsourceÚbot_roomÚ
session_idÚtitleúGroup: Úpermission_deniedÚtaskÚexecution_generationÚsubmitr3   TÚ_N)Úgetr   r   r(   r   r	   r*   rL   r   Ú
isinstancer   ÚtypeÚintr   Úgetattr)r+   r<   r=   rP   Ú
generations   &&&  r.   rF   Ú&HostedRoomAuthorityRPC._dispatch_owned9   sQ  é € Ø�J‰J�y $§,¡,Ó/°4·<±<Ô?Ø—>‘>×,Ñ,°·±×0IÑ0IÔIÜ#Ð$6Ó7Ð7Ø�J‰J�x Ó,°
Ô:Ø—:‘:˜l¨D¯H©H×,?Ñ,?Ó@ÀDÇHÁH×DWÑDWÔWØ—:‘:˜g¨°·±°Ð'?Ó@ÀgÈdÏlÉlÈ^ÐD\Ô\Ü#Ð$7Ó8Ð8Ø!Ÿ:™: fÓ-¨v¯z©zÐ:PÓ/QˆjØ˜Ô ¬*°T¼<×*HÒ*HØ—<‘< 4§<¡<Ô/´4¸
Ó3CÌ3Ó3NÐR\Ð_`ÔR`Ü#Ð$4Ó5Ð5Ø�?‰?˜9¨JÓ7¸tÓCÜ#Ð$7Ó8Ð8Ü˜T 3¨¥?Ô3°FÓ;×;Ð;Ñ;ùs   ‚F3F<Æ5F:Æ6F<c              ƒ  	óº   "  € V P                   P                  P                  V P                  P                  4      f   R # V P                  V4      G R j  x€L
 #  L5i©N)r   ÚdbÚget_sessionr*   rL   Ú_resume©r+   r=   s   &&r.   Ú_resolve_exactÚ%HostedRoomAuthorityRPC._resolve_exactI   sB   é € Ø�>‰>×Ñ×(Ñ(¨¯©×)<Ñ)<Ó=ÒEÙØ—\‘\ &Ó)×)Ð)Ñ)ùs   ‚AAÁAÁAc              ƒ  	óü  a a"  € S P                   P                  P                  S P                  P                  4      e   S P                  V4      G R j  x€L
 # ^ RIHpHp ^ RI	H
p ^ RIHp ^ RIHp ^ RIHp ^ RIHp ^ RIHp	 / p
V! 4       p\+        VP-                  R4      ;'       g    / 4      p\/        \1        V	! VP-                  R	4      4      4      R
0,          4      VR	&   V! RR// VCRV/CV
R7      p\3        TRRVP4                  ;'       g    V! VP7                  4       4      \9        \/        \1        VP:                  4      R0,          4      4      R7      pV! S P                   S P<                  RS P>                  /WÚR7      p\A        V\*        4      '       dk   V! S P                   \C        VS P                   P                  S P                   PD                  VR7      4      G R j  x€L
  V! S P                   VR,          4       ^ RI#H$o VV 3R lpV! S P                   \C        S P                   P                  PJ                  V4      4      G R j  x€L
  S P                  V4      G R j  x€L
 #  EL LŠ L" L5i)N)Ú_load_gateway_configÚ_resolve_gateway_model)Úbuild_policy)Ústage_local_session)Úrestore_local_session)Útracked_write)Úcommit_local_session)Úparse_config_string_listÚagentÚdisabled_toolsetsÚclarifyrJ   Úgui)Úprivate_secretsrK   )rJ   ÚplatformÚmodelÚtoolsetsÚ
request_id)Útrusted_policyÚtrusted_secrets)ÚepochÚreceiptrL   )Ú_epochc                ó¬   <€ S! V SP                   P                  4       V P                  R RSP                   2SP                  P
                  34       R# )z0UPDATE sessions SET title=?, hidden=1 WHERE id=?rN   N)r   rw   Úexecuter   r*   rL   )Úconnry   r+   s   &€€r.   ÚlabelÚ-HostedRoomAuthorityRPC._create.<locals>.labell   sD   ø€ Ù�4˜Ÿ™×-Ñ-Ô.Ø�L‰LÐKØ# D§L¡L >Ð2°D·H±H×4GÑ4GÐHöJr1   )&r   r]   r^   r*   rL   r_   Úgateway.runrd   re   Úgateway.session_policyrf   Úgateway.session_localrg   r'   rh   Úgateway.session_runtime_workersri   Úhermes_state_localrj   Úagent.skill_utilsrk   ÚdictrT   ÚsortedÚsetr   rr   ÚconfigÚtuplers   r   r&   rU   r   rw   Úhermes_state_runtimery   Ú_execute_write)r+   r=   rd   re   rf   rg   rh   ri   rj   rk   Úprivaterˆ   rl   ÚpolicyÚstagedr}   ry   s   f&              @r.   Ú_createÚHostedRoomAuthorityRPC._createN   s  ùé € Ø�>‰>×Ñ×(Ñ(¨¯©×)<Ñ)<Ó=ÒIØŸ™ fÓ-×-Ð-ßLÝ7Ý=ÝHÝAÝ;Ý>ØˆÙ%Ó'ˆô �V—Z‘Z Ó(×.Ð.¨BÓ/ˆÜ%+ÜÑ(¨¯©Ð3FÓ)GÓHÓIÈYÈKÕWó&YˆÐ!Ñ"á˜x¨Ð/Ð1K°FÐ1K¸GÀUÑ1KÐ]dÔeˆÜ˜¨
¸ZØ%Ÿ|™|×VÐVÑ/EÀfÇmÁmÃoÓ/VÜ"'¬¬s°6·?±?Ó/CÀzÀlÕ/RÓ(SÓ"TôVˆñ % T§^¡^°T·^±^ÀlÐTX×TdÑTdÐEeØ4:ôUˆô �fœd×#Ò#Ù §¡´Ø$ d§n¡n×&7Ñ&7¸t¿~¹~×?SÑ?SÐ]cô1eó f÷ fð fá! $§.¡.°&¸Õ2FÔGÝ/ö	Jñ ˜DŸN™N¬G°D·N±N×4EÑ4E×4TÑ4TÐV[Ó,\Ó]×]Ð]Ø—\‘\ &Ó)×)Ð)òC .ñ0fñ 	^Ù)ùsQ   „AI<ÁI3ÁAI<Â+E I<Ç+I6Ç,A)I<ÉI8ÉI<É.I:É/I<É6I<É8I<É:I<c              ƒ  	óÌ   "  € V P                   P                  V P                  V P                  4      G R j  x€L
  RV P                  P                  RRV P
                   2/#  L+5i)NrL   rM   rN   )r   Úresolver   r*   rL   r   r`   s   &&r.   r_   ÚHostedRoomAuthorityRPC._resumes   sP   é € Ø�n‰n×$Ñ$ T§^¡^°T·X±XÓ>×>Ð>Ø˜dŸh™h×1Ñ1°7¸gÀdÇlÁlÀ^Ð<TÐUÐUñ 	?ùs   ‚4A$¶A"·,A$c                	óÀ  € V P                   P                  V P                  V P                  R 4       \	        V P                   P
                  V P                  P                  RR7      p. pV FÄ  pVR,          V P                  P                  8w  g   VR,          P                  R4      '       g   KE   \        P                  ! VR,          R,          4      w  rE\        R
/ VB pVP                  V P                  8w  g   \        V4      \        Jd   \        R4      h TP'                  Y6T34       KÆ  	  V#   \         \        \"        3 d   p\%        R4      ThR	p?ii ; i)úsession:readF)rL   Úpending_onlyÚprincipal_idrt   r   :é   NNzinvalid hosted identityÚstorage_unavailableN© )r   r,   r   r*   r
   r]   rL   r)   Ú
startswithr    Úloadsr   r   rV   rW   Ú
ValueErrorÚ	TypeErrorÚKeyErrorr	   Úappend)r+   Úrowsr;   ÚrowrP   rY   ÚidentityÚexcs   &       r.   Ú_rowsÚHostedRoomAuthorityRPC._rowsw   s#  € Ø�‰× Ñ  §¡°·±¸>ÔJÜ& t§~¡~×'8Ñ'8ÀTÇXÁX×EXÑEXÐglÔmˆØˆÛˆCØ�>Õ" d§n¡n×&<Ñ&<Ô<ÀCÈÕDU×D`ÑD`Ðaj×DkÒDkÙðHÜ#'§:¢:¨c°,Õ.?ÀÕ.CÓ#DÑ �Ü'Ñ/¨$Ñ/�Ø×#Ñ# t§|¡|Ô3´t¸JÓ7GÌsÓ7RÜ$Ð%>Ó?Ð?ð 8Sð �M‰M˜3¨*Ð5Ö6ñ ð ˆøô œz¬8Ð4ô HÜ'Ð(=Ó>ÀCÐGûðHús   Â2A*D6Ä6EÅEÅEc                	óÂ  € ^ RI Hp V! V P                  P                  VR,          4      pVf   VR,          \        9  d   \        R4      hVe
   VR,          M/ pRRR	R
R
R
/P                  VR,          R4      pRVRVP                  RR4      RVR,          RVR,          RVP                  RV/pV P                  P                  VR,          R4      p	V	e	   V	! V4       V# )rC   )Úadmission_resultÚadmission_idNÚoutcomer™   r;   Ú	completedÚsettledr   r   ÚfailedÚstatusÚtextÚfinal_responseÚ Ú
message_idÚsettlement_idÚtask_idrQ   )
Úgateway.session_resultsr¨   r   r]   Ú_RESULTLESS_OUTCOMESr	   rT   r´   r   Úpop)
r+   r¢   rP   rY   r¨   ÚsavedÚvaluer®   rx   Úcallbacks
   &&&&      r.   Ú	_terminalÚ HostedRoomAuthorityRPC._terminalˆ   sã   € Ý<Ù  §¡×!2Ñ!2°C¸Õ4GÓHˆàŠ=˜S �^Ô3GÔGÜ#Ð$9Ó:Ð:Ø#(Ò#4��h–¸"ˆØ˜y¨-¸ÀkÐS^Ð_×cÑcÐdgÐhqÕdrÐt|Ó}ˆØ˜V V¨U¯Y©YÐ7GÈÓ-LØ  ^Õ!4°oÀsÈ>ÕGZØ˜dŸl™lÐ,BÀJðPˆð —>‘>×%Ñ% c¨.Õ&9¸4Ó@ˆØÒÙ�WÔØˆr1   c              ƒ  	ó  a aaaa"  € VR ,          VR,          uooR\         P                  ! \        S4      S.RRR7      ,           pS P                  4       p\        ;QJ d    R V 4       F  '       g   K   RM	  RM! R V 4       4      '       d   \        R4      h^ RIHp ^ R	IH	p V! 4       ;_uu_ 4        \        P                  ! VS VR
,          VP                  R4      4      G Rj  x€L
 pS P                  oS P                  P                  S P                   \#        VS P$                  VR4      Se	   VVV3R lMRR7      G Rj  x€L
 oRRR4       VR,          S P&                  SP(                  &   SP*                  R9   d‡   S P                  P,                  P                  SP(                  4      pVf>   S P.                  P1                  4       pVS P                  P,                  SP(                  &   VP3                  VV 3R l4       SP*                  R8X  dG   S P                  4        F2  w  r‰p
VR,          SP(                  8X  g   K   S P5                  W‰V
4       K4  	  \        S4      #  EL„ EL)  + '       g   i     EL0; i5i)rP   rQ   r   T)Ú	sort_keysr   c              3  ó@   "  € T F  w  p q!R ,          R8H  x € K  	  R# 5i)r®   ÚunknownNrš   )Ú.0r¢   rS   s   &  r.   Ú	<genexpr>Ú1HostedRoomAuthorityRPC._submit.<locals>.<genexpr>�   s   é € Ð@¹4©i¨c°1°a�8�} 	Ö)»4ùs   ‚FÚunknown_execution)Úsubmission_payload)Úcapture_leaseÚpromptÚattachmentsNÚqueuec                ó   <€ S! V SS4      # r\   rš   )r|   r   rY   rP   s   &€€€r.   Ú<lambda>Ú0HostedRoomAuthorityRPC._submit.<locals>.<lambda>ª   s   ø€ ©¸tÀTÈ:Ô/Vr1   )Ú_authorize_writeÚon_terminalc                ó<   <€ SP                  SP                  V 4      # r\   )Ú
_completedr©   )Údonerx   r+   s   &€€r.   rË   rÌ   ²   s   ø€ °$·/±/À'×BVÑBVÐX\Ô2]r1   Úterminalr©   r   >   ÚqueuedÚstarted)r    r!   r   r¥   Úanyr	   Ú"gateway.session_hosted_attachmentsrÅ   Úgateway.session_ingress_mediarÆ   r5   Ú	to_threadrT   r   r   rR   r   r   r*   r   r©   r®   Úwaitersr   Úcreate_futureÚadd_done_callbackr»   )r+   r=   rt   r¡   rÅ   rÆ   ÚpayloadÚwaiterr¢   r£   Úgenr   rY   rx   rP   s   f&         @@@@r.   Ú_submitÚHostedRoomAuthorityRPC._submit˜   s÷  üé € Ø! &�>¨6Ð2HÕ+IÐˆˆjØ¤§¢¬V°D«\¸:Ð,FÐRVÐcmÔ!nÕnˆ
à�z‰z‹|ˆß‹3Ñ@¹4Ó@�3�3Š3Ñ@¹4Ó@×@Ò@Ü#Ð$7Ó8Ð8ÝIÝ?ñ �_�_Ü#×-Ò-Ø" D¨&°Õ*:¸F¿J¹JÀ}Ó<UóW÷ WˆGà"×2Ñ2ˆOØ ŸN™N×1Ñ1°$·.±.Ä*Ø˜DŸH™H g¨wóC8ð #Ò.÷ #WØ48ð 2ó :÷ :ˆG÷	 ð 06°mÕ/Dˆ�‰�w×+Ñ+Ñ,Ø�>‰>Ð2Ô2Ø—^‘^×+Ñ+×/Ñ/°×0DÑ0DÓEˆFØŠ~ØŸ™×0Ñ0Ó2�Ø?E�—‘×&Ñ& w×';Ñ';Ñ<Ø×$Ñ$Õ%]Ô^Ø�>‰>˜ZÔ'Ø&*§j¡j¦lÑ"�˜sØ�~Õ&¨'×*>Ñ*>Ö>Ø—N‘N 3°#Ö6ñ '3ô �g‹Ðò%Wò:÷	 �_ˆ_üsV   ‡A+JÁ5JÂ&JÂ63I3Ã)I-Ã*AI3ÅI0ÅI3ÅC;JÉ!JÉ-I3É0I3É3J	É>	Jc                	ó€  € VP                  4       '       g   WP                  9  d   R # VP                  4       e   R # V P                  RR R 4      RJd   V P                  P	                  VR 4       R # V P                  4        F8  w  r4pVR,          V8X  g   K  VR,          R8X  g   K&  V P                  W4V4       K:  	  R # )NrÒ   Tr©   r®   )r   r   Ú	exceptionr   r·   r¥   r»   )r+   r©   r?   r¢   rP   rY   s   &&&   r.   rÐ   Ú!HostedRoomAuthorityRPC._completed¹   s˜   € Ø×Ñ×Ò ·^±^Ô!CÙØ×ÑÓÒ)ñ Ø�?‰?˜: t¨TÓ2¸$Ó>Ø�N‰N×Ñ˜|¨TÔ2ÙØ%)§Z¡Z¦\Ñ!ˆC�zØ�>Õ" lÖ2°s¸8µ}È
Ö7RØ—‘˜s¨*Ö5ó &2r1   c           	   ƒ  	óè  a a	a
"  € ^ RI Ho	Hp S P                  P	                  S P
                  S P                  R4       V! S P                  S P                  4      G Rj  x€L
 o
S P                  4       pS P                  P                  S P                  V	V
V 3R l4      pV FH  w  rVpVR,          R8X  g   K  S P                  WVV4      pVP                  / VCRRR	VR
,          /C4       KJ  	  V#  L�5i)rC   )Úlocal_historyÚprepare_historyr•   Nc                 óR   <€ \        S ! SP                  SP                  S4      4      # r\   )Úlistr   r*   )rå   Úpreparedr+   s   €€€r.   rË   Ú1HostedRoomAuthorityRPC._history.<locals>.<lambda>Ï   s   ø€ œd¡=°·±ÀÇÁÈ8Ó#TÔUr1   r®   rÒ   ÚroleÚ	assistantÚcontentr¯   )r'   rå   ræ   r   r,   r   r*   r¥   Úunless_deletedr»   r    )r+   r=   ræ   r¡   Úhistoryr¢   rP   rY   rx   rå   ré   s   f&       @@r.   Ú_historyÚHostedRoomAuthorityRPC._historyÇ   sÄ   úé € ßQð 	�‰× Ñ  §¡°·±¸>ÔJÙ(¨¯©¸¿¹ÓB×BˆØ�z‰z‹|ˆØ—.‘.×/Ñ/Ø�H‰HÖUóWˆã%)Ñ!ˆC�zØ�8�} 
Ö*ØŸ.™.¨°JÓ?�Ø—‘Ð[ 'Ð[¨6°;À	È7ÐSYÍ?Ñ[Ö\ñ &*ð ˆñ Cùs   …AC2ÁC0Á AC2Â89C2c              ƒ  ó  "  € VP                  R4      pVel   \        V\        4      '       dK   \        V4      R8”  g;   \        ;QJ d    R V 4       F  '       d   K   RM	  RM! R V 4       4      '       g   \        R4      h^ RIHp . ^ rT\        V P                  4       4       FÍ  w  rgpVR	,          R
8w  g   Ve   VR,          V9  d   K(  V P                  WgV4      p	V	R,          P                  R4      p
\        V
4      V8”  d    V
RV^,            P                  RR4      V	R&   V\        \        P                  ! V	4      4      ,          pV'       d   V\        8”  d    MVP!                  V	4       KÏ  	  VRRR1,          # 5i)a<  Terminal receipts only, never the transcript: one bounded response line.

``admission_ids`` narrows the read to the caller's pending callbacks. Each text
keeps just over the driver's persisted bound, so its own truncation (and notice)
is unchanged; newest receipts win the byte budget and the rest follow next poll.
Úadmission_idsNé   c              3  óV   "  € T F  p\        V\        4      ;'       d    Tx € K!  	  R # 5ir\   )rU   Ústr)rÁ   Úis   & r.   rÂ   Ú2HostedRoomAuthorityRPC._results.<locals>.<genexpr>ß   s$   é € Ð-WÑPVÈ1¬j¸¼CÓ.@×.FÐ.FÀQÔ.FÓPVùs   ‚)ž)FTr3   )ÚMAX_TERMINAL_TEXT_BYTESr®   rÒ   r©   r¯   zutf-8Úignoreéÿÿÿÿ)rT   rU   rè   ÚlenÚallr	   Útui_gateway.hosted_room_driverrù   Úreversedr¥   r»   r$   Údecoder    r!   Ú_RESULTS_BUDGET_BYTESr    )r+   r=   Úwantedrù   ÚreceiptsÚusedr¢   rP   rY   rx   Úraws   &&         r.   Ú_resultsÚHostedRoomAuthorityRPC._resultsÖ   s?  é € ð —‘˜OÓ,ˆØÒ¤z°&¼$×'?Ò'?Ä3ÀvÃ;ÐQTÔCTß*-«#Ñ-WÑPVÓ-W¯#¯#ª#Ñ-WÑPVÓ-W×*WÒ*WÜ#Ð$4Ó5Ð5ÝJØ˜Q�$Ü%-¨d¯j©j«lÖ%;Ñ!ˆC�zØ�8�} 
Ô*¨vÒ/AÀcÈ.ÕFYÐagÔFgÙØ—n‘n S°
Ó;ˆGØ˜&•/×(Ñ(¨Ó1ˆCÜ�3‹xÐ1Ô1Ø"%Ð&BÐ'>ÀÕ'BÐ"C×"JÑ"JÈ7ÐT\Ó"]�˜‘Ø”CœŸ
š
 7Ó+Ó,Õ,ˆDß˜DÔ#8Ô8ÙØ�O‰O˜GÖ$ñ &<ð ™˜"˜�~Ðùs   ‚AFÁ	FÁFÁ8D
Fc              ƒ  	óô  "  € V P                  4       pV F(  w  r4pVR ,          R8X  g   K  V P                  W4V4       K*  	  \        R V 4       R4      pRVRJ;'       d    V^ ,          R ,          R8g  RV'       d   V^,          P                  MRRV'       d
   V^,          MRR V'       d   V^ ,          R ,          MR/pV P                  P                  V P                  V P                  4      G Rj  x€L
 pVP                  '       dg   \        R	 VP                   4       R4      p	V	'       dB   TP                  R
/ V	CRV	R,          RV	R,           U
u. uF  qªR9   g   K  V
NK  	  up
/CR7       V#  L~u up
i 5i)r®   rÒ   c              3  óN   "  € T F  w  rq1R ,          R9   g   K  WV3x € K  	  R# 5i©r®   N>   rÓ   rÔ   rÀ   rš   )rÁ   r¢   rP   rY   s   &   r.   rÂ   Ú/HostedRoomAuthorityRPC._info.<locals>.<genexpr>õ   s4   é € ð  HÉTÑ4I°C¸zÐYaÕUbð  gGñ  VGÔ/˜ JÕ/ËTùs   ‚%™%NÚactiverÀ   r´   rQ   Úidlec              3  óT   "  € T F  qP                  R 4      R8X  g   K  Vx € K   	  R# 5i)ÚkindÚapprovalN©rT   )rÁ   Úps   & r.   rÂ   r  ü   s!   é € ÐVÑ&6 ¿%¹%À»-È:Ñ:UŸ1š1Ó&6ùs   ‚(ž
(Úwaiting_for_approvalrt   Ú	prompt_idÚchoices)r®   Úpending_approval>   ÚdenyÚonce)
r¥   r»   Únextr´   r   Úattachr   r*   ÚpromptsÚupdate)r+   r=   r¡   r¢   rP   rY   Úcurrentr;   ÚsnapshotrÇ   Úcs   &&         r.   Ú_infoÚHostedRoomAuthorityRPC._infoð   sj  é € Ø�z‰z‹|ˆÛ%)Ñ!ˆC�zØ�8�} 
Ö*Ø—‘˜s¨*Ö5ñ &*ô ñ  HÉTó  Hð  JNó  OˆØ˜G¨4Ð/×UÐU°G¸AµJ¸xÕ4HÈIÑ4UØ·7˜W Q�Z×/Ò/ÀØ(¿¨'°!®*ÀTØ·G˜G A�J xÖ0ÀðIˆð Ÿ™×.Ñ.¨t¯~©~¸t¿x¹xÓH×HˆØ××ÐÜÑV h×&6Ò&6ÓVÐX\Ó]ˆFßØ—‘Ð%;ð OXØðOXØ*¨F°;Õ,?Ø¨6°)Ö+<ÓVÑ+< aÐEUÑ@U§ Ñ+<ÑVñOX�ô Yð ˆñ Iùò  WùsN   ‚$E8«4E8Á E8Á<E8ÂE8Â,AE8Ã2E1Ã3E8Ä	A	E8ÅE3ÅE3Å%E8Å3E8c              ƒ  	ó  "  € V P                  4       p\        R  V 4       R4      pVe    V^,          P                  VR,          8w  d   \        R4      hVw  rEVR,          R8X  d   \        R4      hVR,          R8X  dA   V P                  P                  V P                  V P                  VR,          4      G Rj  x€L
 pVeA   V P                  P                  V P                  V P                  VR	,          4      G Rj  x€L
  R
RRR
/#  LN L5i)c              3  óL   "  € T F  w  rq1R ,          R9   g   K  W3x € K  	  R# 5ir
  rš   )rÁ   r¢   rP   rS   s   &   r.   rÂ   Ú4HostedRoomAuthorityRPC._interrupt.<locals>.<genexpr>  s"   é € Ðr¹©¨°1ÀHÅÐQqÑ@qœ˜�»ùs   ‚$™$NÚexpected_task_idÚstale_generationr®   rÀ   rÄ   rÓ   r©   rY   r   T)	r¥   r  r´   r	   r   Úcancel_or_claimedr   r*   Ú	interrupt)r+   r=   r¡   r  r¢   rS   s   &&    r.   Ú
_interruptÚ!HostedRoomAuthorityRPC._interrupt  sæ   é € Ø�z‰z‹|ˆÜÑr¹ÓrÐtxÓyˆØŠ?˜g a�j×0Ñ0°FÐ;MÕ4NÔNÜ#Ð$6Ó7Ð7Ø‰ˆØˆx�=˜IÔ%Ü#Ð$7Ó8Ð8Øˆx�=˜HÔ$ØŸ™×8Ñ8¸¿¹ÈÏÉÐSVÐWeÕSfÓg×gˆCØŠ?Ø—.‘.×*Ñ*¨4¯>©>¸4¿8¹8ÀSÈÕEVÓW×WÐWØ˜t X¨}Ð=Ð=ñ háWùs%   ‚B8DÂ:D	Â;ADÃ>DÃ?DÄDc              ƒ  	ó†  "  € VR ,          p\        V4      \        Jg   V^8  d   \        R4      hV P                  4        UUUu. uFY  w  r4pVR,          R8X  g!   VR,          R8X  g   K$  VR,          R8X  g   K4  VP                  VR,          8X  g   KN  WR8X  g   KV  W43NK[  	  pppp\        V4      ^8w  d   \        R4      hV^ ,          w  r4VR,          R8X  dI   V P                  P                  V P                  V P                  VR	,          VR
,          4      G Rj  x€L
  RRRRRVP                  R V/# u upppi  L5i)rQ   r3   r®   rÀ   rÒ   rª   r   r%  r&  r©   rY   NÚ	discardedTr   r´   )
rV   rW   r	   r¥   r´   rü   r   Úresolve_unknownr   r*   )r+   r=   rY   r¢   rP   Úhosted_generationÚmatchess   &&     r.   Ú_discardÚHostedRoomAuthorityRPC._discard  s?  é € ØÐ2Õ3ˆ
Ü�
Ó¤3Ó&¨*°q¬.Ü#Ð$4Ó5Ð5ØCGÇ:Á:Ä<õ 8Á<Ñ#? 3Ð.?Ø˜8•}¨	Ô1°c¸(µmÀzÑ6Qô ØVYÐZcÕVdÐhuÑVuô à—|‘| vÐ.@Õ'AÑAô ð )Ñ6ô �C“;Á<ˆò 8ô ˆw‹<˜1ÔÜ#Ð$6Ó7Ð7Ø˜A•J‰	ˆàˆx�=˜IÔ%Ø—.‘.×0Ñ0Ø—‘ §¡¨#¨nÕ*=¸sÀ<Õ?PóR÷ Rð Rà˜T 8¨[¸)ÀTÇ\Á\Ø&¨
ð4ð 	4ùô8ñRùs7   ‚AEÁ!D8Á+D8Á;D8ÂD8ÂD8Â$A;EÄD?Ä  Ec           	   ƒ  	óÒ  a"  € SR ,          R9  d   \        R4      hV P                  P                  V P                  V P                  4      G Rj  x€L
 p\        V3R lVP                   4       R4      pVf   \        R4      hV P                  P                  V P                  V P                  VP                  P                  SR,          R SR ,          /4      G Rj  x€L
 #  L’ L5i)Úchoicer3   Nc              3  ó”   <"  € T F=  qP                  R 4      SR,          8X  g   K!  VP                  R4      R8X  g   K9  Vx € K?  	  R# 5i)r  rt   r  r  Nr  )rÁ   r  r=   s   & €r.   rÂ   Ú2HostedRoomAuthorityRPC._approve.<locals>.<genexpr>'  s@   øé € ð 8Ñ"2˜Q·e±e¸KÓ6HÈFÐS_ÕL`Ñ6`”qØŸ5™5 ›=¨JÑ6÷ ’qÓ"2ùs   ƒA¦A¾
Ar&  rt   >   r  r  )
r	   r   r  r   r*   r  r  ÚrespondÚhandlerQ   )r+   r=   r  rÇ   s   &f  r.   Ú_approveÚHostedRoomAuthorityRPC._approve#  sÊ   øé € Ø�(ÕÐ#3Ô3Ü#Ð$4Ó5Ð5ØŸ™×.Ñ.¨t¯~©~¸t¿x¹xÓH×HˆÜô 8 (×"2Ò"2ó 8Ø9=ó?ˆàŠ>Ü#Ð$6Ó7Ð7Ø—^‘^×+Ñ+¨D¯N©N¸D¿H¹HØ�O‰O×0Ñ0°&¸Õ2FÈÐSYÐZbÕScÐHdóf÷ fð 	fñ Iñ
fùs%   ƒAC'ÁC#ÁBC'ÃC%ÃC'Ã%C'c               	ó*   € V P                  R WVR7      # )Úresolve_exact©r   rM   rJ   ©r@   ©r+   r   rM   rJ   s   &$$$r.   r;  Ú$HostedRoomAuthorityRPC.resolve_exact.  s   € Ø�z‰z˜/°7ÐPVˆzÓWÐWr1   c               	ó*   € V P                  R WVR7      # )Úcreater<  r=  r>  s   &$$$r.   rA  ÚHostedRoomAuthorityRPC.create1  s   € Ø�z‰z˜(¨GÈˆzÓPÐPr1   c               	ó*   € V P                  R WVR7      # )Úresume©r   rL   rJ   r=  ©r+   r   rL   rJ   s   &$$$r.   rD  ÚHostedRoomAuthorityRPC.resume4  s   € Ø�z‰z˜(¨GÐSYˆzÓZÐZr1   r   rÈ   c       	        	ón   € Ve   W€P                   8w  d   \        R4      hV P                  RWVW5WgV	R7	      # )NrO   rR   )r   rL   rJ   rÇ   rP   rQ   rÎ   rÈ   )r   r	   r@   )
r+   r   rL   rÇ   rJ   rP   rQ   rÎ   r   rÈ   s
   &$$$$$$$$$r.   rR   ÚHostedRoomAuthorityRPC.submit7  sE   € ð Ò  Y·.±.Ô%@Ü#Ð$7Ó8Ð8Ø�z‰z˜(¨GÐSYØ!'ÐI]Ø&1ð ó 3ð 	3r1   c               	ó*   € V P                  R WVR7      # )rï   rE  r=  rF  s   &$$$r.   rï   ÚHostedRoomAuthorityRPC.history@  s   € Ø�z‰z˜)¨WÐTZˆzÓ[Ð[r1   ró   c               	ó,   € V P                  R WVVR7      # )Úresults)r   rL   rJ   ró   r=  )r+   r   rL   rJ   ró   s   &$$$$r.   rM  ÚHostedRoomAuthorityRPC.resultsC  s"   € Ø�z‰z˜)¨WÐTZØ(5ð ó 7ð 	7r1   c               	ó*   € V P                  R WVR7      # )ÚinforE  r=  rF  s   &$$$r.   rP  ÚHostedRoomAuthorityRPC.infoG  s   € Ø�z‰z˜&¨'ÐQWˆzÓXÐXr1   c               	ó*   € V P                  R WW4R7      # )r(  )r   rL   rJ   r%  r=  )r+   r   rL   rJ   r%  s   &$$$$r.   r(  Ú HostedRoomAuthorityRPC.interruptJ  s   € Ø�z‰z˜+¨wÐV\ˆzó  Að  	Ar1   c          	     	ó,   € V P                  R WVWER7      # )Údiscard)r   rL   rJ   r%  rQ   r=  )r+   r   rL   rJ   r%  rQ   s   &$$$$$r.   rU  ÚHostedRoomAuthorityRPC.discardM  s$   € Ø�z‰z˜)¨WÐTZØ+;ð ó hð 	hr1   c               	ó*   € V P                  R WVR7      # )Úapprove)rL   rt   r3  r=  )r+   rL   rt   r3  s   &$$$r.   rX  ÚHostedRoomAuthorityRPC.approveQ  s   € Ø�z‰z˜)°
ÐZ`ˆzÓaÐar1   )r   r   r   r   r&   r   r   r   r   r*   r   r   )!Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Úaccepts_attachmentsr/   r@   r:   rF   ra   r�   r_   r¥   r»   rß   rÐ   rð   r  r   r)  r0  r8  r;  rA  rD  rR   rï   rM  rP  r(  rU  rX  Ú__static_attributes__rš   r1   r.   r   r      sÆ   † ØÐðHØ,0ðHØ:<ôHò+òAò
<ò *ò
#*òJVòò"ò òB6òòò4ò&>ò4ò$	fòXòQò[ð3Øð3Ø+/ô3ò\ð7ÀDô 7òYòAòhöbr1   r   i   )Ú__doc__Ú
__future__r   r5   Údataclassesr   r   Ú	functoolsr   r"   r    Úgateway.hosted_room_driverr   Úgateway.session_contractr   r   rŠ   r	   r
   Ú	frozensetr¶   r  r   rš   r1   r.   Ú<module>rg     sK   ðñõ
 #ã ß 'Ý Û Û å 3ß ;ß Ká  -°Ð!=Ó>Ð à"Ð ÷{bó {br1   