+
    ÂHàjï  ã                  óX  € ^ RI Ht ^ RIt^ RIt^ RIHtHt ^ RIHt ^ RI	H
t
HtHt ^ RIHt ^ RIHt ^RIHt R	R
.t]]
.]]
R,          ,          3,          t]]]]]
3,          .]]
,          3,          t]! R]R7      tR R ltR R lt]! RR7       ! R R
4      4       t ! R R	4      tR# )é    )ÚannotationsN)Ú	AwaitableÚCallable)Ú	dataclass)ÚAnyÚLiteralÚTypeVar)Ú	BaseModel)Úto_camel_case)ÚRequestErrorÚMessageRouterÚRouteÚHandlerT)Úboundc               ó$   € V ^8„  d   QhRRRRRR/# )é   Úobjr   ÚattrÚstrÚreturnÚNone© )Úformats   "ÚŒ/home/ubuntu/.hermes/installs/5f0a1ff4045d044e/environments/50f6b671e3f94b538e344231dfcb664f/venv/lib/python3.14/site-packages/acp/router.pyÚ__annotate__r      s!   € ÷ ñ ˜cð ¨ð °ñ ó    c                ót   € \         P                  ! R \        V 4      P                   RV R2\        ^R7       R# )zThe old style method Ú.z6 is deprecated, please update to the snake-cased form.©Ú
stacklevelN)ÚwarningsÚwarnÚtypeÚ__name__ÚDeprecationWarning)r   r   s   &&r   Ú_warn_legacy_handlerr&      s2   € Ü‡M‚MØ
¤ S£	× 2Ñ 2Ð3°1°T°FÐ:pÐqÜØ÷r   c               ó$   € V ^8„  d   QhRRRRRR/# )r   r   r   r   r   r   z%tuple[AsyncHandler | None, str, bool]r   )r   s   "r   r   r      s"   € ÷ "ñ "˜#ð " Sð "Ð-Rñ "r   c                ó„  € R p\        WR4      pVf"   RV9   d   \        V4      p\        WR4      pRpMq\        V4      '       da   RV9  dZ   Tp\        VR4      '       d   VP                  p\
        P                  ! V4      P                  p\        V4      ^8X  d
   RV9   d   RpVe   \        V4      '       g   RW3# W1V3# )FNÚ_TÚ__func__Úparams)	Úgetattrr   ÚcallableÚhasattrr*   ÚinspectÚ	signatureÚ
parametersÚlen)r   r   Ú
legacy_apiÚfuncÚoriginal_funcr1   s   &&    r   Ú_resolve_handlerr6      s´   € Ø€JÜ�3˜dÓ#€DØ‚|˜˜tœÜ˜TÓ"ˆÜ�s $Ó'ˆØ‰
Ü	�$�Š˜C tœOØˆÜ�4˜×$Ò$Ø ŸM™MˆMÜ×&Ò& }Ó5×@Ñ@ˆ
Üˆz‹?˜aÔ H°
Ô$:ØˆJà‚|œ8 DŸ>š>Ø�TÐ%Ð%Ø�zÐ!Ð!r   T)Úslotsc                  óz   € ] tR t^3t$ R]R&   R]R&   R]R&   RtR]R	&   R
tR]R&   R
tR]R&   RtR]R&   R R lt	Rt
R
# )r   r   ÚmethodúAsyncHandler | Noner4   z"Literal['request', 'notification']ÚkindFÚboolÚoptionalNr   Údefault_resultú"Callable[[Any | None], Any] | NoneÚadapt_resultÚwarn_unstablec               ó    € V ^8„  d   QhRRRR/# ©r   r+   r   r   r   )r   s   "r   r   ÚRoute.__annotate__=   s   € ÷ ñ  3ð ¨3ñ r   c              ƒ  	óö  "  € V P                   f?   V P                  '       d   V P                  # \        P                  ! V P
                  4      hV P                  '       dL   \        P                  ! RV P
                   R2\        ^R7       \        P                  ! V P
                  4      hV P                  V4      G R j  x€L
 pV P                  e#   V P                  R8X  d   V P                  V4      # V#  L65i)NzThe method zX is part of the unstable protocol, please enable `use_unstable_protocol` flag to use it.r   Úrequest)r4   r=   r>   r   Úmethod_not_foundr9   rA   r!   r"   ÚUserWarningr@   r;   )Úselfr+   Úresults   && r   ÚhandleÚRoute.handle=   sÈ   é € Ø�9‰9ÒØ�}�}ˆ}Ø×*Ñ*Ð*Ü×/Ò/°·±Ó<Ð<Ø××ÐÜ�MŠMØ˜dŸk™k˜]ð  +Cð  DÜØõô
 ×/Ò/°·±Ó<Ð<Ø—y‘y Ó(×(ˆØ×ÑÒ(¨T¯Y©Y¸)Ô-CØ×$Ñ$ VÓ,Ð,Øˆñ )ùs   ‚ C9£=C9Á!AC9Ã C7Ã7C9r   )r$   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__annotations__r=   r>   r@   rA   rK   Ú__static_attributes__r   r   r   r   r   3   sF   ‡ àƒKØ
