Ë
    ómxi}\  ã                   óv  — U d 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„ Z	 G d„ d«      Z
d„ Z G d„ d	e«      Zi Zeeef   ed
<   i Zeeeeef   f   ed<   d„ Zd#d„Zd„ Z edd«      d„ «       Z edd«      d„ «       Z edd«      efd„«       Zdefd„Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d „ Z"d!„ Z#d"„ Z$y)$z"Git implementation of _version.py.é    N)ÚCallablec                  ó   — d} d}d}| ||dœ}|S )z;Get the keywords needed to look up the version information.z" (HEAD, tag: v2.3.3, origin/2.3.x)Ú(9c8bc3e55188c8aff37207a74f1dd144980b8874z2025-09-30 00:12:09 +0200)ÚrefnamesÚfullÚdate© )Úgit_refnamesÚgit_fullÚgit_dateÚkeywordss       úF/home/htdocs/ttos/venv/lib/python3.12/site-packages/pandas/_version.pyÚget_keywordsr      s$   € ð 8€LØ9€HØ*€HØ(°(ÀHÑM€HØ€Oó    c                   ó   — e Zd ZdZy)ÚVersioneerConfigz2Container for Versioneer configuration parameters.N©Ú__name__Ú
__module__Ú__qualname__Ú__doc__r	   r   r   r   r   #   s   „ Ú<r   r   c                  ón   — t        «       } d| _        d| _        d| _        d| _        d| _        d| _        | S )z:Create, populate and return the VersioneerConfig() object.ÚgitÚpep440Úvzpandas-zpandas/_version.pyF)r   ÚVCSÚstyleÚ
tag_prefixÚparentdir_prefixÚversionfile_sourceÚverbose)Úcfgs    r   Ú
get_configr#   '   s=   € ô Ó
€CØ€C„GØ€C„IØ€C„NØ$€CÔØ1€CÔØ€C„KØ€Jr   c                   ó   — e Zd ZdZy)ÚNotThisMethodzCException raised if a method is not valid for the current scenario.Nr   r	   r   r   r%   r%   5   s   „ ÚMr   r%   ÚLONG_VERSION_PYÚHANDLERSc                 ó   ‡ ‡— ˆˆ fd„}|S )z:Create decorator to mark a method as the handler of a VCS.c                 óB   •— ‰t         vr	i t         ‰<   | t         ‰   ‰<   | S )z!Store f in HANDLERS[vcs][method].)r'   )ÚfÚmethodÚvcss    €€r   Údecoratez&register_vcs_handler.<locals>.decorate@   s'   ø€ à”hÑØŒH�S‰MØ !Œ�‰�fÑØˆr   r	   )r,   r+   r-   s   `` r   Úregister_vcs_handlerr.   =   s   ù€ õð €Or   c           	      óR  — t        | t        «      sJ ‚d}i }t        j                  dk(  r<t	        j
                  «       }|xj                  t        j                  z  c_        ||d<   | D ]R  }	t        |	g|z   «      }
	 t	        j                  |	g|z   f||t        j                  |rt        j                  nddœ|¤Ž} n |rt        d| › �«       y|j!                  «       d	   j#                  «       j%                  «       }|j&                  d	k7  r-|rt        d|
