§
    °³Ùg\  ã                   ó~  — d Z 	 ddlZn# e$ r Y nw xY wddlZddlmZ ddlZddlZddlZddl	Z	ddl
Z
ddlZddlZddlmZ ddlmZ ddlZddlmZ ddlmZ 	 ddlZn# e$ r ddlZY nw xY wddlmZ ddlZ ej        d	¦  «        Zd
ZdZdZdZdZ d„ Z!d„ Z"dd„Z#dd„Z$d„ Z%d„ Z&d„ Z'd„ Z(d„ Z)d„ Z* G d„ de¦  «        Z+dS )a¹  The code in this module is mostly copy/pasted out of the distutils2 source
code, as recommended by Tarek Ziade.  As such, it may be subject to some change
as distutils2 development continues, and will have to be kept up to date.

I didn't want to use it directly from distutils2 itself, since I do not want it
to be an installation dependency for our packages yet--it is still too unstable
(the latest version on PyPI doesn't even install).
é    N)Údefaultdict)Úerrors)Úlog)Údist)Ú	extension)Úextra_filesz\s*(.*?)\s*\((.*)\)\s*$)#))ÚmetadataÚnamer
   ))r	   Úversionr   ))r	   Úauthorr   ))r	   Úauthor_emailr   ))r	   Ú
maintainerr   ))r	   Úmaintainer_emailr   ))r	   Ú	home_pageÚurl))r	   Úproject_urlsr   ))r	   ÚsummaryÚdescription))r	   Úkeywordsr   ))r	   r   Úlong_description))r	   Údescription_content_typeÚlong_description_content_type))r	   Údownload_urlr   ))r	   Ú
classifierÚclassifiers))r	   ÚplatformÚ	platforms))r	   Úlicenser   ))r	   Úrequires_distÚinstall_requires))r	   Úsetup_requires_distÚsetup_requires))r	   Úpython_requiresr#   ))r	   Úrequires_pythonr#   ))r	   Úprovides_distÚprovides))r	   Úprovides_extrasr'   ))r	   Úobsoletes_distÚ	obsoletes))ÚfilesÚpackages_rootÚpackage_dir))r*   Úpackagesr-   ))r*   Úpackage_datar.   ))r*   Únamespace_packagesr/   ))r*   Ú
data_filesr0   ))r*   Úscriptsr1   ))r*   ÚmodulesÚ
py_modules))ÚglobalÚcommandsÚcmdclass))Úbackwards_compatÚzip_safer8   ))r7   Útests_requirer9   ))r7   Údependency_linksr:   ))r7   Úinclude_package_datar;   )r   r   r    r&   r)   r/   r-   r.   r0   r1   r3   r:   r"   r9   r   r6   r'   )r   )r8   r;   © c                 ó²   — t           j        dk    r4|                      dd¦  «        } d„ t          j        | ¦  «        D ¦   «         S t          j        | ¦  «        S )NÚntú\ú/c                 ó:   — g | ]}|                      d d¦  «        ‘ŒS )r@   r?   )Úreplace)Ú.0Úxs     ú>/granary/edev/quantum/lib/python3.11/site-packages/pbr/util.pyú
<listcomp>zshlex_split.<locals>.<listcomp>«   s&   € Ð@Ð@Ð@¨�—	’	˜#˜tÑ$Ô$Ð@Ð@Ð@ó    )Úosr
   rB   ÚshlexÚsplit)Úpaths    rE   Úshlex_splitrL   ¦   sP   € Ý	„w�$‚€ð �|Š|˜D #Ñ&Ô&ˆØ@Ð@­e¬k¸$Ñ.?Ô.?Ð@Ñ@Ô@Ð@åŒ;�tÑÔÐrG   c                 ó´  — |                       d¦  «        }t          |¦  «        dz
  }|d|…         }|d         }|dk    r]	 t          d                     |¦  «        |g¬¦  «        }n6# t          $ r# |dk    r‚ |dz  }|d|…         }||         }d}Y nw xY w|dk    °]||d…         D ]0}	 t          ||¦  «        }Œ# t          $ r t	          | ¦  «        ‚w xY w|S )z�Resolve a name like ``module.object`` to an object and return it.

    Raise ImportError if the module or name is not found.
    ú.é   Néÿÿÿÿr   )ÚfromlistÚ )rJ   ÚlenÚ
