Ë
    ¡ëiÓ  ã                   ól   — d Z dZddlmZ  G d„ d«      Z e«       Z G d„ d«      Z e«       Z ed«      Zy	)
z3.3.0zALogging and warning framework, predating Python's logging packageé    )Ústderrc                   ó.   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚLoggerz‡
    An extended file type thing initially equivalent to sys.stderr
    You can add/remove file type things; it has a write method
    c                 ó*   — t         g| _        i | _        y ©N)r   Ú_fpsÚ_fns)Úselfs    úT/var/www/html/chat/reports/venv/lib/python3.12/site-packages/reportlab/lib/logger.pyÚ__init__zLogger.__init__   s   € Ü�HˆŒ	Øˆ�	ó    c                 ó¾   — t        |t        «      r2|| j                  v ryt        t        d«      }|| j                  t        <   | j
                  j                  |«       y)z*add the file/string fp to the destinationsNÚwb)Ú
isinstanceÚstrr	   ÚopenÚfnr   Úappend)r
   Úfps     r   Úaddz
Logger.add   sC   € ä�bœÔØ�T—Y‘Y‰ Ü”b˜“ˆBØˆD�I‰I”b‰MØ�	‰	×Ñ˜Õr   c                 óè   — t        |t        «      r-|| j                  vry|}| j                  |   }| j                  |= || j                  v r'| j                  | j                  j                  |«      = yy)z/remove the file/string fp from the destinationsN)r   r   r	   Úfnsr   Úindex)r
   r   r   s      r   ÚremovezLogger.remove   s`   € ä�bœÔØ˜Ÿ™Ñ" FØˆBØ—‘˜2‘ˆBØ—‘˜�Ø�—‘‰?Ø—	‘	˜$Ÿ)™)Ÿ/™/¨"Ó-Ñ.ð r   c                 ób   — |d   dk7  r|dz   }| j                   D ]  }|j                  |«       Œ y)z"write text to all the destinationséÿÿÿÿú
N)r   Úwrite)r
   Útextr   s      r   r   zLogger.write#   s.   € à�‰8�TŠ>  T¡	˜4Ø—)‘)Ò+ˆB˜RŸX™X d�^Ñ+r   c                 ó&   — | j                  |«       y r   )r   )r
   r   s     r   Ú__call__zLogger.__call__(   s   € Ø�
‰
�4Õr   N)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r!   © r   r   r   r      s    „ ñòòò/ò,ó
r   r   c                   ó    — e Zd Zdd„Zd„ Zd„ Zy)ÚWarnOncec                 ó4   — i | _         d|z  | _        d| _        y )Nz%s: é   )ÚutteredÚpfxÚenabled)r
   Úkinds     r   r   zWarnOnce.__init__/   s   € ØˆŒØ˜$‘;ˆŒØˆ�r   c                 óœ   — || j                   vr>| j                  r"t        j                  | j                  |z   «       d| j                   |<   y y )Nr*   )r+   r-   Úloggerr   r,   ©r
   Úwarnings     r   ÚoncezWarnOnce.once4   s<   € Ø˜$Ÿ,™,Ñ&Ø�|Š|œVŸ\™\¨$¯(©(°WÑ*<Ô=Ø$%ˆD�L‰L˜Ò!ð 'r   c                 ó&   — | j                  |«       y r   )r3   r1   s     r   r!   zWarnOnce.__call__9   s   € Ø�	‰	�'Õr   N)ÚWarn)r"   r#   r$   r   r3   r!   r&   r   r   r(   r(   -   s   „ óò
&ó
r   r(   ÚInfoN)	Ú__version__r%   Úsysr   r   r0   r(   ÚwarnOnceÚinfoOncer&   r   r   ú<module>r;      sE   ðð
 €ØK€Ý ÷!ñ !ñF ƒx€÷ñ ñ 
‹€Ù	�&Ó	�r   