› d
�«       t        d|› �«       d|j&                  fS ||j&                  fS # t        $ rV t        j                  «       d   }|j                  t        j                  k(  rY �Œ|rt        d|
› �«       t        |«       Y  yw xY w)zCall the given command(s).NÚwin32Ústartupinfo)ÚcwdÚenvÚstdoutÚstderré   zunable to run )NNzunable to find command, tried r   z (error)zstdout was )Ú
isinstanceÚlistÚsysÚplatformÚ
subprocessÚSTARTUPINFOÚdwFlagsÚSTARTF_USESHOWWINDOWÚstrÚPopenÚPIPEÚOSErrorÚexc_infoÚerrnoÚENOENTÚprintÚcommunicateÚstripÚdecodeÚ
returncode)ÚcommandsÚargsr2   r!   Úhide_stderrr3   ÚprocessÚpopen_kwargsr1   ÚcommandÚdispcmdÚer4   s                r   Úrun_commandrS   J   s¢  € ä�h¤Ô%Ð%Ð%Ø€Gà€LÜ
‡|�|�wÒä ×,Ñ,Ó.ˆØ×Òœz×>Ñ>Ñ>ÕØ&1ˆ�]Ñ#àò ˆÜ�w�i $Ñ&Ó'ˆð	ä ×&Ñ&Ø�	˜DÑ ðàØÜ!—‘Ù+6œ
Ÿš¸Dñð ñˆGñ ðñ, ÜÐ2°8°*Ð=Ô>ØØ× Ñ Ó" 1Ñ%×+Ñ+Ó-×4Ñ4Ó6€FØ×Ñ˜QÒÙÜ�N 7 )¨8Ð4Ô5Ü�K ˜xÐ(Ô)Ø�W×'Ñ'Ð'Ð'Ø�7×%Ñ%Ð%Ð%øô% ò 	Ü—‘“˜qÑ!ˆAØ�w‰wœ%Ÿ,™,Ò&ÚÙÜ˜ w iÐ0Ô1Ü�a”Úð	ús   Á;?EÅ=F&ÆF&Æ%F&c                 ó`  — g }t        d«      D ]x  }t        j                  j                  |«      }|j	                  | «      r|t        | «      d dddddœc S |j                  |«       t        j                  j                  |«      }Œz |rt        dt        |«      › d| › �«       t        d«      ‚)a"  Try to determine the version from the parent directory name.

    Source tarballs conventionally unpack into a directory that includes both
    the project name and a version string. We will also support searching up
    two directory levels for an appropriately named parent directory
    é   NF©Úversionzfull-revisionidÚdirtyÚerrorr   zTried directories z*             but none started with prefix z+rootdir doesn't start with parentdir_prefix)ÚrangeÚosÚpathÚbasenameÚ
startswithÚlenÚappendÚdirnamerF   r?   r%   )r   Úrootr!   ÚrootdirsÚ_ra   s         r   Úversions_from_parentdirre   x   s¼   € ð €Hä�1‹Xò %ˆÜ—'‘'×"Ñ" 4Ó(ˆØ×ÑÐ.Ô/à"¤3Ð'7Ó#8Ð#:Ð;Ø#'ØØØñò ð 	�‰˜ÔÜ�w‰w�‰˜tÓ$‰ð%ñ ÜØ ¤ X£ ð 0*Ø*:Ð);ð=ô	
ô ÐEÓ
FÐFr   r   r   c                 óH  — i }	 t        | d¬«      5 }|D ]å  }|j                  «       j                  d«      r,t        j                  d|«      }|r|j                  d«      |d<   |j                  «       j                  d«      r,t        j                  d|«      }|r|j                  d«      |d<   |j                  «       j                  d	«      sŒ¹t        j                  d|«      }|sŒÒ|j                  d«      |d
<   Œç 	 ddd«       |S # 1 sw Y   |S xY w# t        $ r Y |S w xY w)z0Extract version information from the given file.zutf-8)Úencodingzgit_refnames =z
=\s*"(.*)"r6   r   z
git_full =r   z
git_date =r   N)ÚopenrH   r^   ÚreÚsearchÚgrouprB   )Úversionfile_absr   ÚfobjÚlineÚmos        r   Úgit_get_keywordsrp   –   s  € ð €HðÜ�/¨GÔ4ð 	7¸Øò 7�Ø—:‘:“<×*Ñ*Ð+;Ô<ÜŸ™ =°$Ó7�BÙØ/1¯x©x¸«{˜ Ñ,Ø—:‘:“<×*Ñ*¨<Ô8ÜŸ™ =°$Ó7�BÙØ+-¯8©8°A«;˜ Ñ(Ø—:‘:“<×*Ñ*¨<Õ8ÜŸ™ =°$Ó7�BÚØ+-¯8©8°A«;˜ Ò(ñ7÷	7ð  €O÷!	7ð  €Oûô ò ØØ€Oðús;   „D ‘B;DÃDÃ&DÃ=D ÄDÄD ÄD Ä	D!Ä D!r   c                 óN  — d| vrt        d«      ‚| j                  d«      }|�E|j                  «       d   }|j                  «       j	                  ddd«      j	                  dd	d«      }| d   j                  «       }|j                  d
«      r|rt        d«       t        d«      ‚|j                  d«      j                  d«      D �ch c]  }|j                  «       ’Œ }}d}|D �ch c]"  }|j                  |«      sŒ|t        |«      d ’Œ$ }}|sI|D �ch c]  }t        j                  d|«      sŒ|’Œ }}|r!t        ddj                  ||z
  «      › d�«       |r&t        ddj                  t        |«      «      › �«       t        |«      D ]c  }	|	j                  |«      sŒ|	t        |«      d }t        j                  d|«      sŒ:|rt        d|› �«       || d   j                  «       dd|dœc S  |rt        d«       d| d   j                  «       ddddœS c c}w c c}w c c}w )z*Get version information from git keywords.r   zShort version file foundr   Néÿÿÿÿú ÚTr6   Ú z$Formatz"keywords are unexpanded, not usingz.unexpanded keywords, not a git-archive tarballz()ú,ztag: z\dzdiscarding 'z', no digitszlikely tags: zpicking r   FrV   z2no suitable tags, using unknown + full revision idú	0+unknownzno suitable tags)r%   ÚgetÚ
