f  ddlZddlZddlZejdejZejdZejdZdZ ej ej ej ej ejejdZGddZdad ZdS) Nz'(?i)^\s*([a-z_]\w*(?:\.[a-z_]\w*)*)(.*)z^\s*\((.*)\)\s*$z%^\s*(<=|>=|<|>|!=|==)\s*([^\s,]+)\s*$c t|}|std|z|\}}|tj|fS)Nz"bad package restriction syntax: %r)re_splitComparisonmatch ValueErrorgroups distutilsversion StrictVersion)predrescompverStrs A/opt/alt/python311/lib64/python3.11/distutils/versionpredicate.pysplitUprsf  " "4 ( (C F=DEEE::<z>=z!=c"eZdZ dZdZdZdS)VersionPredicatec. |}|stdt|}|std|z|\|_}|}|rt |}|std|z|d}d|dD|_|jstd|zdSg|_dS)Nzempty package restrictionzbad package name in %rzexpected parenthesized list: %rrc,g|]}t|S)r).0aPreds r z-VersionPredicate.__init__..tsDDDEDDDr,zempty parenthesized list in %r) striprre_validPackagerrnamere_parensplitr )selfversionPredicateStrrparenstrs r__init__zVersionPredicate.__init__`s* 27799" :899 9%%&9:: M58KKLL L <<>> 5   NN5))E L !BU!JKKK,,..#CDDSYYs^^DDDDI9 8 !A#6"7888 8 8DIIIrc|jr4d|jD}|jdzd|zdzS|jS)Nc>g|]\}}|dzt|zS) )r%)rcondvers rrz,VersionPredicate.__str__..}s+DDDYT34#:C(DDDrz (z, ))r rjoin)r"seqs r__str__zVersionPredicate.__str__{sJ 9 DD$)DDDC9t#diinn4s: :9 rcT |jD]\}}t|||sdSdS)NFT)r compmap)r"r r*r+s r satisfied_byzVersionPredicate.satisfied_bysE   ID#4=#.. uu trN)__name__ __module__ __qualname__r&r/r2rrrrrsG>@6rrcr ttjdtja|}t|}|st d|z|dpd}|rtj |}|d|fS)Nz=([a-zA-Z_]\w*(?:\.[a-zA-Z_]\w*)*)(?:\s*\(\s*([^)\s]+)\s*\))?$z"illegal provides specification: %r) _provision_rxrecompileASCIIrrrgrouprr r )valuemr+s rsplit_provisionr@s  L H  KKMMEE""A G=EFFF ''!** C 3--c22 771::s?r)r:distutils.versionroperatorr;r<rr rrltleeqgtgener1rr9r@rrrrIs "*GH 2:) * *RZ HII ; ; ; 8;hk 8;hk C Ckkkkkkkk\ r