kfIddlmZddlmZddlmZmZeeddddGdd Zd S) )total_ordering)astuple)attribattrsFT)eqorderslotsfrozenceZdZdZeeZeeZeeZee Z e dZ dZ dZdZdS) VersionInfoa A version object that can be compared to tuple of length 1--4: >>> attr.VersionInfo(19, 1, 0, "final") <= (19, 2) True >>> attr.VersionInfo(19, 1, 0, "final") < (19, 1, 1) True >>> vi = attr.VersionInfo(19, 2, 0, "final") >>> vi < (19, 1, 1) False >>> vi < (19,) False >>> vi == (19, 2,) True >>> vi == (19, 2, 1) False .. versionadded:: 19.2 )typec|d}t|dkr|d|t|dt|dt|d|dS)z6 Parse *s* and return a _VersionInfo. .finalrr)yearminormicro releaselevel)splitlenappendint)clssvs r/builddir/build/BUILD/imunify360-venv-2.3.5/opt/imunify360/venv/lib/python3.11/site-packages/attr/_version_info.py_from_version_stringz VersionInfo._from_version_string&sx GGCLL q66Q;; HHW   sQqT#ad))3qt991Q4    c|j|jurt|}t|tstdt |cxkrdks ntt|dt ||fS)z Ensure *other* is a tuple of a valid length. Returns a possibly transformed *other* and ourselves as a tuple of the same length as *other*. rN) __class__r isinstancetupleNotImplementedErrorr)selfothers r _ensure_tuplezVersionInfo._ensure_tuple3s >U_ , ,ENNE%'' &% %SZZ$$$$1$$$$% %t}}\s5zz\*E11r!cp ||\}}n#t$r tcYSwxYw||kSNr*r'NotImplementedr(r)usthems r__eq__zVersionInfo.__eq__FsS "))%00HB" " " "! ! ! ! "Tz //cp ||\}}n#t$r tcYSwxYw||kSr,r-r/s r__lt__zVersionInfo.__lt__NsS "))%00HB" " " "! ! ! ! " Dyr3N)__name__ __module__ __qualname____doc__rrrrrstrr classmethodr r*r2r5r!rr r s( 6s   D F   E F   E6s###L   [  222&r!r N) functoolsr_funcsr_makerrr r<r!rr@s%$$$$$ %uD666JJJJJJJ76JJJr!