§
    öÜÚcðC ã                  ó4  — d dl mZ d dlZd dlZd dlZd dlZd dlmc m	Z
 d dlZd dlZd dlmZmZ d dlZddlmZ ddlmZ ddlmZ dd	lmZ dd
lmZ ddlmZmZmZmZmZmZ ddlm Z m!Z! ej"        rddl#m$Z$ dd„Z%d„ Z&d„ Z'dd„Z( G d„ dej)        ¦  «        Z*dS )é    )ÚannotationsN)ÚPathÚPurePathé   )Úbackendsé   )Úbuild)Údependencies)Úmlog)Ú	compilers)ÚFileÚMesonExceptionÚreplace_if_differentÚ	OptionKeyÚversion_compareÚMachineChoice)ÚEnvironmentÚbuild_filename)ÚInterpreterr	   úT.Optional[build.Build]ÚinterpreterúT.Optional[Interpreter]Úreturnúbackends.Backendc                óN  — t          j        dd ¦  «        }t          j        dd ¦  «        }|st          d¦  «        ‚|dk    sd|v rddlm}  || |¦  «        S |dk    sd	|v rdd
lm}  || |¦  «        S |dk    sd|v rddlm}  || |¦  «        S |dk    sd|v sd|v rddl	m
}  || |¦  «        S |dk    sd|v sd|v rddlm}  || |¦  «        S |dk    sd|v sd|v rddlm}	  |	| |¦  «        S d|v rt          | |¦  «        S t          d                     ||¦  «        ¦  «        ‚)NÚVisualStudioVersionÚVSINSTALLDIRz”Could not detect Visual Studio: Environment variable VSINSTALLDIR is not set!
Are you running meson from the Visual Studio Developer Command Prompt?z11.0zVisual Studio 11r   )ÚVs2012Backendz12.0zVisual Studio 12)ÚVs2013Backendz14.0zVisual Studio 14)ÚVs2015Backendú15.0zVisual Studio 17zVisual Studio\2017)ÚVs2017Backendz16.0zVisual Studio 19zVisual Studio\2019)ÚVs2019Backendz17.0zVisual Studio 22zVisual Studio\2022)ÚVs2022BackendzVisual Studio 10.0z~Could not detect Visual Studio using VisualStudioVersion: {!r} or VSINSTALLDIR: {!r}!
Please specify the exact backend to use.)ÚosÚgetenvr   Ú mesonbuild.backend.vs2012backendr   Ú mesonbuild.backend.vs2013backendr   Ú mesonbuild.backend.vs2015backendr    Ú mesonbuild.backend.vs2017backendr"   Ú mesonbuild.backend.vs2019backendr#   Ú mesonbuild.backend.vs2022backendr$   ÚVs2010BackendÚformat)
r	   r   Ú
vs_versionÚvs_install_dirr   r   r    r"   r#   r$   s
             úB/usr/lib/python3/dist-packages/mesonbuild/backend/vs2010backend.pyÚautodetect_vs_versionr2   (   s  € Ý”Ð0°$Ñ7Ô7€JÝ”Y˜~¨tÑ4Ô4€NØð gÝð fñ gô gð 	gð �VÒÐÐ1°^ÐCÐCØBÐBÐBÐBÐBÐBØˆ}˜U KÑ0Ô0Ð0Ø�VÒÐÐ1°^ÐCÐCØBÐBÐBÐBÐBÐBØˆ}˜U KÑ0Ô0Ð0Ø�VÒÐÐ1°^ÐCÐCØBÐBÐBÐBÐBÐBØˆ}˜U KÑ0Ô0Ð0Ø�VÒÐÐ1°^ÐCÐCØ Ð.Ð.ØBÐBÐBÐBÐBÐBØˆ}˜U KÑ0Ô0Ð0Ø�VÒÐÐ1°^ÐCÐCØ Ð.Ð.ØBÐBÐBÐBÐBÐBØˆ}˜U KÑ0Ô0Ð0Ø�VÒÐÐ1°^ÐCÐCØ Ð.Ð.ØBÐBÐBÐBÐBÐBØˆ}˜U KÑ0Ô0Ð0Ø˜~Ð-Ð-Ý˜U KÑ0Ô0Ð0Ý
ð DßDJÂFÈ:ÐWeÑDfÔDfñhô hð hó    c                óÀ   — g }| D ]X}|                      d¦  «        sŒt          |dd…         ¦  «        }d|v r|                     |¦  «         ŒI|d„ |D ¦   «         z  }ŒY|S )zÜ
    Splits any /O args and returns them. Does not take care of flags overriding
    previous ones. Skips non-O flag arguments.

    ['/Ox', '/Ob1'] returns ['/Ox', '/Ob1']
    ['/Oxj', '/MP'] returns ['/Ox', '/Oj']
    ú/Or   NÚbc                ó   — g | ]}d |z   ‘ŒS )r5   © )Ú.0Úfs     r1   ú
<listcomp>z&split_o_flags_args.<locals>.<listcomp>]   s   € Ð0Ð0Ð0 Q˜˜q™Ð0Ð0Ð0r3   )Ú
startswithÚlistÚappend)ÚargsÚo_flagsÚargÚflagss       r1   Úsplit_o_flags_argsrC   K   s‚   € ð €GØð 	1ð 	1ˆØ�~Š~˜dÑ#Ô#ð 	ØÝ�S˜˜˜”W‘”ˆð �%ˆ<ˆ<Ø�NŠN˜3ÑÔÐÐàÐ0Ð0¨%Ð0Ñ0Ô0Ñ0ˆGˆGØ€Nr3   c           	     óª   — t          t          j        t          j        d|z   dz   t          | ¦  «        z   ¦  «        ¦  «                             ¦   «         S )Nz	meson-vs-ú:)ÚstrÚuuidÚuuid5ÚNAMESPACE_URLÚupper)ÚpathÚ	path_types     r1   Úgenerate_guid_from_pathrM   a   sA   € Ý�tŒz�$Ô,¨k¸IÑ.EÈÑ.KÍcÐRVÉiÌiÑ.WÑXÔXÑYÔY×_Ò_ÑaÔaÐar3   ÚplatformrF   Úboolc                óB   — t          j        d| t           j        ¦  «        S )Nz1Gaming\.(Desktop|Xbox.XboxOne|Xbox.Scarlett)\.x64)ÚreÚmatchÚ
IGNORECASE)rN   s    r1   Údetect_microsoft_gdkrT   d   s   € ÝŒ8ÐHÈ(ÕTVÔTaÑbÔbÐbr3   c                  óÔ  ‡ — e Zd Zd>ˆ fd„Zd„ Zd„ Zd„ Zed?d„¦   «         Zed?d„¦   «         Z	d„ Z
d„ Zd@dAd„Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd@d„Zd„ Zddddœd „Zd!„ Zd"„ Zd#„ Zed$„ ¦   «         Zd%„ Zd&„ Zd'„ Zd(„ Zd)„ Zd*„ Z d+„ Z!d,„ Z"ed-„ ¦   «         Z#ed.„ ¦   «         Z$ed/„ ¦   «         Z%ed0„ ¦   «         Z&ed1„ ¦   «         Z'd2„ Z(d3„ Z)d4„ Z*d5„ Z+d6„ Z,d7„ Z-dBd9„Z.ed:„ ¦   «         Z/d;„ Z0d<„ Z1d=„ Z2ˆ xZ3S )Cr-   r	   r   r   r   c                óÊ   •— t          ¦   «                              ||¦  «         d| _        d| _        d| _        d| _        d | _        d| _        d | _        i | _	        i | _
        d S )NÚvs2010z10.0.30319.1z11.00Ú2010)ÚsuperÚ__init__ÚnameÚproject_file_versionÚsln_file_versionÚsln_version_commentÚplatform_toolsetr/   Úwindows_target_platform_versionÚsubdirsÚhandled_target_deps)Úselfr	   r   Ú	__class__s      €r1   rZ   zVs2010Backend.__init__h   sh   ø€ Ý‰Œ×Ò˜ Ñ,Ô,Ð,ØˆŒ	Ø$2ˆÔ!Ø 'ˆÔØ#)ˆÔ Ø $ˆÔØ ˆŒØ/3ˆÔ,ØˆŒØ#%ˆÔ Ð Ð r3   c                óŒ   — t           j                             |                      |¦  «        |                     ¦   «         ¦  «        S ©N)r%   rK   ÚjoinÚget_target_dirÚget_id)rc   Útargets     r1   Úget_target_private_dirz$Vs2010Backend.get_target_private_dirt   s.   € ÝŒw�|Š|˜D×/Ò/°Ñ7Ô7¸¿º¹¼ÑIÔIÐIr3   c           	     ó®	  ‡ ‡‡‡‡— g }g }g }‰                       ‰                      |¦  «        ‰                      |¦  «        ¦  «        Š‰                      |¦  «        }|                     ¦   «         D �]_}t          |t          j        t          j        f¦  «        r¶| 	                    ¦   «         D ]K}t          j                             |‰                      |¦  «        |¦  «        }	|                     |	¦  «         ŒL‰                       ‰                      |¦  «        ‰                      |¦  «        ¦  «        }
|
|vr|                     |
¦  «         Œß|                     ¦   «         }|                     ¦   «         }|                     ¦   «         }| 	                    ¦   «         }t          j                             |‰ j        |j        ¦  «        Št'          j        |d¦  «        }t+          |¦  «        D �]ß\  }}t-          |¦  «        t-          |¦  «        k    r't          j                             ‰||         ¦  «        ŠndŠt          j                             ||                     ‰ j        ¦  «        ¦  «        Š‰                      |d¦  «        }|                     ‰¦  «        }|                     |¦  «        }ˆfd„|D ¦   «         }||z  }ˆˆfd„|D ¦   «         }‰                      |‰|¦  «        }ˆ ˆfd„|D ¦   «         }ˆfd„|D ¦   «         }ˆ fd„|D ¦   «         }d	„ |D ¦   «         }t          j                             ‰ j                             ¦   «         ‰                      |¦  «        ¦  «        }‰                      |‰                      ||¦  «        ||j         r|d
         nd d¬¦  «        \  }}|dd …         |z   }t          j                             ‰ j                             ¦   «         ‰                      |¦  «        ¦  «        }t          j!        |d¬¦  «         t'          j        |d‰¬¦  «        }d                     ‰  "                    |¦  «        ¦  «        t'          j        |d¦  «        _#        d                     |¦  «        t'          j        |d¦  «        _#        d                     |¦  «        t'          j        |d¦  «        _#        �Œá�Œa|||fS )NÚ	ItemGroupÚ Tc                óP   •— g | ]"}t           j                             ‰|¦  «        ‘Œ#S r8   )r%   rK   rg   )r9   ÚofÚtarget_private_dirs     €r1   r;   zDVs2010Backend.generate_custom_generator_commands.<locals>.<listcomp>–   s*   ø€ Ð\Ð\Ð\È¥¤§¢Ð-?ÀÑ DÔ DÐ\Ð\Ð\r3   c                ód   •— g | ],}|                      d ‰¦  «                              d‰¦  «        ‘Œ-S )z@INPUT@z@OUTPUT@©Úreplace)r9   ÚxÚ
