+
    TŎi                     j    ^ RI Ht ^RIHt ^RIHtHt ]]! RRRRR7       ! R R4      4       4       tR	# )
    )total_ordering)astuple)attribattrsFT)eqorderslotsfrozenc                      a  ] tR t^
t o Rt]! ]R7      t]! ]R7      t]! ]R7      t	]! ]
R7      t]R 4       tR tR tR tR tRtV tR	# )
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                    VP                  R4      p\        V4      ^8X  d   VP                  R4       V ! \        V^ ,          4      \        V^,          4      \        V^,          4      V^,          R7      # )z&
Parse *s* and return a _VersionInfo.
.final)yearminormicroreleaselevel)splitlenappendint)clssvs   && a/Users/ahmad/.openclaw/workspace/scripts/.venv/lib/python3.14/site-packages/attr/_version_info.py_from_version_string VersionInfo._from_version_string&   sZ    
 GGCLq6Q;HHWQqT#ad)3qt91Q4
 	
    c                   V P                   VP                   J d   \        V4      p\        V\        4      '       g   \        h^\        V4      u;8:  d   ^8:  g    \        h \        h\        V 4      R\        V4       V3# )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*.
N)	__class__r   
isinstancetupleNotImplementedErrorr   )selfothers   &&r   _ensure_tupleVersionInfo._ensure_tuple3   sl     >>U__,ENE%''%%SZ$1$%% %%%t}\s5z*E11r   c                `     V P                  V4      w  r#W#8H  #   \         d
    \        u # i ; iNr'   r$   NotImplementedr%   r&   usthems   &&  r   __eq__VersionInfo.__eq__F   s:    	"))%0HB z # 	"!!	"    --c                `     V P                  V4      w  r#W#8  #   \         d
    \        u # i ; ir*   r+   r-   s   &&  r   __lt__VersionInfo.__lt__N   s:    	"))%0HB y # 	"!!	"r2   c                p    \        V P                  V P                  V P                  V P                  34      # r*   )hashr   r   r   r   )r%   s   &r   __hash__VersionInfo.__hash__X   s(    TYY

DJJ8I8IJKKr    N)__name__
__module____qualname____firstlineno____doc__r   r   r   r   r   strr   classmethodr   r'   r0   r4   r8   __static_attributes____classdictcell__)__classdict__s   @r   r   r   
   sa     ( sDEEs#L

 

2&L Lr   r   N)	functoolsr   _funcsr   _maker   r   r   r:   r   r   <module>rH      sB    %    %uD6ML ML 7 MLr   