+
    lHàjUG  ã                   óX  a € R1 t,0 t ^ RIt^ RIt^RIHtHt ]! 4       t]P                  t]! 0 R2m4      t	]P                  ! RRR7      t] ^ k 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/tR tR tR tRR/R ltR t]! R4      ]R  4       4       t ]! R4      ]R! 4       4       t R" t!]PD                  R# 4       t#]PD                  R$ 4       t$R% t%]! R&4      ]R' 4       4       t ]! R(4      ]R) 4       4       t ]! R4      ]R* 4       4       t R+ t&R, t'R- t(R. t)R/ t*R0 t+R# )3é    N)ÚHandlerRegistryÚbind_moduleúconnectors.listúconnectors.connectúconnection.respondÚconnector_rpc_origin)Údefaultc                 óv  € \        V \        4      '       d   V P                  R 4      MRp\        V\        4      '       d(   VP                  R4      R8X  d   VP                  R4      MRp\        \        V\        4      '       d   TMR4      w  r4\
        P                  YDe   VP                  R4      MR34       R# )ÚownerNÚtypeÚsessionÚ
session_idÚ Úprofile_home)Ú
isinstanceÚdictÚgetÚ _current_session_steer_authorityÚstrÚ_connector_rpc_originÚset)Úparamsr   ÚsidÚ_r   s   &    ÚC/home/ubuntu/.hermes/hermes-agent/tui_gateway/methods_connectors.pyÚ_capture_connector_rpc_ownerr      s‰   € Ü#-¨f´d×#;Ò#;ˆF�J‰J�wÔÀ€EÜ%/°´t×%<Ò%<ÀÇÁÈ6ÓARÐV_ÔA_ˆ%�)‰)�LÔ
!Ðeg€CÜ1¼ÀCÌ×9MÒ9M±#ÐSUÓV�J€AÜ×Ñ˜wÒGZ¨¯©°NÔ(CÐ`dÐeÖfó    c                 ó"   € \        WVR V/R7      # )Úreason)Údata)Ú_err)ÚridÚcoder   Úmessages   &&&&r   Ú_connector_rpc_errorr%      s   € Ü�˜7¨(°FÐ);Ô<Ð<r   c                  ó   € ^ RI Hp  V # )r   ©Úconnector_refusals)Útui_gatewayr(   r'   s    r   Ú	_refusalsr*      s   € Ý.àÐr   c                 ó4   € ^ RI Hp \        V .V! V4      O5!  # )r   )Úauth_refusal)Útui_gateway.connector_refusalsr,   r%   )r"   Úexcr,   s   && r   Ú_connector_auth_errorr/      s   € Ý;ä Ð8¡l°3Ó&7Ó8Ð8r   c                 ó   a € V 3R  lpV# )c                 ó´   <€ ^ RI Hp ^ RIHp  S! W4      #   \         d    h T d   p\        Y4      u Rp?# Rp?i\         d    \        T .TO5!  u # i ; i)r   )ÚGatewayAuthError)ÚREQUEST_FAILEDN)Útools.connectors.gateway.errorsr2   r-   r3   ÚProfileUnavailableErrorr/   Ú	Exceptionr%   )r"   r   r2   r3   r.   Úfns   &&   €r   ÚhandlerÚ!_connector_guard.<locals>.handler$   sV   ø€ ÝDÝAð	>Ù�c“?Ð"øÜ&ô 	ØØô 	3Ü(¨Ó2Õ2ûÜô 	>Ü'¨Ð=¨nÓ=Ò=ð	>ús(   � —A¨A©
9³A¹AÁAÁA© )r7   r8   s   f r   Ú_connector_guardr;   #   s   ø€ õ>ð €Nr   c                 ó–   € \        V 4      w  r4WAJ ;'       d3    VP                  R 4      '       * ;'       d    VP                  R4      V8H  # )Ú
_finalizedr   )r   r   )r   r   r   r   Úcurrents   &&&  r   Ú_connector_owner_matchesr?   4   sB   € Ü1°#Ó6�J€AØÐ×iÐi E§I¡I¨lÓ$;Ô ;×iÐiÀÇ	Á	È.Ó@YÐ]iÑ@iÐir   c                 óŒ  € ^ RI Hp VP                  p\        V4      w  rE\        P                  4       pVeF   VP                  R4      '       g/   VeE   V^ ,          VJg   V^,          VP                  R4      8w  d   R\        V RVP                  R4      3# \        V4      '       d   R\        V RVP                  R4      3# VR3# )	r   ©ÚConnectorErrorReasonNr=   r   é¡  z0session not found or not owned by this transporti©  z9Connectors must be managed on the session's compute host.)
Ú tui_gateway.contracts.connectorsrB   r   r   r   r   r%   Ú	not_ownerÚ_session_uses_compute_hostÚunsupported_runtime)r"   r   rB   r   r   r   Úorigins   &&     r   Ú_session_ownerrI   9   sË   € ÝEà
×
Ñ
€CÜ1°#Ó6�J€AÜ"×&Ñ&Ó(€FØŠ˜7Ÿ;™; |×4Ò4ØÒ! v¨a¥y¸Ó'?À6È!Å9ÐPW×P[ÑP[Ð\jÓPkÔCkØÔ)Ø�Ð+×5Ñ5Ð7ió
ð 
ð 	
ô " '×*Ò*ØÔ)Ø�Ð+×?Ñ?ÐA|ó
ð 
ð 	
ð �Dˆ=Ðr   c                 óh   € ^ RI Hp ^ RIHp V! 4       '       d   R# \	        V RVP
                  R4      # )r   ©Úconnectors_availablerA   Ni¿  zConnectors are not available.)Útools.connectorsrL   rD   rB   r%   Úconnectors_unavailable)r"   rL   rB   s   &  r   Ú_account_gate_closedrO   K   s-   € Ý5ÝEá×ÒÙÜ  TÐ+?×+VÑ+VÐXwÓxÐxr   c                ól   € ^ RI Hp ^ RIHp V! 4       ;p'       d   \	        V RVP
                  V4      # R# )z§Connecting from the Connectors page is the user asking for apps: create the guest identity
