§
    žsPJ&  ã                   ón  — d dl Z d dlZd dlZd dlZd dlmZmZmZmZm	Z	m
Z
mZ 	 d dlmZ ej        Zn# e$ r	 d dlmZ Y nw xY wdZdZdZdZd	Zd
„ Zdd„Z G d„ de	j	        ¦  «        Zd„ Zedd„¦   «         Zed„ ¦   «         Zedd„¦   «         Zeg fd„¦   «         Zed„ ¦   «         Zeg dddfd„¦   «         ZdS )é    N)Ú	ConfigSetÚUtilsÚOptionsÚLogsÚContextÚBuildÚErrors)Úrequest)ÚurlopenÚbreakÚcontinuez
config.logFz}# project %(app)s configured on %(now)s by
# waf %(wafver)s (abi %(abi)s, python %(pyver)x on %(systype)s)
# using %(args)s
#c                 ó   — d S ©N© )Únodes    úV/git_repos/lvtk-1.2.0/.waf3-1.7.2-89df5661dd0948598701ec3b9c0a4216/waflib/Configure.pyÚdownload_checkr      s   € Ø€ó    c                 óŽ  — t          j        t          j        ¦  «        D �]’}t          j        t          j        ¦  «        D �]o}d                     ||| dz   f¦  «        }	 t          |¦  «        }	 |                     ¦   «         dk    rŒHn# t          $ r Y nw xY w|j	         
                    t          j                             t          j        dd| dz   f¦  «        ¦  «        }|                     |                     ¦   «         d¦  «         t!          j        d| ›d|›�¦  «         t%          |¦  «         	 t          j        | ¦  «        }nR# t(          $ rE t!          j        d	| ›d|›d
�¦  «         	 |                     ¦   «          n# t(          $ r Y nw xY wY �ŒVw xY w|c c S # t(          $ r Y �Œmw xY w�Œ”t-          j        d¦  «        ‚)Nú/z.pyéÈ   ÚwaflibÚextrasÚwbzDownloaded ú from z	The tool z is unusablezCould not load the Waf tool)r   Úto_listr   Úremote_repoÚremote_locsÚjoinr   ÚgetcodeÚAttributeErrorÚrootÚ	make_nodeÚosÚsepÚwaf_dirÚwriteÚreadr   Úwarnr   Ú	load_toolÚ	ExceptionÚdeleter	   ÚWafError)	ÚtoolÚforceÚctxÚxÚsubÚurlÚwebÚtmpÚmodules	            r   Údownload_toolr7      sô  € Ý
Œ-�Ô+Ñ
,Ô
,ð ñ €QÝŒ]�7Ô.Ñ/Ô/ð ñ €cØ
‡x‚x��3�t˜E‘zÐ"Ñ#Ô#€3ðÝ�‰Œ€Cð
Ø�Š‰Œ�sÒÐØð 	øåð 
ð 
ð 
Ø	€Tð
øøøð
 	Œ×Ò�2œ6Ÿ;š;­¬¸ÀÈ$ÈuÉ*Ð'UÑVÔVÑWÔW€CØ‡I‚Iˆc�hŠh‰jŒj˜ÑÔÐÝ„I€I t t t¨C¨CÐ0Ñ1Ô1Ð1Ý�3ÑÔÐðÝÔ˜dÑ#Ô#€V€VøÝð ð ð Ý	„Y€Y°$°$°$°s°s°sÐ;Ñ<Ô<Ð<ðØ	‡j‚j�l„l€l€løÝð ð ð Ø
