+
    ®¾jI*  ã                   ó2  € R t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIH	t	H
t
HtHtHtHtHt ^ RIHt ^ RIHtHt ^ RIHtHt ]P0                  ! ]4      t ! R R]P6                  4      t ! R	 R
]4      t ! R R]P<                  4      t ! R R]4      t R# )zBase option parser setupN)Úsuppress)ÚAnyÚDictÚ	GeneratorÚListÚNoReturnÚOptionalÚTuple)ÚUNKNOWN_ERROR)ÚConfigurationÚConfigurationError)Úredact_auth_from_urlÚ	strtoboolc                   óÄ   a a€ ] tR t^t oRtV3R lV 3R lltV3R lR ltRV3R lR lltV3R lR	 ltV3R
 lR lt	V3R lR lt
V3R lR ltV3R lR ltRtVtV ;t# )ÚPrettyHelpFormatterz4A prettier/less verbose help formatter for optparse.c                ó*   <€ V ^8„  d   QhRS[ RS[ RR/# )é   ÚargsÚkwargsÚreturnN)r   )ÚformatÚ__classdict__s   "€ÚW/home/ralf/ical-fahrzeuge/venv/lib/python3.14/site-packages/pip/_internal/cli/parser.pyÚ__annotate__Ú PrettyHelpFormatter.__annotate__   s"   ø€ ÷ *ñ *™cð *©Sð *°Tñ *ó    c                óˆ   <€ ^VR&   ^VR&   \         P                  ! 4       ^ ,          ^,
          VR&   \        SV `  ! V/ VB  R# )é   Úmax_help_positionÚindent_incrementÚwidthN)ÚshutilÚget_terminal_sizeÚsuperÚ__init__)Úselfr   r   Ú	__class__s   &*,€r   r$   ÚPrettyHelpFormatter.__init__   sG   ø€ à&(ˆÐ"Ñ#Ø%&ˆÐ!Ñ"Ü ×2Ò2Ó4°QÕ7¸!Õ;ˆˆw‰Ü‰Ò˜$Ð) &Ô)r   c                ó:   <€ V ^8„  d   QhRS[ P                  RS[/# ©r   Úoptionr   ©ÚoptparseÚOptionÚstr)r   r   s   "€r   r   r      s   ø€ ÷ 3ñ 3©H¯O©Oð 3Áñ 3r   c                ó$   € V P                  V4      # ©N)Ú_format_option_strings)r%   r*   s   &&r   Úformat_option_stringsÚ)PrettyHelpFormatter.format_option_strings   s   € Ø×*Ñ*¨6Ó2Ð2r   c                óF   <€ V ^8„  d   QhRS[ P                  RS[RS[RS[/# )r   r*   ÚmvarfmtÚoptsepr   r+   )r   r   s   "€r   r   r      s1   ø€ ÷ ñ Ù—o‘oðÙ03ðÙGJðá	ñr   c                ó@  € . pVP                   '       d#   VP                  VP                   ^ ,          4       VP                  '       d#   VP                  VP                  ^ ,          4       \        V4      ^8”  d   VP	                  ^V4       VP                  4       '       dm   VP                  f   Q hVP                  ;'       g    VP                  P                  4       pVP                  VP                  VP                  4       4      4       RP                  V4      # )zÈ
Return a comma-separated list of option strings and metavars.

:param option:  tuple of (short opt, long opt), e.g: ('-f', '--format')
:param mvarfmt: metavar format string
:param optsep:  separator
Ú )Ú_short_optsÚappendÚ
_long_optsÚlenÚinsertÚtakes_valueÚdestÚmetavarÚlowerr   Újoin)r%   r*   r5   r6   Úoptsr@   s   &&&&  r   r1   Ú*PrettyHelpFormatter._format_option_strings   sÎ   € ð ˆà××ÐØ�K‰K˜×*Ñ*¨1Õ-Ô.Ø××ÐØ�K‰K˜×)Ñ)¨!Õ,Ô-Üˆt‹9�qŒ=Ø�K‰K˜˜6Ô"à×Ñ×ÒØ—;‘;Ò*Ð*Ð*Ø—n‘n×;Ð;¨¯©×(9Ñ(9Ó(;ˆGØ�K‰K˜Ÿ™ w§}¡}£Ó7Ô8à�w‰w�t‹}Ðr   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# )r   Úheadingr   ©r.   )r   r   s   "€r   r   r   9   s   ø€ ÷ ñ ¡cð ©cñ r   c                ó&   € VR 8X  d   R# VR,           # )ÚOptionsr8   ú:
© )r%   rF   s   &&r   Úformat_headingÚ"PrettyHelpFormatter.format_heading9   s   € Ø�iÔÙØ˜�Ðr   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# )r   Úusager   rG   )r   r   s   "€r   r   r   >   s   ø€ ÷ ñ ¡#ð ©#ñ r   c                óp   € RP                  V P                  \        P                  ! V4      R4      4      pV# )zb
Ensure there is only one newline between usage and the first heading
if there is no description.
z
Usage: {}
ú  )r   Úindent_linesÚtextwrapÚdedent)r%   rO   Úmsgs   && r   Úformat_usageÚ PrettyHelpFormatter.format_usage>   s/   € ð
 ×$Ñ$ T×%6Ñ%6´x·²ÀuÓ7MÈtÓ%TÓUˆØˆ
r   c                ó6   <€ V ^8„  d   QhRS[ S[,          RS[/# )r   Údescriptionr   ©r   r.   )r   r   s   "€r   r   r   F   s   ø€ ÷ ñ ©h±s­mð Áñ r   c                óú   € V'       ds   \        V P                  R 4      '       d   RpMRpVP                  R4      pVP                  4       pV P	                  \
        P                  ! V4      R4      pV RV R2pV# R# )ÚmainÚCommandsÚDescriptionÚ
rQ   rJ   r8   )ÚhasattrÚparserÚlstripÚrstriprR   rS   rT   )r%   rY   Úlabels   && r   Úformat_descriptionÚ&PrettyHelpFormatter.format_descriptionF   st   € çÜ�t—{‘{ F×+Ò+Ø"‘à%�à%×,Ñ,¨TÓ2ˆKà%×,Ñ,Ó.ˆKà×+Ñ+¬H¯OªO¸KÓ,HÈ$ÓOˆKØ"˜G 3 { m°2Ð6ˆKØÐár   c                ó6   <€ V ^8„  d   QhRS[ S[,          RS[/# )r   Úepilogr   rZ   )r   r   s   "€r   r   r   X   s   ø€ ÷ ñ ¡H©S¥Mð ±cñ r   c                ó   € V'       d   V# R # )r8   rK   )r%   rh   s   &&r   Úformat_epilogÚ!PrettyHelpFormatter.format_epilogX   s   € çØˆMár   c                ó,   <€ V ^8„  d   QhRS[ RS[ RS[ /# )r   ÚtextÚindentr   rG   )r   r   s   "€r   r   r   _   s"   ø€ ÷ $ñ $¡ð $©cð $±cñ $r   c                óz   € VP                  R 4       Uu. uF  q2V,           NK  	  ppR P                  V4      # u upi )r_   )ÚsplitrB   )r%   rm   rn   ÚlineÚ	new_liness   &&&  r   rR   Ú PrettyHelpFormatter.indent_lines_   s:   € Ø/3¯z©z¸$Ô/?Ó@Ñ/? t˜d—]�]Ñ/?ˆ	Ð@Ø�y‰y˜Ó#Ð#ùò As   ”8rK   )z <{}>z, )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r$   r2   r1   rL   rV   re   rj   rR   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r&   r   s   @@r   r   r      s]   ù‡ € Ù>÷*ó *÷3ð 3÷ò ÷4ð ÷
ð ÷ð ÷$ð ÷$÷ $ð $r   r   c                   óB   a a€ ] tR t^dt oRtV3R lV 3R lltRtVtV ;t# )ÚUpdatingDefaultsHelpFormatterzÊCustom help formatter for use in ConfigOptionParser.

This is updates the defaults before expanding them, allowing
them to show up correctly in the help listing.

Also redact auth from url type options
c                ó:   <€ V ^8„  d   QhRS[ P                  RS[/# r)   r+   )r   r   s   "€r   r   Ú*UpdatingDefaultsHelpFormatter.__annotate__m   s   ø€ ÷ ñ ¡X§_¡_ð ¹ñ r   c                óB  <€ R pV P                   e‘   \        V P                   \        4      '       g   Q hV P                   P                  V P                   P                  4       VP
                  f   Q hV P                   P                  P                  VP
                  4      p\        SV `!  V4      pV'       dg   VP                  R8X  dV   \        V\        4      '       d   V.p\        V\        4      '       g   . pV F  pVP                  V\        V4      4      pK   	  V# )NÚURL)ra   Ú
