U if0 @ s d dl Z d dlmZ zd dlmZ W n ek r< dZY nX ddgZe je j B e j B ZedZ edZedZG d d deZeee d Ze deZdd dddddddZdd ZdeejfddZepeZe deZdZdejefddZejefddZG d d deZdS )! N)scanner) scanstringJSONDecoderJSONDecodeErrornaninfz-infc @ s e Zd Zdd Zdd ZdS )r c C sb | dd|d }||dd| }d||||f }t| | || _|| _|| _|| _|| _d S )N r z%s: line %d column %d (char %d)) countrfind ValueError__init__msgdocposlinenocolno)selfr r r r r errmsg r 1/opt/alt/python38/lib64/python3.8/json/decoder.pyr s zJSONDecodeError.__init__c C s | j | j| j| jffS N) __class__r r r )r r r r __reduce__* s zJSONDecodeError.__reduce__N)__name__ __module____qualname__r r r r r r r s )z -InfinityZInfinityNaNz(.*?)(["\\\x00-\x1f])"\/r )r r r bfnrtc C sb | |d |d }t |dkrN|d dkrNzt|dW S tk rL Y nX d}t|| |d S )Nr ZxX zInvalid \uXXXX escape)lenintr r )sr escr r r r _decode_uXXXX; s r1 Tc C s g }|j }|d }|| |}|d kr0td| || }| \} } | rP|| | dkr^qn.| dkr|rd| }t|| |n || qz| | }W n" tk r td| |d Y nX |dkrz|| } W n* tk r d|}t|| |Y nX |d7 }nt| |}|d7 }d | kr2d krn n`| ||d dkrt| |d }d | krrdkrn n d|d d> |d B }|d7 }t|} || qd ||fS )Nr zUnterminated string starting atr r z"Invalid control character {0!r} atuzInvalid \escape: {0!r}r* i i z\ui i i ) appendr endgroupsformat IndexErrorKeyErrorr1 chrjoin)r/ r8 strictZ_b_mZchunks_appendZbeginchunkZcontent terminatorr r0 charZuniZuni2r r r py_scanstringE sX 2 rE z [ \t\n\r]*z c C s | \}} g } | j }|d kri }|j}|| | d } | dkr| |krb||| } || | d } | dkr|d k r|| }|| d fS i } |d k r|| } | | d fS | dkrtd|| | d7 } t|| |\}} |||}|| | d dkr"||| } || | d dkr"td|| | d7 } z:|| |krb| d7 } || |krb||| d } W n tk rz Y nX z||| \}} W n4 tk r } ztd||jd W 5 d }~X Y nX |||f z0|| } | |kr||| d } || } W n tk r d} Y nX | d7 } | dkr4qn| d krNtd || d ||| } || | d } | d7 } | dkrtd|| d q|d k r|| }|| fS t| } |d k r|| } | | fS )Nr r }z1Expecting property name enclosed in double quotes:zExpecting ':' delimiterExpecting valuer6 ,Expecting ',' delimiter) r7 setdefaultr8 r r r; StopIterationvaluedict) s_and_endr? scan_onceobject_hookobject_pairs_hookmemo_w_wsr/ r8 ZpairsZpairs_appendZmemo_getnextcharresultkeyrM errr r r JSONObject s " rZ c C st | \}}g }|||d }||krF|||d }|||d }|dkrZ||d fS |j}z|||\} }W n2 tk r } ztd|| jd W 5 d } ~ X Y nX || |||d }||kr|||d }|||d }|d7 }|dkrqln|dkrtd||d z:|| |krP|d7 }|| |krP|||d }W q` tk rh Y q`X q`||fS )Nr ]rH rI rJ )r8 r7 rL r rM r; )rO rP rT rU r/ r8 valuesrV rA rM rY r r r JSONArray s> " r] c @ s<