__import__ÚjoinÚImportErrorÚgetattrÚAttributeError)r
   ÚpartsÚcursorÚmodule_nameÚ	attr_nameÚretÚparts          rE   Úresolve_namer_   °   s"  € ð �JŠJ�s‰OŒO€EÝ�‰ZŒZ˜!‰^€FØ˜˜˜”.€KØ�b”	€Ià
�1Š*ˆ*ð		Ý˜SŸXšX kÑ2Ô2¸i¸[ÐIÑIÔIˆCØøÝð 	ð 	ð 	Ø˜Š{ˆ{ØØ�a‰KˆFØ   œ.ˆKØ˜fœˆIØˆCˆCˆCð	øøøð	 �1Š*ˆ*ð �f�g�g”ð $ð $ˆð	$Ý˜#˜tÑ$Ô$ˆCˆCøÝð 	$ð 	$ð 	$Ý˜dÑ#Ô#Ð#ð	$øøøð €Js   Á%A' Á'*BÂBÂ*B;Â;Cú	setup.cfgc           	      ó¶  — t           j        dk    rt          j        ¦   «         }nt          j        ¦   «         }t
          j                             | ¦  «        s4t          j	        dt
          j         
                    | ¦  «        z  ¦  «        ‚	 |                     | d¬¦  «         n%# t          $ r |                     | ¦  «         Y nw xY wi }|                     ¦   «         D ]M}t          ¦   «         ||<   |                     |¦  «        D ]$\  }}|||         |                     dd¦  «        <   Œ%ŒNt#          |dd¦  «        }t#          |d	d
¦  «        }|r?t
          j         
                    |¦  «        }t           j                             d|¦  «         	 |rÕd„ t'          |¦  «        D ¦   «         }|D ]¹}	t)          |	¦  «        }
	  |
|¦  «         Œ# t*          $ r t-          j        d¦  «         Y Œ>t0          $ rp t          j        ¦   «         d         }t-          j        d|	›d|›d�¦  «         t-          j        t5          j        ¦   «         ¦  «         t          j        d¦  «         Y Œ¶w xY wt:          j                             |¦  «         tA          ||¦  «        }d|d<   d|d<   tC          |¦  «         tE          |¦  «        }|r||d<   tG          |¦  «        }|r||d<   t#          |d	d¦  «        }|r!tI          j%        t'          |¦  «        ¦  «         |rt           j         &                    d¦  «         n'# |r t           j         &                    d¦  «         w w xY w|S )a�  Distutils2 to distutils1 compatibility util.

    This method uses an existing setup.cfg to generate a dictionary of
    keywords that can be used by distutils.core.setup(kwargs**).

    :param path:
        The setup.cfg path.
    :param script_args:
        List of commands setup.py was called with.
    :raises DistutilsFileError:
        When the setup.cfg file is not found.
    )é   r   zfile '%s' does not existúutf-8©Úencodingú-Ú_r4   Úsetup_hooksr*   r+   r   c                 ó   — g | ]
}|d k    ¯|‘ŒS )zpbr.hooks.setup_hookr<   )rC   Úhooks     rE   rF   zcfg_to_args.<locals>.<listcomp>ÿ   s.   € ð 3ð 3ð 3ØØÐ1Ò1Ð1ð Ø1Ð1Ð1rG   z)setup hook %s terminated the installationrO   zsetup hook z raised exception: ú
Tr;   Fr8   Úext_modulesÚentry_pointsr   )'ÚsysÚversion_infoÚconfigparserÚConfigParserÚSafeConfigParserrH   rK   Úexistsr   ÚDistutilsFileErrorÚabspathÚreadÚ	TypeErrorÚsectionsÚdictÚitemsrB   Úhas_get_optionÚinsertÚsplit_multiliner_   Ú
SystemExitr   ÚerrorÚ	ExceptionÚexc_infoÚ	tracebackÚ
format_excÚexitÚpbrÚhooksÚ
setup_hookÚsetup_cfg_to_setup_kwargsÚregister_custom_compilersÚget_extension_modulesÚget_entry_pointsr   Úset_extra_filesÚpop)rK   Úscript_argsÚparserÚconfigÚsectionÚkÚvaluerh   r,   rj   Úhook_fnÚeÚkwargsrl   rm   Úfiles_extra_filess                   rE   Úcfg_to_argsr˜   Ð   s¤  € õ Ô˜6Ò!Ð!ÝÔ*Ñ,Ô,ˆˆåÔ.Ñ0Ô0ˆåŒ7�>Š>˜$ÑÔð ?ÝÔ'Ð(BÝ(*¬¯ª¸Ñ(=Ô(=ñ)>ñ ?ô ?ð 	?ðØ�Š�D 7ˆÑ+Ô+Ð+Ð+øÝð ð ð à�Š�DÑÔÐÐÐðøøøð €FØ—?’?Ñ$Ô$ð 9ð 9ˆÝ™&œ&ˆˆw‰ØŸš WÑ-Ô-ð 	9ð 	9‰HˆAˆuØ38ˆF�7ŒO˜AŸIšI c¨3Ñ/Ô/Ñ0Ð0ð	9õ ! ¨°=ÑAÔA€KÝ  ¨°/ÑBÔB€Kð
 ð (Ý”g—o’o kÑ2Ô2ˆÝŒ�Š˜˜;Ñ'Ô'Ð'ð-Øð 	 ð3ð 3Ý!0°Ñ!=Ô!=ð3ñ 3ô 3ˆKð $ð  ð  �Ý& tÑ,Ô,�ð	 Ø�G˜F‘O”O�O�OøÝ!ð Kð Kð KÝ”IÐIÑJÔJÐJÐJÐJÝ ð  ð  ð  Ýœ™œ qÔ)�AÝ”I�IØ#˜t˜t Q Q Qð(ñ )ô )ð )å”I�iÔ2Ñ4Ô4Ñ5Ô5Ð5Ý”H˜Q‘K”K�K�K�Kð øøøõ 	Œ	×Ò˜VÑ$Ô$Ð$å*¨6°;Ñ?Ô?ˆð *.ˆÐ%Ñ&Ø"ˆˆzÑå! &Ñ)Ô)Ð)å+¨FÑ3Ô3ˆØð 	0Ø$/ˆF�=Ñ!å'¨Ñ/Ô/ˆØð 	2Ø%1ˆF�>Ñ"õ +¨6°7¸MÑJÔJÐØð 	LÝÔ'­Ð8IÑ(JÔ(JÑKÔKÐKð ð 	ÝŒH�LŠL˜‰OŒOˆOøøð ð 	ÝŒH�LŠL˜‰OŒOˆOˆOð	øøøð €MsP   ÂB$ Â$CÃCÆ.L2 Ç GÇL2 ÇI%Ç*L2 Ç,A6I%É"L2 É$I%É%B+L2 Ì2$Mc                 óÀ
  — i }i }t           D �]»\  }}|\  }}t          | ||¦  «        }|s¡|dk    r›t          | |d¦  «        }|rˆt          |¦  «        }d}	|D ]r}
