o ?Og> @s4 ddlZzddlmZWn eydZYnwzddlmZWn ey,dZYnwzddlmZWn ey@dZYnwe dZ e dZ e dZ dd d d d d ddZ edD] Ze eedeq^edZddZepweZddZepeZGdddeZeeeeeeeee ej!f ddZ"dS)N)encode_basestring_ascii)encode_basestring) make_encoderz[\x00-\x1f\\"\b\f\n\r\t]z([\\"]|[^\ -~])s[-]z\\z\"z\bz\fz\nz\rz\t)\"    \u{0:04x}infcC dd}dt||dS)NcSst|dS)Nr) ESCAPE_DCTgroup)matchr3/opt/alt/python310/lib64/python3.10/json/encoder.pyreplace(sz%py_encode_basestring..replacer)ESCAPEsubsrrrrpy_encode_basestring$srcCr)NcSsv|d}zt|WSty:t|}|dkr d|YS|d8}d|d?d@B}d|d@B}d||YSw) Nrir i iiz\u{0:04x}\u{1:04x})rrKeyErrorordformat)rrns1s2rrrr4s    z+py_encode_basestring_ascii..replacer) ESCAPE_ASCIIrrrrrpy_encode_basestring_ascii0sr#c @sLeZdZ dZdZdddddddddddZd d Zd d Zdd dZdS) JSONEncoderz, z: FTN)skipkeys ensure_asciicheck_circular allow_nan sort_keysindent separatorsdefaultc Cs` ||_||_||_||_||_||_|dur|\|_|_n|dur%d|_|dur.||_dSdS)N,) r%r&r'r(r)r*item_separator key_separatorr,) selfr%r&r'r(r)r*r+r,rrr__init__hs( zJSONEncoder.__init__cCs td|jjd)NzObject of type z is not JSON serializable) TypeError __class____name__)r0orrrr,szJSONEncoder.defaultcCsP t|tr|jr t|St|S|j|dd}t|ttfs#t|}d|S)NT) _one_shot) isinstancestrr&rr iterencodelisttuplejoin)r0r5chunksrrrencodes  zJSONEncoder.encodec Cs |jri}nd}|jrt}nt}|jtjtt fdd}|r.floatstrr)r'r&rrr(float__repr__INFINITYc_make_encoderr*r,r/r.r)r%_make_iterencode)r0r5r6markers_encoderrC _iterencoderrrr:s.        zJSONEncoder.iterencode)F) r4 __module__ __qualname__r.r/r1r,r?r:rrrrr$Is 8r$csdur s d fdd  fdd fddS)N c 3s|sdVdSdur |}|vrd||<d}dur5|d7}d|}|}||7}nd}}d}|D]s}|rDd}n|} |rS||Vq=|dur]|dVq=|durg|d Vq=|durq|d Vq= | r~||Vq= | r||Vq=|V |fr||}n | r||}n||}|EdHq=|dur|d8}d|Vd Vdur̈|=dSdS) Nz[]Circular reference detected[r TFnulltruefalse]r) Zlst_current_indent_levelmarkeridZbufnewline_indentZ separatorfirstvaluer>)r@rJ _floatstr_indent_intstr_item_separatorrK_iterencode_dict_iterencode_listdictrDidintr8r;rIr9r<rrr`s`              z*_make_iterencode.._iterencode_listc 3s(|sdVdSdur|}|vrd||<dVdur5|d7}d|}|}|Vnd}}d} rDt|}n|}|D]\}}|rTn5| r^|}n+|dured}n$|durld }n|dursd }n|r}|}n rqJtd |jj|rd}n|V|V V|r|VqJ|durd VqJ|durdVqJ|durd VqJ|rLj|VqJ| r҈|VqJ|fr߈||} n| r||} n||} | EdHqJ|dur|d8}d|Vd Vdur|=dSdS) Nz{}rO{rQr TrSFrTrRz0keys must be str, int, float, bool or None, not })sorteditemsr2r3r4) ZdctrVrWrXr.rYrgkeyrZr>)r@rJr[r\r]r^rKr_r`_key_separator _skipkeys _sort_keysrarDrbrcr8r;rIr9r<rrr_Ms                      z*_make_iterencode.._iterencode_dictc3s |r |VdS|durdVdS|durdVdS|dur(dVdS | r4|VdS | r@|VdS | frQ||EdHdS |r`||EdHdSdurt |}|vrpd||<|}||EdHdur|=dSdS)NrRTrSFrTrOr)r5rVrW)r@_defaultrJr[r]rKr_r`rarDrbrcr8r;rIr9r<rrrKs6        z%_make_iterencode.._iterencoder)rIrlrJr\r[rir^rkrjr6r@rarDrbrcr8r;r9r<r]r)r@rlrJr[r\r]r^rKr_r`rirjrkrarDrbrcr8r;rIr9r<rrHs .48,PrH)#reZ_jsonrZc_encode_basestring_ascii ImportErrorrZc_encode_basestringrrGcompilerr"ZHAS_UTF8rrangei setdefaultchrrrDrFrr#objectr$r@rarbrcr8r;r9r<rErHrrrrsb        >