Ë
    Ç[;jQ"  ã            	       ó   — d dl Z d dlZ G d„ d«      Z G d„ d«      Z G d„ d«      Z G d„ d	e«      Zd
„ Z G d„ de«      Z	d„ Z
d„ Zd„ Zddddddddœj                  Zd e ee ed«      «      «      z   Zd„ Zd„ Z e«       Zd„ Zd„ Zd d„Zd„ Zy)!é    Nc                   ó4   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	y)	ÚUnicodeLiteralBuilderzAssemble a unicode string.
    c                 ó   — g | _         y ©N)Úchars©Úselfs    úgG:\00. PROJECTS\API\Inventory\templateJSON\kerjaOCR\Lib\site-packages\Cython/Compiler/StringEncoding.pyÚ__init__zUnicodeLiteralBuilder.__init__   s	   € Øˆ�
ó    c                 ó€   — t        |t        «      sJ dt        |«      › �«       ‚| j                  j	                  |«       y )NzExpected str, got )Ú
isinstanceÚstrÚtyper   Úappend©r	   Ú
characterss     r
   r   zUnicodeLiteralBuilder.append   s7   € Ü˜*¤cÔ*ÐSÐ.@ÄÀjÓAQÐ@RÐ,SÓSÐ*Ø�
‰
×Ñ˜*Õ%r   c                 óL   — | j                   j                  t        |«      «       y r   )r   r   Úchr©r	   Úchar_numbers     r
   Úappend_charvalz$UnicodeLiteralBuilder.append_charval   s   € Ø�
‰
×Ñœ3˜{Ó+Õ-r   c                 ó&   — | j                  |«       y r   )r   ©r	   r   Úescape_strings      r
   Úappend_uescapez$UnicodeLiteralBuilder.append_uescape   s   € Ø×Ñ˜KÕ(r   c                 óJ   — t        dj                  | j                  «      «      S )NÚ )ÚEncodedStringÚjoinr   r   s    r
   Ú	getstringzUnicodeLiteralBuilder.getstring   s   € Ü˜RŸW™W T§Z¡ZÓ0Ó1Ð1r   c                 ó&   — d | j                  «       fS r   ©r!   r   s    r
   Ú
getstringsz UnicodeLiteralBuilder.getstrings   s   € Ø�d—n‘nÓ&Ð'Ð'r   N)
Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r!   r$   © r   r
   r   r   
   s%   „ ñòò&ò.ò)ò2ó(r   r   c                   ó:   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
y	)
ÚBytesLiteralBuilderz*Assemble a byte string or char value.
    c                 ó    — g | _         || _        y r   )r   Útarget_encoding©r	   r-   s     r
   r   zBytesLiteralBuilder.__init__$   s   € ØˆŒ
Ø.ˆÕr   c                 óâ   — t        |t        «      r|j                  | j                  «      }t        |t        «      sJ t        t        |«      «      «       ‚| j                  j                  |«       y r   )r   r   Úencoder-   Úbytesr   r   r   r   s     r
   r   zBytesLiteralBuilder.append(   sS   € Ü�j¤#Ô&Ø#×*Ñ*¨4×+?Ñ+?Ó@ˆJÜ˜*¤eÔ,ÐC¬c´$°zÓ2BÓ.CÓCÐ,Ø�
‰
×Ñ˜*Õ%r   c                 ój   — | j                   j                  t        |«      j                  d«      «       y )Nú
ISO-8859-1)r   r   r   r0   r   s     r
   r   z"BytesLiteralBuilder.append_charval.   s$   € Ø�
‰
×Ñœ3˜{Ó+×2Ñ2°<Ó@ÕBr   c                 ó&   — | j                  |«       y r   )r   r   s      r
   r   z"BytesLiteralBuilder.append_uescape1   s   € Ø�‰�MÕ"r   c                 ó`   — t        dj                  | j                  «      | j                  «      S )Nr   )Úbytes_literalr    r   r-   r   s    r
   r!   zBytesLiteralBuilder.getstring4   s"   € ä˜SŸX™X d§j¡jÓ1°4×3GÑ3GÓHÐHr   c                 ó"   — | j                  «       S r   r#   r   s    r
   ÚgetcharzBytesLiteralBuilder.getchar8   s   € à�~‰~ÓÐr   c                 ó&   — | j                  «       d fS r   r#   r   s    r
   r$   zBytesLiteralBuilder.getstrings<   s   € Ø—‘Ó  $Ð'Ð'r   N)r%   r&   r'   r(   r   r   r   r   r!   r8   r$   r)   r   r
   r+   r+   !   s,   „ ñò/ò&òCò#òIò ó(r   r+   c                   ó.   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚStrLiteralBuilderzDAssemble both a bytes and a unicode representation of a string.
    c                 óB   — t        |«      | _        t        «       | _        y r   )r+   Ú_bytesr   Ú_unicoder.   s     r
   r   zStrLiteralBuilder.__init__C   s   € Ü+¨OÓ<ˆŒÜ-Ó/ˆ�r   c                 óp   — | j                   j                  |«       | j                  j                  |«       y r   )r=   r   r>   r   s     r
   r   zStrLiteralBuilder.appendG   s&   € Ø�‰×Ñ˜:Ô&Ø�‰×Ñ˜ZÕ(r   c                 óp   — | j                   j                  |«       | j                  j                  |«       y r   )r=   r   r>   r   s     r
   r   z StrLiteralBuilder.append_charvalK   s&   € Ø�‰×"Ñ" ;Ô/Ø�‰×$Ñ$ [Õ1r   c                 óp   — | j                   j                  |«       | j                  j                  |«       y r   )r=   r   r>   r   r   s      r
   r   z StrLiteralBuilder.append_uescapeO   s&   € Ø�‰×Ñ˜=Ô)Ø�‰×$Ñ$ [Õ1r   c                 ój   — | j                   j                  «       | j                  j                  «       fS r   )r=   r!   r>   r   s    r
   r$   zStrLiteralBuilder.getstringsS   s'   € Ø—‘×%Ñ%Ó'¨¯©×)@Ñ)@Ó)BÐCÐCr   N)	r%   r&   r'   r(   r   r   r   r   r$   r)   r   r
   r;   r;   @   s!   „ ñò0ò)ò2ò2óDr   r;   c                   ó>   — e Zd ZdZd„ Zd„ Zd„ Zed„ «       Zd„ Z	d„ Z
y)r   Nc                 ó   — | S r   r)   ©r	   Úmemos     r
   Ú__deepcopy__zEncodedString.__deepcopy__]   ó   € Øˆr   c                 óT   — | j                   €J ‚| j                  | j                   «      S r   ©Úencodingr0   r   s    r
   Ú
byteencodezEncodedString.byteencode`   s%   € Ø�}‰}Ð(Ð(Ð(Ø�{‰{˜4Ÿ=™=Ó)Ð)r   c                 ó@   — | j                   �J ‚| j                  d«      S )NzUTF-8rJ   r   s    r
   Ú
utf8encodezEncodedString.utf8encoded   s!   € Ø�}‰}Ð$Ð$Ð$Ø�{‰{˜7Ó#Ð#r   c                 ó   — | j                   d u S r   )rK   r   s    r
   Ú
is_unicodezEncodedString.is_unicodeh   s   € à�}‰} Ð$Ð$r   c                 ó6   — t        | j                  «       d«      S )NÚutf8)r6   rN   r   s    r
   Úas_utf8_stringzEncodedString.as_utf8_stringl   s   € Ü˜TŸ_™_Ó.°Ó7Ð7r   c                 óÂ   — | j                   € | j                  «       }|j	                  «       S t        | j                  «       | j                   «      }|j	                  «       S r   )rK   rS   r6   rL   Úas_c_string_literal)r	   Úss     r
   rU   z!EncodedString.as_c_string_literalo   sS   € à�=‰=Ð Ø×#Ñ#Ó%ˆAð ×$Ñ$Ó&Ð&ô ˜dŸo™oÓ/°·±Ó?ˆAØ×$Ñ$Ó&Ð&r   )r%   r&   r'   rK   rG   rL   rN   ÚpropertyrP   rS   rU   r)   r   r
   r   r   W   s6   „ ð €Hòò*ò$ð ñ%ó ð%ò8ó'r   r   c                 óH   — t        t        | «      D ]  }d|k  sŒ	|dk  sŒ y y)a  
    Check if the unicode string contains lone surrogate code points
    on a CPython platform with wide (UCS-4) or narrow (UTF-16)
    Unicode, i.e. characters that would be spelled as two
    separate code units on a narrow platform, but that do not form a pair.
    é Ø  iÿß  TF)ÚmapÚord)ÚustringÚcs     r
   Ústring_contains_lone_surrogatesr^   x   s*   € ô ”�gÖˆà�Q‹;˜1 ›;áð	 ð
 r   c                   ó2   — e Zd ZdZd„ Zd„ Zd„ Zd„ ZdZd„ Z	y)ÚBytesLiteralNc                 ó   — | S r   r)   rE   s     r
   rG   zBytesLiteral.__deepcopy__‹   rH   r   c                 ó   — t        | «      S r   )r1   r   s    r
   rL   zBytesLiteral.byteencodeŽ   s   € Ü�T‹{Ðr   c                 ó   — J d| z  «       ‚)Nz this is not a unicode string: %rr)   r   s    r
   rN   zBytesLiteral.utf8encode‘   s   € Ø?Ð8¸4Ñ?Ó?ˆur   c                 ó$   — | j                  d«      S )zcFake-decode the byte string to unicode to support %
        formatting of unicode strings.
        r3   )Údecoder   s    r
   Ú__str__zBytesLiteral.__str__”   s   € ð �{‰{˜<Ó(Ð(r   Fc                 ó4   — t        t        | «      «      }d|z  S )Nz"%s")Úsplit_string_literalÚescape_byte_string)r	   Úvalues     r
   rU   z BytesLiteral.as_c_string_literalœ   s   € Ü$Ô%7¸Ó%=Ó>ˆØ˜‰~Ðr   )