splitlinesrH   Úreplacer^   rF   Úsplitr_   ri   rj   ÚjoinÚsortedÚmatch)
r   r   r!   r   r   ÚrÚrefsÚTAGÚtagsÚrefs
             r   Úgit_versions_from_keywordsr„   ²   s'  € ð ˜Ñ!ÜÐ6Ó7Ð7Ø�<‰<˜Ó€DØÐð �‰Ó  Ñ$ˆð �z‰z‹|×#Ñ# C¨¨aÓ0×8Ñ8¸¸bÀ!ÓDˆØ˜
Ñ#×)Ñ)Ó+€HØ×Ñ˜9Ô%ÙÜÐ6Ô7ÜÐLÓMÐMØ'Ÿ~™~¨dÓ3×9Ñ9¸#Ó>Ö?˜!ˆA�G‰G�IÐ?€DÐ?ð €CØ#'Ö=˜a¨1¯<©<¸Õ+<ˆAŒc�#‹hˆjŠMÐ=€DÐ=Ùð  Ö7�a¤2§9¡9¨U°AÕ#6’Ð7ˆÐ7ÙÜ�L §¡¨$°©+Ó!6Ð 7°|ÐDÔEÙÜ�˜cŸh™h¤v¨d£|Ó4Ð5Ð6Ô7Ü�d‹|ò ˆà�>‰>˜*Õ%Ø”C˜
“OÐ%Ð&ˆAô —8‘8˜E 1Ô%ØÙÜ˜  �nÔ%àØ#+¨FÑ#3×#9Ñ#9Ó#;ØØØñò ðñ& ÜÐBÔCàØ# FÑ+×1Ñ1Ó3ØØ#Øñð ùòO @ùò >ùò 8s   ÃHÃ%HÃ<HÄH"Ä0H"Úpieces_from_vcsc                 ó^  — dg}t         j                  dk(  rddg}t        j                  j	                  «       }|j                  dd«       t        j                  ||¬«      } ||dd	g|| ¬
«      \  }}|dk7  r|rt        d|› d�«       t        d«      ‚ ||dddddd| › d�g|¬«      \  }}|€t        d«      ‚|j                  «       } ||ddg|¬«      \  }	}|	€t        d«      ‚|	j                  «       }	i }
|	|
d<   |	dd |
d<   d|
d<    ||g d¢|¬«      \  }}|dk7  s|€t        d«      ‚|j                  «       }|dk(  rn ||d d!g|¬«      \  }}|dk7  s|€t        d"«      ‚|j                  d#«      }d$|d   v r|j                  d«       |D �cg c]  }|d%d ‘Œ	 }}d&|v rd&}n
|sd}n|d   }||
d <   |}|j                  d'«      }||
d(<   |r|d|j                  d'«       }d)|v rªt        j                  d*|«      }|sd+|› d,�|
d<   |
S |j!                  d-«      }|j#                  | «      s"|rd.}t        ||| fz  «       d/|› d0| › d,�|
d<   |
S |t%        | «      d |
d1<   t'        |j!                  d%«      «      |
d2<   |j!                  d3«      |
d<   n1d|
d1<    ||g d4¢|¬«      \  }}t%        |j                  «       «      |
d2<    ||g d5¢|¬«      d   j                  «       }|j)                  «       d6   }|j                  «       j+                  d7d8d-«      j+                  d7d9d-«      |
d:<   |
S c c}w );a  Get version from 'git describe' in the root of the source tree.

    This only gets called if the git-archive 'subst' keywords were *not*
    expanded, and _version.py hasn't already been rewritten with a short
    version string, meaning we're inside a checked out source tree.
    r   r0   zgit.cmdzgit.exeÚGIT_DIRN)r3   ú	rev-parsez	--git-dir)r2   rM   r   z
