3#N d Z ddlZddlZddlZg dZ G d d Z e Z G d d Z e Z ej dg d Zd Z G d de Z G d d Z G d de Z ej dej ZddddddZd Zd ZdZ G d de Zd Z ej d Zd Zd ZdS )zUtility to compare pep440 compatible version strings. The LooseVersion and StrictVersion classes that distutils provides don't work; they don't recognize anything like alpha/beta/rc/dev versions. N)parseVersion LegacyVersionInvalidVersionVERSION_PATTERNc D e Zd Zd Zd Zd Zd Zd Zd Zd Z d Z d Zd S )Infinityc dS )Nr selfs h/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib64/python3.11/site-packages/numpy/_utils/_pep440.py__repr__zInfinity.__repr__. s z c : t t | S Nhashreprr s r __hash__zInfinity.__hash__1 DJJr c dS NFr r others r __lt__zInfinity.__lt__4 ur c dS r r r s r __le__zInfinity.__le__7 r r c , t || j S r isinstance __class__r s r __eq__zInfinity.__eq__: %000r c . t || j S r r! r s r __ne__zInfinity.__ne__= eT^4444r c dS NTr r s r __gt__zInfinity.__gt__@ tr c dS r* r r s r __ge__zInfinity.__ge__C r, r c t S r )NegativeInfinityr s r __neg__zInfinity.__neg__F s r N__name__ __module____qualname__r r r r r$ r' r+ r. r1 r r r r r - s 1 1 15 5 5 r r c D e Zd Zd Zd Zd Zd Zd Zd Zd Z d Z d Zd S )r0 c dS )Nz -Infinityr r s r r zNegativeInfinity.__repr__N s {r c : t t | S r r r s r r zNegativeInfinity.__hash__Q r r c dS r* r r s r r zNegativeInfinity.__lt__T r, r c dS r* r r s r r zNegativeInfinity.__le__W r, r c , t || j S r r! r s r r$ zNegativeInfinity.__eq__Z r% r c . t || j S r r! r s r r' zNegativeInfinity.__ne__] r( r c dS r r r s r r+ zNegativeInfinity.__gt__` r r c dS r r r s r r. zNegativeInfinity.__ge__c r r c t S r )r r s r r1 zNegativeInfinity.__neg__f s r Nr2 r r r r0 r0 M s 1 1 15 5 5 r r0 _Version)epochreleasedevprepostlocalc ` t | S # t $ r t | cY S w xY w)z Parse the given version string and return either a :class:`Version` object or a :class:`LegacyVersion` object depending on if the given version is a valid PEP 440 version or a legacy version. )r r r )versions r r r u sD &w &