infilenameÚsole_outputs     €€r1   r;   zDVs2010Backend.generate_custom_generator_commands.<locals>.<listcomp>˜   sH   ø€ ð 0ð 0ð 0Ø !ð ŸIšI i°Ñ<Ô<×DÒDÀZÐQ\Ñ]Ô]ð 0ð 0ð 0r3   c                ó’   •— g | ]C}|                      d ‰j                             ¦   «         ¦  «                              d‰¦  «        ‘ŒDS )z@SOURCE_DIR@z@BUILD_DIR@)rt   ÚenvironmentÚget_source_dir)r9   ru   rc   rq   s     €€r1   r;   zDVs2010Backend.generate_custom_generator_commands.<locals>.<listcomp>›   sV   ø€ ð +ð +ð +à !ð ŸIšI n°dÔ6F×6UÒ6UÑ6WÔ6WÑXÔXß%šg mÐ5GÑHÔHð+ð +ð +r3   c                ó<   •— g | ]}|                      d ‰¦  «        ‘ŒS )z@CURRENT_SOURCE_DIR@rs   )r9   ru   Ú
source_dirs     €r1   r;   zDVs2010Backend.generate_custom_generator_commands.<locals>.<listcomp>ž   s(   ø€ ÐXÐXÐXÈa˜AŸIšIÐ&<¸jÑIÔIÐXÐXÐXr3   c                óÀ   •— g | ]Z}|                      d ‰j                             ¦   «         ¦  «                              d‰j                             ¦   «         ¦  «        ‘Œ[S )z@SOURCE_ROOT@z@BUILD_ROOT@)rt   ry   rz   Úget_build_dir)r9   ru   rc   s     €r1   r;   zDVs2010Backend.generate_custom_generator_commands.<locals>.<listcomp>Ÿ   sd   ø€ ð +ð +ð +à !ð ŸIšI o°tÔ7G×7VÒ7VÑ7XÔ7XÑYÔYß%šg n°dÔ6F×6TÒ6TÑ6VÔ6VÑWÔWð+ð +ð +r3   c                ó:   — g | ]}|                      d d¦  «        ‘ŒS )ú\ú/rs   )r9   ru   s     r1   r;   zDVs2010Backend.generate_custom_generator_commands.<locals>.<listcomp>¢   s&   € Ð?Ð?Ð?°Q˜AŸIšI d¨CÑ0Ô0Ð?Ð?Ð?r3   r   )ÚworkdirÚcaptureÚforce_serializeéÿÿÿÿ)Úexist_okÚCustomBuild©ÚIncludeú ÚCommandú;ÚOutputsÚAdditionalInputs)$Úrelpathrk   rh   Útarget_to_build_rootÚget_generated_sourcesÚ
isinstancer	   ÚCustomTargetÚCustomTargetIndexÚget_outputsr%   rK   rg   r>   Úget_generatorÚget_exeÚ
get_inputsÚbuild_to_srcÚsubdirÚETÚ
SubElementÚ	enumerateÚlenÚrel_to_builddirÚget_custom_target_depend_filesÚget_arglistÚget_outputs_forÚreplace_outputsry   r~   Úas_meson_exe_cmdlineÚreplace_extra_argsrƒ   ÚmakedirsÚquote_argumentsÚtext)rc   rj   Úparent_nodeÚgenerator_output_filesÚcustom_target_include_dirsÚcustom_target_output_filesÚdownÚgenlistÚiÚipathÚidirÚ	generatorÚexeÚ
infilelistÚoutfilelistÚidgroupÚcurfileÚdepsÚ	base_argsÚoutfiles_relÚoutfilesr?   Útdir_absÚcmdÚ_Úabs_pdirÚcbsrv   rw   r|   rq   s   `                          @@@@r1   Ú"generate_custom_generator_commandsz0Vs2010Backend.generate_custom_generator_commandsw   sØ  øøøøø€ Ø!#ÐØ%'Ð"Ø%'Ð"Ø!Ÿ\š\¨$×*EÒ*EÀfÑ*MÔ*MÈt×ObÒObÐciÑOjÔOjÑkÔkÐØ×(Ò(¨Ñ0Ô0ˆØ×3Ò3Ñ5Ô5ð 6	Qñ 6	QˆGÝ˜'¥EÔ$6½Ô8OÐ#PÑQÔQð 5QØ ×,Ò,Ñ.Ô.ð =ð =�AåœGŸLšL¨¨t×/BÒ/BÀ7Ñ/KÔ/KÈQÑOÔO�EØ.×5Ò5°eÑ<Ô<Ð<Ð<Ø—|’| D×$7Ò$7¸Ñ$@Ô$@À$×BUÒBUÐV\ÑB]ÔB]Ñ^Ô^�ØÐ9Ð9Ð9Ø.×5Ò5°dÑ;Ô;Ð;øà#×1Ò1Ñ3Ô3�	Ø×'Ò'Ñ)Ô)�Ø$×/Ò/Ñ1Ô1�
Ø%×1Ò1Ñ3Ô3�ÝœWŸ\š\¨$°Ô0AÀ7Ä>ÑRÔR�
Ýœ-¨°[ÑAÔA�Ý"+¨JÑ"7Ô"7ð &Qñ &Q‘J�A�wÝ˜:‘”­#¨kÑ*:Ô*:Ò:Ð:Ý&(¤g§l¢lÐ3EÀ{ÐSTÄ~Ñ&VÔ&V˜˜à&(˜Ý!#¤§¢¨d°G×4KÒ4KÈDÔL]Ñ4^Ô4^Ñ!_Ô!_�JØ×>Ò>¸wÈÑMÔM�DØ )× 5Ò 5°jÑ AÔ A�IØ#*×#:Ò#:¸7Ñ#CÔ#C�LØ\Ð\Ð\Ð\È|Ð\Ñ\Ô\�HØ*¨hÑ6Ð*ð0ð 0ð 0ð 0ð 0Ø%.ð0ñ 0ô 0�Dà×/Ò/°Ð6HÈ,ÑWÔW�Dð+ð +ð +ð +ð +à%)ð+ñ +ô +�Dð YÐXÐXÐXÐSWÐXÑXÔX�Dð+ð +ð +ð +à%)ð+ñ +ô +�Dð @Ð?¸$Ð?Ñ?Ô?�Dõ  "œwŸ|š|¨DÔ,<×,JÒ,JÑ,LÔ,LÈd×NaÒNaÐbhÑNiÔNiÑjÔj�HØ!×6Ò6ØØ×/Ò/°°gÑ>Ô>Ø (Ø/8Ô/@Ð J ¨¤ ÀdØ(,ð 7ñ ô ‘F�C˜ð ˜r˜s˜sœ8 d™?�DÝ!œwŸ|š|¨DÔ,<×,JÒ,JÑ,LÔ,LÈd×NaÒNaÐbhÑNiÔNiÑjÔj�HÝ”K °4Ð8Ñ8Ô8Ð8Ýœ-¨°È
ÐSÑSÔS�CØ9<¿ºÀ$×BVÒBVÐWZÑB[ÔB[Ñ9\Ô9\•B”M # yÑ1Ô1Ô6Ø9<¿ºÀ(Ñ9KÔ9K•B”M # yÑ1Ô1Ô6ØBEÇ(Â(È4Á.Ä.•B”M #Ð'9Ñ:Ô:Ô?Ñ?ñM&QðN &Ð'AÐC]Ð]Ð]r3   c                ó"  — | j         j        d                              d d ¦  «        }|dv rE| j         j        d                              d d ¦  «        }t	          |¦  «        r|| _        n†d| _        n~|dk    rd| _        np|dv r<| j         j        d                              d d ¦  «        }|dk    rd| _        n8d| _        n0d	|                     ¦   «         v rd
| _        nt          d|z   ¦  «        ‚| j         j        d                              d d ¦  «        }|dv rd| _	        n~|dk    rd| _	        np|dv r<| j         j        d                              d d ¦  «        }|dk    rd| _	        n8d| _	        n0d	|                     ¦   «         v rd
| _	        nt          d|z   ¦  «        ‚| j
        j                             t          d¦  «        ¦  «        | _        | j
        j                             t          d¦  «        ¦  «        | _        | j
        j                             t          d¦  «        ¦  «        | _        	 | j
        j                             t          d¦  «        ¦  «        | _        n# t          $ r
 d| _        Y nw xY wt$          j                             | j
                             ¦   «         | j        j        dz   ¦  «        }|                      ¦   «         }|                      dt$          j                             | j
                             ¦   «         d¦  «        ¦  «         |                      dt$          j                             | j
                             ¦   «         d¦  «        ¦  «         |                      dt$          j                             | j
                             ¦   «         d¦  «        ¦  «         |                      ||¦  «         |                      ¦   «          t<                               | j
                             ¦   «         ¦  «         d S )NÚtarget_machine>   Ú64Úx86_64Úx64Úx86ÚWin32>   Úarm64Úaarch64Úarm64ecrÉ   ÚarmÚARMz$Unsupported Visual Studio platform: Úbuild_machineÚ	buildtypeÚoptimizationÚdebugÚ
b_sanitizeÚnonez.slnÚ	RUN_TESTSúRUN_TESTS.vcxprojÚRUN_INSTALLúRUN_INSTALL.vcxprojÚREGENúREGEN.vcxproj) r   ÚbuiltinÚcpu_family_methodÚsystem_methodrT   rN   Ú
cpu_methodÚlowerr   Úbuild_platformry   ÚcoredataÚ
get_optionr   rÏ   rÐ   rÑ   Úsanitizer%   rK   rg   r~   r	   Úproject_nameÚgenerate_projectsÚgen_testprojÚgen_installprojÚgen_regenprojÚgenerate_solutionÚgenerate_regen_infor-   Útouch_regen_timestamp)rc   rÃ   Útarget_systemÚ
target_cpurÎ   Úsln_filenameÚprojlists          r1   ÚgeneratezVs2010Backend.generate¶   sÉ  € ØÔ)Ô1Ð2BÔC×UÒUÐVZÐ\`ÑaÔaˆØÐ-Ð-Ð-à Ô,Ô4Ð5EÔF×TÒTÐUYÐ[_Ñ`Ô`ˆMÝ# MÑ2Ô2ð &Ø -�”�à %�”�Ø˜uÒ$Ð$à#ˆDŒMˆMØÐ3Ð3Ð3ØÔ)Ô1Ð2BÔC×NÒNÈtÐUYÑZÔZˆJØ˜YÒ&Ð&Ø )�”�à '�”�Ø�n×*Ò*Ñ,Ô,Ð,Ð,Ø!ˆDŒMˆMå Ð!GÈ.Ñ!XÑYÔYÐYàÔ(Ô0°ÔA×SÒSÐTXÐZ^Ñ_Ô_ˆØÐ,Ð,Ð,à"'ˆDÔÐØ˜eÒ#Ð#à")ˆDÔÐØÐ2Ð2Ð2ØÔ)Ô1°/ÔB×MÒMÈdÐTXÑYÔYˆJØ˜YÒ&Ð&Ø&/�Ô#Ð#à&-�Ô#Ð#Ø�m×)Ò)Ñ+Ô+Ð+Ð+Ø"'ˆDÔÐå Ð!GÈ-Ñ!WÑXÔXÐXàÔ)Ô2×=Ò=½iÈÑ>TÔ>TÑUÔUˆŒØ Ô,Ô5×@Ò@ÅÈ>ÑAZÔAZÑ[Ô[ˆÔØÔ%Ô.×9Ò9½)ÀGÑ:LÔ:LÑMÔMˆŒ
ð	#Ø Ô,Ô5×@Ò@ÅÈ<ÑAXÔAXÑYÔYˆDŒMˆMøÝð 	#ð 	#ð 	#Ø"ˆDŒMˆMˆMð	#øøøå”w—|’| DÔ$4×$BÒ$BÑ$DÔ$DÀdÄjÔF]Ð`fÑFfÑgÔgˆØ×)Ò)Ñ+Ô+ˆØ×Ò˜+¥r¤w§|¢|°DÔ4D×4RÒ4RÑ4TÔ4TÐViÑ'jÔ'jÑkÔkÐkØ×Ò˜]­B¬G¯LªL¸Ô9I×9WÒ9WÑ9YÔ9YÐ[pÑ,qÔ,qÑrÔrÐrØ×Ò˜7¥B¤G§L¢L°Ô1A×1OÒ1OÑ1QÔ1QÐSbÑ$cÔ$cÑdÔdÐdØ×Ò˜|¨XÑ6Ô6Ð6Ø× Ò Ñ"Ô"Ð"Ý×+Ò+¨DÔ,<×,JÒ,JÑ,LÔ,LÑMÔMÐMÐMÐMs   È21I$ É$I8É7I8Ú	build_dirrF   r   ÚNonec                ó’   — t           j                             t           j                             | t          j        ¦  «        d¦  «        S )Nzregen.stamp)r%   rK   rg   r   Úprivate_dir©rð   s    r1   Úget_regen_stampfilez!Vs2010Backend.get_regen_stampfileï   s+   € åŒw�|Š|�BœGŸLšL¨µKÔ4KÑLÔLÈmÑ\Ô\Ð\r3   c                óŽ   — t          t                               | ¦  «        dd¬¦  «        5  	 d d d ¦  «         d S # 1 swxY w Y   d S )NÚwúutf-8©Úencoding)Úopenr-   rõ   rô   s    r1   rê   z#Vs2010Backend.touch_regen_timestampó   sŒ   € å•-×3Ò3°IÑ>Ô>ÀÈgÐVÑVÔVð 	ð 	Øð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   «:º>Á>c                óÄ  — dt           j        v odt           j        v }dt           j        v rÆdt           j        v rt           j        d         nd }|�|dk    rdnd}t           j        d         |z   dz   }t           j                             |¦  «        ra|r%t           j        d         }t           j        d         }n"t           j                             d	d
¦  «        }|}||k    r|dz   |z   n|}d|› d|› �S dt           j        v ra|r_t           j        d         dz   }t           j                             |¦  «        r+d|›dt           j        d         ›dt           j        d         ›�S dS )NÚVSCMD_ARG_TGT_ARCHÚVSCMD_ARG_HOST_ARCHÚVCINSTALLDIRr   r!   zAuxiliary\Build\rn   zvcvarsall.batÚPlatformrÇ   r¾   ú"z" ÚVS150COMNTOOLSzVsDevCmd.batz" -arch=z -host_arch=)r%   ÚenvironrK   ÚexistsÚget)rc   Úhas_arch_valuesr/   Úrelative_pathÚscript_pathÚtarget_archÚ	host_archÚarchs           r1   Úget_vcvars_commandz Vs2010Backend.get_vcvars_commandø   sƒ  € Ø.µ"´*Ð<ÐdÐAVÕZ\ÔZdÐAdˆð �RœZÐ'Ð'à(­B¬JÐ6Ð6õ œÐ$9Ô:Ð:Ø<@ð à4>Ð4JÈzÐ]cÒOcÐOcÐ0Ð0ÐikˆMÝœ* ^Ô4°}ÑDÀÑVˆKÝŒw�~Š~˜kÑ*Ô*ð 1Ø"ð ,Ý"$¤*Ð-AÔ"B�KÝ "¤
Ð+@Ô A�I�Iå"$¤*§.¢.°¸UÑ"CÔ"C�KØ +�IØ8AÀ[Ò8PÐ8P�y 3‘¨Ñ4Ð4ÐVa�Ø0˜;Ð0Ð0¨$Ð0Ð0Ð0ð �rœzÐ)Ð)¨oÐ)Ýœ*Ð%5Ô6¸ÑGˆKÝŒw�~Š~˜kÑ*Ô*ð gð gà �[�[¥"¤*Ð-AÔ"BÐ"BÐ"BÅBÄJÐOdÔDeÐDeðgð gàˆrr3   c                ó®   — i }|D ]=}t          |t          j        ¦  «        r!|j        ||j                             ¦   «         <   Œ>|                     ¦   «         S rf   )r’   r	   ÚExtractedObjectsrj   ri   Úitems)rc   Úobj_listÚresultÚos       r1   Úget_obj_target_depsz!Vs2010Backend.get_obj_target_deps  sR   € ØˆØð 	5ð 	5ˆAÝ˜!�UÔ3Ñ4Ô4ð 5Ø,-¬H��q”x—’Ñ(Ô(Ñ)øØ�|Š|‰~Œ~Ðr3   FÚtúT.Dict[T.Any, build.Target]c                ó°  — i }|                      ¦   «         D �]Œ}t          |t          j        ¦  «        rJ|                     ¦   «         D ]3}t          |t          j        ¦  «        r|||                     ¦   «         <   Œ4�n»t          |t          j        ¦  «        r0|                     ¦   «         D ]}|||                     ¦   «         <   Œ�nqt          |t          j	        ¦  «        �rD|j
        D ]P}t          |t          j        ¦  «        r|j        ||                     ¦   «         <   Œ9|||                     ¦   «         <   ŒQ|j        D ]P}t          |t          j        ¦  «        r|j        ||                     ¦   «         <   Œ9|||                     ¦   «         <   ŒQ|j        D ]f}t          |t          j        ¦  «        r|j        ||                     ¦   «         <   Œ9t          |t          ¦  «        rŒO|||                     ¦   «         <   Œg|                      |j        ¦  «        D ]
\  }}|||<   Œnt%          d|› �¦  «        ‚|                     ¦   «         D �]T}	t          |	t          j        ¦  «        r|	||	                     ¦   «         <   Œ5t          |	t          j        ¦  «        r"|	j        ||	j                             ¦   «         <   Œq|	                     ¦   «         }
|
                     ¦   «         }t          |t          j        ¦  «        r|||                     ¦   «         <   t/          j        |
j        |	j        ¦  «        D ]j}t          |t          j        ¦  «        r|j        ||                     ¦   «         <   Œ9t          |t          j        ¦  «        r|||                     ¦   «         <   Œk�ŒV�ŒŽ|r|s|S |                      ||¦  «        }|                     |¦  «         |S )NzUnknown target type for target )Úvaluesr’   r	   r“   Úget_target_dependenciesÚTargetri   Ú	RunTargetÚget_dependenciesÚBuildTargetÚlink_targetsr”   rj   Úlink_whole_targetsÚlink_dependsr   r  Úobjectsr   r‘   r–   r—   Ú
ExecutableÚ	itertoolsÚchainÚdependsÚget_target_depsÚupdate)rc   r  Ú	recursiveÚall_depsrj   ÚdÚldepÚobj_idÚobjdepÚgendepr²   Úgen_exeÚrets                r1   r%  zVs2010Backend.get_target_deps  s¼  € Ø.0ˆØ—h’h‘j”jð 2	5ñ 2	5ˆFÝ˜&¥%Ô"4Ñ5Ô5ð !QØ×7Ò7Ñ9Ô9ð 1ð 1�Aõ " !¥U¤\Ñ2Ô2ð 1Ø/0˜ §¢¡¤Ñ,øñ	1õ
 ˜F¥E¤OÑ4Ô4ð QØ×0Ò0Ñ2Ô2ð -ð -�AØ+,�H˜QŸXšX™ZœZÑ(Ð(ñ-å˜F¥EÔ$5Ñ6Ô6ñ QØ"Ô/ð 7ð 7�DÝ! $­Ô(?Ñ@Ô@ð 7Ø26´+˜ §¢¡¤Ñ/Ð/à26˜ §¢¡¤Ñ/Ð/Ø"Ô5ð 7ð 7�DÝ! $­Ô(?Ñ@Ô@ð 7Ø26´+˜ §¢¡¤Ñ/Ð/à26˜ §¢¡¤Ñ/Ð/à"Ô/ð 7ð 7�DÝ! $­Ô(?Ñ@Ô@ð 7Ø26´+˜ §¢¡¤Ñ/Ð/Ý# D­$Ñ/Ô/ð 7àà26˜ §¢¡¤Ñ/Ð/à&*×&>Ò&>¸v¼~Ñ&NÔ&Nð .ð .‘N�F˜FØ'-�H˜VÑ$Ð$ð.õ %Ð%OÀvÐ%OÐ%OÑPÔPÐPà ×6Ò6Ñ8Ô8ð 5ñ 5�Ý˜f¥eÔ&8Ñ9Ô9ð 5Ø06�H˜VŸ]š]™_œ_Ñ-Ð-Ý ­Ô(?Ñ@Ô@ð 5Ø7=´}�H˜Vœ]×1Ò1Ñ3Ô3Ñ4Ð4à &× 4Ò 4Ñ 6Ô 6�IØ'×/Ò/Ñ1Ô1�GÝ! '­5Ô+;Ñ<Ô<ð =Ø5<˜ §¢Ñ!1Ô!1Ñ2Ý&œ_¨YÔ->ÀÄÑOÔOð 5ð 5˜Ý% a­Ô)@ÑAÔAð 5Ø34´8˜H Q§X¢X¡Z¤ZÑ0Ð0Ý'¨­5¬<Ñ8Ô8ð 5Ø34˜H Q§X¢X¡Z¤ZÑ0øñ	5ñ5ð$ ð 	˜	ð 	ØˆOØ×"Ò" 8¨YÑ7Ô7ˆØ�
Š
�8ÑÔÐØˆ
r3   c                ó¸  — d}t          |¦  «        }t          |¦  «         |D ]¶}|| j        vr«|j        }t	          |d¦  «        }|j        }|t          d¦  «        k    r| j        |         d         nd }	||	f| j        |<   || j        j        j	        d         ||| j        |         d         fz  }
| 
                    |
¦  «         | 
                    d¦  «         Œ·d S )Nú%Project("{%s}") = "%s", "%s", "{%s}"
rš   ú.r   Ú	directoryúEndProject
)ÚreversedÚnextra   r[   rM   Úparentr   ry   rà   Ú
lang_guidsÚwrite)rc   ÚofileÚparentsÚ	prj_templÚ	iterpathsrK   ÚbasenameÚ
identifierÚ
parent_dirÚparent_identifierÚprj_lines              r1   Úgenerate_solution_dirsz$Vs2010Backend.generate_solution_dirsX  sû   € Ø<ˆ	Ý˜WÑ%Ô%ˆ	åˆY‰ŒˆØð 	,ð 	,ˆDØ˜4œ<Ð'Ð'Øœ9�Ý4°T¸8ÑDÔD�
à!œ[�
à!¥X¨c¡]¤]Ò2Ð2ð %)¤L°Ô$<¸QÔ$?Ð$?Ø8<ð "à&0Ð2CÐ%D�”˜TÑ"Ø$ØÔ$Ô-Ô8¸ÔEØ˜h¨¬°TÔ(:¸1Ô(=ð(?ñ ?�ð —’˜HÑ%Ô%Ð%Ø—’˜NÑ+Ô+Ð+øð	,ð 	,r3   c                óð  — |                       ¦   «         }|                     |                      ¦   «         ¦  «         |dz   }t          |dd¬¦  «        5 }|                     d| j        z  ¦  «         |                     d| j        z  ¦  «         d}|D �]U}| j        j        }| 	                    t          d¦  «        ¦  «        d	k    r!|                      ||d
         j        ¦  «         | j        j        |d                  }	d}
