a
    cy	                     @   sh   d Z ddlZzddlmZ W n ey2   dZY n0 dgZedejej	B ej
B Zdd ZepbeZdS )zJSON token scanner
    N)make_scannerr   z)(-?(?:0|[1-9]\d*))(\.\d+)?([eE][-+]?\d+)?c                    sv   | j 	| j| j
tj| j| j| j| j| j	| j
| j 	
fdd  fdd}|S )Nc                    s  z| | }W n t y(   t|d Y n0 |dkrB
| |d S |dkrd	| |d f S |dkr~| |d f S |dkr| ||d  dkrd |d fS |dkr| ||d  d	krd
|d fS |dk r| ||d  dk rd|d fS | |}|d urZ| \}}}|s(|rF||p4d |p>d }n|}|| fS |dkr| ||d  dkrd|d fS |dkr| ||d  dkrd|d fS |dkr| ||d  dkrd|d fS t|d S )N"   {[n   ZnullttrueTf   falseF N   NaNI   Infinity-	   z	-Infinity)
IndexErrorStopIterationgroupsend)stringidxnextcharmintegerfracexpres
_scan_onceZmatch_numbermemoobject_hookobject_pairs_hookparse_arrayparse_constantparse_float	parse_intparse_objectparse_stringstrict ]/home/jack/SDK/XuTao-WR3000-OpenWrt-21.02/build_dir/hostpkg/Python-3.9.16/Lib/json/scanner.pyr$      s@     

   z#py_make_scanner.<locals>._scan_oncec                    s$   z | |W    S    0 d S )N)clear)r   r   )r$   r%   r/   r0   	scan_onceA   s
    
z"py_make_scanner.<locals>.scan_once)r,   r(   r-   	NUMBER_REmatchr.   r*   r+   r)   r&   r'   r%   )contextr2   r/   r#   r0   py_make_scanner   s    "%r6   )__doc__re_jsonr   Zc_make_scannerImportError__all__compileVERBOSE	MULTILINEDOTALLr3   r6   r/   r/   r/   r0   <module>   s   
: