
    *pj	                    d    % S r SSKJr  SSKJr  SSKJr  SrS\S'   \	" SS	15      r
S
\S'   SS jrg)z*Stage 1a: BOM (Byte Order Mark) detection.    )annotations)decodes_without_error)DetectionResult)	)     utf-32)     r   )s   ﻿z	utf-8-sig)s   utf-16)s   r	   )s   +/v8utf-7)s   +/v9r
   )s   +/v+r
   )s   +/v/r
   ztuple[tuple[bytes, str], ...]_BOMSr   r   zfrozenset[bytes]_UTF32_BOMSc                    [          Hm  u  pU R                  U5      (       d  M  U[        ;   a"  [        U 5      [        U5      -
  nUS-  S:w  a  MI  US:X  a  [	        U S5      (       d  Mb  [        USSS9s  $    g)zCheck for a byte order mark at the start of *data*.

:param data: The raw byte data to examine.
:returns: A :class:`DetectionResult` with confidence 1.0, or ``None``.
   r   r
   g      ?N)encoding
confidencelanguage)r   
startswithr   lenr   r   )data	bom_bytesr   payload_lens       P/var/www/html/pdf-tiff/venv/lib/python3.13/site-packages/chardet/pipeline/bom.py
detect_bomr   !   sy      %	??9%%
 K'!$i#i.8?a' 7"+@w+O+O"HtTT  %     N)r   bytesreturnzDetectionResult | None)__doc__
__future__r   chardet._utilsr   chardet.pipeliner   r   __annotations__	frozensetr   r    r   r   <module>r#      s>    0 " 0 ,
($ & !*+>@S*T U Ur   