t          |	d¦  «        r%|	j        r|	j                             ¦   «         D ]}|}
 || j        j        j        |
         |d         |d
         |d         fz  }|                     |¦  «         |	                     ¦   «         |	i}|                      |d¬¦  «        }|                     d¦  «         |                     ¦   «         D ]\  }}	|d         |v r|	||<   Œ�ŒW|| j        j        j        d         dd| j        j        j        fz  }|                     |¦  «         |                     d¦  «         || j        j        j        d         dd| j        j        j        fz  }|                     |¦  «         |                     d¦  «         || j        j        j        d         dd| j        j        j        fz  }|                     |¦  «         |                     d¦  «         |                     d¦  «         |                     d¦  «         |                     d| j        ›d| j        ›d| j        ›d| j        ›d�	¦  «         |                     d¦  «         |                     d¦  «         |                     d | j        j        j        ›d!| j        ›d| j        ›d"| j        ›d| j        ›d�¦  «         |                     d | j        j        j        ›d!| j        ›d| j        ›d#| j        ›d| j        ›d�¦  «         |D ]Ó}|d$         t6          j        u r| j        }n| j        }|                     d |d         ›d!| j        ›d| j        ›d"| j        ›d|›d�¦  «         |d         |v rjt=          | j        j        |d                  t          j        ¦  «        s:|                     d |d         ›d!| j        ›d| j        ›d#| j        ›d|›d�¦  «         ŒÔ|                     d | j        j        j        ›d!| j        ›d| j        ›d"| j        ›d| j        ›d�¦  «         |                     d | j        j        j        ›d!| j        ›d| j        ›d"| j        ›d| j        ›d�¦  «         |                     d¦  «         |                     d%¦  «         |                     d&¦  «         |                     d¦  «         | j         rñ|                     d'¦  «         |D ]k}|d
         j!        tE          d(¦  «        k    rK|                     d) #                    |d         | j         |d
         j!                 d         ¦  «        ¦  «         Œl| j          $                    ¦   «         D ]?}|d
         r5|                     d) #                    |d         |d
         ¦  «        ¦  «         Œ@|                     d¦  «         |                     d*¦  «         d d d ¦  «         n# 1 swxY w Y   tK          ||¦  «         d S )+Nú~r÷   z	utf-8-sigrù   z:
Microsoft Visual Studio Solution File, Format Version %s
z# Visual Studio %s
r1  ÚlayoutÚmirrorr   r   Údefaultr   r   T)r'  r4  rÔ   rÕ   rØ   rÙ   rÖ   r×   zGlobal
z=	GlobalSection(SolutionConfigurationPlatforms) = preSolution
z		ú|z = ú
z	EndGlobalSection
z=	GlobalSection(ProjectConfigurationPlatforms) = postSolution
z		{z}.z.ActiveCfg = z.Build.0 = é   z1	GlobalSection(SolutionProperties) = preSolution
z		HideSolutionNode = FALSE
z-	GlobalSection(NestedProjects) = preSolution
r2  z		{{{}}} = {{{}}}
z
EndGlobal
)&Úget_build_by_default_targetsr&  Úget_testlike_targetsrû   r9  r]   r^   ry   rà   rá   r   rC  r;  r	   ÚtargetsÚhasattrr   Úkeysr8  ri   r%  r  Ú	test_guidÚ
regen_guidÚinstall_guidrÏ   rN   r   ÚBUILDrß   r’   r  ra   r7  r   r.   r  r   )rc   rí   rî   Údefault_projlistÚsln_filename_tmpr:  r<  Úprjrà   rj   ÚlangÚlang_outrB  Útarget_dictÚrecursive_depsÚdepÚ	test_lineÚ
regen_lineÚinstall_lineÚpÚconfig_platformrš   s                         r1   rè   zVs2010Backend.generate_solutionl  sà  € Ø×<Ò<Ñ>Ô>ÐØ×Ò × 9Ò 9Ñ ;Ô ;Ñ<Ô<Ð<Ø'¨#Ñ-Ðõ Ð" C°+Ð>Ñ>Ô>ð ]	'À%Ø�KŠKÐVÐY]ÔYnÑnÑoÔoÐoØ�KŠKÐ.°Ô1IÑIÑJÔJÐJØ@ˆIØð 7ñ 7�ØÔ+Ô4�Ø×&Ò&¥y°Ñ':Ô':Ñ;Ô;¸xÒGÐGØ×/Ò/°°s¸1´v´~ÑFÔFÐFØœÔ+¨C°¬FÔ3�Ø �Ý˜6 ;Ñ/Ô/ð °FÔ4Dð Ø$*Ô$4×$9Ò$9Ñ$;Ô$;ð ð ˜Ø'˜ØØ$ØÔ$Ô-Ô8¸Ô>Ø˜”F˜C œF C¨¤Fð(,ñ ,�ð —’˜HÑ%Ô%Ð%Ø%Ÿ}š}™œ°Ð7�à!%×!5Ò!5Ø¨4ð "6ñ "1ô "1�à—’˜NÑ+Ô+Ð+Ø#1×#7Ò#7Ñ#9Ô#9ð 7ð 7‘K�C˜Ø˜1”vÐ!1Ð1Ð1Ø06Ð(¨Ñ-øñ7ð " TÔ%5Ô%>Ô%IÈ)Ô%TØ%0Ð2EØ%)Ô%5Ô%>Ô%Hð%Jñ JˆIð �KŠK˜	Ñ"Ô"Ð"Ø�KŠK˜Ñ'Ô'Ð'Ø" dÔ&6Ô&?Ô&JÈ9Ô&UØ&-¨Ø&*Ô&6Ô&?Ô&Jð&Lñ LˆJð �KŠK˜
Ñ#Ô#Ð#Ø�KŠK˜Ñ'Ô'Ð'Ø$¨Ô(8Ô(AÔ(LÈYÔ(WØ(5Ð7LØ(,Ô(8Ô(AÔ(Nð(Pñ PˆLð �KŠK˜Ñ%Ô%Ð%Ø�KŠK˜Ñ'Ô'Ð'Ø�KŠK˜
Ñ#Ô#Ð#Ø�KŠKð (ñ )ô )ð )à�KŠKˆKØœ˜˜¨¬¨¨¸¼¸¸Øœ˜˜ð(ñ )ô )ð )ð �KŠKÐ.Ñ/Ô/Ð/Ø�KŠKð )ñ *ô *ð *à�KŠKˆKØÔ)Ô2Ô=Ð=Ð=¸t¼~¸~¸~Øœ˜˜¨¬¨¨¸¼¸¸ðGñ Hô Hð Hð �KŠKˆKØÔ)Ô2Ô=Ð=Ð=¸t¼~¸~¸~Øœ˜˜¨¬¨¨¸¼¸¸ðGñ Hô Hð Hð ð Cð C�Ø�Q”4�=Ô.Ð.Ð.Ø&*Ô&9�O�Oà&*¤m�Oà—’�Ø˜qœT˜T˜T 4¤> > >°4´=°=°=Ø!œ^˜^˜^¨_¨_¨_ð>ñ ?ô ?ð ?ð �Q”4Ð+Ð+Ð+Ý! $¤*Ô"4°Q°q´TÔ":½E¼OÑLÔLð ,ð —K’K�KØ!" 1¤   t¤~ ~ ~°t´}°}°}Ø!%¤  °°°ð!Bñ Cô Cð Cøð �KŠKˆKØÔ)Ô2Ô<Ð<Ð<¸d¼n¸n¸nØœ˜˜¨¬¨¨¸¼¸¸ðGñ Hô Hð Hð �KŠKˆKØÔ)Ô2Ô?Ð?Ð?ÀÄÀÀØœ˜˜¨¬¨¨¸¼¸¸ðGñ Hô Hð Hð �KŠKÐ.Ñ/Ô/Ð/Ø�KŠKÐMÑNÔNÐNØ�KŠKÐ8Ñ9Ô9Ð9Ø�KŠKÐ.Ñ/Ô/Ð/ØŒ|ð 	4Ø—’ð ,ñ -ô -ð -à!ð hð h�AØ˜”t”{¥h¨s¡m¤mÒ3Ð3ØŸšÐ$;×$BÒ$BÀ1ÀQÄ4ÈÌÐVWÐXYÔVZÔVaÔIbÐcdÔIeÑ$fÔ$fÑgÔgÐgøØ"œl×1Ò1Ñ3Ô3ð Zð Z�FØ˜a”yð ZØŸšÐ$;×$BÒ$BÀ6È!Ä9ÈfÐUVÌiÑ$XÔ$XÑYÔYÐYøØ—’Ð2Ñ3Ô3Ð3Ø�KŠK˜Ñ&Ô&Ð&ð{]	'ð ]	'ð ]	'ñ ]	'ô ]	'ð ]	'ð ]	'ð ]	'ð ]	'ð ]	'ð ]	'øøøð ]	'ð ]	'ð ]	'ð ]	'õ| 	˜\Ð+;Ñ<Ô<Ð<Ð<Ð<s   ÁY<[Û[Û"[c                ó  — | j         j        j        t          d¦  «                 j        }g }d}t          | j        j                             ¦   «         ¦  «        D �] \  }\  }}|r|| 	                    ¦   «         k    r|}t          | j                              ¦   «         |                      |¦  «        ¦  «        }|                     dd¬¦  «         |dz   }t          |                      |¦  «        ¦  «        }	|	|z  }
||z  }| j         j        j        |         }|                      |t#          |¦  «        |¦  «         |                     ||
||j        f¦  «         �Œ|r)|                     d|                     |¦  «        ¦  «         |S )NÚbackend_startup_projectr   T)r†   r;  ú.vcxproj)ry   rà   Úoptionsr   Úvaluer�   r	   rN  r  Úget_basenamer   r~   rh   Úmkdirr   Útarget_guidsÚgen_vcxprojrF   r>   Úfor_machineÚinsertÚpop)rc   Ústartup_projectrî   Ústartup_idxr¯   r[   rj   ÚoutdirÚfnameÚ
target_dirÚrelnameÚprojfile_pathÚ	proj_uuids                r1   rä   zVs2010Backend.generate_projectsÒ  s†  € ØÔ*Ô3Ô;½IÐF_Ñ<`Ô<`ÔaÔgˆØˆØˆÝ#,¨T¬ZÔ-?×-EÒ-EÑ-GÔ-GÑ#HÔ#Hð 	Lñ 	LÑˆQ‘��vØð   ?°f×6IÒ6IÑ6KÔ6KÒ#KÐ#KØ�ÝØÔ ×.Ò.Ñ0Ô0Ø×#Ò# FÑ+Ô+ñô ˆFð �LŠL $°ˆLÑ5Ô5Ð5Ø˜:Ñ%ˆEÝ! $×"5Ò"5°fÑ"=Ô"=Ñ>Ô>ˆJØ  5Ñ(ˆGØ" U™NˆMØÔ(Ô1Ô>¸tÔDˆIØ×Ò˜V¥S¨Ñ%7Ô%7¸ÑCÔCÐCØ�OŠO˜T 7¨I°vÔ7IÐJÑKÔKÐKÑKð ð 	:Ø�OŠO˜A˜xŸ|š|¨KÑ8Ô8Ñ9Ô9Ð9àˆr3   c                ó  — g }g }g }g }|D ]ð}| j                              |¦  «        r|                     |¦  «         Œ2| j                              |¦  «        r|                     |¦  «         Œb| j                              |¦  «        rD|                     |¦  «         |                      |¦  «        }||vr|                     |¦  «         ŒÀ| j                              |¦  «        rŒÛ|                     |¦  «         Œñ||||fS rf   )ry   Ú	is_headerr>   Ú	is_objectÚ	is_sourceÚlang_from_source_fileÚ
is_library)rc   ÚsrclistÚsourcesÚheadersr   Ú	languagesr¯   rX  s           r1   Úsplit_sourceszVs2010Backend.split_sourcesì  s!  € ØˆØˆØˆØˆ	Øð 	"ð 	"ˆAØÔ×)Ò)¨!Ñ,Ô,ð "Ø—’˜qÑ!Ô!Ð!Ð!ØÔ!×+Ò+¨AÑ.Ô.ð "Ø—’˜qÑ!Ô!Ð!Ð!ØÔ!×+Ò+¨AÑ.Ô.ð 	"Ø—’˜qÑ!Ô!Ð!Ø×1Ò1°!Ñ4Ô4�Ø˜yÐ(Ð(Ø×$Ò$ TÑ*Ô*Ð*øØÔ!×,Ò,¨QÑ/Ô/ð "Øð —’˜qÑ!Ô!Ð!Ð!Ø˜ ¨)Ð3Ð3r3   c                ó6  — |                       |¦  «        dk    rdS t          j                             |                       |¦  «        ¦  «                             t          j        ¦  «        }t          j                             dgt          |¦  «        z  ¦  «        S )Nrn   z..)rh   r%   rK   ÚnormpathÚsplitÚseprg   rž   )rc   rj   Údirectoriess      r1   r�   z"Vs2010Backend.target_to_build_root  sv   € Ø×Ò˜vÑ&Ô&¨"Ò,Ð,Ø�2å”g×&Ò& t×':Ò':¸6Ñ'BÔ'BÑCÔC×IÒIÍ"Ì&ÑQÔQˆÝŒv�{Š{˜D˜6¥C¨Ñ$4Ô$4Ñ4Ñ5Ô5Ð5r3   c                ó   — d„ |D ¦   «         S )Nc                ó   — g | ]}d |z  ‘ŒS )ú"%s"r8   )r9   r¯   s     r1   r;   z1Vs2010Backend.quote_arguments.<locals>.<listcomp>
  s   € Ð(Ð(Ð(˜q�˜‘
Ð(Ð(Ð(r3   r8   )rc   Úarrs     r1   r§   zVs2010Backend.quote_arguments	  s   € Ø(Ð( CÐ(Ñ(Ô(Ð(r3   c                óÔ   — t          j        |d¦  «        }t          j        |d|¬¦  «        }d|z  t          j        |d¦  «        _        |sdt          j        |d¦  «        _        d S d S )Nrm   ÚProjectReferencerˆ   ú{%s}ÚProjectÚfalseÚLinkLibraryDependencies©r›   rœ   r¨   )rc   ÚrootÚincludeÚprojidÚlink_outputsÚigÚprefs          r1   Úadd_project_referencez#Vs2010Backend.add_project_reference  sv   € ÝŒ]˜4 Ñ-Ô-ˆÝŒ}˜RÐ!3¸WÐEÑEÔEˆØ.4°v©o�Œ�d˜IÑ&Ô&Ô+Øð 	Jð CJ�BŒM˜$Ð 9Ñ:Ô:Ô?Ð?Ð?ð		Jð 	Jr3   c                ó  — |                      ¦   «         |i}|                      |¦  «                             ¦   «         D ]Á}|                      ¦   «         | j        |                      ¦   «                  v rŒ6|                      ||¦  «        }t
          j                             ||                      ¦   «         dz   ¦  «        }| j        j	        j
        |                      ¦   «                  }|                      |||¦  «         ŒÂd S )Nrd  )ri   r%  r  rb   Úget_target_dir_relative_tor%   rK   rg   ry   rà   ri  r—  )rc   r‘  rj   rZ  r\  r�   ÚvcxprojÚtids           r1   Úadd_target_depszVs2010Backend.add_target_deps  sÚ   € Ø—}’}‘”¨Ð/ˆØ×'Ò'¨Ñ4Ô4×;Ò;Ñ=Ô=ð 	;ð 	;ˆCØ�zŠz‰|Œ|˜tÔ7¸¿º¹¼ÔHÐHÐHàØ×5Ò5°c¸6ÑBÔBˆGÝ”g—l’l 7¨C¯JªJ©L¬L¸:Ñ,EÑFÔFˆGØÔ"Ô+Ô8¸¿º¹¼ÔFˆCØ×&Ò& t¨W°cÑ:Ô:Ð:Ð:ð	;ð 	;r3   ÚUtilityN)ÚconftypeÚ