r%   r&   r'   rK   rG   rL   rN   rf   rP   rU   r)   r   r
   r`   r`   ‡   s(   „ à€Hòòò@ò)ð €Jór   r`   c                 óN   — t        | t        «      sJ ‚t        | «      } || _        | S r   )r   r1   r`   rK   ©rV   rK   s     r
   r6   r6   ¡   s'   € Ü�aœÔÐÐÜ�Q‹€AØ€A„JØ€Hr   c                 ó^   — t        | t        t        f«      sJ ‚t        | «      } |�|| _        | S r   )r   r   r1   r   rK   rl   s     r
   Úencoded_stringrn   ¨   s2   € Ü�aœ#œu˜Ô&Ð&Ð&Ü�aÓ€AØÐØˆŒ
Ø€Hr   c                 óR   — t        | t        «      rt        | |«      S t        | |«      S r   )r   r1   r6   rn   rl   s     r
   Úencoded_string_or_bytes_literalrp   ¯   s&   € Ü�!”UÔÜ˜Q Ó)Ð)ä˜a Ó*Ð*r   ÚÚÚÚ
ÚÚ	Ú)z\az\bz\fz\nz\rz\tz\v)Ú\z??Ú"é    c           	      ó    — | dv rt        | «      dd S | dk(  ry| dk(  rydj                  | D �cg c]  }dt        |«      d	›�‘Œ c}«      S c c}w )
Nz
	é   éÿÿÿÿry   z\"rx   ú\\r   Ú03o)Úreprr    r[   )rV   r]   s     r
   Ú_to_escape_sequencer�   Ã   s]   € ØˆH�}Ü�A‹w�q˜ˆ}ÐØ	
ˆcŠØØ	
ˆdŠØð �w‰w±1Ó5±1¨a˜"œS ›V C˜LÒ)°1Ñ5Ó6Ð6ùÒ5s   ®Ac                  ó¨  ‡‡‡— g } i Št         D ]q  }dj                  |D �cg c]  }d|j                  dd«      z  ‘Œ c}«      }| j                  |«       t	        |«      j                  d«      ‰|j                  d«      <   Œs t        j                  ddj                  | «      z  j                  d«      «      j                  Šˆfd„Šˆˆfd	„}|S c c}w )
Nr   z[%s]rx   r~   ÚASCIIz(%s)Ú|c                 ó,   •— ‰| j                  d«         S )Nr|   )Úgroup)ÚmÚreplacementss    €r
   Úreplace_specialsz2_build_specials_replacer.<locals>.replace_specials×   s   ø€ Ø˜AŸG™G A›JÑ'Ð'r   c                 ó   •—  ‰‰| «      S r   r)   )rV   r‰   Úsubs    €€r
   Úreplacez)_build_specials_replacer.<locals>.replaceÙ   s   ø€ ÙÐ# QÓ'Ð'r   )	Ú
_c_specialr    rŒ   r   r�   r0   ÚreÚcompiler‹   )ÚsubexpsÚspecialr]   ÚregexprŒ   r‰   rˆ   r‹   s        @@@r
   Ú_build_specials_replacerr“   Ï   s¸   ú€ Ø€GØ€LßˆØ—‘ÁGÓLÁG¸q˜& 1§9¡9¨T°6Ó#:Ó:ÀGÑLÓMˆØ�‰�vÔÜ0CÀGÓ0L×0SÑ0SÐT[Ó0\ˆ�W—^‘^ GÓ,Ò-ð ô �*‰*�f˜sŸx™x¨Ó0Ñ0×8Ñ8¸ÓAÓ