Directory z not under git controlz('git rev-parse --git-dir' returned errorÚdescribez--tagsz--dirtyz--alwaysz--longz--matchz[[:digit:]]*)r2   z'git describe' failedÚHEADz'git rev-parse' failedÚlongé   ÚshortrY   )rˆ   z--abbrev-refrŠ   z+'git rev-parse --abbrev-ref' returned errorÚbranchz
--containsz&'git branch --contains' returned errorú
ú(é   Úmasterú-dirtyrX   ú-z^(.+)-(\d+)-g([0-9a-f]+)$z&unable to parse git-describe output: 'ú'r6   z'tag '%s' doesn't start with prefix '%s'ztag 'z' doesn't start with prefix 'úclosest-tagÚdistancerU   )zrev-listrŠ   z--left-right)Úshowz-sz--format=%cirŠ   rr   rs   rt   ru   r   )r9   r:   r[   ÚenvironÚcopyÚpopÚ	functoolsÚpartialrF   r%   rH   r{   ÚendswithÚrindexri   rj   rk   r^   r_   Úintry   rz   )r   rb   r!   ÚrunnerÚGITSr3   rd   ÚrcÚdescribe_outÚfull_outÚpiecesÚbranch_nameÚbranchesrŽ   Úgit_describerX   ro   Úfull_tagÚfmtÚoutr   s                        r   Úgit_pieces_from_vcsr­   ù   sÞ  € ð ˆ7€DÜ
‡|�|�wÒØ˜9Ð%ˆô
 �*‰*�/‰/Ó
€CØ‡G�GˆI�tÔÜ×Ñ˜v¨3Ô/€Fá�4˜+ {Ð3¸ÈwÈ;ÔW�E€A€rØ	ˆQ‚wÙÜ�J˜t˜fÐ$:Ð;Ô<ÜÐFÓGÐGñ ØàØØØØØØˆl˜,Ð'ð	
ð ôÑ€L�"ð ÐÜÐ3Ó4Ð4Ø×%Ñ%Ó'€LÙ˜$ ¨fÐ 5¸4Ô@�L€HˆbØÐÜÐ4Ó5Ð5Ø�~‰~Ó€Hà€FØ€Fˆ6�NØ˜r �l€Fˆ7�OØ€Fˆ7�Oá˜TÒ#HÈdÔS�O€K�à	ˆQ‚w�+Ð%ÜÐIÓJÐJØ×#Ñ#Ó%€Kà�fÒñ ˜d X¨|Ð$<À$ÔG‰ˆ�"à�Š7�hÐ&ÜÐ HÓIÐIØ—>‘> $Ó'ˆð �(˜1‘+ÑØ�L‰L˜ŒOð .6Ö6 6�F˜1˜2’JÐ6ˆÐ6Ø�xÑØ"‰KÙØ‰Kð # 1™+ˆKà"€Fˆ8Ñð  €Lð ×!Ñ! (Ó+€EØ€Fˆ7�OÙØ#Ð$C l×&9Ñ&9¸(Ó&CÐDˆð ˆlÑä�Y‰YÐ3°\ÓBˆÙà FÀ|ÀnÐTUÐVˆF�7‰OØˆMð —8‘8˜A“;ˆØ×"Ñ" :Ô.ÙØ?�Ü�c˜X zÐ2Ñ2Ô3ð ˜�zÐ!>¸z¸lÈ!ÐLð Øñð ˆMØ (¬¨Z«Ð):Ð ;ˆˆ}Ñô ! §¡¨!£Ó-ˆˆzÑð Ÿ(™( 1›+ˆˆwŠð !%ˆˆ}ÑÙ˜ÒCÈÔN‰ˆˆRÜ  §¡£Ó-ˆˆzÑñ �$Ò>ÀDÔIÈ!ÑL×RÑRÓT€Dð �?‰?Ó˜RÑ €DØ—Z‘Z“\×)Ñ)¨#¨s°AÓ6×>Ñ>¸sÀBÈÓJ€Fˆ6�Nà€Mùò} 7s   ÆL*Úreturnc                 ó.   — d| j                  dd«      v ryy)z8Return a + if we don't already have one, else return a .ú+r–   ru   ú.)rx   )r¦   s    r   Úplus_or_dotr²   …  s   € à
ˆf�j‰j˜¨Ó+Ñ+ØØr   c                 ó²   — | d   r9| d   }| d   s| d   r(|t        | «      z  }|| d   › d| d   › �z  }| d   r|dz  }|S d| d   › d| d   › �}| d   r|dz  }|S )a,  Build up version string, with post-release "local version identifier".

    Our goal: TAG[+DISTANCE.gHEX[.dirty]] . Note that if you
    get a tagged build and then dirty it, you'll get TAG+0.gHEX.dirty

    Exceptions:
    1: no tags. git_describe was just HEX. 0+untagged.DISTANCE.gHEX[.dirty]
    r–   r—   rX   ú.gr�   ú.dirtyz0+untagged.©r²   ©r¦   Úrendereds     r   Úrender_pep440r¹   Œ  s    € ð ˆmÒØ˜-Ñ(ˆØ�*Ò ¨¢Øœ FÓ+Ñ+ˆHØ˜6 *Ñ-Ð.¨b°¸±Ð0AÐBÑBˆHØ�gŠØ˜HÑ$�ð €Oð ! ¨
Ñ!3Ð 4°B°v¸g±Ð6GÐHˆØ�'Š?Ø˜Ñ ˆHØ€Or   c                 óð   — | d   rF| d   }| d   s| d   r5| d   dk7  r|dz  }|t        | «      z  }|| d   › d| d   › �z  }| d   r|d	z  }|S d
}| d   dk7  r|dz  }|d| d   › d| d   › �z  }| d   r|d	z  }|S )zÿTAG[[.dev0]+DISTANCE.gHEX[.dirty]] .

    The ".dev0" means not master branch. Note that .dev0 sorts backwards
    (a feature branch will appear "older" than the master branch).

    Exceptions:
    1: no tags. 0[.dev0]+untagged.DISTANCE.gHEX[.dirty]
    r–   r—   rX   rŽ   r’   ú.dev0r´   r�   rµ   Ú0z