here when the user has none. Page reads and operation polls never call this.)Úensure_guest_identityrA   éª  N)rM   rQ   rD   rB   r%   Úconnector_request_failed)r"   rQ   rB   Úsetup_errors   &   r   Ú_account_identity_errorrU   T   s4   € õ 7ÝEá+Ó-Ð-€{Ö-Ü# C¨Ð/C×/\Ñ/\Ð^iÓjÐjÙr   c                 ó’   € ^ RI Hp  VP                  V4      R3#   T d%    R\        T .\	        4       P
                  O5!  3u # i ; i)r   ©ÚValidationErrorN)ÚpydanticrX   Úmodel_validater%   r*   ÚINVALID_PARAMS)r"   r   ÚmodelrX   s   &&& r   Ú_parse_paramsr]   _   sP   € Ý(ðLØ×#Ñ# FÓ+¨TÐ1Ð1øØô LØÔ)¨#ÐK´	³×0JÑ0JÓKÐKÒKðLús   ˆ ›(AÁAc                 ó®   € \        WV4      w  r4V'       d   R R V3# VP                  P                  R8X  d   VR R 3# \        WP                  4      w  rTW5V3# )NÚaccount)r]   r   r   rI   )r"   r   r\   ÚrequestÚerrorr   s   &&&   r   Ú_connector_paramsrb   h   sZ   € Ü" 3°Ó6�N€GßØ�T˜5Ð Ð Ø‡}�}×Ñ˜YÔ&Ø˜˜dÐ"Ð"Ü# C¯©Ó7�N€GØ˜UÐ"Ð"r   c           	      ó|  € ^ RI p^ RIHp VP                  R4      pVe   VP                  M\        \        \        V4      4      4      pVe   VP                  MRpRVP                  WgRR7      9  g   V! 4       '       g;   VR8X  d   Wg\        V RR	R
. /4      3# Wg\        V .\        4       P                  O5!  3# WgR3# )r   NrK   ÚagentÚmanage_connectionsT)Ú
quiet_modeÚstatusÚ	availableFÚ
connectors)Úmodel_toolsrM   rL   r   Úenabled_toolsetsÚ_load_enabled_toolsetsÚ_resolve_agent_platformÚ_session_sourceÚdisabled_toolsetsÚ_select_tool_namesÚ_okr%   r*   ÚCONNECTORS_UNAVAILABLE)r"   r   Úactionrj   rL   rd   ÚenabledÚdisableds   &&&     r   Ú_session_connector_gaterv   r   sä   € ÛÝ5à�K‰K˜Ó €EØ(-Ò(9ˆe×$Ò$Ô?UÔVmÔn}ð  Fó  oGó  WHó  @I€GØ*/Ò*;ˆu×&Ò&À€HØ ;×#AÑ#AÀ'Ð`dÐ#AÓ#eÔeñ  nB÷  nDò  nDØ�XÔØ¤c¨#°¸UÀLÐRTÐ/UÓ&VÐVÐVØÔ"6Øð#
Ü“+×4Ñ4ó#
ð 
ð 	
ð ˜dÐ"Ð"r   c           
      óÞ  aaa€ ^ RI p^ RIp^ RIp^ RIHp ^ RIHp ^ RIHp	 SP                  P                  p