ÓØ
,Ó,Ø€HˆdÓØ€N�CÓØ7;€LÐ4Ó;Ø€M�4Ó÷ñ r   c                  ó‚   € ] tR t^OtRR R lltR R ltR R ltRR R	 lltRR
 R lltR R lt	R R lt
R R ltRtR# )r   c               ó    € V ^8„  d   QhRRRR/# )r   Úuse_unstable_protocolr<   r   r   r   )r   s   "r   r   ÚMessageRouter.__annotate__P   s   € ÷ <ñ <¨dð <¸tñ <r   c                	óJ   € / V n         / V n        R V n        R V n        Wn        R # )N)Ú	_requestsÚ_notificationsÚ_request_extensionsÚ_notification_extensionsÚ_use_unstable_protocol)rI   rT   s   &&r   Ú__init__ÚMessageRouter.__init__P   s'   € Ø+-ˆŒØ02ˆÔØ:>ˆÔ Ø?CˆÔ%Ø&;Ö#r   c               ó    € V ^8„  d   QhRRRR/# )r   Úrouter   r   r   r   )r   s   "r   r   rU   W   s   € ÷ 6ñ 6˜uð 6¨ñ 6r   c                	óŒ   € VP                   R 8X  d   WP                  VP                  &   R# WP                  VP                  &   R# )rF   N)r;   rW   r9   rX   )rI   r_   s   &&r   Ú	add_routeÚMessageRouter.add_routeW   s0   € Ø�:‰:˜Ô"Ø+0�N‰N˜5Ÿ<™<Ó(à05×Ñ §¡Ó-r   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r   Úmodelútype[BaseModel]r   r   r   r   r   r:   r   )r   s   "r   r   rU   ]   s)   € ÷ ñ  ð °cð Àð ÐI\ñ r   c                	óV   aaaaa€ \        SS4      w  oooSf   R # R VVVVV3R llpV# )Nc               ó    € V ^8„  d   QhRRRR/# rC   r   )r   s   "r   r   Ú.MessageRouter._make_func.<locals>.__annotate__b   s   € ÷ 		(ñ 		( #ð 		(¨#ñ 		(r   c              “  ó^  <"  € S'       d   \        SS4       SP                  V 4      pS'       d   S! V4      G R j  x€L
 # SP                   Uu/ uF  q"R8w  g   K  V\        W4      bK  	  p p\        VRR 4      ;p'       d   V P	                  V4       S! R/ V B G R j  x€L
 #  Lgu upi  L5i)NÚ
field_metar   )r&   Úmodel_validateÚmodel_fieldsr,   Úupdate)	r+   Ú	model_objÚkÚmetar   r4   r3   rd   r   s	   &   €€€€€r   ÚwrapperÚ)MessageRouter._make_func.<locals>.wrapperb   sž   øé € ßÜ$ S¨$Ô/Ø×,Ñ,¨VÓ4ˆIßÙ! )›_×,Ð,Ø8=×8JÒ8JÓ`Ñ8J°1ÐS_ÑN_Ô.�aœ Ó.Ò.Ñ8JˆFÐ`Ü˜y¨,¸Ó=Ð=ˆtÖ=Ø—‘˜dÔ#Ù™ ™×'Ð'ñ	 -ùÚ`ñ (ùs8   ƒ-B-±B-¼B$½B-ÁB&ÁB&Á,3B-ÂB+Â B-Â&B-)r6   )rI   rd   r   r   rq   r4   r3   s   &fff @@r   Ú
_make_funcÚMessageRouter._make_func]   s/   ü€ Ü!1°#°tÓ!<Ñˆˆd�JØŠ<Ù÷		(ô 		(ð ˆr   Nc               ó<   € V ^8„  d   QhRRRRRRRRRR	R
RRRRR	RR/	# )r   r9   r   rd   re   r   r   r   r=   r<   r>   r@   r?   Úunstabler   r   r   )r   s   "r   r   rU   o   sd   € ÷ ñ àðð ðð ð	ð
 ðð ðð ðð 9ðð ðð 
ñr   c	           
     óž   € \        TV P                  W#V4      RTTTT;'       d    V P                  '       * R7      p	V P                  V	4       V	# )z5Register a request route with obj and attribute name.rF   )r9   r4   r;   r=   r>   r@   rA   ©r   rs   r[   ra   )