t          j        |
d¬¦  «        }	 |	|                     ¦   «                              ¦   «         dz   z  }	|                     ¦   «          ŒZ# |                     ¦   «          w xY w|	}|sŒÂ|t          v rt          |¦  «        }|t          v rt          |¦  «        }n†|t          v rYi }t          |¦  «        D ]D}|                     dd¦  «        \  }}|                     ¦   «         ||                     ¦   «         <   ŒE|}n$|t          v r|                     ¦   «         d	v rd
}nd}|�r:|dv rd„ |D ¦   «         }|dk    rŠg }d}|D ]|}t          j        ||¦  «        }|                     d¦  «                             ¦   «         }|                     d¦  «                             ¦   «         }|                     ||f¦  «         Œ}||d<   �nš|dk    rd|i}�nŽ|dv �r6i }d
}d}|D �]}d|v r¬|                     dd¦  «        \  }}	t'          |                     ¦   «         ¦  «        d         }||	                     ¦   «         }	}||v r+||         }|                     t'          |	¦  «        ¦  «         ntt'          |	¦  «        x}||                     ¦   «         <   nM|rt+          j        d|z  ¦  «        ‚|                     t'          |                     ¦   «         ¦  «        ¦  «         d}�Œ|dk    r!t/          |                     ¦   «         ¦  «        }|}nS|dk    rMi }t3          j        ¦   «         }|D ]3}t7          |¦  «        } ||¦  «        } |||                      ¦   «         <   Œ4|}|||<   �Œ½d| v ræd}| d         }!d|!vrJddlm}" d                     |"                      |"j!        ¦  «        ¦  «         "                    dd¦  «        |!d<   |!D ]‹}#g }$t          |!|#         ¦  «        }%|%D ]j}t          j        ||¦  «        }|                     d¦  «                             ¦   «         }&|                     d¦  «        }|$                     |&|f¦  «         Œk|$||#<   ŒŒi }'|D ]ˆ}(||(         D ]}\  }}|rK|(›d |›d!�})d"|vr>	 tG          j$        d#|z  ¦  «        r|(})n&# tJ          $ r tM          j'        d$¦  «         ‚ w xY wn|(})|' (                    |)g ¦  «                             |¦  «         Œ~Œ‰|' )                    dg ¦  «        |d<   |'|d%<   |S )&z˜Convert config options to kwargs.

    Processes the setup.cfg options and converts them to arguments accepted
    by setuptools' setup() function.
    r   Údescription_filerR   rc   rd   z