\        WV4      w  r¼pV'       d   V# \        W¢VP                  R4      4      '       g   \        V RV	P                  R4      # RVR	8X  d   SP                   '       d   R
MT/pVR	8X  d   SP"                  VR&   VR	8X  dæ   VP%                  VR,          VP                  R4      R7      oSf   \        V RV	P&                  R4      # SP(                  f   SP*                  ex   \,        ;QJ d+    VVV3R lSP"                   4       F  '       g   K   RM 	  RM! VVV3R lSP"                   4       4      '       d    \        V .\/        4       P0                  O5!  # \3        V SV4      # TP5                  RTVR,          \7        VP                  R4      RR4      ;'       g
    VR,          RVP9                  4       P:                   2VVR7      p\=        V\>        4      '       d   VPA                  V4      MTp\=        V\B        4      '       d   RV9   d    \        V .\/        4       PD                  O5!  # VR8X  d¦   \=        VP                  R4      \F        4      '       dI   \,        ;QJ d#    R VR,           4       F  '       g   K   RM	  RM! R VR,           4       4      '       d   \        V RV	PH                  R4      # \K        V RRR\M        VR,          4      /4      # \=        VP                  R4      \F        4      '       g   \        V RV	PH                  R4      # \K        W! V4      4      # ) r   N©Úlive©Úconnector_ui_payloadrA   r   rC   úsession ownership changedrs   ÚconnectÚ	reconnectri   Úsession_key©r   i¤  z.No open connection operation for this session.c              3   ó  <"  € T F  pSP                  V4      ;oR J;'       d^    SP                  R J;'       d"    SP                  SP                  8g  ;'       g'    SP                  R SP                  SP                  39  x € K�  	  R # 5i©N)ÚtargetÚaliasÚconnection_idÚ	repair_id)Ú.0ÚnameÚ	operationr`   rƒ   s   & €€€r   Ú	<genexpr>Ú)_session_connector_rpc.<locals>.<genexpr>›   s’   øé € ð T0ñ /�Dð %×+Ñ+¨DÓ1Ð1�¸$Ð>÷ eð eØ—m‘m¨4Ð/×QÐQ°F·L±LÀGÇMÁMÑ4Q÷ dð dØ×-Ñ-°d¸F×<LÑ<LÈf×NbÑNbÐ5cÑcôeó /ùs   ƒ B
¤B
º B
Á/B
TFre   rd   r   zconnector-ui-)Útask_idr   Útool_call_idrk   ro   ra   rg   c              3   óL   "  € T F  p\        V\        4      '       * x € K  	  R # 5ir‚   )r   r   )r‡   Úrows   & r   rŠ   r‹   ¯   s!   é € Ð>wÑdvÐ]`Ä:ÈcÔSWÓCX×?XÑ?XÓdvùs   ‚"$rR   z/Connector service returned an invalid response.rh   Útargetsz4Connector service returned no authorization results.)'Újsonrj   ÚuuidrM   ry   Útui_gateway.connector_payloadr{   rD   rB   r   r   rv   r?   r   r%   rE   r~   ri   r>   Úunknown_operationr„   r…   Úanyr*   ÚUNKNOWN_TARGET_REFUSALÚ_reissueÚhandle_function_callÚgetattrÚuuid4Úhexr   r   Úloadsr   r3   ÚlistÚinvalid_connector_responserq   Ú_connector_rows)r"   r`   r   rs   r‘   rj   r’   ry   r{   rB   r   rt   ru   ra   ÚargsÚrawr    r‰   rƒ   s   &f&&             @@r   Ú_session_connector_rpcr¢   ‚   sÿ  ú€ ÛÛÛå%ÝBÝEà
�-‰-×
"Ñ
"€CÜ6°sÀVÓLÑ€G�ußØˆÜ# C°'·+±+¸nÓ2M×NÒNÜ# C¨Ð/C×/MÑ/MÐOjÓkÐkØ V¨yÔ%8¸W×=N×=NÐ=N‘kÐTZÐ[€DØ�ÔØ$×/Ñ/ˆˆ\ÑØ�ÔØ—L‘L ¨Õ!7ÀgÇkÁkÐR`ÓFa�LÓbˆ	ØÒÜ'Ø�TÐ/×AÑAÐCsóð ð �M‰MÒ%¨×)>Ñ)>Ò)J×PSÓPSö T0ð $×.Ò.ó	T0×PS×PSÒPSö T0ð $×.Ò.ó	T0÷ Q0ò Q0ô
 (¨ÐQ¬i«k×.PÑ.PÓQÐQÜ˜˜Y¨Ó-Ð-Ø
×
*Ñ
*ØØØ˜Õ&Ü˜7Ÿ;™; wÓ/°¸tÓD×^Ð^ÈÐP]ÕH^Ø$ T§Z¡Z£\×%5Ñ%5Ð$6Ð7Ø Ø"ð +ó €Cô )¨¬c×2Ò2ˆ4�:‰:�cŒ?¸€DÜ�dœD×!Ò! W°¤_Ü# CÐE¬)«+×*DÑ*DÓEÐEØ�ÔÜ˜$Ÿ(™( <Ó0´$×7Ò7¿3»3Ñ>wÐdhÐiuÖdvÓ>w¿3¿3º3Ñ>wÐdhÐiuÖdvÓ>w×;wÒ;wÜ'¨¨TÐ3G×3bÑ3bð  eVó  Wð  WÜ�3˜ d¨L¼/È$È|ÕJ\Ó:]Ð^Ó_Ð_Ü�d—h‘h˜yÓ)¬4×0Ò0Ü# C¨Ð/C×/^Ñ/^ð  aWó  Xð  	XÜˆsÐ(¨Ó.Ó/Ð/r   c           
      ó”   € ^ RI Hp ^ RIHp T! V  Uu. uF%  pVP	                  V4      P                  RRR7      NK'  	  up4      # u upi )r   )ÚConnectorListItemrz   r‘   F)ÚmodeÚby_alias)Útools.connectors.gateway.wirer¤   r“   r{   rZ   Ú