rI   r9   rd   r   r   r=   r>   r@   rv   r_   s
   &&&&&&&&& r   Úroute_requestÚMessageRouter.route_requesto   sR   € ô ØØ—‘ ¨TÓ2ØØØ)Ø%Ø"×FÐF¨4×+FÑ+FÔ'Fô
ˆð 	�‰�uÔØˆr   c               ó4   € V ^8„  d   QhRRRRRRRRRR	R
R	RR/# )r   r9   r   rd   re   r   r   r   r=   r<   rv   r   r   r   )r   s   "r   r   rU   ‡   sP   € ÷ ñ àðð ðð ð	ð
 ðð ðð ðð 
ñr   c                óš   € \        TV P                  W#V4      RTT;'       d    V P                  '       * R7      pV P                  V4       V# )z:Register a notification route with obj and attribute name.Únotification)r9   r4   r;   r=   rA   rx   )rI   r9   rd   r   r   r=   rv   r_   s   &&&&&&& r   Úroute_notificationÚ MessageRouter.route_notification‡   sL   € ô ØØ—‘ ¨TÓ2ØØØ"×FÐF¨4×+FÑ+FÔ'Fô
ˆð 	�‰�uÔØˆr   c               ó    € V ^8„  d   QhRRRR/# ©r   Úhandlerr   r   r   )r   s   "r   r   rU   ›   s   € ÷ ñ °ð ¸Xñ r   c                ó   € Wn         V# )z*Register a handler for extension requests.)rY   ©rI   r‚   s   &&r   Úhandle_extension_requestÚ&MessageRouter.handle_extension_request›   s   € à#*Ô Øˆr   c               ó    € V ^8„  d   QhRRRR/# r�   r   )r   s   "r   r   rU       s   € ÷ ñ °Xð À(ñ r   c                ó   € Wn         V# )z/Register a handler for extension notifications.)rZ   r„   s   &&r   Úhandle_extension_notificationÚ+MessageRouter.handle_extension_notification    s   € à(/Ô%Øˆr   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r   r9   r   r+   z
Any | NoneÚis_notificationr<   r   r   r   )r   s   "r   r   rU   ¥   s)   € ÷ *ñ * Sð *°*ð *Ètð *ÐX[ñ *r   c              ƒ  óþ  "  € V'       d   V P                   pV P                  pMV P                  pV P                  p\	        V\
        4      '       dd   VP                  R4      '       dM   Vf   \        P                  ! V4      h\	        V\        4      '       d   TM/ pV! VR,          V4      G Rj  x€L
 # VP                  V4      pVf   \        P                  ! V4      hVP                  V4      G Rj  x€L
 #  LH L5i)z9The main router call to handle a request or notification.r)   N:é   NN)rZ   rX   rY   rW   Ú
isinstancer   Ú
startswithr   rG   ÚdictÚgetrK   )rI   r9   r+   rŒ   Úext_handlerÚroutesÚpayloadr_   s   &&&&    r   Ú__call__ÚMessageRouter.__call__¥   sÍ   é € çØ×7Ñ7ˆKØ×(Ñ(‰Fà×2Ñ2ˆKØ—^‘^ˆFä�fœc×"Ò" v×'8Ñ'8¸×'=Ò'=ØÒ"Ü"×3Ò3°FÓ;Ð;Ü *¨6´4× 8Ò 8‘f¸bˆGÙ$ V¨B¥Z°Ó9×9Ð9à—
‘
˜6Ó"ˆØŠ=Ü×/Ò/°Ó7Ð7à—\‘\ &Ó)×)Ð)ñ :ñ *ùs,   ‚A&C=Á)AC=Â0C9Â1AC=Ã4C;Ã5C=Ã;C=)rZ   rX   rY   rW   r[   )F)FNNF)FF)r$   rM   rN   rO   r\   ra   rs   ry   r~   r…   r‰   r–   rQ   r   r   r   r   r   O   s/   † ÷<õ6õ÷$÷0õ(õ
÷
*ñ *r   )Ú
__future__r   r/   r!   Úcollections.abcr   r   Údataclassesr   Útypingr   r   r	   Úpydanticr
   Ú	acp.utilsr   Ú
exceptionsr   Ú__all__ÚAsyncHandlerr   r‘   ÚRequestHandlerr   r&   r6   r   r   r   r   r   Ú<module>r¢      s©   ðÝ "ã Û ß /Ý !ß (Ñ (å å #å $à˜GÐ
$€ð ˜˜˜y¨¨t­Õ4Ð4Õ5€Ø˜3  S¨# X¥Ð/°¸3µÐ?Õ@€Ù�: ^Ô4€õõ"ñ( �Ô÷ð ó ð÷6i*ó i*r   