isinstanceÚConfigOptionParserÚ_update_defaultsÚdefaultsr?   Úgetr#   Úexpand_defaultr@   r.   ÚlistÚreplacer   )r%   r*   Údefault_valuesÚ	help_textÚvalr&   s   &&   €r   rˆ   Ú,UpdatingDefaultsHelpFormatter.expand_defaultm   sä   ø€ ØˆØ�;‰;Ò"Ü˜dŸk™kÔ+=×>Ò>Ð>Ð>Ø�K‰K×(Ñ(¨¯©×)=Ñ)=Ô>Ø—;‘;Ò*Ð*Ð*Ø!Ÿ[™[×1Ñ1×5Ñ5°f·k±kÓBˆNÜ‘GÑ*¨6Ó2ˆ	ç˜fŸn™n°Ô5Ü˜.¬#×.Ò.Ø"0Ð!1�ô ˜n¬d×3Ò3Ø!#�ã%�Ø%×-Ñ-¨cÔ3GÈÓ3LÓM’	ñ &ð Ðr   rK   )	rt   ru   rv   rw   rx   rˆ   ry   rz   r{   r|   s   @@r   r~   r~   d   s   ù‡ € ñ÷÷ ó r   r~   c                   óN   a € ] tR t^„t o V 3R lR lt]V 3R lR l4       tRtV tR# )ÚCustomOptionParserc                óF   <€ V ^8„  d   QhRS[ RS[RS[RS[P                  /# )r   Úidxr   r   r   )Úintr   r,   ÚOptionGroup)r   r   s   "€r   r   ÚCustomOptionParser.__annotate__…   s3   ø€ ÷ 	ñ 	Ùð	Ù"ð	Ù.1ð	á	×	Ñ	ñ	r   c                ó”   € V P                   ! V/ VB pV P                  P                  4        V P                  P                  W4       V# )z*Insert an OptionGroup at a given position.)Úadd_option_groupÚoption_groupsÚpopr=   )r%   r’   r   r   Úgroups   &&*, r   Úinsert_option_groupÚ&CustomOptionParser.insert_option_group…   sD   € ð ×%Ò% tÐ6¨vÑ6ˆà×Ñ×ÑÔ Ø×Ñ×!Ñ! #Ô-àˆr   c                óD   <€ V ^8„  d   QhRS[ S[P                  ,          /# ©r   r   )r   r,   r-   )r   r   s   "€r   r   r•   ‘   s   ø€ ÷ ñ ¡¡h§o¡oÕ!6ñ r   c                óˆ   € V P                   R,          pV P                   F  pVP                  VP                   4       K   	  V# )z<Get a list of all options, including those in option groups.:NNN)Úoption_listr˜   Úextend)r%   ÚresÚis   &  r   Úoption_list_allÚ"CustomOptionParser.option_list_all�   s;   € ð ×Ñ˜qÕ!ˆØ×#Ô#ˆAØ�J‰J�q—}‘}Ö%ñ $ð ˆ
r   rK   N)	rt   ru   rv   rw   r›   Úpropertyr¤   ry   rz   )r   s   @r   r�   r�   „   s#   ø‡ € ÷	ð 	ð ÷ó ör   r�   c                   ó¤   a a€ ] tR t^št oRtRR/V3R lV 3R llltV3R lR ltV3R lR	 ltV3R
 lR ltV3R lR lt	V3R lR lt