model_dump)Úrowsr¤   r{   r�   s   &   r   rŸ   rŸ   ·   sP   € Ý?ÝBááó!áˆCð 	×(Ñ(¨Ó-×8Ñ8¸fÈuÐ8ÖUÙñ!ó ð ùò !s   “+Arg   Fr}   Tc           	      ó´   € ^ RI Hp ^ RIHp ^ RIHp V! 4       '       d   V! RR7      P                  4       M. pV! V4       \        V RRR\        V4      /4      # )	r   )Únote_connected_apps_seen)Úmanaged_client)Úread_nous_access_tokenF)Úcreates_guestrh   Tri   )	Úhermes_cli.free_tier_offerr«   Útools.connectors.managedr¬   Útools.managed_tool_gatewayr­   Úlist_connectorsrq   rŸ   )r"   r«   r¬   r­   r©   s   &    r   Ú_account_connector_listr³   Å   sL   € ÝCÝ7ÝAáDZ×D\ÒD\‰>¨Ô.×>Ñ>Ô@Ðbd€DÙ˜TÔ"Üˆs�[ $¨´oÀdÓ6KÐLÓMÐMr   c           	      ó  a	€ ^ RI Hp ^ RIHp ^ RIHp VP                  '       d   RMRp VP                  VP                  V\        V4      VP                  VP                  VR7      pVP                  '       gÂ   ^ RIHo	 VP                   Uu. uF  qvP                  P!                  V4      NK  	  pp\"        ;QJ d    V	3R lV 4       F  '       g   K   R	M	  R
M! V	3R lV 4       4      '       d%   \%        WP                  RVP                  /VR7      # \'        W! \)        VP                  4      4      4      # VP+                  V4      '       g%   \'        W! \)        VP                  4      4      4      # VP,                  '       d    \/        V .\1        4       P2                  O5!  # \'        W! \)        VP                  4      4      4      # u upi   \4         d#    \/        T .\1        4       P6                  O5!  u # i ; i)r   )r_   )ÚDESKTOP_PAGErz   r~   r}   )rs   r   r„   r†   Ú	initiator)ÚTargetStatec              3   ól   <"  € T F)  qP                   SP                  SP                  39   x € K+  	  R # 5ir‚   )ÚstateÚfailedÚexpired)r‡   rƒ   r·   s   & €r   rŠ   Ú-_account_connector_connect.<locals>.<genexpr>Ü   s,   øé € ÐcÑ[bÐQW—<‘< K×$6Ñ$6¸×8KÑ8KÐ#LÖLÓ[bùs   ƒ14TFri   ©r¶   )rM   r_   r°   rµ   r“   r{   r~   Úfind_or_start_operationri   Ú_account_homer„   r…   ÚstartedÚtools.connectors.contractr·   r‰   rƒ   r•   r—   rq   Ú_operation_viewÚwait_for_preparerº   r%   r*   r3   Ú
ValueErrorr[   )
r"   r`   r_   rµ   r{   rs   Ústartrˆ   r�   r·   s
   &&       @r   Ú_account_connector_connectrÆ   Ï   s�  ø€ Ý(Ý5ÝBØ#×-×-Ð-‰[°9€FðFØ×/Ñ/Ø×Ñ v¼MÈ'Ó<RÐZa×ZgÑZgØ×+Ñ+°|ð 0ó Eˆð �}�}ˆ}Ý=à@G×@RÒ@RÓSÑ@R¸—‘×-Ñ-¨dÖ3Ñ@RˆGÐSß‹sÔcÑ[bÓc�s�sŠsÔcÑ[bÓc×cÒcÜ §_¡_°|ÀW×EWÑEWÐ6XÐdpÔqÐqÜ�sÐ0´ÀÇÁÓ1QÓRÓSÐSØ×'Ñ'¨×.Ò.Ü�sÐ0´ÀÇÁÓ1QÓRÓSÐSØ�<�<ˆ<Ü'¨ÐI¬i«k×.HÑ.HÓIÐIÜ�3Ð,¬_¸U¿_¹_Ó-MÓNÓOÐOùò Tøô ô FÜ# CÐE¬)«+×*DÑ*DÓEÒEðFúsT   «A$G Â#GÂ2!G ÃG Ã4#G Ä#G Ä<G Å#G Å7G Æ	G Æ(#G ÇG Ç*G>Ç=G>c           	      óž  € ^ RI HpHpHp VR8X  d   TMTp\	        WV4      w  rxp	V	'       d   V	# VP
                  P                  R8X  d¤   \        V4      ;_uu_ 4        \        V 4      ;p
'       d$   VR8X  d   \        V RRR. /4      MT
uuRRR4       # \        V,          '       d    \        V 4      ;p'       d   VuuRRR4       # VR8X  d   \        V 4      M
\        W4      uuRRR4       # \        P                  V4      p VP!                  R4      p\#        RT;'       g    \%        \&        4      /4      ;_uu_ 4        \)        VR	,          \+        V4      VP
                  P,                  R
7      p \/        WW‚4      p\1        V4        RRR4       \3        VP
                  P,                  W�4      '       g.   \5        V RVP6                  R4      \        P9                  V4       # X\        P9                  V4       #   + '       g   i     EL"; i  \1        T4       i ; i  + '       g   i     Lž; i  \        P9                  T4       i ; i)r   )rB   ÚConnectorsConnectParamsÚConnectorsListParamsrg   r_   rh   Fri   Nr   r   )ÚcwdÚui_session_idrC   r|   )rD   rB   rÈ   rÉ   rb   r   r   Ú_account_scoperO   rq   Ú_ACCOUNT_CREATES_GUESTrU   r³   rÆ   Ú_current_runtime_session_recordr   r   Ú_session_profile_runtime_scoper   Ú_hermes_homeÚ_set_session_contextÚ_session_cwdr   r¢   Ú_clear_session_contextr?   r%   rE   Úreset)r"   r   rs   rB   rÈ   rÉ   r\   r`   r   ra   ÚclosedrT   Úruntime_tokenr   ÚtokensÚresults   &&&             r   Ú_connector_rpcrÙ   è   sç  € ßtÑtà$*¨hÔ$6Ñ Ð<S€EÜ/°¸UÓCÑ€G�eßØˆØ‡}�}×Ñ˜YÔ&Ü˜G×$Õ$Ü-¨cÓ2Ð2ˆvÖ2ØKQÐU]ÔK]”s˜3 ¨e°\À2Ð FÔGÐci÷ %Ò$ô & f×-Ô-ÔBYÐZ]ÓB^Ð3^°;Ö3^Ø"÷	 %Ò$ð
 4:¸XÔ3EÔ*¨3Ô/ÔKeÐfiÓKs÷ %Ò$ô 4×7Ñ7¸Ó@€Mð=Ø—{‘{ >Ó2ˆÜ+¨^¸\×=^Ð=^ÌSÔQ]ÓM^Ð,_×`Õ`Ü)¨'°-Õ*@ÄlÐSZÓF[Ðkr×kxÑkx÷  lDñ  lDô  EˆFð/Ü/°¸gÓN�ä& vÕ.÷ aô (¨¯©×(@Ñ(@À'×XÒXÜ'¨¨TÐ3G×3QÑ3QÐSnÓoô 	(×-Ñ-¨mÕ<ð ä'×-Ñ-¨mÕ<÷) %×$Ð$ûô ' vÕ.ú÷ a×`ûô 	(×-Ñ-¨mÕ<úsg   Á,G>ÂG>Â'G>ÃG>ÄH5 Ä#H5 Å 3H"Å4HÆ H"ÆAH5 Ç'H5 Ç>H	ÈHÈH"È"H2	È-H5 È5Ir¶   c                ó®   € ^ RI Hp ^ RIHp ^ RIHp V! WR,          VR7      pWv9   d   \        V .Wg,          O5!  # \        W! \        V4      4      4      # )r   )Úreissuerz   )ÚREISSUE_REFUSALSri   r½   )	Útools.connectors.runrÛ   r“   r{   r-   rÜ   r%   rq   rÂ   )r"   r‰   r    r¶   rÛ   r{   rÜ   r   s   &&&$    r   r—   r—     sN   € Ý,ÝBÝ?á�Y \Õ 2¸iÔH€FØÔ!Ü# CÐCÐ*:Õ*BÓCÐCÜˆsÐ(¬¸Ó)CÓDÓEÐEr   c                 ó&   € ^ RI Hp \        WV4      # )r   )ÚConnectionOperationParams)Ú*tui_gateway.contracts.connectors_operationrß   rb   )r"   r   rß   s   && r   Ú_operation_paramsrá     s   € ÝTä˜SÐ*CÓDÐDr   c                 ó   € \        WR 4      # )rg   ©rÙ   ©r"   r   s   &&r   r   r     s   € ô ˜# xÓ0Ð0r   c                 ó   € \        WR 4      # )r}   rã   rä   s   &&r   r   r     s   € ô ˜# yÓ1Ð1r   c                 óV   € \        V P                  4      pV'       d   \        V4      # R # r‚   )Ú_profile_homeÚprofiler   )r`   Úhomes   & r   r¿   r¿   $  s!   € Ü˜Ÿ™Ó)€DßŒ3ˆt‹9Ð& $Ð&r   c               #  ó€   "  € ^ RI Hp  V ! R\        4       RR7      p Rx € \        V4       R#   \        T4       i ; i5i)a  Bind the session vars of a sessionless request from the desktop Connectors page. Only that
page sends account-owned and account RPCs, so the surface comes from the request: the backend's
``HERMES_DESKTOP`` is absent on a URL or cloud backend and would name the caller ``tui``.)Úset_session_varsÚdesktopr   )Úsourcerè   Úcron_sessionN)Úgateway.session_contextrë   Ú_current_profile_namerÓ   )rë   r×   s     r   Ú_desktop_page_varsrñ   )  s6   é € õ
 9á YÔ8MÓ8OÐ^`Ôa€Fð'Ûä˜vÖ&øÔ˜vÕ&üs   ‚>�. ¡>®;»>c           	   #   óè   "  € \        R \        V 4      /4      ;_uu_ 4        \        4       ;_uu_ 4        Rx € RRR4       RRR4       R#   + '       g   i     L; i  + '       g   i     R# ; i5i)r   N)rÏ   r¿   rñ   )r`   s   &r   rÌ   rÌ   7  sC   é € ä	'¨¼ÀwÓ9OÐ(P×	QÕ	QÔSe×SgÕSgÛ÷ Th×	QÑ	Q×Sg×Sgú×	Q×	QÐ	Qüs2   ‚A2¡A´A	¹AÁ