B×
FÑ
F€Cô(õ(à€Nùò Ms    C
c                 óŒ   — | j                  d«      } | dv rt        | «      dd S | dk(  ryt        | «      }|dk  s|dk\  rd	|z  S | S )
Nr3   z
	\r|   r}   Ú'z\'rz   é   z\x%02X)re   r€   r[   )r]   Úns     r
   Úescape_charr˜   à   sX   € Ø	�‰�Ó€AØˆJ�Ü�A‹w�q˜ˆ}ÐØ	
ˆcŠØÜˆA‹€AØˆ2‚v��c’à˜1‰}Ðð ˆr   c                 ó   — t        | «      } 	 | j                  d«      S # t        $ r Y nw xY wt        «       }|j                  |j
                  }}| D ]  }|dk\  r |d|z  «       Œ ||«       Œ |j                  d«      S )zÒEscape a byte string so that it can be written into C code.
    Note that this returns a Unicode string instead which, when
    encoded as ASCII, will result in the correct byte sequence
    being written.
    rƒ   r–   s   \%03o)Ú_replace_specialsre   ÚUnicodeDecodeErrorÚ	bytearrayr   Úextend)rV   Ús_newr   r�   Úbs        r
   ri   ri   ï   s�   € ô 	˜!Ó€AðØ�x‰x˜Ó Ð øÜò Ùðúä‹K€EØ—\‘\ 5§<¡<ˆF€FÛˆØ�Š8Ù�9˜q‘=Õ!á�1�Ið	 ð
 �<‰<˜Ó Ð s   � ž	*©*c                 óŒ  — t        | «      |k  r| S d}g }|t        | «      k  r’||z   }t        | «      |dz
  kD  rWd| |dz
  | v rM|d| |dz
  | j                  d«      z
  z  }| |dz
     dk(  r%|dz  }||k(  r||z   |dz  z
  dz
  }n| |dz
     dk(  rŒ%|j                  | || «       |}|t        | «      k  rŒ’dj                  |«      S )Nr   é   rx   r|   é   z"")ÚlenÚfindr   r    )rV   ÚlimitÚstartÚchunksÚends        r
   rh   rh     s÷   € ä
ˆ1ƒv�‚~ØˆàˆØˆØ”c˜!“fŠnØ˜%‘-ˆCÜ�1‹v˜˜A™Š~ $¨!¨C°©E°#¨,Ñ"6Ø�q˜1˜S ™U 3˜<×,Ñ,¨TÓ2Ñ2Ñ2�Ø˜˜A™‘h $Ò&Ø˜1‘H�CØ˜e’|à# e™m¨u°q©yÑ9¸AÑ=˜Øð ˜˜A™‘h $Ó&ð �M‰M˜!˜E #˜,Ô'ØˆEð ”c˜!“f‹nð �y‰y˜Ó Ð r   c                 ó˜  — t        t        t        | «      «      } | j                  d«       g | }}| D ]S  }|dk\  r;t	        |dz
  d«      \  }}|j                  |dz   «       |j                  |dz   «       ŒC|j                  |«       ŒU ||k(  rg }dj                  t        t        |«      «      dj                  t        t        |«      «      fS )zBCreate Py_UNICODE[] representation of a given unicode string.
    r   i   i   rY   i Ü  Ú,)ÚlistrZ   r[   r   Údivmodr    r   )r   Úutf16Úutf32Ú
code_pointÚhighÚlows         r
   Úencode_pyunicode_stringr²     s¶   € ô ”cœ#˜zÓ*Ó+€JØ×Ñ�aÔà�zˆ5€EÛ ˆ
Ø˜Ò Ü˜z¨GÑ3°TÓ:‰IˆD�#Ø�L‰L˜ ™Ô'Ø�L‰L˜˜v™Õ&à�L‰L˜Õ$ð !ð �‚~ØˆØ�8‰8”Cœ˜U“OÓ$ c§h¡h¬s´3¸«Ó&?Ð?Ð?r   )iÐ  )rŽ   Úsysr   r+   r;   r   r   r^   r1   r`   r6   rn   rp   ÚgetÚchar_from_escape_sequenceÚtuplerZ   r   Úranger�   r�   r“   rš   r˜   ri   rh   r²   r)   r   r
   Ú<module>r¸      sÈ   ðó 
Û 
÷(ñ (÷.(ñ (÷>Dñ Dô.'�Cô 'òBô�5ô ò4òò+ð ØØØØØØñ÷ 
�cð ð ¡¡s¨3±°b³	Ó':Ó!;Ñ;€
ò	7òñ -Ó.Ð òò!ó(!ó,@r   