€dðøøøà�Xðøøøð €M€M€M€M€Møõ! ð ð ð Ø�Hðøøøñõ4 „Ð4Ñ5Ô5Ð5sl   ÁF Á/B	ÂF Â	
BÂF ÂBÂF Ä3EÅ%FÅ.FÆFÆ
F	ÆFÆF	ÆFÆFÆ 
F.Æ-F.c                   ó�   ‡ — e Zd ZdZdZg Zˆ fd„Zdd„Zd„ Zd„ Z	 e
ee	¦  «        Zd„ Zˆ fd	„Zd
„ Zd„ Zdd„Zˆ fd„Zd„ Zd„ Zˆ xZS )ÚConfigurationContextzconfigures the projectÚ	configurec                 ó  •—  t          t          | ¦  «        j        di |¤Ž t          t          j        ¦  «        | _        i | _        d | _        d | _        g | _	        d| _
        g | _        g | _        |                      d¦  «         d S )Nr   Ú r   )Úsuperr9   Ú__init__Údictr$   ÚenvironÚall_envsÚtop_dirÚout_dirÚtoolsÚhashÚfilesÚ
tool_cacheÚsetenv)ÚselfÚkwÚ	__class__s     €r   r>   zConfigurationContext.__init__8   s|   ø€ Ø+…%Õ˜TÑ"Ô"Ô+Ð1Ð1¨bÐ1Ð1Ð1Ý•B”JÑÔ€$„,Ø€$„-Ø€$„,Ø€$„,Ø€$„*Ø€$„)Ø€$„*Ø€$„/Ø‡+‚+ˆb�/„/€/€/€/r   Nc                 ó¼   — || j         vs|rI|s)t          j        ¦   «         }|                      |¦  «         n|                     ¦   «         }|| j         |<   || _        d S r   )rA   r   Úprepare_envÚderiveÚvariant)rI   ÚnameÚenvs      r   rH   zConfigurationContext.setenvC   se   € Ø	�”ÐÐ #ÐØ
ð ÝÔÑÔ€CØ×Ò�SÑÔÐÐà�
Š
‰Œ€CØ€4„=�ÑØ€$„,€,€,r   c                 ó&   — | j         | j                 S r   ©rA   rO   )rI   s    r   Úget_envzConfigurationContext.get_envL   s   € Ø	Œ�t”|Ô	$Ð$r   c                 ó$   — || j         | j        <   d S r   rS   )rI   Úvals     r   Úset_envzConfigurationContext.set_envN   s   € Ø!€$„-�”ÑÐÐr   c                 ó4  — | j         }|st          j        j        }|s%t	          t
          j        t
          j        d ¦  «        }|s| j         	                    ¦   «         }t          j         	                    |¦  «        }t          j                             |¦  «        r| j        p| j                             |¦  «        | _        | j        sJ ‚| j        }|st          j        j        }|s%t	          t
          j        t
          j        d ¦  «        }|sAt          j                             dt(          j        z  d¦  «                             dd¦  «        }t          j                             |¦  «        r| j        p| j                             |¦  «        | _        | j                             ¦   «          t          j                             | j         	                    ¦   «         ¦  «        s6t4                               d| j         	                    ¦   «         z  ¦  «         d S d S )Nz.lock-waf_%s_r<   z	.lock-wafz'could not create the build directory %s)rB   r   ÚoptionsÚtopÚgetattrr   Úg_moduleÚTOPÚpathÚabspathr$   Úisabsr"   Úfind_dirÚsrcnoderC   ÚoutÚOUTÚlockfileÚreplaceÚsysÚplatformr#   ÚbldnodeÚmkdirÚisdirÚconfÚfatal)rI   rZ   rc   s      r   Ú	init_dirszConfigurationContext.init_dirsQ   s¸  € Ø