A2ÁAÁAÁA/	Á)	A2c                 óì  € ^ RI Hp VP                  P                  R8X  d6   VP	                  VR,          VP
                  VP	                  R4      R7      pMc\        V4      ;_uu_ 4        \        V 4      ;p'       d   RV3uuRRR4       # VP                  VP
                  \        V4      R7      pRRR4       Xf"   R\        V .\        4       P                  O5!  3# VR3#   + '       g   i     L9; i)r   rx   r   r   r   r€   N)rM   ry   r   r   r   Úop_idrÌ   rO   Úget_by_op_idr¿   r%   r*   ÚUNKNOWN_OPERATION)r"   r`   r   ry   r‰   rÕ   s   &&&   r   Ú_operation_for_requestr÷   =  sÊ   € Ý%Ø‡}�}×Ñ˜YÔ&Ø—H‘H˜W ]Õ3°W·]±]ÐQX×Q\ÑQ\Ð]kÓQl�HÓm‰	ä˜G×$Õ$Ü-¨cÓ2Ð2ˆvÖ2Ø˜V�|÷ %Ò$ð ×)Ñ)¨'¯-©-ÄmÐT[ÓF\Ð)Ó]ˆI÷ %ð ÒØÔ)¨#ÐN´	³×0MÑ0MÓNÐNÐNØ�dˆ?Ð÷ %×$ús   Á*C#Â&C#Ã#C3	zconnectors.operation.statusc                 ó¢   € ^ RI Hp \        W4      w  r4pV'       d   V# \        WV4      w  reT;'       g    \	        W! \        V4      4      4      # )r   rz   )r“   r{   rá   r÷   rq   rÂ   )r"   r   r{   r`   r   ra   r‰   s   &&     r   r   r   K  sN   € õ Cä/°Ó<Ñ€G�eßØˆÜ-¨c¸GÓDÑ€IØ×NÐN”C˜Ð1´/À)Ó2LÓMÓNÐNr   zconnectors.operation.wakec                 ó²   € \        W4      w  r#pV'       d   V# \        WV4      w  rTV'       d   V# VP                  P                  4        \	        V R R/4      # )rg   Úok)rá   r÷   Úwaker   rq   )r"   r   r`   r   ra   r‰   s   &&    r   r   r   W  sT   € ô 0°Ó<Ñ€G�eßØˆÜ-¨c¸GÓDÑ€IßØˆØ‡N�N×ÑÔÜˆs�X˜tÐ$Ó%Ð%r   c                 óÜ  € ^ RI Hp ^ RIHp ^ RIHp VP                  4        UUu/ uF  w  rVVR8w  g   K  WVbK  	  ppp\        W4      w  r‰p