+untagged.r¶   r·   s     r   Úrender_pep440_branchr½   ¤  sØ   € ð ˆmÒØ˜-Ñ(ˆØ�*Ò ¨¢Ø�hÑ 8Ò+Ø˜GÑ#�Øœ FÓ+Ñ+ˆHØ˜6 *Ñ-Ð.¨b°¸±Ð0AÐBÑBˆHØ�gŠØ˜HÑ$�ð €Oð ˆØ�(Ñ˜xÒ'Ø˜ÑˆHØ�j ¨
Ñ!3Ð 4°B°v¸g±Ð6GÐHÑHˆØ�'Š?Ø˜Ñ ˆHØ€Or   c                 ó~   — t         j                  | d«      }|d   t        |«      dk(  rt        |d   xs d«      fS dfS )zÎSplit pep440 version string at the post-release segment.

    Returns the release segments before the post-release and the
    post-release version number (or -1 if no post-release segment is present).
    ú.postr   r‘   r6   N)r?   r{   r_   r    )ÚverÚvcs     r   Úpep440_split_postrÂ   Á  sA   € ô 
�‰�3˜Ó	 €BØˆa‰5¤S¨£W°¢\”#�b˜‘e’j˜q“/Ð;Ð;°tÐ;Ð;r   c                 ó¢   — | d   rA| d   r5t        | d   «      \  }}|}|�|d|dz   › d| d   › �z  }|S |d| d   › �z  }|S | d   }|S d| d   › �}|S )z_TAG[.postN.devDISTANCE] -- No -dirty.

    Exceptions:
    1: no tags. 0.post0.devDISTANCE
    r–   r—   r¿   r6   z.devz