ú=rO   )ÚtrueÚtÚ1ÚyesÚyTF)r    r9   c                 óD   — g | ]}t                                d |¦  «        ‘ŒS )z\1\2)Ú_VERSION_SPEC_REÚsub)rC   Úpreds     rE   rF   z-setup_cfg_to_setup_kwargs.<locals>.<listcomp>e  s8   € ð  :ð  :ð  :Ø$(õ !1× 4Ò 4°W¸dÑ CÔ Cð  :ð  :ð  :rG   r    z6(?P<package>[^;]*);?(?P<env_marker>[^#]*?)(?:\s*#.*)?$ÚpackageÚ
env_markerr,   )r.   r0   Nr   z1malformed package_data first line %r (misses "=")r0   r6   Úextrasz6(?P<package>[^:]*):?(?P<env_marker>[^#]*?)(?:\s*#.*)?$Útest)Ú	packagingrk   ú;ú:z:(ú)Úbdist_wheelz(%s)z–Marker evaluation failed, see the following error.  For more information see: http://docs.openstack.org/pbr/latest/user/using.html#environment-markersÚextras_require)*ÚCFG_TO_PY_SETUP_ARGSr{   r}   ÚioÚopenrv   ÚstripÚcloseÚ
CSV_FIELDSÚ	split_csvÚMULTI_FIELDSÚ
MAP_FIELDSrJ   ÚBOOL_FIELDSÚlowerÚreÚmatchÚgroupÚappendrL   Úextendr   ÚDistutilsOptionErrorÚsortedrz   Úst_distÚDistributionr_   Úget_command_namer…   r©   rU   Úparse_requirementsÚTEST_REQUIREMENTS_FILESrB   Úpkg_resourcesÚevaluate_markerÚSyntaxErrorr   r   Ú
setdefaultr�   )*r�   rŽ   r–   Úall_requirementsÚaliasÚargr‘   ÚoptionÚin_cfg_valuer“   Úfilenamerš   Ú
in_cfg_mapÚir’   Úvr    Úrequirement_patternÚrequirementÚmÚrequirement_packager¦   r0   Ú	firstlineÚprevÚlineÚkeyÚkey_unquotedr6   r   Úcls_nameÚclsÚcmdr§   r©   ÚextraÚextra_requirementsÚrequirementsÚextras_valuer®   Ú	req_groupÚ
extras_keys*                                             rE   rˆ   rˆ   /  s¸  € ð €Fð Ðå*ð _#ñ _#‰
ˆˆsØ‰ˆ�å% f¨g°vÑ>Ô>ˆØð 	% Ð'9Ò 9Ð 9Ý)¨&°'Ð;MÑNÔNˆLØð 	%Ý.¨|Ñ<Ô<�Ø�Ø ,ð 1ð 1�HÝ')¤w¨xÀ'Ð'JÑ'JÔ'JÐ$ð1ØÐ!1×!6Ò!6Ñ!8Ô!8×!>Ò!>Ñ!@Ô!@À6Ñ!IÑI˜à(×.Ò.Ñ0Ô0Ð0Ð0øÐ(×.Ò.Ñ0Ô0Ð0Ð0øøøØ$�àð 	Øà•*ÐÐÝ$ \Ñ2Ô2ˆLØ•,ÐÐÝ*¨<Ñ8Ô8ˆLˆLØ•JÐÐØˆJÝ$ \Ñ2Ô2ð 2ð 2�Ø—w’w˜s A‘”‘��1Ø()¯ª©	¬	�
˜1Ÿ7š7™9œ9Ñ%Ð%Ø%ˆLˆLØ•KÐÐà×!Ò!Ñ#Ô#Ð'EÐEÐEØ#��à$�àñ 8	(ØÐ;Ð;Ð;ð :ð  :Ø,8ð :ñ  :ô  :�àÐ(Ò(Ð(ð $&Ð àMð $à#/ð Oð O�KÝœÐ!4°kÑBÔB�AØ*+¯'ª'°)Ñ*<Ô*<×*BÒ*BÑ*DÔ*DÐ'Ø!"§¢¨Ñ!6Ô!6×!<Ò!<Ñ!>Ô!>�JØ$×+Ò+Ð-@À*Ð,MÑNÔNÐNÐNØ'7Ð  Ñ$Ñ$Ø˜Ò%Ð%Ø " LÐ1�‘ØÐ6Ð6Ñ6Ø�
Ø �	Ø�Ø(ð &ñ &�DØ˜d�{�{Ø%)§Z¢Z°°QÑ%7Ô%7™
˜˜UÝ'2°3·9²9±;´;Ñ'?Ô'?ÀÔ'B˜Ø&2°E·K²K±M´M˜U˜Ø *Ð,Ð,ð $.¨c¤?˜DØ ŸKšK­°EÑ(:Ô(:Ñ;Ô;Ð;Ð;å=HÈÑ=OÔ=OÐO˜D :¨c¯iªi©k¬kÑ#:Ð#:Ø"ð ?Ý$Ô9ð#Ø%)ñ*ñ+ô +ð +ð Ÿš¥K°·
²
±´Ñ$=Ô$=Ñ>Ô>Ð>Ø %�I‘IØ˜,Ò&Ð&õ "(¨
×(8Ò(8Ñ(:Ô(:Ñ!;Ô!;�JØ)��Ø˜
Ò"Ð"Ø�ÝÔ+Ñ-Ô-�Ø ,ð ;ð ;�HÝ& xÑ0Ô0�CØ˜#˜d™)œ)�CØ7:�H˜S×1Ò1Ñ3Ô3Ñ4Ð4Ø'�à"ˆˆs‰‰ð �6ÐÐàEð 	à˜Ô!ˆð ˜ÐÐØ%Ð%Ð%Ð%Ð%Ð%Ø!ŸYšY y×'CÒ'CØÔ1ñ(3ô (3ñ 4ô 4ß4;²G¸CÀÑ4EÔ4Eð �6‰Nð ð 	9ð 	9ˆEØ!#ÐÝ*¨6°%¬=Ñ9Ô9ˆLØ+ð Fð F�Ý”HÐ0°+Ñ>Ô>�Ø Ÿwšw yÑ1Ô1×7Ò7Ñ9Ô9�ØŸWšW \Ñ2Ô2�
Ø"×)Ò)¨<¸Ð*DÑEÔEÐEÐEØ&8Ð˜UÑ#Ð#ð €NØ%ð Jð Jˆ	Ø'7¸	Ô'Bð 	Jð 	JÑ#ˆK˜Øð 'Ø*3¨)¨)°Z°Z°ZÐ@�
ð
 !¨Ð3Ð3ð
Ý(Ô8¸À*Ñ9LÑMÔMð 3Ø)2˜JøøÝ&ð ð ð Ýœ	ðMñô ð ð ðøøøð	 4ð '�
Ø×%Ò% j°"Ñ5Ô5×<Ò<¸[ÑIÔIÐIÐIð+	Jð. "0×!3Ò!3°B¸Ñ!;Ô!;€FÐÑØ-€FÐÑà€Ms   Á/,B0Â0CÓS/Ó/ Tc                 ó|  — t          | dd¦  «        }|r¦t          |¦  «        }|D ]–}t          |¦  «        }t          |d¦  «        r|j        }n|j        }t          |d¦  «        r|j        }nd|z  }|j        }t          j	        j
        }||j        |f||<   t          j        |         t          j        d|z   <   Œ•dS dS )z³Handle custom compilers.

    This has no real equivalent in distutils, where additional compilers could
    only be added programmatically, so we have to hack it in somehow.
    r4   Ú	compilersr
   r   zcustom compiler %sz