„l€#Ø	ð Ý„Ô€3Ø	ð 2Ý�wÔ¥¤¨DÑ1Ô1€3Ø	ð Ø„y×ÒÑÔ€3Ý„g‡o‚o�cÑÔ€#Ý”—’˜cÑ"Ô"Ð/ d¤iÐ<°4´9×FÒFÀsÑKÔK€$„,Ø	ŒÐÐÐØ
„l€#Ø	ð Ý„Ô€3Ø	ð 2Ý�wÔ¥¤¨DÑ1Ô1€3Ø	ð YÝÔ×Ò µ´Ñ <¸RÑ@Ô@×HÒHÈÐUWÑXÔX€3Ý”—’˜cÑ"Ô"Ð/ d¤iÐ<°4´9×GÒGÈÑLÔL€$„,Ø„,×ÒÑÔÐÝ	Œ�Š�t”|×+Ò+Ñ-Ô-Ñ	.Ô	.ð PÝ‡:‚:Ð7¸¼×8LÒ8LÑ8NÔ8NÑNÑOÔOÐOÐOÐOðPð Pr   c                 ó²  •— |                       ¦   «          | j                             t          j        ¦  «        | _        | j                             ¦   «          t          j         	                    | j         
                    ¦   «         t          ¦  «        }t          j        |d¦  «        | _        t          t           j        dd¦  «        }|r%t          t           j        dd¦  «        }|r|›d|›d�}t%          j        ¦   «         }t(          j        }t(          j        }d 	                    t(          j        ¦  «        }t           j        }t           j        }	|                      t6          t9          ¦   «         z  ¦  «         |                      d| j         
                    ¦   «         ¦  «         |                      d	| j         
                    ¦   «         ¦  «         t?          | j        ¦  «        t?          | j        ¦  «        k    rt          j         d
¦  «         n]t?          | j        ¦  «        t?          | j        ¦  «        k    r3| j         !                    | j        ¦  «        rt          j         d¦  «         tE          tF          | ¦  «         $                    ¦   «          |  %                    ¦   «          | j         
                    ¦   «         t           _&        | j         
                    ¦   «         t           _'        tQ          j(        ¦   «         }
t(          j        |
d<   tR          j*        j+        |
d<   t           j,        |
_,        t           j&        |
_&        t           j'        |
_'        | j-        |
d<   | j.        |
d<   t_          | j0        ¦  «        |
d<   | j1        j2        s9|
 %                    t           j,        t          j3        z   tR          j4        z   ¦  «         | j1        j5        s9|
 %                    t           j&        t          j3        z   tR          j4        z   ¦  «         | j1        j6        s;|
 %                    t           j'        t          j3        z   tR          j4        z   ¦  «         d S d S )NÚcfgÚAPPNAMEr<   ÚVERSIONú (ú)ú zSetting top tozSetting out toz5Setting top == out (remember to use "update_outputs")z5Are you certain that you do not want to set top="." ?ÚargvrY   rE   rF   r@   )7rn   ri   r#   r   Ú	CACHE_DIRÚcachedirrj   r$   r^   r   r_   ÚWAF_CONFIG_LOGr   Úmake_loggerÚloggerr[   r   r\   ÚtimeÚctimerg   Ú
hexversionrh   rv   Ú
WAFVERSIONÚABIÚto_logÚconf_templateÚvarsÚmsgrb   Úidr)   Úis_child_ofr=   r9   ÚexecuteÚstorerB   rC   r   r   rY   Ú__dict__Úrun_dirrE   rF   r?   r@   rQ   ÚNO_LOCK_IN_RUNr%   re   ÚNO_LOCK_IN_TOPÚNO_LOCK_IN_OUT)rI   r^   ÚappÚverÚnowÚpyverÚsystypeÚargsÚwafverÚabirQ   rK   s              €r   r‡   zConfigurationContext.executeg   s8  ø€ Ø‡.‚.ÑÔÐØ”×&Ò&¥u¤Ñ7Ô7€$„-Ø„-×ÒÑÔÐÝ	„w‡|‚|�D”L×(Ò(Ñ*Ô*­>Ñ:Ô:€$ÝÔ˜t EÑ*Ô*€$„+Ý�gÔ˜y¨Ñ,Ô,€#Øð Ý�wÔ 	¨"Ñ-Ô-€3Ø	ð Ø�3�3�s�s�sÐ€CÝ
„j�l„l€#ÝŒ€%Ý
Œ,€'Ø
‡x‚x•”ÑÔ€$Ý	Ô	€&Ý„k€#Ø‡+‚+�m�D™FœFÑ"Ñ#Ô#Ð#Ø‡(‚(Ð˜DœL×0Ò0Ñ2Ô2Ñ3Ô3Ð3Ø‡(‚(Ð˜DœL×0Ò0Ñ2Ô2Ñ3Ô3Ð3ÝˆŒÑÔ•r˜$œ,Ñ'Ô'Ò'Ð'Ý„9ÐDÑEÔEÐEÐEÝ	ˆ$Œ)�}„}•b˜œÑ&Ô&Ò&Ð&Ø
„l×Ò˜tœyÑ)Ô)ð GÝ„IÐEÑFÔFÐFÝÕ˜TÑ"Ô"×*Ò*Ñ,Ô,Ð,Ø‡*‚*�,„,€,Ø”,×&Ò&Ñ(Ô(…'„/Ø”,×&Ò&Ñ(Ô(…'„/ÝÔÑÔ€#ÝŒh€#€f�+Ý”Ô)€#€i�.ÝŒo€#„+ÝŒo€#„+ÝŒo€#„+ØŒi€#€f�+ØŒz€#€g�,Ý�d”lÑ#Ô#€#€i�.Ø	ŒÔ	 ð 6Ø‡9‚9�WŒ_�RœVÑ#¥GÔ$4Ñ4Ñ5Ô5Ð5Ø	ŒÔ	 ð 6Ø‡9‚9�WŒ_�RœVÑ#¥GÔ$4Ñ4Ñ5Ô5Ð5Ø	ŒÔ	 ð 6Ø‡9‚9�WŒ_�RœVÑ#¥GÔ$4Ñ4Ñ5Ô5Ð5Ð5Ð5ð6ð 6r   c                 ó<  — |j         sPt          j                             t          j                             t
          j        j        ¦  «        ¦  «        |_         |j        st          j
        d|¦  «        |_        |j        st          j
        d|¦  «        |_        d S d S )Nz${PREFIX}/binz${PREFIX}/lib)ÚPREFIXr$   r^   r_   Ú
