o [dy @shdZddlZzddlmZWn eydZYnwdgZedejej Bej BZ ddZ ep1e ZdS)zJSON token scanner N) make_scannerrz)(-?(?:0|[1-9]\d*))(\.\d+)?([eE][-+]?\d+)?c sv|j |j|j tj|j |j|j|j|j |j |j  f ddfdd}|S)Ncsz||}Wn tyt|dw|dkr ||d S|dkr0 ||df S|dkr=||dfS|dkrQ|||ddkrQd|dfS|dkre|||dd kred |dfS|d kry|||d d kryd|d fS||}|dur|\}}}|s|r||pd|pd}n|}||fS|dkr|||ddkrd|dfS|dkr|||ddkrЈd|dfS|dkr|||ddkrd|dfSt|)N"{[nnullttrueTffalseFNNaNIInfinity- z -Infinity) IndexError StopIterationgroupsend)stringidxnextcharmintegerfracexpres _scan_once match_numbermemo object_hookobject_pairs_hook parse_arrayparse_constant parse_float parse_int parse_object parse_stringstrict#/usr/lib/python3.10/json/scanner.pyr%sB        z#py_make_scanner.._scan_oncecs z ||WSw)N)clear)rr)r%r'r1r2 scan_onceAs z"py_make_scanner..scan_once) r.r*r/ NUMBER_REmatchr0r,r-r+r(r)r')contextr4r1r$r2py_make_scanners"%r8) __doc__re_jsonrc_make_scanner ImportError__all__compileVERBOSE MULTILINEDOTALLr5r8r1r1r1r2s  :