o
    sh                     @  s:   d dl mZ d dlZddlmZ 	dddddddZdS )    )annotationsN   )__version__F)actionplural
deprecatedstrwhen
int | Nonereplacement
str | Noner   r   boolreturnNonec                C  s   |rdnd}|du rd}n2|t tdd kr$|  d| d}t||d	kr+d
}n|dkr2d}nd| dt d}t||rI|rId}t||rRd| d}n|r^d|d d}nd}tj|  d| d| | t	dd dS )a.  
    Deprecations helper.

    :param deprecated: Name of thing to be deprecated.
    :param when: Pillow major version to be removed in.
    :param replacement: Name of replacement.
    :param action: Instead of "replacement", give a custom call to action
        e.g. "Upgrade to new thing".
    :param plural: if the deprecated thing is plural, needing "are" instead of "is".

    Usually of the form:

        "[deprecated] is deprecated and will be removed in Pillow [when] (yyyy-mm-dd).
        Use [replacement] instead."

    You can leave out the replacement sentence:

        "[deprecated] is deprecated and will be removed in Pillow [when] (yyyy-mm-dd)"

    Or with another call to action:

        "[deprecated] is deprecated and will be removed in Pillow [when] (yyyy-mm-dd).
        [action]."
    areisNza future version.r    z" deprecated and should be removed.   zPillow 12 (2025-10-15)   zPillow 13 (2026-10-15)zUnknown removal version: z	. Update ?z*Use only one of 'replacement' and 'action'z. Use z	 instead.z.  z# deprecated and will be removed in    )
stacklevel)
intr   splitRuntimeError__name__
ValueErrorrstripwarningswarnDeprecationWarning)r   r	   r   r   r   is_removedmsg r&   b/var/www/html/construction_image-detection-poc/venv/lib/python3.10/site-packages/PIL/_deprecate.py	deprecate   s2   !
r(   )N)r   r   r	   r
   r   r   r   r   r   r   r   r   )
__future__r   r    r   r   r(   r&   r&   r&   r'   <module>   s    