expanduserr   rY   ÚprefixÚBINDIRr   Ú
subst_varsÚLIBDIR)rI   rQ   s     r   rM   z ConfigurationContext.prepare_env“   s�   € Ø	Œð JÝŒg�oŠo�bœg×0Ò0µ´Ô1GÑHÔHÑIÔI€3„:Ø	Œð 4ÝÔ˜¨sÑ3Ô3€3„:Ø	Œð 4ÝÔ˜¨sÑ3Ô3€3„:€:€:ð4ð 4r   c                 ó   — | j                              d¦  «        }|                     dt          j        | j        fz  ¦  «         | j        s|                      d¦  «         | j        D ]f}| j        |         }|                     t          j
                             | j                              ¦   «         |t          j        z   ¦  «        ¦  «         Œgd S )Nzbuild.config.pyzversion = 0x%x
tools = %r
z.nothing to store in the configuration context!)rx   r#   r'   r   Ú
HEXVERSIONrD   rA   rm   rˆ   r$   r^   r   r_   r   ÚCACHE_SUFFIX)rI   ÚnÚkeyÚtmpenvs       r   rˆ   zConfigurationContext.storeš   s¾   € Ø„M×ÒÐ-Ñ.Ô.€!Ø‡'‚'Ð
(­'Ô*<¸T¼ZÐ)HÑ
HÑIÔIÐIØ	Œð @Ø‡:‚:Ð>Ñ?Ô?Ð?ØŒ]ð Nð N€cØ
Œ-˜Ô
€6Ø	‡<‚<•”—’˜Tœ]×2Ò2Ñ4Ô4°S½Ô9KÑ5KÑLÔLÑMÔMÐMÐMðNð Nr   Tc                 ó"  — t          j        |¦  «        }|rt          j        |¦  «        }|D �]à}|t          | j        ¦  «        |f}|| j        v r|                      d|z  ¦  «         Œ<| j                             |¦  «         d }	 t          j        ||¦  «        }nß# t          $ r}	t          j        j        r<t          || ¬¦  «        }|s(|                      d|›dt          j        ›d|	›�¦  «         n(|                      d|›dt          j        ›d|	›�¦  «         Y d }	~	n[d }	~	wt"          $ rK}	|                      d|›d	|›d
|›d�¦  «         |                      t          j        ¦   «         ¦  «         ‚ d }	~	ww xY w|�|                      |¦  «         n\t)          |dd ¦  «        }
|
rIt+          |
¦  «        t+          t           j        ¦  «        u r |
| ¦  «         n|                      |
¦  «         | j                             |||dœ¦  «         �Œâd S )Nz%(tool %s is already loaded, skipping))r0   zCould not load the Waf tool zB or download a suitable replacement from the repository (sys.path z)
r   z (try the --download option?):
zimp rs   z & rt   r:   )r.   ÚtooldirÚfuns)r   r   r…   rQ   rG   r�   Úappendr   r*   ÚImportErrorr   rY   Údownloadr7   rm   rg   r^   r+   Úex_stackÚ
eval_rulesr[   ÚtypeÚreadfrD   )rI   Úinputr¤   r¥   r¨   rD   r.   Úmagr6   ÚeÚfuncs              r   ÚloadzConfigurationContext.load¢   s�  € ÝŒ�eÑÔ€%ØÐ+•U”] 7Ñ+Ô+ˆWØð Bñ B€dØ�R�”‰\Œ\˜$Ð€3Ø	ˆTŒ_ÐÐØ‡K‚KÐ7¸Ñ<Ñ=Ô=Ð=ØØ„?×Ò˜#ÑÔÐØ
€6ð
ÝÔ˜T 'Ñ*Ô*€F€FøÝ
ð nð nð nÝ„Ôð nÝ˜$ 4Ð(Ñ(Ô(€VØð NØ
‡j‚j€jð  }Að  }Að  }Aõ  BEô  BJð  BJð  BJð  KLð  KLð  Mñ  Nô  Nð  Nøà	‡Z‚Z€ZÐ\`Ð\`Ð\`ÕadÔaiÐaiÐaiÐjkÐjkÐlÑmÔmÐmøøøøøøøøøÝ
ð 
ð 
ð 
Ø‡K‚K€K D D D¨¨¨°°°Ð6Ñ7Ô7Ð7Ø‡K‚K•”Ñ Ô Ñ!Ô!Ð!Ø	øøøøð
øøøð ÐØ‡O‚O�DÑÔÐÐå	�˜ DÑ	)Ô	)€DØð  ÝˆT‰
Œ
•T�%œ+Ñ&Ô&Ð&Ð& t t¨D¡z¤z z zØ
�/Š/˜$Ñ
Ô
Ð
Ø„:×Ò˜T¨G¸4Ð@Ð@ÑAÔAÐAÑAð7Bð Bs&   ÂBÂ
E8Â&A5D Ä E8Ä-AE3Å3E8c                 ó  •— t          t          | ¦  «                             |¦  «         t          | j        |                     d¦  «        f¦  «        | _        | j                             |                     ¦   «         ¦  «         d S )NÚrb)r=   r9   Úpost_recurserE   r(   rF   r¦   r_   )rI   r   rK   s     €r   r´   z!ConfigurationContext.post_recurseÁ   sf   ø€ ÝÕ˜TÑ"Ô"×/Ò/°Ñ5Ô5Ð5Ý�$”)˜DŸIšI d™OœOÐ,Ñ-Ô-€$„)Ø„*×Ò�D—L’L‘N”NÑ#Ô#Ð#Ð#Ð#r   c                 óL  — t          j        |¦  «        | _        | j        D ]‚}t          | |¦  «        }|s|                      d|z  ¦  «         	  |¦   «          Œ8# t
          $ r>}|                      ||¦  «        }|t          k    rY d }~ d S |t          k    rY d }~Œz‚ d }~ww xY wd S )NzNo such method '%s'.)	r   r   Úrulesr[   rm   r+   Úerr_handlerÚBREAKÚCONTINUE)rI   r¶   r1   Úfr¯   Úrets         r   rª   zConfigurationContext.eval_rulesÅ   sÍ   € ÝŒ]˜5Ñ!Ô!€$„*ØŒ:ð ð €aÝˆT�!�_„_€1Ø
Ð0ˆD�JŠJÐ-¨aÑ/Ñ0Ô0Ð0ð	Ø€A�C„C€C€CøÝ
ð ð ð Ø×Ò˜˜1ÑÔ€CØ
�E‚z€zØ
€U€U€U€U€U€UØ	�hŠˆØ€X€X€X€Xà
øøøøðøøøðð s$   Á
AÁ
B!Á#!BÂBÂBÂB!c                 ó   — d S r   r   )rI   ÚfunÚerrors      r   r·   z ConfigurationContext.err_handlerÔ   s   € Ø€$r   r   )NNT)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚcmdÚerror_handlersr>   rH   rT   rW   ÚpropertyrQ   rn   r‡   rM   rˆ   r±   r´   rª   r·   Ú__classcell__)rK   s   @r   r9   r9   4   s'  ø€ € € € € ØÐØ€Ø€ð
ð 
ð 
ð 
ð 
ðð ð ð ð%ð %ð %ð"ð "ð "à€Xˆg�gÑÔ€ðPð Pð Pð,+6ð +6ð +6ð +6ð +6ðX4ð 4ð 4ðNð Nð NðBð Bð Bð Bð>$ð $ð $ð $ð $ðð ð ðð ð ð ð ð ð r   r9   c                 óˆ   ‡ — ˆ fd„}t          t          ‰ j        |¦  «         t          t          j        ‰ j        |¦  «         ‰ S )Nc                  ój   •— d}d|v r|d         }|d= 	  ‰| i |¤ŽS # t           j        $ r |r‚ Y d S w xY w)NTÚ	mandatory)r	   ÚConfigurationError)ÚkrJ   rÉ   rº   s      €r   r½   zconf.<locals>.fun×   sr   ø€ Ø€)Ø�"ÐÐØ�Œ_€9Ø	ˆ+€ð
Ø
ˆ!ˆQˆ*�ˆ*ˆ*ÐøÝ	Ô	"ð 
ð 
ð 
Øð 
Ø	ð
ð 
ð 
ð
øøøs   ” œ2±2)Úsetattrr9   r¿   r   ÚBuildContext)rº   r½   s   ` r   rl   rl   Ö   sO   ø€ ð	
ð 	
ð 	
ð 	
ð 	
õ 	Õ	˜aœj¨Ñ-Ô-Ð-Ý�Ô	˜AœJ sÑ+Ô+Ð+Ø	€r   c                 óœ   — | j                              |p|t          j        | j        |         ¦  «        ¦  «         d S # t
          $ r Y d S w xY wr   )rQ   Úappend_valueÚshlexÚsplitr@   ÚKeyError)rI   ÚvarÚdests      r   Úadd_os_flagsrÕ   ä   sN   € à	„X×Ò˜4˜; 3¥u¤{°4´<ÀÔ3DÑ'EÔ'EÑFÔFÐFÐFÐFøÝÐÐÐ���Ðøøøs   �:= ½
AÁ
Ac                 óÒ   — t          |t          ¦  «        rQ|                     d¦  «        r<	 t          j        |¦  «         |gS # t
          $ r t          j        |¦  «        cY S w xY w|S )Nru   )Ú