target_extÚtarget_platformc               óÞ  — t          j        dddddœ¦  «        }t          j        |dddi¦  «        }|s| j        }t          j        |d	d
| j        dz   |z   i¦  «        }	t          j        |	d¦  «        }
| j        |
_        t          j        |	d¦  «        }||_        t          j        |dd¬¦  «        }t          j        |d¦  «        }d|z  |_        t          j        |d¦  «        }| j        dz   |_        t          j        |d¦  «        }||_        t          j        |d¦  «        }
||
_        t          j        |d¦  «        }||_        | j        r| j        t          j        |d¦  «        _        dt          j        |d¦  «        _        t          j        |dd¬¦  «         t          j        |dd¬¦  «        }|t          j        |d¦  «        _        dt          j        |d¦  «        _        d t          j        |d!¦  «        _        | j        r| j        t          j        |d"¦  «        _        t          j        |dd#¬¦  «         t          j        |d¦  «        }t          j        |d$¦  «        }| j        |_        t          j        |d%¦  «        }d&|_        t          j        |d'¦  «        }|d(z   |_        t          j        |d)¦  «        }||_        |r|t          j        |d*¦  «        _        ||fS )+Nr�  ÚBuildz4.0z3http://schemas.microsoft.com/developer/msbuild/2003)ÚDefaultTargetsÚToolsVersionÚxmlnsrm   ÚLabelÚProjectConfigurationsÚProjectConfigurationr‰   rI  ÚConfigurationr   ÚPropertyGroupÚGlobals©r¦  ÚProjectGuidrŒ  ÚKeywordÚProjÚRootNamespaceÚProjectNameÚWindowsTargetPlatformVersionÚtrueÚUseMultiToolTaskÚImportz,$(VCTargetsPath)\Microsoft.Cpp.Default.props©r�  ÚConfigurationTypeÚ	MultiByteÚCharacterSetrŽ  ÚUseOfMfcÚPlatformToolsetz$$(VCTargetsPath)\Microsoft.Cpp.propsÚ_ProjectFileVersionÚOutDirz.\ÚIntDirr€   Ú
TargetNameÚ	TargetExt)	r›   ÚElementrœ   rN   rÏ   r¨   r`   r_   r\   )rc   Útarget_nameÚtemp_dirÚguidrž  rŸ  r   r‘  Ú	confitemsÚprjconfr`  ÚplÚglobalgroupÚguidelemÚkwÚnsÚpnameÚtype_configÚdirelemÚfverrp  ÚintdirÚtnames                          r1   Úcreate_basic_projectz"Vs2010Backend.create_basic_project!  s×  € õ Œz˜)¸Ø6;Ø/dð&fð &fñ gô gˆõ ”M $¨°gÐ?VÐ5WÑXÔXˆ	Øð 	,Ø"œmˆOÝ”- 	Ð+AØ!*¨D¬N¸SÑ,@À?Ñ,RÐ SñUô UˆåŒM˜' ?Ñ3Ô3ˆØ”ˆŒÝŒ]˜7 JÑ/Ô/ˆØ!ˆŒõ ”m D¨/ÀÐKÑKÔKˆÝ”= ¨mÑ<Ô<ˆØ ™ˆŒÝŒ]˜;¨	Ñ2Ô2ˆØ”- &Ñ(ˆŒåŒ]˜;¨Ñ8Ô8ˆØˆŒåŒM˜+ zÑ2Ô2ˆØ ˆŒÝ”˜k¨=Ñ9Ô9ˆØ ˆŒ
ØÔ/ð 	sØNRÔNr�BŒM˜+Ð'EÑFÔFÔKØ>D�Œ�kÐ#5Ñ6Ô6Ô;å
Œ�d˜HÐ.]Ð^Ñ^Ô^Ð^õ ”m D¨/ÀÐQÑQÔQˆØ?G�Œ�kÐ#6Ñ7Ô7Ô<Ø:E�Œ�k >Ñ2Ô2Ô7à6=�Œ�k :Ñ.Ô.Ô3ØÔ ð 	WØAEÔAV�BŒM˜+Ð'8Ñ9Ô9Ô>õ 	Œ�d˜HÐ.UÐVÑVÔVÐVõ ”-  oÑ6Ô6ˆÝŒ}˜WÐ&;Ñ<Ô<ˆØÔ-ˆŒ	Ý”˜w¨Ñ1Ô1ˆØˆŒÝ”˜w¨Ñ1Ô1ˆØ ‘oˆŒå”˜g |Ñ4Ô4ˆØ ˆŒ
àð 	BØ7A�BŒM˜' ;Ñ/Ô/Ô4à�kÐ"Ð"r3   c           	     óL  — |                       |j        |                     ¦   «         |¬¦  «        \  }}|                      |¦  «        }|j        s2t          |t          j        ¦  «        sJ ‚t          |¦  «        dk    sJ ‚n¹t          |t          j        ¦  «        rJ ‚|  	                    |¦  «        }|  
                    |¦  «        \  }}}	|                      |j        d         |	dd …         d|d¬¦  «        \  }
}|                      |dd                     |                      |
¦  «        ¦  «        |¬¦  «         t          j        |d	d
¬¦  «         |                      |¦  «         |                      ||¦  «         |                      t          j        |¦  «        |¦  «         d S )N©rÃ  rÄ  r   r   T)r„   ÚenvÚverboseÚ
run_targetrŠ   )r¸   rµ  ú&$(VCTargetsPath)\Microsoft.Cpp.targetsr¶  )rÒ  r[   ri   r    Úcommandr’   r	   ÚAliasTargetrž   Úget_run_target_envÚeval_custom_target_commandr¤   Úadd_custom_buildrg   r§   r›   rœ   Úadd_regen_dependencyrœ  Ú_prettyprint_vcxproj_xmlÚElementTree)rc   rj   ÚofnamerÄ  r‘  rÍ  Údepend_filesÚ
target_envr¾   Úcmd_rawÚwrapper_cmds              r1   Úgen_run_target_vcxprojz$Vs2010Backend.gen_run_target_vcxprojf  s¼  € Ø"×7Ò7¸¼ØAGÇÂÁÄØ=Að 8ñ Cô CÑˆˆ{ð ×:Ò:¸6ÑBÔBˆàŒ~ð 	5õ ˜f¥eÔ&7Ñ8Ô8Ð8Ð8Ð8Ý�|Ñ$Ô$¨Ò)Ð)Ð)Ð)Ð)å! &­%Ô*;Ñ<Ô<Ð<Ð<Ð<à×0Ò0°Ñ8Ô8ˆJØ ×;Ò;¸FÑCÔC‰MˆAˆq�'Ø!×6Ò6°v´~ÀaÔ7HÈ'ÐRSÐRTÐRTÌ+ØGKÐQ[Ø?Cð 7ñ Eô E‰NˆK˜ð ×!Ò! $¨°c·h²h¸t×?SÒ?SÐT_Ñ?`Ô?`Ñ6aÔ6aØ'3ð "ñ 5ô 5ð 5õ
 	Œ�d˜HÐ.WÐXÑXÔXÐXØ×!Ò! $Ñ'Ô'Ð'Ø×Ò˜T 6Ñ*Ô*Ð*Ø×%Ò%¥b¤n°TÑ&:Ô&:¸FÑCÔCÐCÐCÐCr3   c                óæ  — |j         t          j        u r| j        }n| j        }|                      |j        |                     ¦   «         ||¬¦  «        \  }}d|_        |  	                    |d¦  «        \  }}}	|  
                    |d¦  «        }
t          j                             | j                             ¦   «         |                      |¦  «        ¦  «        }|                     ¦   «         }|                      |j        d         |	dd …         |||j        r|d         nd |j        r|d         nd d|j        |j        ¬¦	  «	        \  }}|j        rN||                      t          j                             | j                             ¦   «         d¦  «        ¦  «        gz  }|                      |dd                     |                      |¦  «        ¦  «        |d	d …         |z   |
z   ||j         ¬
¦  «         t;          j        |dd¬¦  «         |                      ||¦  «         |                       |¦  «         |  !                    ||¦  «         |  "                    t;          j#        |¦  «        |¦  «         d S )N©rÃ  rÄ  r   Tr   r   )r‚   Úextra_bdepsrƒ   Úfeedr„   rÕ  rÖ  úoutofdate.fileÚcustom_targetrŠ   r…   )r¸   ÚoutputsÚverify_filesrµ  rØ  r¶  )$rk  r   rT  rß   rN   rÒ  r[   ri   Úabsolute_pathsrÜ  r    r%   rK   rg   ry   r~   rh   Ú get_transitive_build_target_depsr¤   rÙ  rƒ   rê  rÕ  ÚconsoleÚbuild_always_staleÚnonexistent_fileÚget_scratch_dirrÝ  r§   r›   rœ   rÁ   rÞ  rœ  rß  rà  )rc   rj   rá  rÄ  rN   r‘  rÍ  ÚsrcsÚ
ofilenamesr½   râ  r¼   ré  rå  r¾   s                  r1   Úgen_custom_target_vcxprojz'Vs2010Backend.gen_custom_target_vcxproj„  s…  € ØÔ¥Ô!4Ð4Ð4ØÔ*ˆHˆHà”}ˆHØ"×7Ò7¸¼ØAGÇÂÁÄØ=AØHPð 8ñ Rô RÑˆˆ{ð !%ˆÔØ"&×"AÒ"AÀ&È$Ñ"OÔ"OÑˆˆz˜3Ø×:Ò:¸6À4ÑHÔHˆõ ”7—<’< Ô 0× >Ò >Ñ @Ô @À$×BUÒBUÐV\ÑB]ÔB]Ñ^Ô^ˆØ×=Ò=Ñ?Ô?ˆØ×2Ò2°6´>À!Ô3DÀcÈ!È"È"Ägà;CØ?JØLRÌNÐ;d¸:Àa¼=¸=Ð`dØCIÄ;Ð8X¸¸Q¼¸ÐTXØCGØ7=´zØ;A¼>ð 3ñ Kô K‰ˆ�Qð Ô$ð 	Eà˜4×0Ò0µ´·²¸dÔ>N×>^Ò>^Ñ>`Ô>`Ø1Añ2Cô 2Cñ Dô Dð Eñ EˆJà×Ò˜d O°S·X²X¸d×>RÒ>RÐS^Ñ>_Ô>_Ñ5`Ô5`Ø#.¨r¨s¨sÔ#3°dÑ#:¸\Ñ#IÐS]Ø/5Ô/HÐ+Hð 	ñ 	Jô 	Jð 	Jõ 	Œ�d˜HÐ.WÐXÑXÔXÐXØ×/Ò/°¸Ñ=Ô=Ð=Ø×!Ò! $Ñ'Ô'Ð'Ø×Ò˜T 6Ñ*Ô*Ð*Ø×%Ò%¥b¤n°TÑ&:Ô&:¸FÑCÔCÐCÐCÐCr3   c                óô  — |j         t          j        u r| j        }n| j        }|                      |j        |                     ¦   «         ||¬¦  «        \  }}t          j	        |dd¬¦  «         |  
                    |¦  «        g|_        g |_        |                      ||¦  «         |                      |¦  «         |                      ||¦  «         |                      t          j        |¦  «        |¦  «         d S )Nrè  rµ  rØ  r¶  )rk  r   rT  rß   rN   rÒ  r[   ri   r›   rœ   Úcompile_target_to_generatorÚ	generatedr}  rÁ   rÞ  rœ  rß  rà  )rc   rj   rá  rÄ  rN   r‘  rÍ  s          r1   Úgen_compile_target_vcxprojz(Vs2010Backend.gen_compile_target_vcxproj¬  sú   € ØÔ¥Ô!4Ð4Ð4ØÔ*ˆHˆHà”}ˆHØ"×7Ò7¸¼ØAGÇÂÁÄØ=AØHPð 8ñ Rô RÑˆˆ{õ 	Œ�d˜HÐ.WÐXÑXÔXÐXØ ×<Ò<¸VÑDÔDÐEˆÔØˆŒØ×/Ò/°¸Ñ=Ô=Ð=Ø×!Ò! $Ñ'Ô'Ð'Ø×Ò˜T 6Ñ*Ô*Ð*Ø×%Ò%¥b¤n°TÑ&:Ô&:¸FÑCÔCÐCÐCÐCr3   c                óž   — |                      d¦  «        d         }|t          j        v rdS |t          j        v rdS t	          d|› d�¦  «        ‚)Nr2  r…   ÚcÚcppz*Could not guess language from source file )rƒ  r   Ú
c_suffixesÚcpp_suffixesr   )ÚclsÚsrcÚexts      r1   rz  z#Vs2010Backend.lang_from_source_file½  sV   € à�iŠi˜‰nŒn˜RÔ ˆØ•)Ô&Ð&Ð&Ø�3Ø•)Ô(Ð(Ð(Ø�5ÝÐPÈ#ÐPÐPÐPÑQÔQÐQr3   c                ó@   — ||v r|                       |||¦  «         d S d S rf   )Úuse_pch)rc   Úpch_sourcesrX  Úinc_cls       r1   Úadd_pchzVs2010Backend.add_pchÆ  s1   € Ø�;ÐÐØ�LŠL˜ d¨FÑ3Ô3Ð3Ð3Ð3ð Ðr3   c                ól   — t          j        |d¦  «        }d|_        |                      |||¦  «         d S )NÚPrecompiledHeaderÚCreate©r›   rœ   r¨   Úadd_pch_files)rc   r  rX  r  Úpchs        r1   Ú
create_pchzVs2010Backend.create_pchÊ  s9   € ÝŒm˜FÐ$7Ñ8Ô8ˆØˆŒØ×Ò˜;¨¨fÑ5Ô5Ð5Ð5Ð5r3   c                óª   — t          j        |d¦  «        }d|_        |                      |||¦  «        }t          j        |d¦  «        }|dz   |_        d S )Nr
  ÚUseÚForcedIncludeFilesz;%(ForcedIncludeFiles)r  )rc   r  rX  r  r  ÚheaderÚpch_includes          r1   r  zVs2010Backend.use_pchÏ  sX   € ÝŒm˜FÐ$7Ñ8Ô8ˆØˆŒØ×#Ò# K°°vÑ>Ô>ˆÝ”m FÐ,@ÑAÔAˆØ!Ð$<Ñ<ˆÔÐÐr3   c                ó  — t           j                             ||         d         ¦  «        }t          j        |d¦  «        }||_        t          j        |d¦  «        }d|› d�|_        t          j        |d¦  «        }d|› d�|_        |S )Nr   ÚPrecompiledHeaderFileÚPrecompiledHeaderOutputFilez$(IntDir)$(TargetName)-z.pchÚProgramDataBaseFileNameú.pdb)r%   rK   r>  r›   rœ   r¨   )rc   r  rX  r  r  Úpch_fileÚpch_outÚpch_pdbs           r1   r  zVs2010Backend.add_pch_filesÖ  s‹   € Ý”×!Ò! +¨dÔ"3°AÔ"6Ñ7Ô7ˆÝ”= Ð)@ÑAÔAˆð ˆŒÝ”- Ð(EÑFÔFˆØ;°Ð;Ð;Ð;ˆŒõ
 ”- Ð(AÑBÔBˆØ;°Ð;Ð;Ð;ˆŒàˆr3   c                óz   — |dd …                               d¦  «        rdS |dd …                               d¦  «        S )Nr   Ú	fsanitizeTÚM)r<   )rc   Úentrys     r1   Ú"is_argument_with_msbuild_xml_entryz0Vs2010Backend.is_argument_with_msbuild_xml_entryí  sC   € ð ���Œ9×Ò Ñ,Ô,ð 	Ø�4Ø�Q�R�RŒy×#Ò# CÑ(Ô(Ð(r3   c                óR  — g }||                               ¦   «         D ]\}|                      |¦  «        rŒ|dk    r|                     |¦  «         Œ4|                     |                      |¦  «        ¦  «         Œ]d                     |¦  «        t          j        |d¦  «        _        d S )Nú%(AdditionalOptions)rŠ   ÚAdditionalOptions)Ú	to_nativer!  r>   Úescape_additional_optionrg   r›   rœ   r¨   )rc   rX  r©   Ú	file_argsr?   rA   s         r1   Úadd_additional_optionsz$Vs2010Backend.add_additional_optionsõ  sª   € ØˆØ˜T”?×,Ò,Ñ.Ô.ð 	@ð 	@ˆCØ×6Ò6°sÑ;Ô;ð ØØÐ,Ò,Ð,Ø—’˜CÑ Ô Ð Ð à—’˜D×9Ò9¸#Ñ>Ô>Ñ?Ô?Ð?Ð?Ø?B¿xºxÈ¹~¼~�Œ�kÐ#6Ñ7Ô7Ô<Ð<Ð<r3   c                ó  — g }||         D ]F}|dk    r|                      |¦  «         Œ|                      |                      |¦  «        ¦  «         ŒGd                     |¦  «        t          j        |d¦  «        _        d S )Nú%(PreprocessorDefinitions)rŒ   ÚPreprocessorDefinitions)r>   Úescape_preprocessor_definerg   r›   rœ   r¨   )rc   rX  r©   Úfile_definesÚdefinesÚdefines         r1   Úadd_preprocessor_definesz&Vs2010Backend.add_preprocessor_defines   sˆ   € ØˆØ" 4Ô(ð 	Hð 	HˆFØÐ5Ò5Ð5Ø—’˜vÑ&Ô&Ð&Ð&à—’˜t×>Ò>¸vÑFÔFÑGÔGÐGÐGØEHÇXÂXÈgÑEVÔEV�Œ�kÐ#<Ñ=Ô=ÔBÐBÐBr3   c                óp   — ||         }d                      |¦  «        t          j        |d¦  «        _        d S )NrŒ   ÚAdditionalIncludeDirectories)rg   r›   rœ   r¨   )rc   rX  r©   Úfile_inc_dirsÚdirss        r1   Úadd_include_dirszVs2010Backend.add_include_dirs	  s2   € Ø˜TÔ"ˆØJMÏ(Ê(ÐSWÉ.Ì.�Œ�kÐ#AÑBÔBÔGÐGÐGr3   c                óH   — t          | ¦  «        t          |¦  «        z   dk    S )Nr   )rž   )r   Úadditional_objectsÚgenerated_objectss      r1   Úhas_objectszVs2010Backend.has_objects  s#   € õ �7‰|Œ|�cÐ"4Ñ5Ô5Ñ5¸Ò9Ð9r3   c                ó   — d S rf   r8   )Únoder8  s     r1   Úadd_generated_objectsz#Vs2010Backend.add_generated_objects  s	   € ð 	ˆr3   c                ór   — t                                ddddddddd	œ¦  «        }|                      |¦  «        S )
Nú%25ú%24ú%40ú%27ú%3Bú%3Fú%2Az\\)ú%ú$ú@ú'rŒ   ú?Ú*r€   )rF   Ú	maketransÚ	translate)r/  Útables     r1   r,  z(Vs2010Backend.escape_preprocessor_define  sK   € õ —’ E°¸EØ$)°¸EÈð &,ð-ð -ñ .ô .ˆð ×Ò Ñ&Ô&Ð&r3   c                ó²   — t                                ddddddddd	œ¦  «        }|                      |¦  «        } |                      d
¦  «        r| d
z  } d| › d�S )Nr>  r?  r@  rA  rB  rC  rD  z%20)rE  rF  rG  rH  rŒ   rI  rJ  rŠ   r€   r  )rF   rK  rL  Úendswith)ÚoptionrM  s     r1   r&  z&Vs2010Backend.escape_additional_option$  sw   € õ —’ E°¸EØ$)°¸EÈÐTYð[ð [ñ \ô \ˆà×!Ò! %Ñ(Ô(ˆð
 �?Š?˜4Ñ Ô ð 	Ø�d‰NˆFØ�6ˆ}ˆ}ˆ}Ðr3   c                óÆ  — g }g }g }| D ]Ô}|                      d¦  «        r9|dd…         }||v r|                     |¦  «         |                     |¦  «         ŒP|                      d¦  «        r|                     |¦  «         Œ{|                     d¦  «        s|                     d¦  «        r||vr|                     |¦  «         Œ¿|                     |¦  «         ŒÕ|||fS )z§
        Split a list of link arguments into three lists:
        * library search paths
        * library filenames (or paths)
        * other link arguments
        z	/LIBPATH:é	   N)r�   ú-z.libz.a)r<   Úremover>   rO  )r?   ÚlpathsÚlibsÚotherrA   Úlpaths         r1   Úsplit_link_argszVs2010Backend.split_link_args2  s  € ð ˆØˆØˆØð 	"ð 	"ˆCØ�~Š~˜kÑ*Ô*ð "Ø˜A˜B˜Bœ�ð
 ˜F�?�?Ø—M’M %Ñ(Ô(Ð(Ø—’˜eÑ$Ô$Ð$Ð$Ø—’ 
Ñ+Ô+ð 	"Ø—’˜SÑ!Ô!Ð!Ð!ð —’˜fÑ%Ô%ð "¨¯ª°dÑ);Ô);ð "à˜d�?�?Ø—K’K Ñ$Ô$Ð$øà—’˜SÑ!Ô!Ð!Ð!Ø�t˜UÐ"Ð"r3   c                ó  — |j                              ¦   «         D ]\  }}|dv r|c S Œt          |j        ¦  «        dk    r<| j        j        j         |j                                      ¦   «         D ]\  }}|dv r|c S Œt          d¦  «        ‚)N>   rý  rþ  r   zGCould not find a C or C++ compiler. MSVC can only build C/C++ projects.)r   r  rž   r   ry   rà   rk  r   )rc   rj   rX  rý  s       r1   Ú_get_cl_compilerzVs2010Backend._get_cl_compilerS  s¬   € ØÔ'×-Ò-Ñ/Ô/ð 	ð 	‰GˆD�!Ø�|Ð#Ð#Ø���ð $õ ˆvŒ~ÑÔ Ò"Ð"ØÔ+Ô4Ô>¸vÔ?QÔR×XÒXÑZÔZð ð ‘��aØ˜<Ð'Ð'Ø�H�H�Hð (åÐfÑgÔgÐgr3   c                óJ  — |dz   }|                      |dd¬¦  «         t          j        j                             |¦  «        }t          |dd¬¦  «        5 }|                      |                     ¦   «         ¦  «         d d d ¦  «         n# 1 swxY w Y   t          ||¦  «         d S )NrE  rø   T)rú   Úxml_declarationr÷   rù   )r9  ÚxmlÚdomÚminidomÚparserû   Útoprettyxmlr   )rc   Útreerá  Ú
ofname_tmpÚdocrp   s         r1   rß  z&Vs2010Backend._prettyprint_vcxproj_xml_  sÕ   € Ø˜c‘\ˆ
Ø�
Š
�:¨Àˆ
ÑFÔFÐFõ ŒgŒo×#Ò# JÑ/Ô/ˆÝ�*˜c¨GÐ4Ñ4Ô4ð 	(¸Ø�HŠH�S—_’_Ñ&Ô&Ñ'Ô'Ð'ð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(å˜V ZÑ0Ô0Ð0Ð0Ð0s   Á(BÂBÂBc           
     óÒF  — t          j        d|j        › d�¦  «         d}g | j        |                     ¦   «         <   t          |t          j        ¦  «        r5d}|j        �|j        sd}�n|j	         
                    d¦  «        d         }nñt          |t          j        ¦  «        rd}nÔt          |t          j        ¦  «        rd	}n·t          |t          j        ¦  «        r|                      |||¦  «        S t          |t          j        ¦  «        r|                      |||¦  «        S t          |t          j        ¦  «        r|                      |||¦  «        S t'          d
