+
    kHàj¾  ã                  óv   € R t ^ RIHt ^ RIt^ RIt^ RIHtHtHt ^RI	H
t
 R R ltR R ltR	 R
 ltR R ltR# )uE   QQBot shared utilities â€” User-Agent, HTTP helpers, config coercion.)ÚannotationsN)ÚAnyÚDictÚList)ÚQQBOT_VERSIONc               ó   € V ^8„  d   QhRR/# ©é   ÚreturnÚstr© )Úformats   "ÚB/home/ubuntu/.hermes/hermes-agent/plugins/platforms/qqbot/utils.pyÚ__annotate__r      s   € ÷ ñ ˜Sñ ó    c                 óD   €  ^ RI Hp  V ! R4      #   \         d     R# i ; i)zAReturn the hermes-agent package version, or 'dev' if unavailable.©Úversionzhermes-agentÚdev)Úimportlib.metadatar   Ú	Exceptionr   s    r   Ú_get_hermes_versionr      s'   € ðÝ.Ù�~Ó&Ð&øÜô Úðús   ‚ �žc               ó   € V ^8„  d   QhRR/# r   r   )r   s   "r   r   r      s   € ÷ Mñ M˜#ñ Mr   c                 óâ   € \         P                  p R\         RV P                   RV P                   RV P
                   R\        P                  ! 4       P                  4        R\        4        R2# )zV``QQBotAdapter/<qqbot_version> (Python/<py_version>; <os>; Hermes/<hermes_version>)``.zQQBotAdapter/z	 (Python/Ú.z; z	; Hermes/Ú))
ÚsysÚversion_infor   ÚmajorÚminorÚmicroÚplatformÚsystemÚlowerr   )Úvs    r   Úbuild_user_agentr%      sd   € ä×Ñ€AØœM˜?¨)°A·G±G°9¸A¸a¿g¹g¸YÀaÈÏÉÀyÐPRÜ�ŠÓ ×&Ñ&Ó(Ð)¨Ô3FÓ3HÐ2IÈðLð Mr   c               ó   € V ^8„  d   QhRR/# )r	   r
   zdict[str, str]r   )r   s   "r   r   r      s   € ÷ pñ p˜ñ pr   c                 ó"   € RRRRR\        4       /# )u–   Standard QQBot API headers. ``q.qq.com`` requires ``Accept: application/json``
â€” without it the server returns a JavaScript anti-bot challenge page.zContent-Typezapplication/jsonÚAcceptz
User-Agent)r%   r   r   r   Úget_api_headersr)      s   € ð Ð.°Ð:LÈlÔ\lÓ\nÐoÐor   c               ó    € V ^8„  d   QhRRRR/# )r	   Úvaluer   r
   z	list[str]r   )r   s   "r   r   r   "   s   € ÷ Cñ C�sð C˜yñ Cr   c                óö   € V f   . # \        V \        4      '       d   V P                  R4      M%\        V \        \        \
        34      '       d   T MV .pR V 4        Uu. uF  q"'       g   K  VNK  	  up# u upi )zYCoerce a comma-separated string / list / tuple / set / scalar into a trimmed string list.Ú,c              3  óT   "  € T F  p\        V4      P                  4       x € K   	  R # 5i)N)r   Ústrip)Ú.0Úitems   & r   Ú	<genexpr>Úcoerce_list.<locals>.<genexpr>'   s   é € Ð<±e¨dœ˜D›	Ÿ™×)Ð)³eùs   ‚&()Ú
isinstancer   ÚsplitÚlistÚtupleÚset)r+   ÚitemsÚss   &  r   Úcoerce_listr;   "   sh   € à‚}Øˆ	Ü *¨5´#× 6Ò 6ˆE�K‰K˜ÔÄZÐPUÔX\Ô^cÔehÐWi×EjÒEj¹EÐqvÐpw€EÙ<±eÔ<ÓBÑ<�!Ã�AˆAÑ<ÑBÐBùÒBs   Á	A6Á-A6)Ú__doc__Ú
__future__r   r!   r   Útypingr   r   r   Ú	constantsr   r   r%   r)   r;   r   r   r   Ú<module>r@      s1   ðÙ Kå "ã Û 
ß "Ñ "å $õõMõp÷Cr   