isinstanceÚstrÚfindr$   ÚstatÚOSErrorrÐ   rÑ   )rI   rÃ   s     r   Úcmd_to_listrÜ   è   sz   € åˆs•3ÑÔð ˜3Ÿ8š8 C™=œ=ð ðÝ„7ˆ3�<„<€<ð ˆ€;øõ 
ð ð ð Ý
Œ+�cÑ
Ô
ÐÐÐðøøøð 	€s   ¬A ÁA$Á#A$ú1.6.99ú1.8.0c                 óÊ  — |                       dt          |¦  «        ›dt          |¦  «        ›�¦  «         t          j        }t	          j        |¦  «        |k    r.|                      dt	          j        |¦  «        ›d|›d�¦  «         t	          j        |¦  «        |k     r.|                      dt	          j        |¦  «        ›d|›d�¦  «         |                      d¦  «         d S )NzChecking for waf version in ú-zwaf version should be at least rs   z found)zwaf version should be at most Úok)Ú	start_msgrØ   r   rž   r   Únum2verrm   Úend_msg)rI   ÚminiÚmaxir�   s       r   Úcheck_waf_versionrç   ò   s×   € à‡‚€µS¸±Y´Y°Y°Y½sÀ4¹y¼y¸yÐIÑJÔJÐJÝÔ€Ý	„M�$ÑÔ˜ÒÐØ‡*‚*€*½U¼]È4Ñ=PÔ=PÐ=PÐ=PÐQTÐQTÐQTÐUÑVÔVÐVÝ	„M�$ÑÔ˜ÒÐØ‡*‚*€*½E¼MÈ$Ñ<OÔ<OÐ<OÐ<OÐPSÐPSÐPSÐTÑUÔUÐUØ‡‚ˆdÑÔÐÐÐr   c                 ó  — t          j        |¦  «        D ]^}t          j        |¦  «        D ]G}t          j                             ||¦  «        }t          j                             |¦  «        r|c c S ŒHŒ_|                      d|z  ¦  «         d S )NzCould not find %r)r   r   r$   r^   r   Úexistsrm   )rI   ÚfilenameÚ	path_listr    ÚdÚps         r   Ú	find_filerî   û   s–   € å
Œ-˜Ñ
!Ô
!ð ð €QÝŒ=˜Ñ#Ô#ð ð €aÝ„W‡\‚\�!�AÑÔ€1Ý„g‡n‚n�QÑÔð Ø€H€H€H€H€Hððð ‡‚Ð Ñ(Ñ)Ô)Ð)Ð)Ð)r   c           
      ó‚  — |                      dt          j        rdpd¦  «        }|                      dt          j        ¦  «        }d}t          j        |¦  «        }|                      dd¦  «        }|s|d                              ¦   «         }| j        |         r| j        |         }n||v r||         }|                      dd¦  «        }|sñ|rt          j        |¦  «        }n3|                      d	d¦  «                             t          j	        ¦  «        }t          |t          ¦  «        s|g}|                     d
