
    =OOf&                    p    d dl mZ d dlZd dlmZmZmZmZ d dlm	Z	 	 ddgZ G d de      Z G d d      Zy)	    )annotationsN)	YAMLErrorFileMark
StringMarkYAMLStreamError)RegExpReaderReaderErrorc                  4    e Zd Z	 	 	 	 	 	 	 	 	 	 	 	 ddZddZy)r
   c                J    || _         || _        || _        || _        || _        y N)name	characterpositionencodingreason)selfr   r   r   r   r   s         S/var/www/premiumrankchecker/venv/lib/python3.12/site-packages/ruamel/yaml/reader.py__init__zReaderError.__init__$   s'     	"      c                B   t        | j                  t              rNd| j                  dt	        | j                        dd| j
                  d| j                  d| j                  d
S d| j                  d	d| j
                  d| j                  d| j                  dS )
N'z' codec can't decode byte #x02xz: z
  in "z", position dzunacceptable character #x04x)
isinstancer   bytesr   ordr   r   r   r   s    r   __str__zReaderError.__str__-   s    dnne,DMM$$@T^^ATUX@YY[;;/ "\$--1BD ,DNN3+?r$++ Q\$--1BDr   N)r   Anyr   r!   r   r!   r   r!   r   r!   returnNoner"   r!   )__name__
__module____qualname__r   r     r   r   r
   r
   #   s<    #&36BEOR	r   c            
      P   e Zd ZdddZddZedd       Zej                  dd       ZdddZdd dZ	dd!dZ
dd!d	Zdd
ZddZ ed      Zddj!                   ee edd                  z   j)                  d      Zed"d       Zed#d       Zed#d       Zd$dZd!dZdd%dZy)&r	   Nc                    || _         | j                   (t        | j                   dd       | | j                   _        | j                          || _        y )N_reader)loadergetattrr+   reset_readerstream)r   r/   r,   s      r   r   zReader.__init__I   sD    ;;"wt{{It'L'T"&DKK!r   c                    d | _         d| _        d| _        d| _        d| _        d | _        d | _        d | _        d| _        d| _	        d| _
        y )Nr   T )r   stream_pointereofbufferpointer
raw_buffer
raw_decoder   indexlinecolumnr   s    r   r.   zReader.reset_readerP   sP    	#(,
	r   c                L    	 | j                   S # t        $ r t        d      w xY w)Nz"input stream needs to be specified)_streamAttributeErrorr   r   s    r   r/   zReader.stream]   s/    	H<< 	H!"FGG	Hs    #c                   |y d | _         t        |t              r#d| _        | j	                  |       |dz   | _        y t        |t              rd| _        || _        | j                          y t        |d      st        d      || _         t        | j                  dd      | _        d| _        d | _        | j                          y )	Nz<unicode string> z<byte string>readz-stream argument needs to have a read() methodr   z<file>F)r<   r   strr   check_printabler4   r   r6   determine_encodinghasattrr   r-   r/   r3   )r   vals     r   r/   zReader.streamd   s    ;c3*DI  %*DKU#'DI!DO##%3'%&UVVDLVX>DIDH"DO##%r   c                    	 | j                   | j                  |z      S # t        $ r3 | j                  |dz          | j                   | j                  |z      cY S w xY w)N   )r4   r5   