distutils.N)r{   r}   r_   Úhasattrr
   Ú__name__r   Ú
__module__Ú	distutilsÚ	ccompilerÚcompiler_classrn   r2   )r�   ræ   Úcompilerr
   Údescr[   Úccs          rE   r‰   r‰   ä  sñ   € õ ˜v x°Ñ=Ô=€IØð OÝ# IÑ.Ô.ˆ	Ø!ð 	Oð 	OˆHÝ# HÑ-Ô-ˆHõ �x Ñ(Ô(ð )Ø”}��àÔ(�Ý�x Ñ/Ô/ð 3ØÔ+��à+¨dÑ2�à"Ô-ˆKõ Ô$Ô3ˆBØ# XÔ%6¸Ð=ˆBˆt‰Hõ 7:´kÀ+Ô6N�CŒK˜ {Ñ2Ñ3Ð3ð1Oð Oð	Oð 	OrG   c                 ó  — d}g }| D �]w}d|v r|                      dd¦  «        }n|                      dd¦  «        }d„ |D ¦   «         }t          |¦  «        dk    �r#|d         dk    �ri }|D ]È}t          | ||¦  «        }|sŒt          |¦  «        }|d	k    r˜g }|D ]‘}	|	                      dd¦  «        }	t          |	¦  «        dk    r|	d                              ¦   «         d
f}	n4|	d                              ¦   «         |	d                              ¦   «         f}	|                     |	¦  «         Œ’|}|||<   ŒÉ|rGd|vr|d         |d<   |                     t          j        |                     d¦  «        fi |¤Ž¦  «         �Œy|S )zHandle extension modules)ÚsourcesÚinclude_dirsÚdefine_macrosÚundef_macrosÚlibrary_dirsÚ	librariesÚruntime_library_dirsÚextra_objectsÚextra_compile_argsÚextra_link_argsÚexport_symbolsÚ	swig_optsÚdependsr«   rO   r›   c                 ó6   — g | ]}|                      ¦   «         ‘ŒS r<   ©r²   )rC   Úlabels     rE   rF   z)get_extension_modules.<locals>.<listcomp>  s    € Ð4Ð4Ð4 E�%—+’+‘-”-Ð4Ð4Ð4rG   é   r   r   ró   Nr
   )	rJ   rS   r{   r}   r²   r½   r   Ú	Extensionr�   )