¦  «        D ]y}|r nt|D ]p}	|r nk|D ]g}
|r nbt          j                             t          j                             |
|	|z   ¦  «        ¦  «        }t          j                             |¦  «        r|}ŒhŒqŒz|s0t          j        r$t          j        t          j        j        |¦  «        }|s0t          j        r$t          j        t          j        j        |¦  «        }|                      dd
                     |¦  «        z   |pd¦  «         |                      d|›d|›d|›d|›�¦  «         |sA|                      |                      dd¦  «        pdd
                     |¦  «        z  ¦  «         |r
|| j        |<   |S )NÚextsz.exe,.com,.bat,.cmdz,.sh,.pl,.pyr@   r<   rÓ   r   rë   ÚPATHú,zChecking for program Fzfind program=z paths=z var=z -> ÚerrmsgzCould not find the program %s)Úgetr   Úis_win32r$   r@   r   ÚupperrQ   rÑ   Úpathsepr×   Úlistr^   r˜   r   ÚisfileÚwinregÚget_registry_app_pathÚHKEY_CURRENT_USERÚHKEY_LOCAL_MACHINEr„   r�   rm   )rI   rê   rJ   rð   r@   r»   rÓ   rë   ÚaÚbÚcr1   s               r   Úfind_programr    s¾  € à‡f‚fˆV•E”NÐ;Ð&;ÐK¸^ÑLÔL€Ø	�Š�	�"œ*Ñ	%Ô	%€Ø€Ý
Œ-˜Ñ
!Ô
!€Ø‡V‚VˆE�"ÑÔ€Øð Øˆq„k×ÒÑÔ€#Ø„HˆS„Mð Ø
„hˆs„m€#€#Ø	ˆW€n€nØˆc„l€#Ø�6Š6�+˜bÑ!Ô!€Øð Øð 6ÝŒ]˜9Ñ%Ô%€9€9à�[Š[˜ Ñ#Ô#×)Ò)­"¬*Ñ5Ô5€9Ý	�H�TÑ	"Ô	"ð ØˆJ€8Ø�:Š:�c‰?Œ?ð ð €aØ	ð 
Ø	€EØð ð €qØ
ð Ø
€UØð ð ˆØð Ø€eÝ	„w×Ò�"œ'Ÿ,š, q¨¨1©Ñ-Ô-Ñ.Ô.€QÝ
Œ�Š�qÑÔð Ø
€cøøøØð K•”ð KÝÔ!¥%¤,Ô"@ÀÑJÔJ€#Øð L•”ð LÝÔ!¥%¤,Ô"AÀ(ÑKÔK€#Ø‡‚Ð
! #§(¢(¨8Ñ"4Ô"4Ñ
4°S°\¸EÑBÔBÐBØ‡‚€°h°h°h¸y¸y¸yÈÈÈÈSÈSÐQÑRÔRÐRØð VØ‡*‚*ˆR�VŠV�H˜RÑ Ô ÐTÐ"AÀ#Ç(Â(È8ÑBTÔBTÑ"TÑUÔUÐUØð Ø€$„(ˆ3�-Ø€r   r<   c                 ó¤  — 	 |                       |||||¬¦  «        }nš# t          $ r� |                       dd¬¦  «         |                      |t          j        d                              t          j        ¦  «        ¦  «        }|s‚ |r+t          j        | j	        d         ¦  «        |gz   | j	        |<   Y nw xY w|  
                    d|z  |¦  «         d S )N)rë   rÓ   r@   rð   ÚperlÚPERL)rÓ   rñ   zChecking for %r)r  r+   rî   r$   r@   rÑ   r÷   r   r   rQ   r„   )rI   rê   rë   rÓ   r@   rð   rŽ   s          r   Úfind_perl_programr  /  sà   € ð7Ø
