+
    ÖÇÜh0  ã                   óŽ   € ^ RI t ^ RIt/ RRbRRbRRbRRbR	R
bRRbRRbRRbRRbRRbRRbRRbRRbRRbRRbRRbt ! R R4      tR# )é    Nzi amzyou arezi waszyou wereÚiÚyouzi'mzi'dz	you wouldzi'vezyou havezi'llzyou willÚmyÚyourzI amzI waszyou'vezI havezyou'llzI willÚyoursÚmineÚmec                   óN   a € ] tR t^"t o / 3R ltR tR tR tR tR	R lt	Rt
V tR# )
ÚChatc                óÈ   € V UUu. uF,  w  r4\         P                  ! V\         P                  4      V3NK.  	  uppV n        W n        V P                  4       V n        R# u uppi )ac  
Initialize the chatbot.  Pairs is a list of patterns and responses.  Each
pattern is a regular expression matching the user's statement or question,
e.g. r'I like (.*)'.  For each such pattern a list of possible responses
is given, e.g. ['Why do you like %1', 'Did you ever dislike %1'].  Material
which is matched by parenthesized sections of the patterns (e.g. .*) is mapped to
the numbered positions in the responses, e.g. %1.

:type pairs: list of tuple
:param pairs: The patterns and responses
:type reflections: dict
:param reflections: A mapping between first and second person expressions
:rtype: None
N)ÚreÚcompileÚ
IGNORECASEÚ_pairsÚ_reflectionsÚ_compile_reflectionsÚ_regex)ÚselfÚpairsÚreflectionsÚxÚys   &&&  Ú0/usr/lib/python3/dist-packages/nltk/chat/util.pyÚ__init__ÚChat.__init__#   sN   € ñ  HMÔMÁu¹V¸aœŸ
š
 1¤b§m¡mÓ4°aÓ8ÁuÒMˆŒØ'ÔØ×/Ñ/Ó1ˆŽùó Ns   †2Ac           
     óð   € \        V P                  \        R R7      p\        P                  ! RP                  RP                  \        \        P                  V4      4      4      \        P                  4      # )T)ÚkeyÚreversez\b({})\bÚ|)
Úsortedr   Úlenr   r   ÚformatÚjoinÚmapÚescaper   )r   Úsorted_refls   & r   r   ÚChat._compile_reflections7   sO   € Ü˜T×.Ñ.´CÀÔFˆÜ�zŠzØ×Ñ˜sŸx™x¬¬B¯I©I°{Ó(CÓDÓEÄrÇ}Á}ó
ð 	
ó    c                ó`   a € S P                   P                  V 3R lVP                  4       4      # )z¡
Substitute words in the string, according to the specified reflections,
e.g. "I'm" -> "you are"

:type str: str
:param str: The string to be mapped
:rtype: str
c                 ó|   <€ SP                   V P                  V P                  4       V P                  4        ,          # )N)r   ÚstringÚstartÚend)Úmor   s   &€r   Ú<lambda>Ú"Chat._substitute.<locals>.<lambda>H   s'   ø€ �t×(Ñ(¨¯©°2·8±8³:ÀÇÁÃÐ)IÖJr(   )r   ÚsubÚlower)r   Ústrs   f&r   Ú_substituteÚChat._substitute=   s%   ø€ ð �{‰{�‰ÜJÈCÏIÉIËKó
ð 	
r(   c                ó  € VP                  R 4      pV^ 8¼  di   \        W^,           V^,            4      pVRV V P                  VP                  V4      4      ,           W^,           R ,           pVP                  R 4      pKo  V# )Ú%N)ÚfindÚintr4   Úgroup)r   ÚresponseÚmatchÚposÚnums   &&&  r   Ú
_wildcardsÚChat._wildcardsK   s~   € Ø�m‰m˜CÓ ˆØ�QŒhÜ�h Q�w¨¨q­Ð1Ó2ˆCà˜˜#�Ø×"Ñ" 5§;¡;¨sÓ#3Ó4õ5à �7˜9Ð%õ&ð ð
 —-‘- Ó$ŠCØˆr(   c                ó  € V P                    Fu  w  r#VP                  V4      pV'       g   K   \        P                  ! V4      pV P	                  WT4      pVRR R8X  d   VRR R,           pVRR R8X  d   VRR R,           pVu # 	  R# )zh
Generate a response to the user input.

:type str: str
:param str: The string to be mapped
:rtype: str
Nz?.Ú.z??Ú?éþÿÿÿ)r   r<   ÚrandomÚchoicer?   )r   r3   Úpatternr;   r<   Úresps   &&    r   ÚrespondÚChat.respondW   s‡   € ð "&§¤ÑˆGØ—M‘M #Ó&ˆE÷ ‰uÜ—}’} XÓ.�Ø—‘ tÓ3�ð ˜˜�9 Ô$Ø  ˜9 s�?�DØ˜˜�9 Ô$Ø  ˜9 s�?�DØ’ó "-r(   c                óà   € R pW!8w  dJ   Tp \        R4      pV'       g   K  VR,          R9   d   VRR pK  \        V P                  V4      4       KO  R#   \         d    \        T4        LUi ; i)Ú Ú>z!.Néÿÿÿÿ)ÚinputÚEOFErrorÚprintrI   )r   ÚquitÚ
user_inputs   && r   ÚconverseÚChat.converseq   sm   € Øˆ
ØÔ ØˆJð"Ü" 3›Z�
÷ ‰zØ  •n¨Ô,Ø!+¨C¨R ’JÜ�d—l‘l :Ó.Ö/ñ !øô ô "Ü�jÖ!ð"ús   ŒA ÁA-Á,A-)r   r   r   N)rR   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   r4   r?   rI   rT   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r   r   r   "   s+   ø‡ € Ø*,ô 2ò(
ò
ò
ò÷40ò 0r(   r   )rE   r   r   r   © r(   r   Ú<module>r^      sÜ   ðó Û 	ðØ
ˆIðàˆZðð ˆðð 
ˆ9ð	ð
 
ˆ;ðð ˆJðð ˆJðð 	ˆ&ðð ˆvðð �ðð ˆhðð ˆhðð ˆDðð ˆVðð 
ˆ4ðð  	ˆ%ð!€÷(Z0ó Z0r(   