V
'       d   V
#  VP                  VP                  R4      4      p\        YT	4      w  rÊT
'       d   T
# TP                  P                  R8X  d+   \        T4      ;_uu_ 4        \        YT4      uuRRR4       # \!        RT	P                  R4      ;'       g    \#        \$        4      /4      ;_uu_ 4        \        YT4      uuRRR4       # u uppi   T d    \        T .TO5!  u # i ; i  + '       g   i     L‚; i  + '       g   i     R# ; i)r   rW   ©ÚINVALID_ANSWER)ÚConnectionAnswerrØ   r_   Nr   )rY   rX   r-   rþ   rà   rÿ   Úitemsrá   rZ   r   r%   r÷   r   r   rÌ   Ú_apply_connection_answerrÏ   r   rÐ   )r"   r   rX   rþ   rÿ   ÚkeyÚvalueÚenveloper`   r   ra   Úanswerr‰   s   &&           r   r   r   d  s%  € õ )å=ÝKà-3¯\©\¬^ÔO©^™z˜s¸sÀh¹”
�’
©^€HÑOÜ/°Ó>Ñ€G�eßØˆð:Ø!×0Ñ0°·±¸HÓ1EÓFˆô .¨c¸GÓDÑ€IßØˆØ‡}�}×Ñ˜YÔ&Ü˜G×$Õ$Ü+¨C¸ÓC÷ %Ò$ä	'¨¸¿¹À^Ó9T×9iÐ9iÔX[Ô\hÓXiÐ(j×	kÕ	kÜ'¨°YÓ?÷ 
lÒ	kùó Pøð ô :Ü# CÐ9¨.Ó9Ò9ð:ú÷ %×$úç	k×	kÐ	kús4   ¦D'¶D'Á D- Â>EÄEÄ-EÅEÅE	ÅE+	c                 ó¬   € ^ RI Hp ^ RIHp ^ RIHp  V! W!P                  RR7      4      p\        T RRRT/4      #   T d    \        T .TO5!  u # i ; i)	r   )ÚIllegalTransition)Úrespondrý   T)Úexclude_nonerg   rú   Úsettled)	Útools.connectors.operationr  rÝ   r  r-   rþ   Úmodel_dump_jsonr%   rq   )r"   r  r‰   r  r  rþ   r
  s   &&&    r   r  r  ~  sa   € Ý<Ý,Ý=ð:Ù˜)×%;Ñ%;ÈÐ%;Ó%NÓOˆô ˆs�X˜t Y°Ð8Ó9Ð9øð ô :Ü# CÐ9¨.Ó9Ò9ð:ús   ”< ¼AÁAc                 ó4   € / V CR V P                  R4      RJ/C# )r
  Ú