×Ò˜¨9¸ÀWÐRVÐÑWÔW€#€#øÝð 7ð 7ð 7Ø×Ò�F˜vÐÑ&Ô&Ð&Ø
‡n‚n�X�bœj¨Ô0×6Ò6µr´zÑBÔBÑCÔC€#Ø	ð 	ØØð 7Ý”˜tœx¨Ô/Ñ0Ô0°#°Ñ6€4„8ˆC�=øøð7øøøð ‡‚Ð
˜HÑ
$ SÑ)Ô)Ð)Ð)Ð)s   ‚ �BB4Â3B4)FNr   )rÝ   rÞ   )r$   rÐ   rg   r|   r   r   r   r   r   r   r   r	   Úurllibr
   r   r§   r¸   r¹   ry   Ú
autoconfigr‚   r   r7   r9   rl   rÕ   rÜ   rç   rî   r  r  r   r   r   ú<module>r     s  ðð
 Ð Ð Ð Ð Ð Ð Ð Ð Ð Ð Ð Ð Ð Ð Ð Ø DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DðØÐÐÐÐÐð 
Œ€€øð ð ð ð ØÐÐÐÐÐÐÐðøøøð €Ø	€Ø€Ø€
ð€ðð ð ð6ð 6ð 6ð 6ð:að að að að a˜7œ?ñ aô að aðD
ð 
ð 
ð ðð ð ñ „ðð ðð ñ „ðð ðð ð ñ „ðð Ø&(ð *ð *ð *ñ „ð*ð ð*ð *ñ „ð*ðV Ø.0°TÀ$ÈBð 
*ð 
*ð 
*ñ „ð
*ð 
*ð 
*s   ¤2 ²A ¿A 