RtVtV ;t# )r„   zoCustom option parser which updates its defaults by checking the
configuration files and environmental variablesÚisolatedFc          
      ó6   <€ V ^8„  d   QhRS[ RS[RS[RS[ RR/# )r   r   Únamer¨   r   r   N)r   r.   Úbool)r   r   s   "€r   r   ÚConfigOptionParser.__annotate__ž   s=   ø€ ÷ *ñ *áð*ñ ð*ñ ð	*ñ
 ð*ð 
ñ*r   c               ó|   <€ Wn         \        V4      V n        V P                   '       g   Q h\        SV `  ! V/ VB  R # r0   )rª   r   Úconfigr#   r$   )r%   rª   r¨   r   r   r&   s   &$$*,€r   r$   ÚConfigOptionParser.__init__ž   s6   ø€ ð Œ	Ü# HÓ-ˆŒà�y�yˆyÐˆyÜ‰Ò˜$Ð) &Ô)r   c                óF   <€ V ^8„  d   QhRS[ P                  RS[RS[RS[/# )r   r*   Úkeyr�   r   )r,   r-   r.   r   )r   r   s   "€r   r   r¬   «   s-   ø€ ÷ ñ ¡H§O¡Oð ¹#ð ÁCð ÉCñ r   c                ó´   €  VP                  W#4      #   \        P                   d0   p\        R T 24       \        P
                  ! ^4        Rp?R# Rp?ii ; i)z(An error occurred during configuration: N)Úcheck_valuer,   ÚOptionValueErrorÚprintÚsysÚexit)r%   r*   r±   r�   Úexcs   &&&& r   Úcheck_defaultÚ ConfigOptionParser.check_default«   sK   € ð	Ø×%Ñ% cÓ/Ð/øÜ×(Ñ(ô 	ÜÐ<¸S¸EÐBÔCÜ�HŠH�Q�KŠKûð	ús   ‚ “A¨$AÁAc                óL   <€ V ^8„  d   QhRS[ S[S[S[3,          RR3,          /# )r   r   N)r   r	   r.   r   )r   r   s   "€r   r   r¬   ²   s)   ø€ ÷ ñ á	‘5™™c˜•? D¨$Ð.Õ	/ñr   c              #  ó„  "  € R V P                   R.pV Uu/ uF  q". bK  	  ppV P                  P                  4        FY  w  rEV'       g   \        P	                  RV4       K%  VP                  R^4      w  rgWa9   g   KA  W6,          P                  Wu34       K[  	  V F  pW6,           F
  w  ruWu3x € K  	  K  	  R# u upi 5i)Úglobalz:env:z7Ignoring configuration key '%s' as it's value is empty.Ú.N)rª   r®   ÚitemsÚloggerÚdebugrp   r:   )r%   Úoverride_orderrª   Úsection_itemsÚsection_keyr�   Úsectionr±   s   &       r   Ú _get_ordered_configuration_itemsÚ3ConfigOptionParser._get_ordered_configuration_items²   sÄ   é € ð # D§I¡I¨wÐ7ˆñ "0ó;
Ù!/˜�"ŠH¡ð 	ð ;
ð !%§¡× 1Ñ 1Ö 3ÑˆKçÜ—‘ØMØôñ à&×,Ñ,¨S°!Ó4‰LˆGØÖ(ØÕ&×-Ñ-¨s¨jÖ9ñ !4ó &ˆGØ)×2Ð2‘�Ø�h”ó 3ó &ùò#;
ùs   ‚C –B;¡AC Á>AC c                óR   <€ V ^8„  d   QhRS[ S[S[3,          RS[ S[S[3,          /# )r   r†   r   )r   r.   r   )r   r   s   "€r   r   r¬   Î   s+   ø€ ÷ >ñ >©©c±3¨h­ð >¹DÁÁcÀ½Nñ >r   c           	     ól  € \         P                  ! V P                  4      V n        \	        4       pV P                  4        EFò  w  r4V P                  RV,           4      pVf   K$  VP                  f   Q hVP                  R	9   d    \        V4      pEM‘VP                  R8X  dŒ   \        \        4      ;_uu_ 4        \        V4      pRRR4       \        \        4      ;_uu_ 4        \        V4      pRRR4       \        V\        4      '       d   V^ 8  d   V P                  V RV R24       MõVP                  R8X  d2   VP                  4       pV Uu. uF  q`P!                  WSV4      NK  	  ppM³VP                  R8X  d‘   VP"                  f   Q hVP%                  VP                  4       VP'                  4       pVP)                  Wt4      pVP*                  ;'       g    R
pVP,                  ;'       g    / p	VP"                  ! WWW@.VO5/ V	B  MV P!                  WSV4      pWAVP                  &   EKõ  	  V F  p\/        V P                  V4      W&   K  	  RV n        V#   \         d    T P                  T RT R24        Lai ; i  + '       g   i     ELË; i  + '       g   i     EL´; iu upi )z’Updates the given defaults with values from the config files and
the environ. Does a little special handling for certain types of
options (lists).z--Nz is not a valid value for zO option, please specify a boolean value like yes/no, true/false or 1/0 instead.Úcountz† option, please instead specify either a non-negative integer or a boolean value like yes/no or false/true which is equivalent to 1/0.r:   Úcallback)Ú
store_trueÚstore_falserK   )r,   ÚValuesr†   ÚvaluesÚsetrÆ   Ú
get_optionr?   Úactionr   Ú
ValueErrorÚerrorr   r“   rƒ   rp   r¹   rË   ÚaddÚget_opt_stringÚconvert_valueÚcallback_argsÚcallback_kwargsÚgetattr)
r%   r†   Ú	late_evalr±   r�   r*   ÚvÚopt_strr   r   s
   &&        r   r…   Ú#ConfigOptionParser._update_defaultsÎ   sM  € ô —o’o d§m¡mÓ4ˆŒÜ“Eˆ	à×=Ñ=×?‰HˆCà—_‘_ T¨C¥ZÓ0ˆFð
 Š~Ùà—;‘;Ò*Ð*Ð*à�}‰}Ð =Ô=ðÜ# C›.’Cð —‘ 'Ô)Üœj×)Õ)Ü# C›.�C÷ *äœj×)Õ)Ü˜c›(�C÷ *ä! #¤s×+Ò+¨s°Q¬wØ—J‘JØ˜%Ð9¸#¸ð ?6ð 6ôøð —‘ (Ô*Ø—i‘i“k�ÙCFÓGÁ3¸a×)Ñ)¨&°qÖ9Á3�ÐG�Ø—‘ *Ô,Ø—‘Ò2Ð2Ð2Ø—‘˜fŸk™kÔ*Ø ×/Ñ/Ó1�Ø×*Ñ*¨7Ó8�à×+Ñ+×1Ð1¨r�Ø×/Ñ/×5Ð5°2�Ø—’ °ÐL¸TÒLÀVÓLà×(Ñ(¨°cÓ:�à$'�V—[‘[Ô!ña @ód ˆCÜ# D§K¡K°Ó5ˆH‹Mñ àˆŒØˆøôM "ô Ø—J‘JØ˜%Ð9¸#¸ð ?5ð 5öðú÷ *×)Ð)úç)×)Ð)üò Hs0   ÂI!Â;J	Ã&JÅJ1É!"JÊJÊ	JÊJ.c                ó4   <€ V ^8„  d   QhRS[ P                  /# rž   )r,   rÎ   )r   r   s   "€r   r   r¬     s   ø€ ÷ )ñ )¡H§O¡Oñ )r   c                ó–  € V P                   '       g!   \        P                  ! V P                  4      #  V P                  P                  4        V P                  V P                  P                  4       4      pV P                  4        Fs  pVP                  f   Q hVP                  VP                  4      p\        V\        4      '       g   KF  VP!                  4       pVP#                  WT4      W#P                  &   Ku  	  \        P                  ! V4      #   \         d*   pT P                  \        \        T4      4        Rp?LõRp?ii ; i)zƒOverriding to make updating the defaults after instantiation of
the option parser possible, _update_defaults() does the dirty work.N)Úprocess_default_valuesr,   rÎ   r†   r®   Úloadr   r·   r
   r.   r…   ÚcopyÚ_get_all_optionsr?   r‡   rƒ   rÖ   r³   )r%   Úerrr†   r*   ÚdefaultrÝ   s   &     r   Úget_default_valuesÚ%ConfigOptionParser.get_default_values  sö   € ð ×*×*Ð*ä—?’? 4§=¡=Ó1Ð1ð	/Ø�K‰K×ÑÔð ×(Ñ(¨¯©×);Ñ);Ó)=Ó>ˆØ×+Ñ+Ö-ˆFØ—;‘;Ò*Ð*Ð*Ø—l‘l 6§;¡;Ó/ˆGÜ˜'¤3×'Ô'Ø ×/Ñ/Ó1�Ø(.×(:Ñ(:¸7Ó(L�Ÿ™Ó%ñ .ô �Š˜xÓ(Ð(øô "ô 	/Ø�I‰I”m¤S¨£X×.Ñ.ûð	/ús   ´D ÄEÄEÅEc                ó&   <€ V ^8„  d   QhRS[ RS[/# )r   rU   r   )r.   r   )r   r   s   "€r   r   r¬   $  s   ø€ ÷ -ñ -™ð -¡ñ -r   c                óv   € V P                  \        P                  4       V P                  \        V R 24       R# )r_   N)Úprint_usager¶   Ústderrr·   r
   )r%   rU   s   &&r   rÔ   ÚConfigOptionParser.error$  s(   € Ø×ÑœŸ™Ô$Ø�	‰	”- C 5¨ Ö,r   )r®   rª   rÏ   )rt   ru   rv   rw   rx   r$   r¹   rÆ   r…   rç   rÔ   ry   rz   r{   r|   s   @@r   r„   r„   š   sV   ù‡ € ñ7ð*ð ÷	*õ *÷ð ÷ð ÷8>ð >÷@)ð )÷,-÷ -ð -r   r„   )!rx   Úloggingr,   r!   r¶   rS   Ú
contextlibr   Útypingr   r   r   r   r   r   r	   Úpip._internal.cli.status_codesr
   Úpip._internal.configurationr   r   Úpip._internal.utils.miscr   r   Ú	getLoggerrt   rÀ   ÚIndentedHelpFormatterr   r~   ÚOptionParserr�   r„   rK   r   r   Ú<module>r÷      s€   ðÙ ã Û Û Û 
Û Ý ß H× HÑ Hå 8ß Iß Dà	×	Ò	˜8Ó	$€ôO$˜(×8Ñ8ô O$ôdÐ$7ô ô@˜×.Ñ.ô ô,L-Ð+ö L-r   