settled_atN)r   )Úsnapshots   &r   Ú_snapshot_viewr  Š  s"   € ØJˆhÐJ˜	 8§<¡<°Ó#=ÀTÐ#IÑJÐJr   c                 ó4   € \        V P                  4       4      # r‚   )r  r  ©r‰   s   &r   rÂ   rÂ   Ž  s   € Ü˜)×,Ñ,Ó.Ó/Ð/r   c                 ó¾  a a
a€ ^ RI Ho
Ho ^ RIHp ^ RIHp \        V4      pV'       d   VP                  V4       S P                  P                  R4      '       dm   VR,           UUUu. uF0  pVP                  4        UUu/ uF  w  rxVR9  g   K  WxbK  	  uppNK2  	  upppVR&   RR/VR&   VP                  R	V! V4      4       R
# VP                  ;_uu_ 4        \        V
VV 3R lVP                  P                  4        4       R
4      p	R
R
R
4       X	e$   RRRV	/VR&   VP!                  R	W”! V4      4       R
# R
# u uppi u upppi   + '       g   i     LF; i)r   )Úget_process_hermes_homeÚhermes_home_key©Úserverrz   zaccount:r�   r   r_   r   zconnection.updateNc              3   óÞ   <"  € T Fb  w  rVP                  R 4      SP                  8X  g   K'  S! VP                  R4      ;'       g    S! 4       4      SP                  8X  g   K^  Vx € Kd  	  R# 5i)r   r   N)r   r   Úprofile_key)r‡   r   r   r  r  r‰   s   &  €€€r   rŠ   Ú%_connection_update.<locals>.<genexpr>¤  sc   øé € ð á$<‘L�CØ—;‘;˜}Ó-°×1FÑ1FÑFô ñ $ G§K¡K°Ó$?×$\Ð$\ÑCZÓC\Ó]Ðaj×avÑavÑv÷ ’Û$<ùs   ƒ$A-¬A-ÁA-Á#
A-r   r   )Úconnect_urlr…   )Úhermes_constantsr  r  r)   r  r“   r{   r  Úupdater   Ú
startswithr   Ú_broadcast_global_eventÚ_sessions_lockÚnextÚ	_sessionsÚ_emit)r‰   Úchanger  r  r{   Úpayloadrƒ   r  r  r   r  r  s   f&&       @@r   Ú_connection_updater&  ’  s:  ú€ ßIÝ"ÝBä˜XÓ&€GßØ�‰�vÔØ×Ñ×'Ñ'¨
×3Ò3ð " )Ö,õ
á,�ð +1¯,©,¬.Ôh©.™J˜C¸CÐGgÑ<gŒZˆSŠZ©.ÕhÙ,ó
ˆ�	Ñð # IÐ.ˆ�ÑØ×&Ñ&Ð':Ñ<PÐQXÓ<YÔZÙØ	×	×	Ó	Üöà$*×$4Ñ$4×$:Ñ$:Ô$<óð ó
ˆ÷ 
ð ‚Ø" I¨|¸SÐAˆ�ÑØ�‰Ð(¨#Ð/CÀGÓ/LÖMñ ùó! iùô
÷ 
×	ús*   Á*EÂD?ÂD?ÂEÃ1EÄ?EÅE	c                  ó®   € ^ RI Hp  \        V P                  RR4      '       d   R# RV P                  n        \        \        4      V P                  n        R# )r   r  Ú_update_hook_installedFNT)rM   r‰   r™   ÚConnectionOperationr(  Ústaticmethodr&  Ú	on_change)Ú	op_modules    r   Ú_install_update_hookr-  ±  s@   € Ý7äˆy×,Ñ,Ð.FÈ×NÒNÙØ;?€I×!Ñ!Ô8Ü.:Ô;MÓ.N€I×!Ñ!Ö+r   c                 ó~   € \        \        4       V RR7       V P                  \        ,          V n        \	        4        R# )r   )ÚskipN)r   )r   ÚglobalsÚ_LONG_HANDLERSÚ_CONNECTOR_RPC_METHODSr-  r  s   &r   Úregisterr3  º  s*   € Ü”“	˜6¨Õ/Ø"×1Ñ1Ô4JÕJ€FÔÜÖr   c                óx   € V ^8„  d   Qh/ ^ \         9   d&   \        P                  \        R,          ,          ;R&   # )é   Nr   )Ú__conditional_annotations__ÚcontextvarsÚ
ContextVarÚtuple)Úformats   "r   Ú__annotate__r;     s*   € × Ñ ÷ {Ò z”{×-Ñ-¬e°d­lÕ;Ñ zò r   >   r   r   r   )-r6  Ú
contextlibr7  Ú
method_ctxr   r   Ú	_registryÚmethodÚ	frozensetr2  r8  r   r   r%   r*   r/   r;   r?   rI   rO   rU   r]   rb   rv   r¢   rŸ   rÍ   r³   rÆ   rÙ   r—   rá   r   r¿   Úcontextmanagerrñ   rÌ   r÷   r  r  rÂ   r&  r-  r3  r;  )r6  s   @r   Ú<module>rB     s×  øðß Ð Û ç 4áÓ€	Ø	×	Ñ	€Ù"Ò#bÓcÐ Ø>I×>TÒ>TÐUkÐuyÔ>zÐ Ó zògò=òò9òò"jò
ò$yòòLò#ò#ò 20òjð # E¨9°dÐ;Ð òNòFò2=ð>F°ô FòEñ ÐÓØñ1ó ó ð1ñ ÐÓØñ2ó ó ð2ò'ð
 ×Ññ
'ó ð
'ð ×Ññó ðò
ñ Ð%Ó&ØñOó ó 'ðOñ Ð#Ó$Øñ&ó ó %ð&ñ ÐÓØñ@ó ó ð@ò0	:òKò0òNò>Oôr   