+
    .•üiQ  ã                   óH   € 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                 ó   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                 ó0   <€ TpS F  pV! WV4      pK  	  V# )N© )ÚinstanceÚattribÚ	new_valueÚrvÚsetterÚsetterss   &&&  €ÚJ/var/www/html/photoedit/myenv/lib/python3.14/site-packages/attr/setters.pyÚwrapped_pipeÚpipe.<locals>.wrapped_pipe   s%   ø€ ØˆãˆFÙ˜¨"Ó-ŠBñ ð ˆ	ó    r   )r   r   s   j r   Úpiper      s   ø€ õð Ðr   c                ó   € \         h)z@
Prevent an attribute to be modified.

.. versionadded:: 20.1.0
r   )Ú_Ú__Ú___s   &&&r   Úfrozenr      s
   € ô Ðr   c                óp   € \         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   Ú_run_validatorsÚ	validator)r   r	   r
   Úvs   &&& r   Úvalidater   &   s<   € ô ×Ñ %Ó'ØÐà×Ñ€AßØÐá€h˜	Ô"àÐr   c                ó~   € 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)Ú	converterÚ_maker   Ú
isinstance)r   r	   r
   Úcr   s   &&&  r   Úconvertr#   8   s=   € ð 	×Ñ€Aßå$ä˜!×'Ò'ÙY“<Ðá fÓ-Ð-àÐr   N)Ú__doc__Ú r   Ú
exceptionsr   r   r   r   r#   ÚobjectÚNO_OPr   r   r   Ú<module>r)      s/   ðñõ Ý ,òò$òò$ñ. 	‹‚r   