r�   ÚEXTENSION_FIELDSrl   r‘   ÚlabelsÚext_argsÚfieldr“   ÚmacrosÚmacros
             rE   rŠ   rŠ     sÞ  € ð#Ðð €KØð Dñ DˆØ�'ˆ>ˆ>Ø—]’] 3¨Ñ*Ô*ˆFˆFð —]’] 3¨Ñ*Ô*ˆFØ4Ð4¨VÐ4Ñ4Ô4ˆÝ�‰KŒK˜1ÒÑ 6¨!¤9°Ò#;Ñ#;ØˆHØ)ð (ð (�Ý& v¨w¸Ñ>Ô>�ð ð ØÝ'¨Ñ.Ô.�Ø˜OÒ+Ð+Ø�FØ!&ð -ð -˜Ø %§¢¨C°Ñ 3Ô 3˜Ý˜u™:œ:¨š?˜?Ø%*¨1¤X§^¢^Ñ%5Ô%5°tÐ$<˜E˜Eà%*¨1¤X§^¢^Ñ%5Ô%5°u¸Q´x·~²~Ñ7GÔ7GÐ$H˜EØŸš eÑ,Ô,Ð,Ð,Ø"�EØ"'�˜‘�Øð DØ Ð)Ð)Ø'-¨a¤y�H˜VÑ$Ø×"Ò"¥9Ô#6°x·|²|ÀFÑ7KÔ7Kð $Cð $CØ9Að$Cð $Cñ Dô Dð DùàÐrG   c                 óp   — d| vri S t          d„ | d                              ¦   «         D ¦   «         ¦  «        S )a  Process the [entry_points] section of setup.cfg.

    Processes setup.cfg to handle setuptools entry points. This is, of course,
    not a standard feature of distutils2/packaging, but as there is not
    currently a standard alternative in packaging, we provide support for them.
    rm   c              3   ó>   K  — | ]\  }}|t          |¦  «        fV — Œd S ©N)r}   )rC   rÍ   r“   s      rE   ú	<genexpr>z#get_entry_points.<locals>.<genexpr>G  sO   è è € ð Eð EÙ!�F˜Eð �¨Ñ/Ô/Ð0ð Eð Eð Eð Eð Eð ErG   )ry   rz   )r�   s    rE   r‹   r‹   <  s[   € ð ˜VÐ#Ð#Øˆ	åð Eð EØ%+¨NÔ%;×%AÒ%AÑ%CÔ%CðEñ Eô Eñ Eô Eð ErG   c                 ó>   — || v r|| |         v r| |         |         S dS )NFr<   )r�   r‘   rÍ   s      rE   r{   r{   K  s/   € Ø�&ÐÐ˜V v¨g¤Ð6Ð6Ø�gŒ˜vÔ&Ð&àˆurG   c                 óX   — d„ d„ |                       d¦  «        D ¦   «         D ¦   «         } | S )z3Special behaviour when we have a multi line optionsc                 ó@   — g | ]}|¯|                      d ¦  «        °|‘ŒS )ú#)Ú
