+
     XähQ  c                   sH   € R t ^RIHt ^RIHt R tR tR tR t]	! 4       t
R# )z%
Commonly used hooks for on_setattr.
)Ú_config©ÚFrozenAttributeErrorc                 s   a € V 3R lpV# )zZ
Run all *setters* and return the return value of the last one.

.. versionadded:: 20.1.0
c                 s0   <€ TpS F  pV! WV4      pK  	  V# )N© )ÚinstanceÚattribÚ	new_valueZrvZsetterÚsetterss   &&&  €Ú1/usr/lib/python3.14/site-packages/attr/setters.pyÚwrapped_pipeZpipe.<locals>.wrapped_pipe   s%   ø€ ØˆãˆFÙ˜¨"Ó-ŠBñ ð ˆ	ó    r   )r   r	   s   j r   Úpiper      s   ø€ õð Ðr
   c                s   € \         h)z@
Prevent an attribute to be modified.

.. versionadded:: 20.1.0
r   )Z_Z__Z___s   &&&r   Úfrozenr      s
   € ô Ðr
   c                sp   € \         P                  RJ d   V# VP                  pV'       g   V# V! WV4       V# )zR
Run *attrib*'s validator on *new_value* if it has one.

.. versionadded:: 20.1.0
F)r    Z_run_validatorsZ	validator)r   r   r   Zvs   &&& r   Úvalidater   &   s<   € ô ×Ñ %Ó'ØÐà×Ñ€AßØÐá€h˜	Ô"àÐr
   c                s~   € VP                   pV'       d)   ^RIHp \        W44      '       g	   V! V4      # V! W V4      # V# )zn
Run *attrib*'s converter -- if it has one -- on *new_value* and return the
result.

.. versionadded:: 20.1.0
)Ú	Converter)Z	converterZ_maker   Z
isinstance)r   r   r   Zcr   s   &&&  r   Úconvertr   8   s=   € ð 	×Ñ€Aßå$ä˜!×'Ò'ÙY“<Ðá fÓ-Ð-àÐr
   N)Z__doc__Z r    Z
exceptionsr   r   r   r   r   ZobjectZNO_OPr   r
   r   Ú<module>r      s/   ðñõ Ý ,òò$òò$ñ. 	‹‚r
   