.post0.devz0.post0.dev)rÂ   )r¦   Útag_versionÚpost_versionr¸   s       r   Úrender_pep440_prerÆ   Ë  s©   € ð ˆmÒØ�*Òä(9¸&ÀÑ:OÓ(PÑ%ˆK˜Ø"ˆHØÐ'Ø˜e L°1Ñ$4Ð#5°T¸&ÀÑ:LÐ9MÐNÑN�ð €Oð ˜j¨°
Ñ);Ð(<Ð=Ñ=�ð €Oð	 ˜mÑ,ˆHð €Oð ! ¨
Ñ!3Ð 4Ð5ˆØ€Or   c                 óÈ   — | d   r?| d   }| d   s| d   r.|d| d   › �z  }| d   r|dz  }|t        | «      z  }|d| d   › �z  }|S d| d   › �}| d   r|dz  }|d	| d   › �z  }|S )
a$  TAG[.postDISTANCE[.dev0]+gHEX] .

    The ".dev0" means dirty. Note that .dev0 sorts backwards
    (a dirty tree will appear "older" than the corresponding clean one),
    but you shouldn't be releasing software with -dirty anyways.

    Exceptions:
    1: no tags. 0.postDISTANCE[.dev0]
    r–   r—   rX   r¿   r»   Úgr�   ú0.postú+gr¶   r·   s     r   Úrender_pep440_postrË   ã  s¸   € ð ˆmÒØ˜-Ñ(ˆØ�*Ò ¨¢Ø˜%  zÑ 2Ð3Ð4Ñ4ˆHØ�gŠØ˜GÑ#�Øœ FÓ+Ñ+ˆHØ˜!˜F 7™OÐ,Ð-Ñ-ˆHð €Oð	 ˜F :Ñ.Ð/Ð0ˆØ�'Š?Ø˜ÑˆHØ�b˜ ™Ð)Ð*Ñ*ˆØ€Or   c                 óü   — | d   rL| d   }| d   s| d   r;|d| d   › �z  }| d   dk7  r|dz  }|t        | «      z  }|d| d	   › �z  }| d   r|d
z  }|S d| d   › �}| d   dk7  r|dz  }|d| d	   › �z  }| d   r|d
z  }|S )z›TAG[.postDISTANCE[.dev0]+gHEX[.dirty]] .

    The ".dev0" means not master branch.

    Exceptions:
    1: no tags. 0.postDISTANCE[.dev0]+gHEX[.dirty]
    r–   r—   rX   r¿   rŽ   r’   r»   rÈ   r�   rµ   rÉ   rÊ   r¶   r·   s     r   Úrender_pep440_post_branchrÍ   þ  sæ   € ð ˆmÒØ˜-Ñ(ˆØ�*Ò ¨¢Ø˜%  zÑ 2Ð3Ð4Ñ4ˆHØ�hÑ 8Ò+Ø˜GÑ#�Øœ FÓ+Ñ+ˆHØ˜!˜F 7™OÐ,Ð-Ñ-ˆHØ�gŠØ˜HÑ$�ð €Oð ˜F :Ñ.Ð/Ð0ˆØ�(Ñ˜xÒ'Ø˜ÑˆHØ�b˜ ™Ð)Ð*Ñ*ˆØ�'Š?Ø˜Ñ ˆHØ€Or   c                 ó€   — | d   r&| d   }| d   s| d   r|d| d   › �z  }| d   r|dz  }|S d| d   › �}| d   r|dz  }|S )zuTAG[.postDISTANCE[.dev0]] .

    The ".dev0" means dirty.

    Exceptions:
    1: no tags. 0.postDISTANCE[.dev0]
    r–   r—   rX   rÉ   r»   r	   r·   s     r   Úrender_pep440_oldrÏ     s}   € ð ˆmÒØ˜-Ñ(ˆØ�*Ò ¨¢Ø˜& ¨
Ñ!3Ð 4Ð5Ñ5ˆHØ�gŠØ˜GÑ#�ð €Oð ˜F :Ñ.Ð/Ð0ˆØ�'Š?Ø˜ÑˆHØ€Or   c                 óf   — | d   r| d   }| d   r|d| d   › d| d   › �z  }n| d   }| d   r|dz  }|S )z—TAG[-DISTANCE-gHEX][-dirty].

    Like 'git describe --tags --dirty --always'.

    Exceptions:
    1: no tags. HEX[-dirty]  (note: no 'g' prefix)
    r–   r—   r”   ú-gr�   rX   r“   r	   r·   s     r   Úrender_git_describerÒ   1  sa   € ð ˆmÒØ˜-Ñ(ˆØ�*ÒØ˜!˜F :Ñ.Ð/¨r°&¸±/Ð1BÐCÑC‰Hð ˜'‘?ˆØˆg‚Ø�HÑˆØ€Or   c                 ó\   — | d   r| d   }|d| d   › d| d   › �z  }n| d   }| d   r|dz  }|S )zÃTAG-DISTANCE-gHEX[-dirty].

    Like 'git describe --tags --dirty --always -long'.
    The distance/hash is unconditional.

    Exceptions:
    1: no tags. HEX[-dirty]  (note: no 'g' prefix)
    r–   r”   r—   rÑ   r�   rX   r“   r	   r·   s     r   Úrender_git_describe_longrÔ   E  sY   € ð ˆmÒØ˜-Ñ(ˆØ�a˜˜zÑ*Ð+¨2¨f°W©oÐ->Ð?Ñ?‰ð ˜'‘?ˆØˆg‚Ø�HÑˆØ€Or   c                 óº  — | d   rd| j                  d«      d| d   ddœS |r|dk(  rd}|dk(  rt        | «      }n†|dk(  rt        | «      }nu|d	k(  rt        | «      }nd|d
k(  rt	        | «      }nS|dk(  rt        | «      }nB|dk(  rt        | «      }n1|dk(  rt        | «      }n |dk(  rt        | «      }nt        d|› d�«      ‚|| d   | d   d| j                  d«      dœS )z9Render the given version pieces into the requested style.rY   Úunknownr‹   NrV   Údefaultr   zpep440-branchz
pep440-prezpep440-postzpep440-post-branchz
pep440-oldzgit-describezgit-describe-longzunknown style 'r•   rX   r   )
rx   r¹   r½   rÆ   rË   rÍ   rÏ   rÒ   rÔ   Ú
ValueError)r¦   r   r¸   s      r   ÚrenderrÙ   Y  s  € àˆg‚à Ø%Ÿz™z¨&Ó1ØØ˜G‘_Øñ
ð 	
ñ �E˜YÒ&Øˆà�ÒÜ  Ó(‰Ø	�/Ò	!Ü'¨Ó/‰Ø	�,Ò	Ü$ VÓ,‰Ø	�-Ò	Ü% fÓ-‰Ø	Ð&Ò	&Ü,¨VÓ4‰Ø	�,Ò	Ü$ VÓ,‰Ø	�.Ò	 Ü& vÓ.‰Ø	Ð%Ò	%Ü+¨FÓ3‰ä˜?¨5¨'°Ð3Ó4Ð4ð Ø! &™>Ø˜‘ØØ—
‘
˜6Ó"ñð r   c                  ót  — t        «       } | j                  }	 t        t        «       | j                  |«      S # t
        $ r Y nw xY w	 t        j                  j                  t        «      }| j                  j                  d«      D ]!  }t        j                  j                  |«      }Œ# n# t        $ r ddddddœcY S w xY w	 t        | j                  ||«      }t        || j                   «      S # t
        $ r Y nw xY w	 | j"                  rt%        | j"                  ||«      S n# t
        $ r Y nw xY wddddddœS )z=Get version information or return default if unable to do so.ú/rw   Nz"unable to find root of source treerV   zunable to compute version)r#   r!   r„   r   r   r%   r[   r\   ÚrealpathÚ__file__r    r{   ra   Ú	NameErrorr­   rÙ   r   r   re   )r"   r!   rb   rd   r¦   s        r   Úget_versionsrß   ƒ  sD  € ô ‹,€CØ�k‰k€GðÜ)¬,«.¸#¿.¹.È'ÓRÐRøÜò Ùðúð
