Jz`fJcs@SSKrSSKrSSKJrJrJrJrJrJrJ r J r J r J r J r JrJrJr SSKJr SSKJr /SQrSr"SS5r"S S \5r\"S \5 "S S \5r\"S \5 "SS\5r\"S\5 "SS5r"SS5r"SS5rg)N)Errorwriterreaderregister_dialectunregister_dialect get_dialect list_dialectsfield_size_limit QUOTE_MINIMAL QUOTE_ALLQUOTE_NONNUMERIC QUOTE_NONE QUOTE_STRINGS QUOTE_NOTNULL)Dialect)StringIO)r r r r r rrrexcel excel_tabrrrrrrSnifferr DictReader DictWriter unix_dialectz1.0csD\rSrSrSrSrSrSrSrSr Sr Sr Sr Sr SrSrg)riXFNcsZUR[:waSUlUR5 g)NT) __class__r_valid _validateself /usr/lib64/python3.13/csv.py__init__ZDialect.__init__ks >>W $DK csj[U5 g![an[[U55SeSnAff=fN)_Dialect TypeErrorrZstr)rZe rrZDialect._validateps. * TN *A-T ) *s  2-2)rr)__name__ __module__ __qualname____firstlineno___namer delimiter quotecharZ escapechar doublequoteskipinitialspacelineterminatorquotingrr__static_attributes__r rrrXs< E FIIJKNG *r rc,\rSrSrSrSrSrSrSr\ r Sr g) riw,"TF r1N) r%r&r'r(r*r+r,r-r.r r/r0r1r rrrws!IIKNGr rcs\rSrSrSrSrg)ri r1N)r%r&r'r(r*r0r1r rrrsIr rz excel-tabcr2) rir3r4TF r1N) r%r&r'r(r*r+r,r-r.r r/r0r1r rrrs!IIKNGr rZunixcs\rSrSrS SjrSr\S5r\RS5rSr \ "\ R5r Srg) riNcsUb[U5ULa [U5nX lX0lX@l[ X/UQ70UD6UlXPlSUlgNr)iterlist _fieldnamesrestkeyrestvalrdialectline_num)rf fieldnamesr<r=r>argskwds rrZDictReader.__init__sP  !d:&6*&Dj)J%  Q7$7$7   r csU$r!r1rrr__iter__ZDictReader.__iter__s r csURc[UR5UlURRUlUR$![a N3f=fr!)r;nextrZ StopIterationr?rrrrADictReader.fieldnamessW    # #' #4  ,, !  sA AAcsXlgr!)r;)rZvaluer$rrArGs r csURS:Xa UR [UR5nURRUlU/:Xa[UR5nU/:XaM[ [ URU55n[ UR5n[ U5nX4:aXSX R'U$X4:a$URUSHnURX%'M U$r8) r?rArFrdictziplenr<r=)rrowdZlfZlrkeys r__next__ZDictReader.__next__s ==A  OO4;; ,, Rit{{#CRi T__c* +  ! X 7!#hAllOWrs+ & &r )rr>r?r;r=r<rA)NNNr)r%r&r'r(rrEZpropertyrAZsetterrN classmethodtypes GenericAlias__class_getitem__r0r1r rrrsXAE    !!,$E$6$67r rcs^\rSrSrS SjrSrSrSrSr\ "\ R5r Sr g) ricsUb[U5ULa [U5nX lX0lUR 5nUS;a[ SU-5eX@l[X/UQ70UD6Ulg)N)raiseZignorez-extrasaction (%s) must be 'raise' or 'ignore')r9r:rAr=Zlower ValueError extrasactionr)rr@rAr=rUr>rBrCrDrrZDictWriter.__init__ss  !d:&6*&Dj)J$ #))+ 2 2L+,- -(Q7$7$7 r csv[[URUR55nURU5$r!)rHrIrAwriterow)rheaderr$r writeheaderZDictWriter.writeheaders*c$//4??;<}}V$$r c s^^TRS:XaZTR5TR- nU(a6[SSR UVs/sHn[ U5PM sn5-5eUU4SjTR5$s snf)NrSz(dict contains fields not in fieldnames: z, c3sZ># UH!nTRUTR5v M# g7fr!)getr=).0rMrowdictrs r Z+DictWriter._dict_to_list..s"J3 C..Js(+)rUkeysrArTZjoinZrepr)rr[Z wrong_fieldsxs`` r _dict_to_listZDictWriter._dict_to_listsp    '"<<>DOO;L !K#'99|-L!d1g-L#M"NOOJ$//JJ.Ms BcsVURRURU55$r!)rrVr_)rr[r$rrVZDictWriter.writerows"{{##D$6$6w$?@@r cs`URR[URU55$r!)r writerowsZmapr_)rZrowdictsr$rr`ZDictWriter.writerowss${{$$S););X%FGGr )r_r=rArUrN)rrSr)r%r&r'r(rrXr_rVr`rOrPrQrRr0r1r rrrs7?F  8%KAH$E$6$67r rcs6\rSrSrSrS SjrSrSrSrSr g) rics/SQUlg)N)r3r6Z;Z Z: preferredrrrrZSniffer.__init__s 3r NcsURX5up4pVU(dURUU5upVU(d [S5e"SS[5nXGlXWlU=(d SUlXglU$)NzCould not determine delimitercs \rSrSrSrSr\rSrg)zSniffer.sniff..dialectiZsniffedr5r1N) r%r&r'r(r)r.r r/r0r1r rr>ZSniffer.sniff..dialectsE#N#Gr r>r4)_guess_quote_and_delimiter_guess_delimiterrrr,r*r+r-)rsample delimitersr+r,r*r-r>rDrsniffZ Sniffer.sniffsz 226F < *.*?*?@J+L 'I78 8 $g $ *%%,#3 r csr/nSHSn[R"U[R[R-5nUR U5nU(dMS O U(dg0n0nSnWR n UHyn U SS- n Xn U (aUR U S5S-Xl'U SS- n Xn U (aUbX;aUR U S5S-X|'U SS- n X(dMtUS- nM{ [XfR S9n U(a#[XwR S9nX~U:HnUS :XaS nOS nSn[R"S [R"U5U S .-[R5nURU5(aS nOSnU UX4$![a GM+f=f![a GM=f=f)N)zI(?P[^\w\n"\'])(?P ?)(?P["\']).*?(?P=quote)(?P=delim)zG(?:^|\n)(?P["\']).*?(?P=quote)(?P[^\w\n"\'])(?P ?)zG(?P[^\w\n"\'])(?P ?)(?P["\']).*?(?P=quote)(?:$|\n)z-(?:^|\n)(?P["\']).*?(?P=quote)(?:$|\n))rFNrrquotedelimZspacerMr7rz]((%(delim)s)|^)\W*%(quote)s[^%(delim)s\n]*%(quote)s[^%(delim)s\n]*%(quote)s\W*((%(delim)s)|$))rjrhTF) reZcompileZDOTALLZ MULTILINEZfindall groupindexrYZKeyErrormaxZescapeZsearch)rdatarfZmatchesZrestrZregexpZquotesdelimsZspacesrmZmZnrMr+rjr-Z dq_regexpr,s rrcZ"Sniffer._guess_quote_and_delimitersH EZZryy2<<'?@FnnT*Gw '&&  A7#a'A$C$jja014  w'!+d *c.?$jja014  w'!+tt! # &JJ/ JJ/E%}6 }E JJ(* %(8)L MNPll\   D ! !KK;@@I     s$& FF' F$#F$' F65F6cs[[SURS555n[S5Vs/sHn[ U5PM nn[ S[ U55nSn0n0n0n SUpU [ U5:GaUS- nXU HJn UHAn URU 05nU RU 5nURUS5S-X'XU 'MC ML UR5Hn [X}R55n[ U5S:XaUSSS:XaM;[ U5S:aE[USS9X'URX5 XSXS[SU55- 4X'MUSX'M UR5n[[ XV-[ U555nS nS n[ U 5S:XabUU:a\UH:unnUSS:dMUSS:dMUSU- U:dM*UbUU;dM5UU U'M< US -n[ U 5S:XaUU:aM\[ U 5S:XaL[U R55SnUSRU5USRS U-5:HnUU4$U n X- n U [ U5:aGMU (dg [ U 5S:aYURHInUU R5;dMUSRU5USRS U-5:HnUU4s $ U R5VVs/sH unnUU4PM nnnUR!5 USSnUSRU5USRS U-5:HnUU4$s snfs snnf)Nr7ii rrics US$)Nrir1)r^rrZZ*Sniffer._guess_delimiter..s 1Q4r rkc3s(# UH oSv M g7f)riNr1)rZZitemr$rr\Z+Sniffer._guess_delimiter..s(CTa(Csg?g?g{Gz?z%c )rri)r:ZfilterZsplitrangeZchrZminrJrYZcountr]itemsrnZremoveZsumZfloatrbZsort)rrorfZcZasciiZ chunkLengthZ iterationZ charFrequencyZmodesrpZstartZendZlineZcharZ metaFrequencyZfreqrrZmodeListZtotalZ consistencyZ thresholdZkZvrjr-rLs rrdZSniffer._guess_delimiter]s&F4D!123!&s,AQ,,"c$i(    sc$i NI3 8!8D$1$5$5dB$?M::d+D*7*;*;D!*Dq*HM'*7$' 8 8&**, +]06689u:?uQx{a'7u:>"%e"@EKLL-#(;q>5;q>%((CU(C%C4D#EEK#((EK + {{}H#k5s4yABEKIf+"{i'?$*DAqtaxAaD1HqT%ZK7'/1 ?()F1I * t# f+"{i'?6{aV[[]+A.$(GMM%$8$(GMM%%-$@%A /00E  Ccc$if v;?^^ 1 %(,Q a(8(,Q eai(@)A$/00  1%+LLN35Aa!A33 b !  GMM%0 GMM%%-89'((_-R4s M/M4cs[[U5URU55n[U5n[ U5n0n[ U5HnSXV'M SnUHinUS:a ObUS- n[ U5U:waM![ UR55H+n [n U "X5 XU :wdMXYcXU 'M)XY M- Mk Sn UR5HIup[U [5(a[ X95U :waU S- n M2U S-n M9U "X95 U S-n MK U S:$![[4a [ X5n Nf=f![[4a U S- n Mf=f)Nriri)rrrgrFrJrqr:r]ZcomplexrTZ OverflowErrorrrZ isinstanceZintr#) rreZrdrrWZcolumnsZ columnTypesZiZcheckedrKZcolZthisTypeZ hasHeaderZcolTypes r has_headerZSniffer.has_headersXf%tzz&'9:cf+ w6A$6 -C| qLG3x7"K,,./ -"-SX& 3//"'/+3C((, - -6 '--/ #LC'3''v{#w.NINI#FK(NI #1};#M2-"38}H-0#I.#NI#s$ D( E (EE E$#E$rar!) r%r&r'r(rrgrcrdrsr0r1r rrrs 4 :IAXd)N=r r)rlrPZ_csvrrrrrrrrr r r r r rrr"ZiorZ__all__Z __version__rrrrrrr1r rrtsD .... %  **>G% i(7&3838l 8 8FWWr