|                     ¦   «         › �¦  «        ‚|                      |¦  «        }t,          j                             || j        ¦  «        }t,          j                             ||                      |¦  «        ¦  «        }|                      |j        ¦  «        \  }	}
}}|j        r|                      ||	¦  «        }	|                      |¦  «        }|                      | j!        ¦  «        }|| "                    | j#        ¦  «        z  }|| $                    | j        ¦  «        z  }|| %                    | j&        ¦  «        z  }| '                    | j!        ¦  «        }| j(        j)        j*        tW          d¦  «                 }|j        }|j,        tZ          j.        u r| j/        }n| j0        }t,          j         1                    | 2                    ¦   «         ¦  «        }|  3                    |d         |                     ¦   «         |||d         |¬¦  «        \  }}dti          j5        |d¦  «        _6        dti          j5        |d¦  «        _6        d|v rdti          j5        |d¦  «        _6        ti          j5        |d¦  «        }ti          j5        |d¦  «        }|j7        dk    rw| j!        dk    r6dti          j5        |d¦  «        _6        dti          j5        |d¦  «        _6        �n«dti          j5        |d¦  «        _6        dti          j5        |d¦  «        _6        �nu|j7        dk    rv| j!        dk    r6dti          j5        |d¦  «        _6        dti          j5        |d¦  «        _6        �n)dti          j5        |d¦  «        _6        dti          j5        |d¦  «        _6        nô|j7        d k    r5dti          j5        |d¦  «        _6        dti          j5        |d¦  «        _6        n´|j7        d!k    r5dti          j5        |d¦  «        _6        dti          j5        |d¦  «        _6        nt|j7        d"k    r5dti          j5        |d¦  «        _6        dti          j5        |d¦  «        _6        n4dti          j5        |d¦  «        _6        dti          j5        |d¦  «        _6        d#|v rdti          j5        |d$¦  «        _6        d%|v rd&ti          j5        |d'¦  «        _6        nXd(|v rd)ti          j5        |d'¦  «        _6        n9d*|v rd+ti          j5        |d'¦  «        _6        nd,ti          j5        |d'¦  «        _6        d-|v rd.ti          j5        |d¦  «        _6        n=d/|v rd0ti          j5        |d¦  «        _6        nd1|v rd2ti          j5        |d¦  «        _6        d3|j8        v r¸| j(        j)        j*        tW          d4|j,        d3¬5¦  «                 }|j7        d6k    rd7ti          j5        |d8¦  «        _6        nf|j7        d9k    rd:ti          j5        |d8¦  «        _6        n@|j7        d;k    rdti          j5        |d8¦  «        _6        nd<ti          j5        |d8¦  «        _6        |  9                    ||¦  «        \  }}}|                      |¦  «        \  }}}}|                      |¦  «        \  } }!}"}#|| z  }||!z  }||#z  }g }$g }%g }&d=„ |j8         :                    ¦   «         D ¦   «         }'d>„ |j8        D ¦   «         }(d?„ |j8        D ¦   «         })|j8         :                    ¦   «         D ]s\  }*}+|*|'v rj|'|*xx         tq          j;        | <                    ¦   «         |+¦  «        z  cc<   |'|*xx         |+ =                    | <                    ¦   «         ¦  «        z  cc<   Œt| j        j>        |j,                  ?                    |j@        i ¦  «         :                    ¦   «         D ]\  }*},|*|'v r|'|*xx         |,z  cc<   Œ| j        jA        |j,                  :                    ¦   «         D ]\  }*},|*|'v r|'|*xx         |,z  cc<   Œ|' B                    ¦   «         D ]C}*| j(        j)        j*        tW          d@|j,        |*¬5¦  «                 }-|'|*xx         |-j7        z  cc<   ŒD|' C                    ¦   «         D �]¼},|,g dA¢z  },|,dB„ |D ¦   «         z  },t‰          | E                    ¦   «         ¦  «        D �]€}.t‰          |. F                    ¦   «         ¦  «        D ]á}/t,          j                             |. G                    ¦   «         |/¦  «        }0	 |, H                    dC|  I                    |0|jJ        ¦  «        z   ¦  «         |, H                    dCt,          j                             ||0¦  «        z   ¦  «         Œ�# t–          $ r8 |, H                    dCt,          j         L                    |0¦  «        z   ¦  «         Y ŒÞw xY w|. M                    ¦   «         D ]e}/t,          j                             |. G                    ¦   «         |/¦  «        }0|, H                    dC|  I                    |0|jJ        ¦  «        z   ¦  «         Œf�Œ‚�Œ¾|jN         :                    ¦   «         D ]\  }*},|*|'v r|'|*xx         |,z  cc<   Œ|' C                    ¦   «         D ]\},|  I                    |  O                    |¦  «        |                      |¦  «        ¦  «        g}1|jP        r|1d|gz  }1|,dD„ |1D ¦   «         z  },Œ]|' :                    ¦   «         D �]	\  }*},|,d d …         D ]ø}2|2 Q                    dE¦  «        s|2dFk    rT|'|*          R                    |2¦  «         |2dFk    r|2}3n
|2dGd …         }3|3|(|*         vr|(|*          H                    |3¦  «         Œq|2 Q                    dH¦  «        s|2dIk    rl|'|*          R                    |2¦  «         |2dIk    r|2}4n
|2dGd …         }4|4|)|*         vr|)|*          H                    |4¦  «         |4|&vr|& H                    |4¦  «         Œù�Œt‰          | S                    ¦   «         ¦  «        D �] }.t          |.t¨          jU        ¦  «        rdti          j5        |dJ¦  «        _6        Œ8| V                    |. W                    ¦   «         ¦  «        }5|5D ]ž}2|2 Q                    dE¦  «        r9|2dGd …         }3|3|%v r|% R                    |3¦  «         |% H                    |3¦  «         ŒP|2 Q                    dH¦  «        r$|2dGd …         }4|4|&vr|& H                    |4¦  «         Œ‰|$ H                    |2¦  «         ŒŸ�Œ||z  }dK|v r|$ H                    dK¦  «         t±          |$¦  «        dk    rB|$ H                    dL¦  «         dM                     |$¦  «        ti          j5        |dN¦  «        _6        dO                     |&¦  «        ti          j5        |dP¦  «        _6        |% H                    dF¦  «         dO                     |%¦  «        ti          j5        |dQ¦  «        _6        dti          j5        |dR¦  «        _6        | Y                    tW          dS¦  «        ¦  «        }6dTtµ          dt·          |6¦  «        z   ¦  «        z   ti          j5        |dU¦  «        _6        | Y                    tW          dV¦  «        ¦  «        rdti          j5        |dW¦  «        _6        t¹          |¦  «        }7dX|7v rdYti          j5        |dZ¦  «        _6        n\d[|7v rd\ti          j5        |dZ¦  «        _6        n=d]|7v rd^ti          j5        |dZ¦  «        _6        nd_|7v rd`ti          j5        |dZ¦  «        _6        da|7v rdti          j5        |db¦  «        _6        dc|7v rddti          j5        |de¦  «        _6        ndf|7v rdgti          j5        |de¦  «        _6        dh|7v rditi          j5        |dj¦  «        _6        nd_|7vrdkti          j5        |dj¦  «        _6        |  ]                    |'|¦  «         i }8| j(        j)        j*         ?                    tW          dl¦  «        ¦  «        �rdmD ]þ}9| ^                    |9¦  «        }:|:sŒ|j_        dnk    rÊt±          |:¦  «        dk    rt,          j                             ||  `                    ||9|:d         ¦  «        ¦  «        };t,          j         a                    t,          j                             ||:d         ¦  «        ¦  «        }<n(t,          j                             ||:d         ¦  «        };d }<|:d         |;|9|<g|8|9<   Œï|:d         d |9d g|8|9<   Œÿti          j5        |do¦  «        }=ti          j5        |=dQ¦  «         ti          j5        |dp¦  «        }>| b                    ¦   «         }?|?| '                    | j!        ¦  «        z  }?| j        r|  c                    |>¦  «         ndti          j5        |>dq¦  «        _6        t          |t          j        ¦  «        �sêt          |t          jd        ¦  «        r)| j(        j)        j*        }@|?| e                    |@¦  «        z  }?|?| j         f                    ||j@        |j,        ¦  «        z  }?|?| j         g                    ||j,        ¦  «        z  }?|?| j(        j)         h                    |j,        | i                    ¦   «         ¦  «        z  }?|?|jj        z  }?| S                    ¦   «         D ]^}At          |At¨          jU        ¦  «        rdti          j5        |dr¦  «        _6        Œ7|? k                    |A l                    ¦   «         ¦  «         Œ_| m                    ¦   «         D ]�}.t          |.t          j        ¦  «        rs|. S                    ¦   «         D ]^}At          |At¨          jU        ¦  «        rdti          j5        |dr¦  «        _6        Œ7|? k                    |A l                    ¦   «         ¦  «         Œ_Œ�|?| n                    | j(        j)        j*        ¦  «        z  }?|  o                    |? p                    ¦   «         ¦  «        \  }B}C}?| m                    ¦   «         D �]B}Dt          |Dt          jq        ¦  «        r|D}En$| j        jr        |D                     ¦   «                  }Et,          j                             ||  s                    |E¦  «        ¦  «        }F|D|jt        v �r¨|j_        dnk    �r±të          |jv        ds¦  «        �r›|D w                    dt¦  «        }*|*jx        D ]¨}G|G y                    ¦   «         D ]‘};| j(         z                    |;¦  «        ru|  {                    |D|G|;¦  «        }Hdt,          j         1                    |H¦  «        d         dd …         z   }I|? H                    |Hd t±          |I¦  «         …         duz   ¦  «         Œ’Œ©|*j|        D ]¥};d }J| j(         z                    |;¦  «        r‡|  }                    |D|;¦  «        }J|  I                    |  O                    |D¦  «        |                      |D¦  «        ¦  «        }Kt,          j                             |K|J¦  «        }L|? H                    |L¦  «         Œ¦|? ~                    |                      |D¦  «        ¦  «         n|?| €                    |F¦  «        z  }?|  �                    |D|¦  «        }Mt,          j                             |M|D                     ¦   «         dvz   ¦  «        }N| j(        j)        j‚        |D                     ¦   «                  }O|  ƒ                    ||N|Odw¬x¦  «         | j        |                     ¦   «                   H                    |D                     ¦   «         ¦  «         �Œ)|F|Cvr|C H                    |F¦  «         �ŒD|  „                    |¦  «        D ]>}P|C H                    |  I                    |P|                      |¦  «        ¦  «        ¦  «         Œ?g }Q|                      ||¦  «        d         D ].}Rt          |Rt´          ¦  «        sJ ‚|Q H                    |R¦  «         Œ/|"D ]}R|Q H                    |R¦  «         Œt±          |?¦  «        dk    rB|? H                    dL¦  «         dM                     |?¦  «        ti          j5        |>dN¦  «        _6        t±          |B¦  «        dk    rC|B …                    ddy¦  «         dO                     |B¦  «        ti          j5        |>dz¦  «        _6        t±          |C¦  «        dk    rB|C H                    d{¦  «         dO                     |C¦  «        ti          j5        |>d|¦  «        _6        ti          j5        |>d}¦  «        }Sd~| 2                    ¦   «         › �|S_6        ti          j5        |>d¦  «        }T||T_6        t          |t          j        t          j        f¦  «        r@| †                    ¦   «         r,| †                    ¦   «         ti          j5        |>d€¦  «        _6        t          |t          j        ¦  «        r^|j‡        rWt,          j                             ||j‡         ˆ                    | j        ¦  «        ¦  «        }U|Uti          j5        |>d�¦  «        _6        | j        r ti          j5        |>d‚¦  «        }Vd~|› dƒ�|V_6        ti          j5        |>d„¦  «        }W|j,        tZ          j.        u r| ‰                    ¦   «         }Xn| j0         ‰                    ¦   «         }X|Xd…k    rd†|W_6        nZ|Xd‡k    s�t          |X¦  «        rdˆ|W_6        n<|Xd‰k    rdŠ|W_6        n.|Xd‹k    rdŒ|W_6        n |Xd�k    rdŽ|W_6        nt'          d�|Xz   ¦  «        ‚dti          j5        |>d�¦  «        _6        | j(        j)         Y                    tW          d¦  «        ¦  «        sdti          j5        |>d‘¦  «        _6        ti          j5        |d’¦  «        }Yti          j5        |Yd,t,          j                             |�t          ¦  «        ¬“¦  «         d”„ }Zg }[t±          |
¦  «        t±          |¦  «        z   t±          |jŒ        ¦  «        z   t±          |8¦  «        z   dk    �rbti          j5        |d’¦  «        }\|
D ]]}]t,          j                             ||] ˆ                    | j        ¦  «        ¦  «        }U |Z|U|[¦  «        rti          j5        |\d•|U¬“¦  «         Œ^|D ]%}] |Z|]|[¦  «        rti          j5        |\d•|]¬“¦  «         Œ&|jŒ        D ]]}]t,          j                             ||] ˆ                    | j        ¦  «        ¦  «        }U |Z|U|[¦  «        rti          j5        |\d•|U¬“¦  «         Œ^|8 C                    ¦   «         D ]K}
t,          j                             ||
d         ¦  «        }H |Z|H|[¦  «        rti          j5        |\d•|H¬“¦  «         ŒLg }^t±          |	¦  «        t±          |¦  «        z   t±          |8¦  «        z   dk    �rñti          j5        |d’¦  «        }_|	D �]}`t,          j                             ||` ˆ                    | j        ¦  «        ¦  «        }U |Z|U|^¦  «        r¿ti          j5        |_d–|U¬“¦  «        }a�t           Ž                    |`¦  «        }9|  �                    |8|9|a¦  «         |  �                    |9|a|'¦  «         |  ‘                    |9|a|(¦  «         |  ’                    |9|a|)¦  «         d—|  }                    ||`¦  «        z   ti          j5        |ad˜¦  «        _6        �Œ|D ]õ}` |Z|`|^¦  «        rçti          j5        |_d–|`¬“¦  «        }a�t           Ž                    |`¦  «        }9|  �                    |8|9|a¦  «         |  �                    |9|a|'¦  «         |  ‘                    |9|a|(¦  «         |  ’                    |9|a|)¦  «         �t'          j”        | •                    ¦   «         |`¦  «        }`d—|  }                    ||`¦  «        z   ti          j5        |ad˜¦  «        _6        Œö|8 :                    ¦   «         D ]Å\  }9}
|
d         }b|br¶ |Z|b|^¦  «        rªti          j5        |_d–|b¬“¦  «        }a|  –                    |8|9|a¦  «         |  �                    |9|a|'¦  «         |  ‘                    |9|a|(¦  «         |8|9         d™         }<|<r%�t/          j˜        |)¦  «        }c|<g|c|9         z   |c|9<   n|)}c|  ’                    |9|a|c¦  «         ŒÆg }d|  ™                    ||Q|¦  «        r³ti          j5        |d’¦  «        }e|D ]]}`t,          j                             ||` ˆ                    | j        ¦  «        ¦  «        }U |Z|U|d¦  «        rti          j5        |edš|U¬“¦  «         Œ^|QD ]%}` |Z|`|d¦  «        rti          j5        |edš|`¬“¦  «         Œ&|  š                    |e|¦  «         ti          j5        |d›dœ¬�¦  «         |  ›                    |¦  «         |  œ                    ||¦  «         |  �                    ti          jž        |¦  «        |¦  «         d S )žNzGenerating vcxproj r2  ÚWindowsÚApplicationÚConsoleú,r   ÚStaticLibraryÚDynamicLibraryzUnknown target type for Úb_vscrtr   )rÃ  rÄ  rž  rŸ  r   rŽ  ÚWholeProgramOptimizationÚDefaultÚBasicRuntimeChecksz/INCREMENTAL:NOÚLinkIncrementalÚItemDefinitionGroupÚ	ClCompileÚfrom_buildtyperÑ   r³  ÚUseDebugLibrariesÚMultiThreadedDebugDLLÚRuntimeLibraryÚMultiThreadedDLLÚstatic_from_buildtypeÚMultiThreadedDebugÚMultiThreadedÚmddÚmtÚmtdz/fsanitize=addressÚ
EnableASANz/ZIÚEditAndContinueÚDebugInformationFormatz/ZiÚProgramDatabasez/Z7ÚOldStylerñ   z/RTC1ÚEnableFastChecksz/RTCuÚUninitializedLocalUsageCheckz/RTCsÚStackFrameRuntimeCheckrþ  Úeh)ÚmachinerX  ÚaÚAsyncÚExceptionHandlingÚsÚ
SyncCThrowrÓ   ÚSyncc                ó>   — i | ]\  }}||                      ¦   «         “ŒS r8   )Úcompiler_args)r9   Úlrý  s      r1   ú
<dictcomp>z-Vs2010Backend.gen_vcxproj.<locals>.<dictcomp>ü  s(   € ÐOÐOÐO©d¨a°�Q˜ŸšÑ)Ô)ÐOÐOÐOr3   c                ó   — i | ]}|g “ŒS r8   r8   ©r9   r‘  s     r1   r’  z-Vs2010Backend.gen_vcxproj.<locals>.<dictcomp>ý  s   € Ð8Ð8Ð8 !˜˜2Ð8Ð8Ð8r3   c                ó   — i | ]}|g “ŒS r8   r8   r”  s     r1   r’  z-Vs2010Backend.gen_vcxproj.<locals>.<dictcomp>þ  s   € Ð9Ð9Ð9 1˜˜BÐ9Ð9Ð9r3   r?   )r#  r*  ú%(AdditionalIncludeDirectories)c                ó   — g | ]}d |z   ‘ŒS ©ú-Ir8   ©r9   rA   s     r1   r;   z-Vs2010Backend.gen_vcxproj.<locals>.<listcomp>  s   € ÐHÐHÐH C�T˜C‘ZÐHÐHÐHr3   r™  c                ó   — g | ]}d |z   ‘ŒS r˜  r8   rš  s     r1   r;   z-Vs2010Backend.gen_vcxproj.<locals>.<listcomp>C  s   € Ð6Ð6Ð6 C�T˜C‘ZÐ6Ð6Ð6r3   )z-Dz/Dr*  r   )r™  z/Ir–  ÚOpenMPSupportz/Gwr#  rŠ   r$  rŒ   r2  r+  ÚFunctionLevelLinkingÚwarning_levelÚLevelÚWarningLevelÚwerrorÚTreatWarningAsErrorz/OxÚFullÚOptimizationz/O2ÚMaxSpeedz/O1ÚMinSpacez/OdÚDisabledz/OiÚIntrinsicFunctionsz/Ob1ÚOnlyExplicitInlineÚInlineFunctionExpansionz/Ob2ÚAnySuitablez/OsÚSizeÚFavorSizeOrSpeedÚSpeedÚb_pch)rý  rþ  ÚmsvcÚResourceCompileÚLinkÚGenerateDebugInformationÚOpenMPSuppportz<19.00.23918Fz.objrd  T)r”  z%(AdditionalLibraryDirectories)ÚAdditionalLibraryDirectoriesz%(AdditionalDependencies)ÚAdditionalDependenciesÚ
OutputFilez	$(OutDir)Ú	SubSystemÚImportLibraryÚModuleDefinitionFiler  r  ÚTargetMachineÚwin32Ú
MachineX86rÆ   Ú
MachineX64rÌ   Ú
MachineARMrÉ   ÚMachineARM64rË   ÚMachineARM64ECz*Unsupported Visual Studio target machine: ÚSuppressStartupBannerÚSetChecksumrm   rˆ   c                ó´   — t           j                             t           j                             | ¦  «        ¦  «        }||vr|                     |¦  «         dS dS )NTF)r%   rK   Únormcaser‚  r>   )rK   ÚlisÚ
normalizeds      r1   Úpath_normalize_addz5Vs2010Backend.gen_vcxproj.<locals>.path_normalize_addZ  sN   € Ýœ×)Ò)­"¬'×*:Ò*:¸4Ñ*@Ô*@ÑAÔAˆJØ Ð$Ð$Ø—
’
˜:Ñ&Ô&Ð&Ø�tà�ur3   Ú	CLIncludeÚ	CLCompileú	$(IntDir)ÚObjectFileNamerK  ÚObjectrµ  rØ  r¶  )Ÿr   rÑ   r[   rb   ri   r’   r	   r!  Úgui_appÚwin_subsystemrƒ  rk  ÚSharedLibraryr“   r÷  r  ræ  ÚCompileTargetrû  r   rg  r�   r%   rK   rg   r™   rh   r€  r}  Úis_unityÚgenerate_unity_filesr[  Úget_buildtype_argsrÏ   Úget_optimization_argsrÐ   Úget_debug_argsÚsanitizer_compile_argsrâ   Úget_buildtype_linker_argsry   rà   re  r   rk  r   rT  rß   rN   ÚsplitextÚget_filenamerÒ  r›   rœ   r¨   rf  r   rÁ   r  Úget_base_compile_argsÚget_optionsÚget_option_compile_argsÚprojects_argsr  Ú
subprojectÚglobal_argsrP  r  r5  Úget_include_dirsÚget_incdirsÚ
get_curdirr>   r�   rš   Ú
ValueErrorr‚  Úget_extra_build_dirsÚ
extra_argsrk   Úimplicit_include_directoriesr<   rT  Úget_external_depsr
   ÚOpenMPDependencyÚunix_args_to_nativeÚget_compile_argsrž   rá   rF   ÚintrC   Úgenerate_lang_standard_infoÚget_pchÚidÚcreate_msvc_pch_implementationÚdirnamer�  Úgenerate_debug_informationÚSharedModuleÚget_std_shared_module_link_argsÚget_project_link_argsÚget_global_link_argsÚget_external_link_argsÚget_languageÚ	link_argsÚextend_directÚget_link_argsr  Úget_option_link_argsrY  r%  r”   rN  Úget_target_filename_for_linkingr  r   ÚversionÚextract_all_objectsr®   r•   ry  Úget_target_generated_dirr|  Úobject_filename_from_sourceÚextendÚflatten_object_listÚget_link_whole_forr™  ri  r—  Ú$get_custom_target_provided_librariesrl  Úget_import_filenameÚvs_module_defsrŸ   rÞ   rT   r   Úextra_filesr-   rz  r  r(  r0  r5  r   Úfrom_built_fileÚ
get_subdirr  ÚcopyÚdeepcopyr9  r<  rÞ  rœ  rß  rà  )frc   rj   rá  rÄ  Ú	subsystemrž  r­   Úproj_to_src_rootÚproj_to_src_dirr}  r~  r   r  ÚcompilerÚ
build_argsÚbuildtype_link_argsÚ
vscrt_typerÂ  rN   Ú	tfilenamer‘  rÍ  ÚcompilesÚclconfr‡  Úgenerated_filesr¬   Úgenerated_files_include_dirsÚgen_srcÚgen_hdrsÚgen_objsÚ	gen_langsÚ
custom_srcÚcustom_hdrsÚcustom_objsÚcustom_langsÚtarget_argsÚtarget_definesÚtarget_inc_dirsr'  r-  r3  r‘  Úcompr?   Úoptsr)  r¯   ÚcurdirÚ
t_inc_dirsrA   r/  Úinc_dirÚd_compile_argsrž  r@   r  rX  r  r  Úpch_header_dirÚresourcecompileÚlinkÚextra_link_argsre  r\  Úadditional_libpathsÚadditional_linksr  ÚlobjÚlinknameÚgenrK   Úgen_src_extÚobj_basenamerq   Úrel_objÚtrelpathÚtvcxprojr›  Úlibr7  r  r:  Úsubsysr�   ÚpdbÚtargetmachineÚtargetplatformÚmeson_file_grouprÈ  Úprevious_includesÚinc_hdrsÚhÚprevious_sourcesÚinc_srcrŒ  r  ÚimplÚinc_dirsÚprevious_objectsÚinc_objssf                                                                                                         r1   rj  zVs2010Backend.gen_vcxproji  sF#  € ÝŒ
Ð7¨¬Ð7Ð7Ð7Ñ8Ô8Ð8Øˆ	Ø46ˆÔ  §¢¡¤Ñ1Ý�f�eÔ.Ñ/Ô/ð 	UØ$ˆHØŒ~Ð)Ø”~ð *Ø )�Iùð #Ô0×6Ò6°sÑ;Ô;¸AÔ>�	�	Ý˜¥Ô 3Ñ4Ô4ð 	UØ&ˆHˆHÝ˜¥Ô 3Ñ4Ô4ð 		UØ'ˆHˆHÝ˜¥Ô 2Ñ3Ô3ð 	UØ×1Ò1°&¸&À$ÑGÔGÐGÝ˜¥¤Ñ0Ô0ð 	UØ×.Ò.¨v°v¸tÑDÔDÐDÝ˜¥Ô 3Ñ4Ô4ð 	UØ×2Ò2°6¸6À4ÑHÔHÐHå Ð!S¸F×<OÒ<OÑ<QÔ<QÐ!SÐ!SÑTÔTÐTà×(Ò(¨Ñ0Ô0ˆåœ7Ÿ<š<¨¨dÔ.?Ñ@Ô@Ðåœ'Ÿ,š,Ð'7¸×9LÒ9LÈVÑ9TÔ9TÑUÔUˆØ15×1CÒ1CÀFÄNÑ1SÔ1SÑ.ˆ�'˜7 IØŒ?ð 	AØ×/Ò/°¸Ñ@Ô@ˆGØ×(Ò(¨Ñ0Ô0ˆØ×0Ò0°´Ñ@Ô@ˆ
Ø�h×4Ò4°TÔ5FÑGÔGÑGˆ
Ø�h×-Ò-¨d¬jÑ9Ô9Ñ9ˆ
Ø�h×5Ò5°d´mÑDÔDÑDˆ
Ø&×@Ò@ÀÄÑPÔPÐØÔ%Ô.Ô6µyÀÑ7KÔ7KÔLˆ
Ø”kˆØÔ¥Ô!4Ð4Ð4ØÔ*ˆHˆHà”}ˆHå”G×$Ò$ V×%8Ò%8Ñ%:Ô%:Ñ;Ô;ˆ	à"×7Ò7¸	À!¼ØAGÇÂÁÄØ=AØAIØCLÈQÄ<ØHPð 8ñ Rô RÑˆˆ{ð GN�Œ�kÐ#=Ñ>Ô>ÔCà@I�Œ�kÐ#7Ñ8Ô8Ô=àÐ 3Ð3Ð3ØAH�BŒM˜+Ð'8Ñ9Ô9Ô>õ ”= Ð'<Ñ=Ô=ˆÝ”˜x¨Ñ5Ô5ˆàÔÐ/Ò/Ð/ØŒ~ Ò(Ð(ØGM•”˜kÐ+>Ñ?Ô?ÔDØ?V•”˜fÐ&6Ñ7Ô7Ô<Ñ<àGN•”˜kÐ+>Ñ?Ô?ÔDØ?Q•”˜fÐ&6Ñ7Ô7Ô<Ñ<ØÔÐ!8Ò8Ð8ØŒ~ Ò(Ð(ØGM•”˜kÐ+>Ñ?Ô?ÔDØ?S•”˜fÐ&6Ñ7Ô7Ô<Ñ<àGN•”˜kÐ+>Ñ?Ô?ÔDØ?N•”˜fÐ&6Ñ7Ô7Ô<Ð<ØÔ Ò&Ð&ØCI�BŒM˜+Ð':Ñ;Ô;Ô@Ø;R�BŒM˜&Ð"2Ñ3Ô3Ô8Ð8ØÔ Ò%Ð%àCJ�BŒM˜+Ð':Ñ;Ô;Ô@Ø;J�BŒM˜&Ð"2Ñ3Ô3Ô8Ð8ØÔ Ò&Ð&àCI�BŒM˜+Ð':Ñ;Ô;Ô@Ø;O�BŒM˜&Ð"2Ñ3Ô3Ô8Ð8àCJ�BŒM˜+Ð':Ñ;Ô;Ô@Ø;M�BŒM˜&Ð"2Ñ3Ô3Ô8à :Ð-Ð-Ø<B�BŒM˜+ |Ñ4Ô4Ô9à�JÐÐØCT�BŒM˜&Ð":Ñ;Ô;Ô@Ð@Ø�jÐ Ð ØCT�BŒM˜&Ð":Ñ;Ô;Ô@Ð@Ø�jÐ Ð ØCM�BŒM˜&Ð":Ñ;Ô;Ô@Ð@àCI�BŒM˜&Ð":Ñ;Ô;Ô@à�jÐ Ð Ø?Q�BŒM˜&Ð"6Ñ7Ô7Ô<Ð<Ø˜
Ð"Ð"Ø?]�BŒM˜&Ð"6Ñ7Ô7Ô<Ð<Ø˜
Ð"Ð"Ø?W�BŒM˜&Ð"6Ñ7Ô7Ô<ð �FÔ$Ð$Ð$ØÔ!Ô*Ô2µ9¸TÈ6ÔK]ÐdiÐ3jÑ3jÔ3jÔkˆBØŒx˜3ŠˆØBI•”˜fÐ&9Ñ:Ô:Ô?Ð?Ø”˜S’�ØBN•”˜fÐ&9Ñ:Ô:Ô?Ð?Ø”˜VÒ#Ð#ØBI•”˜fÐ&9Ñ:Ô:Ô?Ð?àBH•”˜fÐ&9Ñ:Ô:Ô?ØTX×T{ÒT{Ø�DñUô UÑQˆÐ3Ð5Qà37×3EÒ3EÀoÑ3VÔ3VÑ0ˆ�(˜H iØ?C×?QÒ?QÐRlÑ?mÔ?mÑ<ˆ�[ +¨|Ø�:ÑˆØ�KÑˆØ�\Ñ!ˆ	ð ˆØˆØˆð PÐO°fÔ6F×6LÒ6LÑ6NÔ6NÐOÑOÔOˆ	Ø8Ð8 vÔ'7Ð8Ñ8Ô8ˆØ9Ð9¨Ô(8Ð9Ñ9Ô9ˆð Ô'×-Ò-Ñ/Ô/ð 	*ð 	*‰GˆAˆtØ�Iˆ~ˆ~Ø˜!��”¥	Ô ?Ø×&Ò&Ñ(Ô(¨$ñ!0ô !0ñ 0��‘à˜!��” × <Ò <Ø×&Ò&Ñ(Ô(ñ!*ô !*ñ *��‘øð ”zÔ/°Ô0BÔC×GÒGÈÔHYÐ[]Ñ^Ô^×dÒdÑfÔfð 	%ð 	%‰GˆAˆtØ�Iˆ~ˆ~Ø˜!��” Ñ$��‘øð ”zÔ-¨fÔ.@ÔA×GÒGÑIÔIð 	%ð 	%‰GˆAˆtØ�Iˆ~ˆ~Ø˜!��” Ñ$��‘øð —’Ñ!Ô!ð 	'ð 	'ˆAØÔ#Ô,Ô4µY¸vÈvÔOaÐhiÐ5jÑ5jÔ5jÔkˆDØ�aˆLˆLŒL˜DœJÑ&ˆLˆL‰LˆLØ×$Ò$Ñ&Ô&ð  	Lñ  	LˆDð ÐmÐmÐmÑmˆDð ÐHÐHÐ+GÐHÑHÔHÑHˆDõ ˜f×5Ò5Ñ7Ô7Ñ8Ô8ð Lñ L�å! !§-¢-¡/¤/Ñ2Ô2ð Eð E�AÝœWŸ\š\¨!¯,ª,©.¬.¸!Ñ<Ô<�FðEØŸš D¨4¯<ª<¸ÀÄÑ+NÔ+NÑ$NÑOÔOÐOØŸš D­2¬7¯<ª<Ð8HÈ&Ñ+QÔ+QÑ$QÑRÔRÐRÐRøÝ%ð Eð Eð EàŸš D­2¬7×+;Ò+;¸FÑ+CÔ+CÑ$CÑDÔDÐDÐDÐDðEøøøð ×/Ò/Ñ1Ô1ð Lð L�AÝœWŸ\š\¨!¯,ª,©.¬.¸!Ñ<Ô<�FØ—K’K  t§|¢|°F¸F¼MÑ'JÔ'JÑ JÑKÔKÐKÐKñLñLð Ô(×.Ò.Ñ0Ô0ð 	%ð 	%‰GˆAˆtØ�Iˆ~ˆ~Ø˜!��” Ñ$��‘øð ×$Ò$Ñ&Ô&ð 	7ð 	7ˆDØŸ,š, t×'BÒ'BÀ6Ñ'JÔ'JØ'+×':Ò':¸6Ñ'BÔ'BñDô Dð EˆJàÔ2ð 5Ø˜s OÐ4Ñ4�
ØÐ6Ð6¨:Ð6Ñ6Ô6Ñ6ˆDˆDð !—’Ñ(Ô(ð 	8ñ 	8‰GˆAˆtØ˜A˜A˜A”wð 8ð 8�Ø—>’> ,Ñ/Ô/ð 8°3Ð:VÒ3VÐ3VØ˜a”L×'Ò'¨Ñ,Ô,Ð,àÐ:Ò:Ð:Ø!$˜˜à!$ Q R R¤˜à \°!¤_Ð4Ð4Ø$ Qœ×.Ò.¨vÑ6Ô6Ð6øØ—^’^ LÑ1Ô1ð 8°SÐ<]Ò5]Ð5]Ø˜a”L×'Ò'¨Ñ,Ô,Ð,àÐ?Ò?Ð?Ø"%˜˜à"% a b b¤'˜à m°AÔ&6Ð6Ð6Ø% aÔ(×/Ò/°Ñ8Ô8Ð8à oÐ5Ð5Ø'×.Ò.¨wÑ7Ô7Ð7øñ/8õ6 ˜&×2Ò2Ñ4Ô4Ñ5Ô5ð 	0ñ 	0ˆAõ ˜!�\Ô:Ñ;Ô;ð 0Ø>D•”˜f oÑ6Ô6Ô;Ð;à!)×!=Ò!=¸a×>PÒ>PÑ>RÔ>RÑ!SÔ!S�Ø)ð 0ð 0�CØ—~’~ lÑ3Ô3ð 0Ø!$ Q R R¤˜à! ^Ð3Ð3Ø*×1Ò1°&Ñ9Ô9Ð9Ø&×-Ò-¨fÑ5Ô5Ð5Ð5ØŸš¨Ñ5Ô5ð 0Ø"% a b b¤'˜à"¨/Ð9Ð9Ø+×2Ò2°7Ñ;Ô;Ð;øà#×*Ò*¨3Ñ/Ô/Ð/Ð/ñ0ð 	�YÑˆ	Ø�JÐÐØ×Ò˜uÑ%Ô%Ð%Ýˆ{ÑÔ˜aÒÐØ×ÒÐ5Ñ6Ô6Ð6Ø>A¿hºhÀ{Ñ>SÔ>S�BŒM˜&Ð"5Ñ6Ô6Ô;ØEHÇXÂXÈoÑE^ÔE^�Œ�fÐ<Ñ=Ô=ÔBØ×ÒÐ:Ñ;Ô;Ð;Ø@CÇÂÈÑ@XÔ@X�Œ�fÐ7Ñ8Ô8Ô=Ø=C�Œ�fÐ4Ñ5Ô5Ô:à×)Ò)­)°OÑ*DÔ*DÑEÔEˆØ5<½sÀ1ÅsÈ=ÑGYÔGYÑCYÑ?ZÔ?ZÑ5Z�Œ�f˜nÑ-Ô-Ô2Ø×Ò�Y xÑ0Ô0Ñ1Ô1ð 	GØ@F�BŒM˜&Ð"7Ñ8Ô8Ô=å$ ZÑ0Ô0ˆØ�GÐÐØ9?�BŒM˜& .Ñ1Ô1Ô6Ð6Ø�gÐÐØ9C�BŒM˜& .Ñ1Ô1Ô6Ð6Ø�gÐÐØ9C�BŒM˜& .Ñ1Ô1Ô6Ð6Ø�gÐÐØ9C�BŒM˜& .Ñ1Ô1Ô6Ø�GÐÐØ?E�BŒM˜&Ð"6Ñ7Ô7Ô<Ø�WÐÐØDX�BŒM˜&Ð";Ñ<Ô<ÔAÐAØ�wÐÐØDQ�BŒM˜&Ð";Ñ<Ô<ÔAà�GÐÐØ=C�BŒM˜&Ð"4Ñ5Ô5Ô:Ð:à˜'Ð!Ð!Ø=D�BŒM˜&Ð"4Ñ5Ô5Ô:à×(Ò(¨°FÑ;Ô;Ð;ØˆØÔÔ$Ô,×0Ò0µ¸7Ñ1CÔ1CÑDÔDñ 	CØ$ð Cð C�Ø—n’n TÑ*Ô*�Øð ØØ”; &Ò(Ð(Ý˜3‘x”x 1’}�}å œgŸlšl¨4°×1TÒ1TÐU[Ð]aÐcfÐghÔciÑ1jÔ1jÑkÔk˜Ý)+¬¯ª½¼¿ºÀoÐWZÐ[\ÔW]Ñ9^Ô9^Ñ)_Ô)_˜˜å œgŸlšl¨?¸CÀ¼FÑCÔC˜Ø)-˜Ø),¨Q¬°°d¸NÐ(K�K Ñ%Ð%ð *-¨Q¬°°t¸TÐ(B�K Ñ%Ð%åœ-¨Ð2CÑDÔDˆÝ
Œ�oÐ'@ÑAÔAÐAõ Œ}˜X vÑ.Ô.ˆØ"×0Ò0Ñ2Ô2ˆð 	˜8×=Ò=¸d¼nÑMÔMÑMˆàŒ:ð 	KØ×+Ò+¨DÑ1Ô1Ð1Ð1àCJ�BŒM˜$Ð :Ñ;Ô;Ô@Ý˜&¥%Ô"5Ñ6Ô6ñ 	OÝ˜&¥%Ô"4Ñ5Ô5ð UØÔ*Ô3Ô;�Ø 8×#KÒ#KÈGÑ#TÔ#TÑT�à˜tœz×?Ò?ÀÈ&ÔJ[Ð]cÔ]oÑpÔpÑpˆOð ˜tœz×>Ò>¸xÈÔI[Ñ\Ô\Ñ\ˆOð ˜tÔ/Ô8×OÒOØÔ" H×$9Ò$9Ñ$;Ô$;ñ =ô  =ñ =ˆOð ˜vÔ/Ñ/ˆOà×/Ò/Ñ1Ô1ð Gð G�õ ˜c¥<Ô#@ÑAÔAð GØCI•B”M &Ð*:Ñ;Ô;Ô@Ð@à#×1Ò1°#×2CÒ2CÑ2EÔ2EÑFÔFÐFÐFØ×,Ò,Ñ.Ô.ð Oð O�Ý˜a¥Ô!4Ñ5Ô5ð OØ ×2Ò2Ñ4Ô4ð Oð O˜Ý% c­<Ô+HÑIÔIð OØKQ�BœM¨&Ð2BÑCÔCÔHÐHà+×9Ò9¸#×:KÒ:KÑ:MÔ:MÑNÔNÐNÐNøð 	˜8×8Ò8¸Ô9IÔ9RÔ9ZÑ[Ô[Ñ[ˆØCG×CWÒCWÐXg×XqÒXqÑXsÔXsÑCtÔCtÑ@Ð	Ð.°ð ×(Ò(Ñ*Ô*ð 0	6ñ 0	6ˆAÝ˜!�UÔ4Ñ5Ô5ð 6à��à”zÔ)¨!¯(ª(©*¬*Ô5�Ý”w—|’| D¨$×*NÒ*NÈtÑ*TÔ*TÑUÔUˆHØ�FÔ-Ð-Ñ-Ø”; &Ò(Ñ(­_¸XÔ=MÈ~Ñ-^Ô-^Ñ(à×-Ò-¨eÑ4Ô4�Að  !œyð Zð Z˜Ø#&§?¢?Ñ#4Ô#4ð Zð Z˜CØ#Ô/×9Ò9¸#Ñ>Ô>ð ZØ'+×'DÒ'DÀQÈÈSÑ'QÔ'Q Ø.1µB´G×4DÒ4DÀTÑ4JÔ4JÈ1Ô4MÈaÈbÈbÔ4QÑ.Q Ø /× 6Ò 6°tÐ<N½cÀ+Ñ>NÔ>NÐ=NÐ<NÔ7OÐRXÑ7XÑ YÔ YÐ Yøð	Zð  !œyð <ð <˜Ø'+˜ØÔ+×5Ò5°cÑ:Ô:ð <Ø+/×+KÒ+KÈAÈsÑ+SÔ+S˜LØ15·²¸d×>YÒ>YÐZ[Ñ>\Ô>\Ø>B×>QÒ>QÐRSÑ>TÔ>Tñ2Vô 2VÐ.å&(¤g§l¢lÐ3EÀ|Ñ&TÔ&T˜GØ+×2Ò2°7Ñ;Ô;Ð;øà#×*Ò*¨4×+CÒ+CÀAÑ+FÔ+FÑGÔGÐGÐGð $ x×'BÒ'BÀ8Ñ'LÔ'LÑL�Oð  ×:Ò:¸1¸fÑEÔE�Ýœ7Ÿ<š<¨°!·(²(±*´*¸zÑ2IÑJÔJ�ØÔ&Ô/Ô<¸Q¿XºX¹Z¼ZÔH�Ø×*Ò*¨4°¸3ÈTÐ*ÑRÔRÐRð Ô(¨¯ª©¬Ô9×@Ò@ÀÇÂÁÄÑLÔLÐLÑLð Ð#3Ð3Ð3Ø$×+Ò+¨HÑ5Ô5Ð5ùØ×<Ò<¸VÑDÔDð 	Tð 	TˆCØ×#Ò# D§L¢L°°d×6IÒ6IÈ&Ñ6QÔ6QÑ$RÔ$RÑSÔSÐSÐSØÐØ×)Ò)¨&°$Ñ7Ô7¸Ô:ð 	)ð 	)ˆAÝ˜a¥Ñ%Ô%Ð%Ð%Ð%Ø×%Ò% aÑ(Ô(Ð(Ð(Øð 	)ð 	)ˆAØ×%Ò% aÑ(Ô(Ð(Ð(åˆÑÔ !Ò#Ð#Ø×"Ò"Ð#9Ñ:Ô:Ð:Ø<?¿HºHÀ_Ñ<UÔ<U�BŒM˜$Ð 3Ñ4Ô4Ô9ÝÐ"Ñ#Ô# aÒ'Ð'Ø×&Ò& qÐ*KÑLÔLÐLØGJÇxÂxÐPcÑGdÔGd�BŒM˜$Ð >Ñ?Ô?ÔDÝÐÑ Ô  1Ò$Ð$Ø×#Ò#Ð$?Ñ@Ô@Ð@ØADÇÂÐJZÑA[ÔA[�BŒM˜$Ð 8Ñ9Ô9Ô>Ý”˜d LÑ1Ô1ˆØ8 ×!4Ò!4Ñ!6Ô!6Ð8Ð8ˆŒ
Ý”˜t [Ñ1Ô1ˆØˆŒÝ�f�uÔ2µEÔ4DÐEÑFÔFð 	UÈ6×KeÒKeÑKgÔKgð 	Uð 9?×8RÒ8RÑ8TÔ8T�BŒM˜$ Ñ0Ô0Ô5Ý�f�eÔ1Ñ2Ô2ð 	KàÔ$ð KÝœ'Ÿ,š, t¨VÔ-B×-RÒ-RÐSWÔSdÑ-eÔ-eÑfÔf�ØCJ•”˜dÐ$:Ñ;Ô;Ô@ØŒ:ð 	5Ý”- Ð&?Ñ@Ô@ˆCØ4 ;Ð4Ð4Ð4ˆCŒHÝœ d¨OÑ<Ô<ˆØÔ¥Ô!4Ð4Ð4Ø%Ÿ^š^Ñ-Ô-ˆNˆNà!œ]×0Ò0Ñ2Ô2ˆNØ˜WÒ$Ð$Ø!-ˆMÔÐØ˜uÒ$Ð$Ö(<¸^Ñ(LÔ(LÐ$Ø!-ˆMÔÐØ˜uÒ$Ð$Ø!-ˆMÔÐØ˜wÒ&Ð&Ø!/ˆMÔÐØ˜yÒ(Ð(Ø!1ˆMÔÐå Ð!MÐP^Ñ!^Ñ_Ô_Ð_à<B�Œ�dÐ3Ñ4Ô4Ô9àÔÔ(×3Ò3µI¸gÑ4FÔ4FÑGÔGð 	=Ø6<�BŒM˜$ Ñ.Ô.Ô3åœ=¨¨{Ñ;Ô;ÐÝ
ŒÐ&¨½¼¿ºÀ_ÖVdÑ8eÔ8eÐfÑfÔfÐfð	ð 	ð 	ð ÐÝˆw‰<Œ<�#˜h™-œ-Ñ'­#¨fÔ.@Ñ*AÔ*AÑAÅCÈÑDTÔDTÑTÐWXÒXÑXÝ”} T¨;Ñ7Ô7ˆHØð Jð J�Ýœ'Ÿ,š, t¨Q×->Ò->¸tÔ?PÑ-QÔ-QÑRÔR�Ø%Ð% gÐ/@ÑAÔAð JÝ”M (¨KÀÐIÑIÔIÐIøØð Dð D�Ø%Ð% aÐ):Ñ;Ô;ð DÝ”M (¨KÀÐCÑCÔCÐCøØÔ'ð Jð J�Ýœ'Ÿ,š, t¨Q×->Ò->¸tÔ?PÑ-QÔ-QÑRÔR�Ø%Ð% gÐ/@ÑAÔAð JÝ”M (¨KÀÐIÑIÔIÐIøØ&×-Ò-Ñ/Ô/ð Gð G�Ý”w—|’| O°W¸Q´ZÑ@Ô@�Ø%Ð% dÐ,=Ñ>Ô>ð GÝ”M (¨KÀÐFÑFÔFÐFøàÐÝˆw‰<Œ<�#˜g™,œ,Ñ&­¨[Ñ)9Ô)9Ñ9¸AÒ=Ñ=Ý”m D¨+Ñ6Ô6ˆGØð 
Dñ 
D�Ýœ'Ÿ,š, t¨Q×->Ò->¸tÔ?PÑ-QÔ-QÑRÔR�Ø%Ð% gÐ/?Ñ@Ô@ð DÝœ]¨7°KÈÐQÑQÔQ�FÞ(×>Ò>¸qÑAÔA�DØ—L’L ¨d°FÑ;Ô;Ð;Ø×/Ò/°°f¸iÑHÔHÐHØ×1Ò1°$¸ÀÑMÔMÐMØ×)Ò)¨$°¸ÑFÔFÐFØCNØ×8Ò8¸ÀÑCÔCñDD•B”M &Ð*:Ñ;Ô;Ô@ùàð 
Dð 
D�Ø%Ð% aÐ)9Ñ:Ô:ð 	DÝœ]¨7°KÈÐKÑKÔK�FÞ(×>Ò>¸qÑAÔA�DØ—L’L ¨d°FÑ;Ô;Ð;Ø×/Ò/°°f¸iÑHÔHÐHØ×1Ò1°$¸ÀÑMÔMÐMØ×)Ò)¨$°¸ÑFÔFÐFÞÔ,¨V×->Ò->Ñ-@Ô-@À!ÑDÔD�AØCNØ×8Ò8¸ÀÑCÔCñDD•B”M &Ð*:Ñ;Ô;Ô@øà!,×!2Ò!2Ñ!4Ô!4ð Bð B‘��gØ˜q”z�Øð BÐ.Ð.¨tÐ5EÑFÔFð BÝœ]¨7°KÈÐNÑNÔN�FØ—O’O K°°vÑ>Ô>Ð>Ø×/Ò/°°f¸iÑHÔHÐHØ×1Ò1°$¸ÀÑMÔMÐMØ%0°Ô%6°qÔ%9�NØ%ð 1Þ#'¤=°Ñ#?Ô#?˜Ø*8Ð)9¸HÀT¼NÑ)J˜ ™˜à#0˜Ø×)Ò)¨$°¸ÑAÔAÐAøð ÐØ×Ò˜GÐ%7¸ÑBÔBð 		;Ý”} T¨;Ñ7Ô7ˆHØð Gð G�Ýœ'Ÿ,š, t¨Q×->Ò->¸tÔ?PÑ-QÔ-QÑRÔR�Ø%Ð% gÐ/?Ñ@Ô@ð GÝ”M (¨H¸gÐFÑFÔFÐFøØ'ð Að A�Ø%Ð% aÐ)9Ñ:Ô:ð AÝ”M (¨H¸aÐ@Ñ@Ô@Ð@øØ×&Ò& x°Ñ:Ô:Ð:å
Œ�d˜HÐ.WÐXÑXÔXÐXØ×!Ò! $Ñ'Ô'Ð'Ø×Ò˜T 6Ñ*Ô*Ð*Ø×%Ò%¥b¤n°TÑ&:Ô&:¸FÑCÔCÐCÐCÐCs   é7A'kë?l!	ì l!	c           
     ó  — | j         j        j        }|                      |d|¬¦  «        \  }}t	          j        |d¦  «        }t	          j        |d¦  «        }dt	          j        |d¦  «        _        dt	          j        |d¦  «        _        d	t	          j        |d