startswith©rC   Úelements     rE   rF   z#split_multiline.<locals>.<listcomp>U  sB   € ð 9ð 9ð 9˜àð9à '× 2Ò 2°3Ñ 7Ô 7ð9ˆWð 9ð 9ð 9rG   c              3   ó>   K  — | ]}|                      ¦   «         V — Œd S r  rÿ   )rC   rÙ   s     rE   r  z"split_multiline.<locals>.<genexpr>V  s*   è è € Ð9Ð9˜tˆd�jŠj‰lŒlÐ9Ð9Ð9Ð9Ð9Ð9rG   rk   ©rJ   ©r“   s    rE   r}   r}   R  sA   € ð9ð 9Ø9Ð9 u§{¢{°4Ñ'8Ô'8Ð9Ñ9Ô9ð9ñ 9ô 9€Eð €LrG   c                 óX   — d„ d„ |                       d¦  «        D ¦   «         D ¦   «         } | S )z8Special behaviour when we have a comma separated optionsc                 ó   — g | ]}|¯|‘ŒS r<   r<   r  s     rE   rF   zsplit_csv.<locals>.<listcomp>^  s,   € ð ð ð ˜àðˆWð ð ð rG   c              3   ó>   K  — | ]}|                      ¦   «         V — Œd S r  rÿ   )rC   Úchunks     rE   r  zsplit_csv.<locals>.<genexpr>_  s*   è è € Ð:Ð: ˆe�kŠk‰mŒmÐ:Ð:Ð:Ð:Ð:Ð:rG   ú,r  r  s    rE   rµ   rµ   [  sA   € ðð Ø:Ð:¨¯ª°SÑ)9Ô)9Ð:Ñ:Ô:ðñ ô €Eð €LrG   c                   ó$   ‡ — e Zd ZdZdˆ fd„	Zˆ xZS )ÚDefaultGetDictzDLike defaultdict, but get() also sets and returns the default value.Nc                 ó‚   •— |€|                       ¦   «         }t          t          | ¦  «                             ||¦  «        S r  )Údefault_factoryÚsuperr  rÉ   )ÚselfrÚ   ÚdefaultÚ	__class__s      €rE   ÚgetzDefaultGetDict.geth  s9   ø€ Øˆ?Ø×*Ò*Ñ,Ô,ˆGÝ•^ TÑ*Ô*×5Ò5°c¸7ÑCÔCÐCrG   r  )rè   ré   Ú__qualname__Ú__doc__r$  Ú__classcell__)r#  s   @rE   r  r  e  sM   ø€ € € € € ØNÐNðDð Dð Dð Dð Dð Dð Dð Dð Dð DrG   r  )r`   r<   )r<   ),r&  ÚmultiprocessingrV   ÚloggingÚcollectionsr   r°   rH   rº   rI   rn   r‚   Údistutils.ccompilerrê   r   r   rÆ   Ú
setuptoolsr   rÁ   r   rq   rp   r…   r   Ú	pbr.hooksÚcompiler¢   r¯   r¶   r·   r¸   r´   rL   r_   r˜   rˆ   r‰   rŠ   r‹   r{   r}   rµ   r  r<   rG   rE   ú<module>r/     s‚  ðð\ð ð	ØÐÐÐÐøØð 	ð 	ð 	Ø€Dð	øøøà €€€à #Ð #Ð #Ð #Ð #Ð #Ø 	€	€	€	Ø 	€	€	€	Ø 	€	€	€	Ø €€€Ø 
€
€
€
Ø Ð Ð Ð à Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ø &Ð &Ð &Ð &Ð &Ð &Ø  Ð  Ð  Ð  Ð  Ð  ðØ'Ð'Ð'Ð'Ð'øØð ð ð ØÐÐÐÐÐðøøøð Ð Ð Ð Ð Ð Ø Ð Ð Ð ð �2”:Ð8Ñ9Ô9Ð ð+Ð ð\#€ð& €
ð 3€à€
ðð ð ðð ð ð@\ð \ð \ð \ð~rð rð rð rðj Oð  Oð  OðF2ð 2ð 2ðjEð Eð Eðð ð ðð ð ðð ð ðDð Dð Dð Dð D�[ñ Dô Dð Dð Dð Ds   „	 ‰�ÁA Á	A(Á'A(