Ë
    qûàgª(  ã                  ó¾   — d dl mZ d dlZd dlZd dlmZ d dlmZmZm	Z	m
Z
mZ d dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d d	lmZ ddd
„Zddd„Zedk(  r e«        yy)é    )ÚannotationsN)Údumps)ÚabspathÚbasenameÚdirnameÚjoinÚrealpath)Úpython_version)Úunidata_version)Úfrom_fp)ÚCliDetectionResult)Ú__version__c                ó8  — ddddddœ}|€d}n|dk(  rd}n|dk(  rd}nt        d	|z  «      ‚	 t        j                  j                  | |z   «       t	        «       j                  «       }|�
|d
k(  r||   S ||v r||   S t        j                  j                  d«       Œo)aÝ  Ask a yes/no question via input() and return their answer.

    "question" is a string that is presented to the user.
    "default" is the presumed answer if the user just hits <Enter>.
        It must be "yes" (the default), "no" or None (meaning
        an answer is required of the user).

    The "answer" return value is True for "yes" or False for "no".

    Credit goes to (c) https://stackoverflow.com/questions/3041986/apt-command-line-interface-like-yes-no-input
    TF)ÚyesÚyÚyeÚnoÚnz [y/n] r   z [Y/n] r   z [y/N] zinvalid default answer: '%s'Ú z3Please respond with 'yes' or 'no' (or 'y' or 'n').
)Ú
ValueErrorÚsysÚstdoutÚwriteÚinputÚlower)ÚquestionÚdefaultÚvalidÚpromptÚchoices        ú]/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/charset_normalizer/cli/__main__.pyÚquery_yes_nor"      s®   € ð ˜t¨4°uÀ5ÑI€EØ€Ø‰Ø	�EÒ	Ø‰Ø	�DŠØ‰äÐ7¸'ÑAÓBÐBà
Ü�
‰
×Ñ˜ FÑ*Ô+Ü“—‘“ˆØÐ 6¨R¢<Ø˜‘>Ð!Ø�u‰_Ø˜‘=Ð ä�J‰J×ÑÐVÔWð ó    c                ó,  — t        j                  d¬«      }|j                  dt        j                  d«      dd¬«       |j                  dd	d
ddd¬«       |j                  ddd
ddd¬«       |j                  ddd
ddd¬«       |j                  ddd
ddd¬«       |j                  ddd
ddd¬«       |j                  dd d
dd!d"¬«       |j                  d#d$d
dd%d&¬«       |j                  d'd(d)d*t        d+d,¬-«       |j                  d.d/d0j                  t        t        «       t        t        j                  j                  «       j                  d1«      rd2nd3«      d4¬5«       |j                  | «      }|j                  d6u rW|j                  du rI|j                   r!|j                   D ]  }|j#                  «        Œ t%        d7t&        j(                  ¬8«       y9|j*                  d6u rW|j                  du rI|j                   r!|j                   D ]  }|j#                  «        Œ t%        d:t&        j(                  ¬8«       y9|j,                  d;k  s|j,                  d<kD  rI|j                   r!|j                   D ]  }|j#                  «        Œ t%        d=t&        j(                  ¬8«       y9g }|j                   D �]"  }t/        ||j,                  |j0                  |j2                  du ¬>«      }|j5                  «       }|€t%        d@j                  |j6                  |j,                  d<k  rdAndB«      t&        j(                  ¬8«       |j9                  t;        t=        |j6                  «      d?g g dCg dd<d;d?d6«      «       �n?|j9                  t;        t=        |j6                  «      |j>                  |j@                  |jB                  D �cg c]  }||j>                  k7  r|‘Œ c}|jD                  |jF                  |jH                  |jJ                  |jL                  d?d6«      «       tO        |«      d9kD  r½|jP                  r±|D ]¬  }||k7  sŒ	|j9                  t;        t=        |j6                  «      |j>                  |j@                  |jB                  D �cg c]  }||j>                  k7  r|‘Œ c}|jD                  |jF                  |jH                  |jJ                  |jL                  d?d«      «       Œ® |j                  d6u �rÁ|j>                  jS                  dD«      d6u rTt%        dEj                  |j6                  «      t&        j(                  ¬8«       |jT                  du r|j#                  «        �Œ³tW        tY        |j6                  «      «      }	t[        tY        |j6                  «      «      }
|
j]                  dF«      }|j                  du r;|j_                  dG|j>                  «       |jT                  du rf|j#                  «        nU|j*                  du rGta        dHj                  |j6                  «      dI«      du r |jT                  du r|j#                  «        �Œž	 tc        |	dFjc                  |«      «      |dJ   _2        tg        |dJ   jd                  dK«      5 }|ji                  |jk                  «       «       d?d?d?«       |jT                  du s�Œ|j#                  «        �Œ% |jp                  du rMt%        ts        tO        |«      d9kD  r|D �cg c]  }|jt                  ‘Œ c}n|dJ   jt                  d6dM¬N«      «       yJ|j                   D ]Z  }t%        dOjc                  |D �cg c]4  }|jv                  t=        |j6                  «      k(  r|j>                  xs dP‘Œ6 c}«      «       Œ\ yJc c}w c c}w # 1 sw Y   ŒûxY w# tl        $ rM}t%        to        |«      t&        j(                  ¬8«       |jT                  du r|j#                  «        Y d?}~ yLd?}~ww xY wc c}w c c}w )Qzˆ
    CLI assistant using ARGV and ArgumentParser
    :param argv:
    :return: 0 if everything is fine, anything else equal trouble
    zvThe Real First Universal Charset Detector. Discover originating encoding used on text file. Normalize text to unicode.)ÚdescriptionÚfilesÚrbú+zFile(s) to be analysed)ÚtypeÚnargsÚhelpz-vz	--verboseÚ