¦  «        _        dt	          j        |d¦  «        _        dt	          j        |d¦  «        _        dt	          j        |d¦  «        _        | j                              ¦   «         ddgz   }d}	|	|                      ¦   «         d 	                    |¦  «        | j          
                    ¦   «         fz  }|                      |d||                      ¦   «         t                               | j                              ¦   «         ¦  «        gd¬¦  «         t	          j        |dd¬¦  «         t	          j        |dd¬¦  «         |                      t	          j        |¦  «        |¦  «         d S )Nz
regen-temprÔ  rr  ÚMidlr–  r2  rË  ÚOutputDirectoryú%(Filename).hÚHeaderFileNameú%(Filename).tlbÚTypeLibraryNameú%(Filename)_i.cÚInterfaceIdentifierFilenameú%(Filename)_p.cÚProxyFileNamez
--internalÚ
regencheckzcall %s > NUL
"%s" "%s"ú" "Úregenz2Checking whether solution needs to be regenerated.)r¸   rí  Úmsgrµ  rØ  r¶  ÚImportGroupÚExtensionTargetsr¬  )ry   rà   rR  rÒ  r›   rœ   r¨   Úget_build_commandr  rg   rô  rÝ  Úget_regen_filelistr-   rõ   r~   rß  rà  )
rc   rã   rá  rÄ  r‘  rÍ  ÚactionÚmidlÚregen_commandÚ	cmd_templs
             r1   rç   zVs2010Backend.gen_regenproj¯  sî  € ØÔÔ(Ô3ˆØ"×7Ò7¸ØAMØ=Að 8ñ Cô CÑˆˆ{õ ”˜tÐ%:Ñ;Ô;ˆÝŒ}˜V VÑ,Ô,ˆØCd�Œ�dÐ:Ñ;Ô;Ô@Ø6A�Œ�dÐ-Ñ.Ô.Ô3Ø5D�Œ�dÐ,Ñ-Ô-Ô2Ø6G�Œ�dÐ-Ñ.Ô.Ô3ØBS�Œ�dÐ9Ñ:Ô:Ô?Ø4E�Œ�d˜OÑ,Ô,Ô1ØÔ(×:Ò:Ñ<Ô<ÀÈlÐ?[Ñ[ˆðˆ	à!Ø×$Ò$Ñ&Ô&¨¯
ª
°=Ñ(AÔ(AÀ4ÔCS×CcÒCcÑCeÔCeÐfñgˆà×Ò˜d G¨]À×AXÒAXÑAZÔAZÝ'4×'HÒ'HÈÔIY×IgÒIgÑIiÔIiÑ'jÔ'jÐ&kØ"Vð 	ñ 	Xô 	Xð 	Xõ 	Œ�d˜HÐ.WÐXÑXÔXÐXÝ
Œ�d˜MÐ1CÐDÑDÔDÐDØ×%Ò%¥b¤n°TÑ&:Ô&:¸FÑCÔCÐCÐCÐCr3   c                ó  — | j         j        j        }|                      |d|¬¦  «        \  }}t	          j        |d¦  «        }t	          j        |d¦  «        }dt	          j        |d¦  «        _        dt	          j        |d¦  «        _        d	t	          j        |d
¦  «        _        dt	          j        |d¦  «        _        dt	          j        |d¦  «        _        dt	          j        |d¦  «        _        | j                              ¦   «         ddgz   }| j         j                             t          d¦  «        ¦  «        s|dgz  }| j         j                             t          d¦  «        ¦  «        r|dgz  }|  
                    ¦   «          |                      |ddd                     |¦  «        z  ¦  «         t	          j        |dd¬¦  «         |                      |¦  «         |                      t	          j        |¦  «        |¦  «         d S )Nz	test-temprÔ  rr  rH  r–  r2  rË  rI  rJ  rK  rL  rM  rN  rO  rP  rQ  Útestú--no-rebuildÚstdsplitz--no-stdsplitÚ	errorlogsz--print-errorlogsÚ	run_testsrˆ  rS  rµ  rØ  r¶  )ry   rà   rQ  rÒ  r›   rœ   r¨   rX  rá   r   Úserialize_testsrÝ  rg   rÞ  rß  rà  )	rc   rÂ  rá  rÄ  r‘  rÍ  rZ  r[  Útest_commands	            r1   rå   zVs2010Backend.gen_testprojÉ  sé  € ØÔÔ(Ô2ˆØ"×7Ò7¸ØALØ=Að 8ñ Cô CÑˆˆ{õ ”˜tÐ%:Ñ;Ô;ˆÝŒ}˜V VÑ,Ô,ˆØCd�Œ�dÐ:Ñ;Ô;Ô@Ø6A�Œ�dÐ-Ñ.Ô.Ô3Ø5D�Œ�dÐ,Ñ-Ô-Ô2Ø6G�Œ�dÐ-Ñ.Ô.Ô3ØBS�Œ�dÐ9Ñ:Ô:Ô?Ø4E�Œ�d˜OÑ,Ô,Ô1àÔ'×9Ò9Ñ;Ô;¸vÀ~Ð>VÑVˆØÔÔ(×3Ò3µI¸jÑ4IÔ4IÑJÔJð 	.Ø˜_Ð-Ñ-ˆLØÔÔ$×/Ò/µ	¸+Ñ0FÔ0FÑGÔGð 	2ØÐ0Ð1Ñ1ˆLØ×ÒÑÔÐØ×Ò˜d K°¸5¿:º:ÀlÑ;SÔ;SÑ1TÑUÔUÐUÝ
Œ�d˜HÐ.WÐXÑXÔXÐXØ×!Ò! $Ñ'Ô'Ð'Ø×%Ò%¥b¤n°TÑ&:Ô&:¸FÑCÔCÐCÐCÐCr3   c                óP  — |                       ¦   «          | j        j        j        }|                      |d|¬¦  «        \  }}t          j        |d¦  «        }t          j        |d¦  «        }dt          j        |d¦  «        _        dt          j        |d¦  «        _        d	t          j        |d
¦  «        _        dt          j        |d¦  «        _        dt          j        |d¦  «        _        dt          j        |d¦  «        _        | j                             ¦   «         ddgz   }|  	                    |ddd 
                    |¦  «        z  ¦  «         t          j        |dd¬¦  «         |                      |¦  «         |                      t          j        |¦  «        |¦  «         d S )Nzinstall-temprÔ  rr  rH  r–  r2  rË  rI  rJ  rK  rL  rM  rN  rO  rP  rQ  Úinstallr`  Úrun_installrˆ  rS  rµ  rØ  r¶  )Úcreate_install_data_filesry   rà   rS  rÒ  r›   rœ   r¨   rX  rÝ  rg   rÞ  rß  rà  )	rc   rÂ  rá  rÄ  r‘  rÍ  rZ  r[  Úinstall_commands	            r1   ræ   zVs2010Backend.gen_installprojã  s†  € Ø×&Ò&Ñ(Ô(Ð(àÔÔ(Ô5ˆØ"×7Ò7¸ØAOØ=Að 8ñ Cô CÑˆˆ{õ ”˜tÐ%:Ñ;Ô;ˆÝŒ}˜V VÑ,Ô,ˆØCd�Œ�dÐ:Ñ;Ô;Ô@Ø6A�Œ�dÐ-Ñ.Ô.Ô3Ø5D�Œ�dÐ,Ñ-Ô-Ô2Ø6G�Œ�dÐ-Ñ.Ô.Ô3ØBS�Œ�dÐ9Ñ:Ô:Ô?Ø4E�Œ�d˜OÑ,Ô,Ô1ØÔ*×<Ò<Ñ>Ô>À)È^ÐA\Ñ\ˆØ×Ò˜d M°6¸U¿ZºZÈÑ=XÔ=XÑ3YÑZÔZÐZÝ
Œ�d˜HÐ.WÐXÑXÔXÐXØ×!Ò! $Ñ'Ô'Ð'Ø×%Ò%¥b¤n°TÑ&:Ô&:¸FÑCÔCÐCÐCÐCr3   Tc                ó’  — t          j        |d¦  «        }t          j                             | j                             ¦   «         |dz   ¦  «        }	t          j                             |	¦  «        s?t          |	dd¬¦  «        5 }
|
 	                    d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        |d|	¬¦  «        }|rt          j        |d	¦  «        }||_
        |sd
t          j        |d¦  «        _
        |› d�t          j        |d¦  «        _
        |sK|                      t          j                             | j                             ¦   «         d¦  «        ¦  «        g}d                     |¦  «        t          j        |d¦  «        _
        |r/d                     |¦  «        t          j        |d¦  «        _
        d S d S )Nrm   z.ruler÷   rø   rù   z# Meson regen file.r‡   rˆ   ÚMessagerŽ  ÚVerifyInputsAndOutputsExistrJ  r‹   rë  rŒ   r�   rŽ   )r›   rœ   r%   rK   rg   ry   rô  r  rû   r9  r¨   ró  )rc   r;  ÚrulenamerÙ  r¸   rí  rU  rî  ÚigroupÚrulefiler:   ÚcustombuildÚmessages                r1   rÝ  zVs2010Backend.add_custom_buildù  så  € Ý”˜t [Ñ1Ô1ˆÝ”7—<’< Ô 0× @Ò @Ñ BÔ BÀHÈwÑDVÑWÔWˆÝŒw�~Š~˜hÑ'Ô'ð 	/Ý�h ¨gÐ6Ñ6Ô6ð /¸!Ø—’Ð-Ñ.Ô.Ð.ð/ð /ð /ñ /ô /ð /ð /ð /ð /ð /ð /øøøð /ð /ð /ð /å”m F¨MÀ8ÐLÑLÔLˆØð 	Ý”m K°Ñ;Ô;ˆGØˆGŒLØð 	UØMT�BŒM˜+Ð'DÑEÔEÔJð 9@°^°^°^�Œ�k 9Ñ-Ô-Ô2àð 	Nà×,Ò,­R¬W¯\ª\¸$Ô:J×:ZÒ:ZÑ:\Ô:\Ø:Jñ.Lô .Lñ Mô Mð NˆGà58·X²X¸gÑ5FÔ5F�Œ�k 9Ñ-Ô-Ô2Øð 	QØBEÇ(Â(È4Á.Ä.�BŒM˜+Ð'9Ñ:Ô:Ô?Ð?Ð?ð	Qð 	Qs   ÂB#Â#B'Â*B'c                ó˜   — d}| }t           j                             |¦  «        r&d| |fz  }t           j                             |¦  «        °&|S )Nr   z%s%d)r%   rK   r  )Úprefixr¯   Úfiles      r1   ró  zVs2010Backend.nonexistent_file  sM   € àˆØˆÝŒg�nŠn˜TÑ"Ô"ð 	(Ø˜V Q˜KÑ'ˆDõ Œg�nŠn˜TÑ"Ô"ð 	(àˆr3   c                ó:   — dt          j        |d¦  «        _        d S )Nr³  r³  r�  )rc   r,  s     r1   rò  z(Vs2010Backend.generate_debug_information  s   € à?E�Œ�dÐ6Ñ7Ô7Ô<Ð<Ð<r3   c                óÀ   — t           j                             | j                             ¦   «         d¦  «        }|                      ||| j        j        j        ¦  «         d S )NrÙ   )r%   rK   rg   ry   r~   r—  rà   rR  )rc   r‘  Úregen_vcxprojs      r1   rÞ  z"Vs2010Backend.add_regen_dependency"  sM   € ÝœŸš TÔ%5×%CÒ%CÑ%EÔ%EÀÑWÔWˆØ×"Ò" 4¨¸Ô8HÔ8QÔ8\Ñ]Ô]Ð]Ð]Ð]r3   c                ó   — d S rf   r8   )rc   r'  r  s      r1   rí  z)Vs2010Backend.generate_lang_standard_info&  s   € Øˆr3   )r	   r   r   r   )rð   rF   r   rñ   )F)r  r  )NNNT)4Ú__name__Ú
__module__Ú__qualname__rZ   rk   rÁ   rï   Ústaticmethodrõ   rê   r  r  r%  rC  rè   rä   r€  r�   r§   r—  rœ  rÒ  ræ  r÷  rû  Úclassmethodrz  r  r  r  r  r!  r(  r0  r5  r9  r<  r,  r&  rY  r[  rß  rj  rç   rå   ræ   rÝ  ró  rò  rÞ  rí  Ú__classcell__)rd   s   @r1   r-   r-   g   sÑ  ø€ € € € € ð
&ð 
&ð 
&ð 
&ð 
&ð 
&ðJð Jð Jð=^ð =^ð =^ð~7Nð 7Nð 7Nðr ð]ð ]ð ]ñ „\ð]ð ðð ð ñ „\ððð ð ð6ð ð ð<ð <ð <ð <ð <ð|,ð ,ð ,ð(d=ð d=ð d=ðLð ð ð44ð 4ð 4ð,6ð 6ð 6ð)ð )ð )ðJð Jð Jð Jð	;ð 	;ð 	;ð '0Ø(,Ø-1ðC#ð C#ð C#ð C#ð C#ðJDð Dð Dð<&Dð &Dð &DðPDð Dð Dð" ðRð Rñ „[ðRð4ð 4ð 4ð6ð 6ð 6ð
=ð =ð =ðð ð ð.)ð )ð )ð	Nð 	Nð 	NðWð Wð WðYð Yð Yð ð:ð :ñ „\ð:ð
 ðð ñ „\ðð
 ð'ð 'ñ „\ð'ð ðð ñ „\ðð ð#ð #ñ „\ð#ð@
hð 
hð 
hð1ð 1ð 1ðD	Dð D	Dð D	DðLDð Dð Dð4Dð Dð Dð4Dð Dð Dð,Qð Qð Qð Qð: ðð ñ „\ððFð Fð Fð^ð ^ð ^ðð ð ð ð ð ð r3   r-   )r	   r   r   r   r   r   )rN   rF   r   rO   )+Ú
__future__r   r  r"  r%   Úxml.dom.minidomr^  Úxml.etree.ElementTreeÚetreerà  r›   rG   ÚtypingÚTÚpathlibr   r   rQ   rn   r   r	   r
   r   r   Úmesonlibr   r   r   r   r   r   ry   r   r   ÚTYPE_CHECKINGr   r   r2   rC   rM   rT   ÚBackendr-   r8   r3   r1   ú<module>rŠ     s  ðð #Ð "Ð "Ð "Ð "Ð "Ø €€€Ø Ð Ð Ð Ø 	€	€	€	Ø Ð Ð Ð Ø "Ð "Ð "Ð "Ð "Ð "Ð "Ð "Ð "Ø €€€Ø Ð Ð Ð Ø "Ð "Ð "Ð "Ð "Ð "Ð "Ð "Ø 	€	€	€	à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð 6Ð 5Ð 5Ð 5Ð 5Ð 5Ð 5Ð 5à„?ð *Ø)Ð)Ð)Ð)Ð)Ð)ð hð  hð  hð  hðFð ð ð,bð bð bðcð cð cð cð@ð @ð @ð @ð @�HÔ$ñ @ô @ð @ð @ð @r3   