2bih \SSKrSSKJrJrJrJrJr SSKJrJ r SSK J r J r \\S\\ \44r\"S\5r"SS \5r"S S \5r\R("S 5r\R("S 5rS\S\4SjrS\\ \4S\4SjrS\S\\\ \\\44SjrS\S\\\ 44Sjrg)N) FrozenSetNewTypeTupleUnioncast)Tag parse_tag)InvalidVersionVersionNormalizedNamec\rSrSrSrSrg)InvalidWheelFilenamezE An invalid wheel filename was found, users should refer to PEP 427. r N__name__ __module__ __qualname____firstlineno____doc____static_attributes__r ڍ/builddir/build/BUILDROOT/alt-python313-pip-23.3.1-3.el8.x86_64/opt/alt/python313/lib/python3.13/site-packages/pip/_vendor/packaging/utils.pyrrrrc\rSrSrSrSrg)InvalidSdistFilenamezV An invalid sdist filename was found, users should refer to the packaging user guide. r Nrr rrrrrrrz[-_.]+z (\d+)(.*)namereturncj[RSU5R5n[[U5$)N-)_canonicalize_regexsublowerrr)rvalues rcanonicalize_namer' s*  # #C . 4 4 6E  &&rversionc [U[5(a [U5nOUn/nURS:waUR URS35 UR [ R"SSSRSUR5555 URb1UR SRSUR555 URbUR SUR35 URbUR S UR35 URbUR S UR35 SRU5$![a Us$f=f) zu This is very similar to Version.__str__, but has one subtle difference with the way it handles the release segment. r!z(\.0)+$.c38# UHn[U5v M g7fNstr.0xs r 'canonicalize_version..<s0PAQc38# UHn[U5v M g7fr.r/r1s rr4r5@s8ZSVVZr6z.postz.dev+) isinstancer0r r epochappendrer$joinreleaseprepostdevlocal)r(parsedpartss rcanonicalize_versionrE&s8 '3 W%F  E||q  ~Q'( LL B0P0P(PQRzz RWW8VZZ889{{ uV[[M*+zz tFJJ<()|| q'( 775>A N s E,, E;:E;filenamecURS5(d[SU35eUSSnURS5nUS;a[SU35eURSUS- 5nUSnS U;d'[R "S U[R 5c[S U35e[U5n[US 5nUS :XaiUSn[R U5nUc[SUSUS35e[[[URS 55URS545nOSn[US5n XEX4$)Nz.whlz3Invalid wheel filename (extension must be '.whl'): r")z0Invalid wheel filename (wrong number of parts): r__z ^[\w\d._]*$zInvalid project name: rrJzInvalid build number: z in ''r )endswithrcountsplitr<matchUNICODEr'r _build_tag_regexrBuildTagintgroupr ) rFdashesrD name_partrr( build_part build_matchbuildtagss rparse_wheel_filenamer^Qs_   V $ $"A( L  }H ^^C F V">xj I   NN3 +EaI yBHH^Y KS"%;H:#FGG Y 'DeAhG {1X &,,Z8  &( E(1E XK$5$5a$8 9;;L;LQ;OPQ U2Y D 5 ''rc:URS5(aUS[S5*nO4URS5(aUS[S5*nO[SU35eURS5up#nU(d[SU35e[ U5n[ U5nXV4$)Nz.tar.gzz.zipz@Invalid sdist filename (extension must be '.tar.gz' or '.zip'): r"zInvalid sdist filename: )rOlenr rpartitionr'r )rF file_stemrYsep version_partrr(s rparse_sdist_filenamereus##.I/   6 " "^F |, "z   $-#7#7#< IL "%=hZ#HII Y 'Dl#G ?r)r<typingrrrrrr]r r r(r r rVr0rUr ValueErrorrrcompiler#rTr'rEr^rer rrris  99 , rE#s(O+ ,)3/: : jj+::l+'C'N' (% "5(#(V!(!( >7Hin <=!(H351H+Ir