U o a@sfddlmZmZmZddlZddlmZddlmZm Z erHddl m Z e dZ dd Zd d ZdS) )absolute_importdivisionprint_functionN)MYPY_CHECK_RUNNING)InvalidVersionVersion)Unionz[-_.]+cCstd|S)N-)_canonicalize_regexsublower)namer\C:\Users\vtejo\AppData\Local\Temp\pip-unpacked-wheel-6mt8ur68\pip\_vendor\packaging\utils.pycanonicalize_namesrc Csz t|}Wntk r$|YSXg}|jdkrF|d|j|tddddd|jD|j dk r|dd d|j D|j dk r|d |j |j dk r|d |j |j dk r|d |j d|S) z This is very similar to Version.__str__, but has one subtle difference with the way it handles the release segment. rz{0}!z(\.0)+$.css|]}t|VqdSNstr.0xrrr ,sz'canonicalize_version..Ncss|]}t|VqdSrrrrrrr0sz.post{0}z.dev{0}z+{0}) rrepochappendformatrer joinreleaseprepostdevlocal)_versionversionpartsrrrcanonicalize_versions"   &    r() __future__rrrr_typingrr&rrtypingr compiler rr(rrrrs