+
    LV-j  ã            
       ó\   € ^ RI t ^ RIt^RIHt RRRRRRR	R
RR/tRR ltR tR tR tR t	R# )é    N)Ú__ne__Úeqz==ÚltÚ<Úlez<=ÚgtÚ>Úgez>=c                óh  a€ RR.R\        4       R. R\        /o^ pRpV e   Rp\        RV 4      SR	&   \        SR
&   Ve   V^,          p\        RV4      SR&   Ve   V^,          p\        RV4      SR&   Ve   V^,          p\        RV4      SR&   Ve   V^,          p\        RV4      SR&   \        P
                  ! V\        3/ V3R l4      p	V'       d    V	P                  P                  \        4       ^ Tu;8  d   ^8  d0   M V	# V'       g   Rp
\        V
4      h\        P                  ! V	4      p	V	# )a’  
Create a class that can be passed into `attrs.field`'s ``eq``, ``order``,
and ``cmp`` arguments to customize field comparison.

The resulting class will have a full set of ordering methods if at least
one of ``{lt, le, gt, ge}`` and ``eq``  are provided.

Args:
    eq (typing.Callable | None):
        Callable used to evaluate equality of two objects.

    lt (typing.Callable | None):
        Callable used to evaluate whether one object is less than another
        object.

    le (typing.Callable | None):
        Callable used to evaluate whether one object is less than or equal
        to another object.

    gt (typing.Callable | None):
        Callable used to evaluate whether one object is greater than
        another object.

    ge (typing.Callable | None):
        Callable used to evaluate whether one object is greater than or
        equal to another object.

    require_same_type (bool):
        When `True`, equality and ordering methods will return
        `NotImplemented` if objects are not of the same type.

    class_name (str | None): Name of class. Defaults to "Comparable".

See `comparison` for more details.

.. versionadded:: 21.1.0
Ú	__slots__ÚvalueÚ__init__Ú_requirementsÚ_is_comparable_toFTr   Ú__eq__r   r   Ú__lt__r   Ú__le__r   Ú__gt__r
   Ú__ge__c                 ó&   <€ V P                  S4      # ©N)Úupdate)ÚnsÚbodys   &€ÚZ/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/attr/_cmp.pyÚ<lambda>Úcmp_using.<locals>.<lambda>]   s   ø€ ¨b¯i©i¸¬oó    zDeq must be define is order to complete ordering from lt, le, gt, ge.)Ú
_make_initr   Ú_make_operatorr   ÚtypesÚ	new_classÚobjectr   ÚappendÚ_check_same_typeÚ
ValueErrorÚ	functoolsÚtotal_ordering)r   r   r   r   r
   Úrequire_same_typeÚ
class_nameÚnum_order_functionsÚhas_eq_functionÚtype_Úmsgr   s   &&&&&&&    @r   Ú	cmp_usingr/      sM  ø€ ð` 	�g�YØ”J“LØ˜ØÔ.ð	€Dð ÐØ€Oà	‚~ØˆÜ'¨¨bÓ1ˆˆX‰ÜˆˆX‰à	‚~Ø˜qÕ ÐÜ'¨¨bÓ1ˆˆX‰à	‚~Ø˜qÕ ÐÜ'¨¨bÓ1ˆˆX‰à	‚~Ø˜qÕ ÐÜ'¨¨bÓ1ˆˆX‰à	‚~Ø˜qÕ ÐÜ'¨¨bÓ1ˆˆX‰ä�OŠOØ”V�I˜rÔ#=ó€E÷
 Ø×Ñ×"Ñ"Ô#3Ô4ð 	ÐÖ" Ö"ð €L÷ ð YˆCÜ˜S“/Ð!Ü×(Ò(¨Ó/ˆà€Lr   c                 ó   € R p V # )z
Create __init__ method.
c                ó   € Wn         R# )z!
Initialize object with *value*.
N)r   )Úselfr   s   &&r   r   Ú_make_init.<locals>.__init__u   s	   € ð Ž
r   © )r   s    r   r   r   p   s   € ò
ð €Or   c                óV   a€ V3R lpRV  R2Vn         R\        V ,           R2Vn        V# )z
Create operator method.
c                 óœ   <€ V P                  V4      '       g   \        # S! V P                  VP                  4      pV\        J d   \        # V# r   )r   ÚNotImplementedr   )r2   ÚotherÚresultÚfuncs   && €r   ÚmethodÚ_make_operator.<locals>.methodƒ   sA   ø€ Ø×%Ñ% e×,Ò,Ü!Ð!á�d—j‘j %§+¡+Ó.ˆØ”^Ó#Ü!Ð!àˆr   Ú__z	Return a z b.  Computed by attrs.)Ú__name__Ú_operation_namesÚ__doc__)Únamer:   r;   s   &f r   r    r    ~   s;   ø€ õ
ð ˜4˜& �m€F„Oà
Ô$ TÕ*Ð+Ð+BÐCð „Nð €Mr   c                ó¦   a a€ \         ;QJ d*    VV 3R lS P                   4       F  '       d   K   R# 	  R# ! VV 3R lS P                   4       4      # )z0
Check whether `other` is comparable to `self`.
c              3   ó4   <"  € T F  q! SS4      x € K  	  R # 5ir   r4   )Ú.0r:   r8   r2   s   & €€r   Ú	<genexpr>Ú$_is_comparable_to.<locals>.<genexpr>™   s   øé € Ð@Ñ-? Tˆt�D˜%× Ð Ó-?ùs   ƒFT)Úallr   ©r2   r8   s   ffr   r   r   •   s:   ù€ ÷ ‹3Õ@¨T×-?Ò-?Ó@�3Œ3Ð@Š3Ð@ˆ3Õ@¨T×-?Ò-?Ó@Ó@Ð@r   c                óZ   € VP                   P                  V P                   P                  J # )zJ
Return True if *self* and *other* are of the same type, False otherwise.
)r   Ú	__class__rH   s   &&r   r%   r%   œ   s#   € ð �;‰;× Ñ  D§J¡J×$8Ñ$8Ð8Ð8r   )NNNNNTÚ
Comparable)
r'   r!   Ú_maker   r?   r/   r   r    r   r%   r4   r   r   Ú<module>rM      sI   ðó Û å ð ˜$  c¨4°°t¸SÀ$ÈÐMÐ ô`òFòò.Aô9r   