store_trueFÚverbosezjDisplay complementary information about file if any. Stdout will contain logs about the detection process.)Úactionr   Údestr+   z-az--with-alternativeÚalternativeszIOutput complementary possibilities if any. Top-level JSON WILL be a list.z-nz--normalizeÚ	normalizezLPermit to normalize input file. If not set, program does not write anything.z-mz	--minimalÚminimalzBOnly output the charset detected to STDOUT. Disabling JSON output.z-rz	--replaceÚreplacezGReplace file when trying to normalize it instead of creating a new one.z-fz--forceÚforcezHReplace file without asking if you are sure, use this flag with caution.z-iz--no-preemptiveÚno_preemptivez>Disable looking at a charset declaration to hint the detector.z-tz--thresholdÚstoregš™™™™™É?Ú	thresholdzUDefine a custom maximum amount of noise allowed in decoded content. 0. <= noise <= 1.)r.   r   r)   r/   r+   z	--versionÚversionz;Charset-Normalizer {} - Python {} - Unicode {} - SpeedUp {}z.pyÚOFFÚONz"Show version information and exit.)r.   r8   r+   Tz.Use --replace in addition of --normalize only.)Úfileé   z*Use --force in addition of --replace only.g        g      ð?z---threshold VALUE should be between 0. AND 1.)r7   ÚexplainÚpreemptive_behaviourNz4Unable to identify originating encoding for "{}". {}z-Maybe try increasing maximum amount of chaos.r   ÚUnknownÚutfzJ"{}" file does not need to be normalized, as it already came from unicode.ú.éÿÿÿÿz0Are you sure to normalize "{}" by replacing it ?r   r   Úwbé   é   )Úensure_asciiÚindentz, Ú	undefined)<ÚargparseÚArgumentParserÚadd_argumentÚFileTypeÚfloatÚformatr   r
   r   Ú	md_moduleÚ__file__r   ÚendswithÚ