Ü�w‰w×Ñ¤Ó)ˆð ×'Ñ'×-Ñ-¨cÓ2ò 	)ˆAÜ—7‘7—?‘? 4Ó(‰Dñ	)øäò 
à"Ø#ØØ9Øñ
ò 	
ð
úðÜ$ S§^¡^°T¸7ÓCˆÜ�f˜cŸi™iÓ(Ð(øÜò ÙðúðØ×ÒÜ*¨3×+?Ñ+?ÀÀwÓOÐOð  øäò Ùðúð ØØØ,Øñð sF   ˜7 ·	AÁAÁA"B* Â*B>Â=B>Ã,C/ Ã/	C;Ã:C;Ã?"D# Ä#	D/Ä.D/)NFFN)%r   rD   rœ   r[   ri   r;   r9   Útypingr   r   r   r#   Ú	Exceptionr%   r&   Údictr?   Ú__annotations__r'   r.   rS   re   rp   r„   r­   r²   r¹   r½   rÂ   rÆ   rË   rÍ   rÏ   rÒ   rÔ   rÙ   rß   r	   r   r   ú<module>rä      s"  ðò )ã Û Û 	Û 	Û Û 
Ý ò
÷=ñ =òôN�Iô Nð #%€��c˜3�h‘Ó $Ø+-€ˆ$ˆs�D˜˜h˜Ñ'Ð'Ñ
(Ó -ò
ó+&ò\Gñ< �e˜^Ó,ñó -ðñ6 �e˜ZÓ(ñCó )ðCñL �eÐ.Ó/Ø:Eò Hó 0ðHðV˜3ó òò0ò:<òò0ò6ò:ò,ò(ò('óT1r   