IndexErrorupdate)r   r8   s     r   peekzReader.peekz   sV    	5;;t||e344 	5KK	";;t||e344	5s    9AAc                    | j                   |z   t        | j                        k\  r| j                  |       | j                  | j                   | j                   |z    S r   )r5   lenr4   rI   )r   lengths     r   prefixzReader.prefix   sF    <<& C$44KK{{4<<$,,*?@@r   c                   | j                   |z   dz   t        | j                        k\  r| j                  |dz          |dk7  r| j                  | j                      }| xj                   dz  c_         | xj                  dz  c_        |dv s!|dk(  r9| j                  | j                      dk7  r| xj
                  dz  c_        d| _        n|dk7  r| xj                  dz  c_        |dz  }|dk7  ry y )NrG   r   u	   
  
   ﻿r5   rL   r4   rI   r8   r9   r:   r   rM   chs      r   forward_1_1zReader.forward_1_1   s    <<& 1$DKK(88KK
#kT\\*BLLALJJ!OJ))d
t{{4<<8D@		Q	xq aKF kr   c                   | j                   |z   dz   t        | j                        k\  r| j                  |dz          |dk7  r| j                  | j                      }| xj                   dz  c_         | xj                  dz  c_        |dk(  s!|dk(  r9| j                  | j                      dk7  r| xj
                  dz  c_        d| _        n|dk7  r| xj                  dz  c_        |dz  }|dk7  ry y )NrG   r   rQ   rP   rR   rS   rT   s      r   forwardzReader.forward   s    <<& 1$DKK(88KK
#kT\\*BLLALJJ!OJTzbDjT[[-F$-N		Q	xq aKF kr   c                   | j                   Lt        | j                  | j                  | j                  | j
                  | j                  | j                        S t        | j                  | j                  | j                  | j
                        S r   )	r/   r   r   r8   r9   r:   r4   r5   r   r   s    r   get_markzReader.get_mark   sa    ;;		4::tyy$++t{{DLL  DIItzz499dkkJJr   c                   | j                   sf| j                  t        | j                        dk  rB| j                          | j                   s&| j                  )t        | j                        dk  rBt	        | j                  t
              r| j                  j                  t        j                        rt        j                  | _
        d| _        nb| j                  j                  t        j                        rt        j                  | _
        d| _        nt        j                  | _
        d| _        | j                  d       y )N   z	utf-16-lez	utf-16-bezutf-8rG   )r3   r6   rL   
update_rawr   r   
startswithcodecsBOM_UTF16_LEutf_16_le_decoder7   r   BOM_UTF16_BEutf_16_be_decodeutf_8_decoderI   r   s    r   rC   zReader.determine_encoding   s    (( 73t;ORS;SOO (( 73t;ORS;Sdoou-))&*=*=>"("9"9 +++F,?,?@"("9"9 +"("5"5 'Ar   u!   [^	
 -~ -퟿-�𐀀-􏿿]z	
r1          asciic                    |j                  d      }|j                  d | j                        }|sy |d d }|j                  |      |j	                  d      fS )Nrg   rG   )encode	translate_printable_asciir8   decode)clsdataascii_bytesnon_printablesnon_printables        r   _get_non_printable_asciizReader._get_non_printable_ascii   s[    kk'*$..tS5I5IJ&r*  /1E1Eg1NNNr   c                    | j                   j                  |      }t        |      sy |j                         |j	                         fS r   )NON_PRINTABLEsearchboolstartgroup)rm   rn   matchs      r   _get_non_printable_regexzReader._get_non_printable_regex   s9    !!((.E{{{}ekkm++r   c                f    	 | j                  |      S # t        $ r | j                  |      cY S w xY wr   )rr   UnicodeEncodeErrorrz   )rm   rn   s     r   _get_non_printablezReader._get_non_printable   s8    	6//55! 	6//55	6s    00c                    | j                  |      }|Y|\  }}| j                  t        | j                        | j                  z
  z   |z   }t        | j                  |t        |      dd      y )Nunicodez"special characters are not allowed)r}   r8   rL   r4   r5   r
   r   r   )r   rn   non_printable_matchrw   r   r   s         r   rB   zReader.check_printable   sq    "55d;*2E9zzS%5%DEMH		I4  +r   c                   | j                   y | j                  | j                  d  | _        d| _        t        | j                        |k  r| j                  s| j                          | j                  ,	 | j                  | j                   d| j                        \  }}n| j                   }t        |      }| j                  |       | xj                  |z  c_        | j                   |d  | _         | j                  r| xj                  dz  c_        d | _         y t        | j                        |k  ry y # t        $ r}| j                   |j                     }| j                  0| j                  t        | j                         z
  |j                  z   }nH| j                  0| j                  t        | j                         z
  |j                  z   }n|j                  }t        | j                  |||j                  |j                        d }~ww xY w)Nr   strictr?   )r6   r4   r5   rL   r3   r]   r7   UnicodeDecodeErrorrw   r/   r2   r
   r   r   r   rB   )r   rM   rn   	convertedexcr   r   s          r   rI   zReader.update   s   ??"kk$,,.1$++'88!*
`&*oodooxQUQYQY&ZOD) I	  &KK4K"ooij9DOxxt#"&1 $++' * ` $		 :I{{.#'#6#6T__9M#MPSPYPY#Y0#'#6#6T__9M#MPSPYPY#Y#&99%dii9cllTWT^T^__`s   4*D4 4	H=C
HHc                    |d}| j                   j                  |      }| j                  || _        n| xj                  |z  c_        | xj                  t	        |      z  c_        |sd| _        y y )Ni   T)r/   r@   r6   r2   rL   r3   )r   sizern   s      r   r]   zReader.update_raw  sc    <D{{%??""DOOOt#Os4y(DH r   r   )r/   r!   r,   r!   r"   r#   )r"   r#   r$   )rE   r!   r"   r#   )r   )r8   intr"   Text)rG   )rM   r   r"   r!   )rM   r   r"   r#   )rm   r   rn   r   r"   Optional[Tuple[int, Text]])rn   r   r"   r   )rn   r!   r"   r#   )r   zOptional[int]r"   r#   )r%   r&   r'   r   r.   propertyr/   setterrJ   rN   rV   rX   rZ   rC   r   rt   joinmapchrrangeri   rk   classmethodrr   rz   r}   rB   rI   r]   r(   r   r   r	   r	   ;   s    " H H ]]& &*5A
 K _M 'S%d:K1L)MMUUV]^O O , , 6 6>
r   )
__future__r   r_   ruamel.yaml.errorr   r   r   r   ruamel.yaml.utilr   typingr!   DictOptionalListUnionr   Tuple__all__r
   r	   r(   r   r   <module>r      s=    "*  N N # ]
#) 0S Sr   