parse_argsr3   r1   r&   ÚcloseÚprintr   Ústderrr4   r7   r   r-   r5   ÚbestÚnameÚappendr   r   ÚencodingÚencoding_aliasesÚcould_be_from_charsetÚlanguageÚ	alphabetsÚbomÚpercent_chaosÚpercent_coherenceÚlenr0   Ú
startswithÚclosedr   r	   r   ÚsplitÚinsertr"   r   Úunicode_pathÚopenr   ÚoutputÚOSErrorÚstrr2   r   Ú__dict__Úpath)ÚargvÚparserÚargsÚmy_fileÚx_ÚmatchesÚ
best_guessÚcpÚelÚdir_pathÚ	file_nameÚo_ÚfpÚes                 r!   Ú
cli_detectr{   1   s�  € ô ×$Ñ$ð%ô€Fð ×ÑØ”h×'Ñ'¨Ó-°SÐ?Wð ô ð ×ÑØØØØØð@ð ô ð ×ÑØØØØØØXð ô ð ×ÑØØØØØØ[ð ô ð ×ÑØØØØØØQð ô ð ×ÑØØØØØØVð ô ð ×ÑØØØØØØWð ô ð ×ÑØØØØØØMð ô ð ×ÑØØØØÜØØdð ô ð ×ÑØØØM×TÑTÜÜÓÜÜ×'Ñ'×-Ñ-Ó/×8Ñ8¸Ô?‰EÀTó	
ð 2ð ô 
ð ×Ñ˜TÓ"€Dà‡|�|�tÑ §¡°%Ñ 7Ø�:Š:ØŸ:™:ò  �Ø—‘•ð äÐ>ÄSÇZÁZÕPØà‡z�z�TÑ˜dŸl™l¨eÑ3Ø�:Š:ØŸ:™:ò  �Ø—‘•ð äÐ:ÄÇÁÕLØà‡~�~˜Ò˜tŸ~™~°Ò3Ø�:Š:ØŸ:™:ò  �Ø—‘•ð äÐ=ÄCÇJÁJÕOØà	€Bà—:‘:ó @ˆÜØØ—n‘nØ—L‘LØ!%×!3Ñ!3°uÐ!<ô	
ˆð —\‘\“^ˆ
àÐÜØF×MÑMØ—L‘Lð  Ÿ>™>¨CÒ/ñ Hàóô —Z‘Zõ
ð �I‰IÜ"Ü˜GŸL™LÓ)ØØØØØØØØØØóöð  �I‰IÜ"Ü˜GŸL™LÓ)Ø×'Ñ'Ø×/Ñ/ð #-×"BÑ"BöàØ ×!4Ñ!4Ò4ò òð
 ×'Ñ'Ø×(Ñ(Ø—N‘NØ×,Ñ,Ø×0Ñ0ØØóôô( �7‹|˜aÒ D×$5Ò$5Ø!ò �BØ˜ZÓ'ØŸ	™	Ü.Ü '¨¯©Ó 5Ø "§¡Ø "× 3Ñ 3ð /1×.FÑ.Fö!"à(*Ø')¨R¯[©[Ò'8ò %'ò!"ð
 !#§¡Ø "§¡Ø "§¡Ø "× 0Ñ 0Ø "× 4Ñ 4Ø $Ø %óõðð, �~‰~ Ò%Ø×&Ñ&×1Ñ1°%Ó8¸DÑ@ÜØd×kÑkØ#ŸL™Lóô !ŸZ™Zõ	ð —~‘~¨Ñ.ØŸ™œÙä"¤8¨G¯L©LÓ#9Ó:�Ü$¤X¨g¯l©lÓ%;Ó<�	à )§¡°Ó 4�à—<‘< 5Ñ(Ø—I‘I˜b *×"5Ñ"5Ô6Ø—~‘~¨Ñ.ØŸ™�à—J‘J %Ñ'Ü$ØJ×QÑQØ#ŸL™Lóð ó	ð ñð —~‘~¨Ñ.ØŸ™œÙð	Ü)-¨h¸¿¹À»Ó)E�B�q‘EÔ&ä˜b ™e×0Ñ0°$Ó7ð 6¸2ØŸ™ ×!2Ñ!2Ó!4Ô5÷6ð �>‰>˜UÓ"Ø�M‰MŽOðA@ðD ‡|�|�uÑÜÜÜ.1°"«g¸ªk rÖ* �—“Ó*¸rÀ!¹u¿~¹~Ø!Øôô	
ð& ð —z‘zò 		ˆGÜØ—	‘	ð #%öàØŸ7™7¤g¨g¯l©lÓ&;Ò;ð Ÿ™Ò2 {Ñ2òóõð		ð ùòWùò.!"÷j6ð 6ûäò Üœ#˜a›&¤s§z¡zÕ2Ø—~‘~¨Ñ.ØŸ™œÝûð	üò +ùòsI   Î>^Ò^"Ù<^3Ú ^'Ú-^3Ü`Ý9`Þ'^0	Þ,^3Þ3	`	Þ<A`à`	Ú__main__)r   )r   rj   r   rj   ÚreturnÚbool)N)rm   zlist[str] | Noner}   Úint)Ú
__future__r   rI   r   Újsonr   Úos.pathr   r   r   r   r	   Úplatformr
   Úunicodedatar   Úcharset_normalizer.mdÚmdrO   Úcharset_normalizerr   Úcharset_normalizer.modelsr   Úcharset_normalizer.versionr   r"   r{   Ú__name__© r#   r!   ú<module>rŒ      sK   ðÝ "ã Û 
Ý ß >Õ >Ý #Ý 'å )Ý &Ý 8Ý 2ôXôBLð^ ˆzÒÙ…Lð r#   