§
    *‚Kg  ã                   óª   — d Z ddlZddlZddlZddlmZ d„ Zedk    r5	  e¦   «          dS # e$ r Z	 ej
        e	j        ¦  «         Y dZ	[	dS dZ	[	ww xY wdS )a  Command-line tool to validate and pretty-print JSON

Usage::

    $ echo '{"json":"obj"}' | python -m json.tool
    {
        "json": "obj"
    }
    $ echo '{ 1.2:3.4}' | python -m json.tool
    Expecting property name enclosed in double quotes: line 1 column 3 (char 2)

é    N)ÚPathc                  ó´  — d} d}t          j        | |¬¦  «        }|                     ddt          j        d¬¦  «        dt          j        ¬	¦  «         |                     d
dt          dd ¬	¦  «         |                     dddd¬¦  «         |                     dddd¬¦  «         |                     dddd¬¦  «         |                     ¦   «         }|                     ddt          d¬¦  «         |                     ddddd ¬!¦  «         |                     d"ddd d#¬!¦  «         |                     d$dd%¬&¦  «         | 	                    ¦   «         }|j
        |j        |j        d'œ}|j        r
d |d<   d(|d)<   |j        5 }	 |j        rd*„ |D ¦   «         }nt!          j        |¦  «        f}|j        €t          j        }n|j                             d+d¬¦  «        }|5 }	|D ]*}
t!          j        |
|	fi |¤Ž |	                     d,¦  «         Œ+	 d d d ¦  «         n# 1 swxY w Y   n!# t.          $ r}t1          |¦  «        ‚d }~ww xY wd d d ¦  «         d S # 1 swxY w Y   d S )-Nzpython -m json.toolzZA simple command line interface for json module to validate and pretty-print JSON objects.)ÚprogÚdescriptionÚinfileú?zutf-8)Úencodingz-a JSON file to be validated or pretty-printed)ÚnargsÚtypeÚhelpÚdefaultÚoutfilez%write the output of infile to outfilez--sort-keysÚ
store_trueFz5sort the output of dictionaries alphabetically by key)Úactionr   r   z--no-ensure-asciiÚensure_asciiÚstore_falsez(disable escaping of non-ASCII characters)Údestr   r   z--json-linesznparse input using the JSON Lines format. Use with --no-indent or --compact to produce valid JSON Lines output.z--indenté   zJseparate items with newlines and use this number of spaces for indentation)r   r   r   z--tabÚstore_constÚindentú	z9separate items with newlines and use tabs for indentation)r   r   Úconstr   z--no-indentz/separate items with spaces rather than newlinesz	--compactz1suppress all whitespace separation (most compact))r   r   )Ú	sort_keysr   r   )ú,ú:Ú
separatorsc              3   ó>   K  — | ]}t          j        |¦  «        V — Œd S )N)ÚjsonÚloads)Ú.0Úlines     ú /usr/lib/python3.11/json/tool.pyú	<genexpr>zmain.<locals>.<genexpr>A   s,   è è € Ð<Ð<¨T�œ
 4Ñ(Ô(Ð<Ð<Ð<Ð<Ð<Ð<ó    Úwú
)ÚargparseÚArgumentParserÚadd_argumentÚFileTypeÚsysÚstdinr   Úadd_mutually_exclusive_groupÚintÚ
parse_argsr   r   r   Úcompactr   Ú
json_linesr   Úloadr   ÚstdoutÚopenÚdumpÚwriteÚ
ValueErrorÚ
SystemExit)r   r   ÚparserÚgroupÚoptionsÚ	dump_argsr   ÚobjsÚoutr   ÚobjÚes               r"   ÚmainrA      s®  € Ø €Dð@€KåÔ$¨$¸KÐHÑHÔH€FØ
×Ò˜¨Ý%Ô.¸Ð@Ñ@Ô@ØLÝ #¤	ð ñ +ô +ð +ð ×Ò˜	¨Ý!ØDØ $ð ñ &ô &ð &ð ×Ò˜¨lÀEØTð ñ Vô Vð Và
×ÒÐ+°.ÈØGð ñ Iô Ið Ià
×Ò˜¨|ÀUð`ð ñ aô að að ×/Ò/Ñ1Ô1€EØ	×Ò�z¨1µ3ð3ð ñ 4ô 4ð 4ð 
×Ò�w }¸8Ø!ð ).ð ñ /ô /ð /ð 
×Ò�}¨]ÀØ!ØMð ñ Oô Oð Oð 
×Ò�{¨<ØOð ñ Qô Qð Qà×ÒÑ!Ô!€Gð Ô&Ø”.ØÔ,ðð €Ið
 „ð +Ø"ˆ	�(ÑØ"*ˆ	�,Ñà	Œð  ˜6ð	 ØÔ!ð ,Ø<Ð<°VÐ<Ñ<Ô<��åœ	 &Ñ)Ô)Ð+�àŒÐ&Ý”j��à”o×*Ò*¨3¸Ð*ÑAÔA�Øð (˜Øð (ð (�CÝ”I˜c 7Ð8Ð8¨iÐ8Ð8Ð8Ø—M’M $Ñ'Ô'Ð'Ð'ð(ð(ð (ð (ñ (ô (ð (ð (ð (ð (ð (ð (øøøð (ð (ð (ð (øøõ ð 	 ð 	 ð 	 Ý˜Q‘-”-Ðøøøøð	 øøøð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  ð  ð  s[   Å;IÅ=AHÇ.HÈHÈH	ÈHÈH	ÈHÈIÈ
H=È)H8È8H=È=IÉIÉIÚ__main__)Ú__doc__r'   r   r+   Úpathlibr   rA   Ú__name__ÚBrokenPipeErrorÚexcÚexitÚerrno© r$   r"   ú<module>rK      s¼   ððð ð €€€Ø €€€Ø 
€
€
€
Ø Ð Ð Ð Ð Ð ð; ð ; ð ; ð| ˆzÒÐðØˆ‰ŒˆˆˆøØð ð ð ØˆŒ�”ÑÔÐÐÐÐÐÐÐøøøøðøøøð Ðs   Ÿ
+ «A°AÁA