E,bi)4SSKrSSKrSSKrSSKJr SSKJr /SQr"SS5rSSjr Sr \R"S \R5RrS rS r\S :XaT\"\R&5S :Xa\"\"55 g\R&S r\"\5r\"\"\\55 SSS5 gg!,(df  g=f)N)deque)StringIO)shlexsplitquotejoincp\rSrSrSSjr\S5rSrSSjrSr Sr S r S r SS jr S rS rSrg)rNc&[U[5(a [U5nUb XlX lO[ R UlSUlX0lU(aSUlOSUlSUl SUl UR(aU=RS- sl SUl SUl SUl SUlS UlS Ul[#5UlS UlS UlSUl[#5UlSUlU(dSnOUS LaSnX@lU(as[#5UlU=RS- sl URR5[6R9U55nURR;U5Ul gg)N#?abcdfeghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_u|ßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýþÿÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞz Fz'"\" rTz();<>|&z~-./*?=) isinstancestrrinstreaminfilesysstdinposixeof commenters wordchars whitespacewhitespace_splitquotesescape escapedquotesstaterpushbacklinenodebugtoken filestacksource_punctuation_chars_pushback_chars maketransdictfromkeys translate)selfrrrpunctuation_charsts ,/opt/alt/python313/lib64/python3.13/shlex.py__init__shlex.__init__sI h $ $)H  $M KIIDMDK DHDHB :: NN ^ _N# %          "  $ & ) "3 #(7D NNi 'N((7H)IJA!^^55a8DN cUR$N)r)r/s r2r0shlex.punctuation_charsDs&&&r5cURS:a[S[U5-5 URR U5 g)Nrzshlex: pushing token )r%printreprr# appendleft)r/toks r2 push_tokenshlex.push_tokenHs1 ::? )DI5 6   %r5cr[U[5(a [U5nURR UR UR UR45 X lXlSUlUR(a7Ub[SUR <35 g[SUR <35 gg)Nrzshlex: pushing to file zshlex: pushing to stream ) rrrr'r=rrr$r%r;)r/ newstreamnewfiles r2 push_sourceshlex.push_sourceNs i % % +I !!4;; t{{"KL !  ::"T[[BCt}}FG r5c URR5 URR5uUlUlUlUR (a$[SURUR 4-5 SUlg)Nzshlex: popping to %s, line %dr) rcloser'popleftrr$r%r;r"r8s r2 pop_sourceshlex.pop_source\s_ 48NN4J4J4L1dmT[ :: 1]]DKK01 2 r5cUR(aCURR5nURS:a[S[ U5-5 U$UR 5nUR bkX R :Xa\URUR 55nU(aUupEURXT5 UR5nX R :XaM\X R:XaNUR(d UR$UR5 UR5nX R:XaMNURS:a3X R:wa[S[ U5-5 U$[S5 U$)Nrzshlex: popping token z shlex: token=zshlex: token=EOF) r#rHr%r;r< read_tokenr( sourcehookrD get_tokenrr'rI)r/r>rawspecrCrBs r2rNshlex.get_tokenes ==--'')CzzQ-S 9:Joo ;; "$t'89+/(W$$Y8nn& $XXo>>xx!nn& XXo ::?hhoS 12 () r5c,SnSnUR(a,UR(aURR5nOURR S5nUS:XaU=R S- slUR S:a[SUR<SU<35 URc S Ul GOURS:XGaU(d SUlGOX0R;aIUR S :a [S 5 UR(dUR(a U(aGOtGM0X0R;a1URR5 U=R S- slGO.UR(aX0R;a S nX0lGOX0R;aX0l S UlGOX0R;aX0l S UlGOX0R ;aUR(dX0l X0lGOUR"(aX0l S UlGOzX0l UR(dUR(a U(aGOLGMXURUR ;aSnU(d&UR S :a [S5 [%S5eX0R:Xa8UR(dU=RU- sl SUlGOS UlGOUR(a=X0R;a.URUR&;aURnX0lGOhU=RU- sl GOQURUR;aU(d&UR S :a [S5 [%S5eX R ;a3X0R:wa$X2:waU=RUR- sl U=RU- sl X lGOURS;GaU(d SUlGOX0R;aPUR S :a [S5 SUlUR(dUR(a U(aGO1GMsX0R;awURR5 U=R S- slUR(a5SUlUR(dUR(a U(aGOGMGOURS :XaYX0R;aU=RU- sl GOoX0R;aURR)U5 SUlGO?UR(aX0R ;aX0lGOUR(aX0R;a S nX0lOX0R;d/X0R ;d UR"(a%X0R;aU=RU- sl OUR(aURR)U5 OUR*R-U5 UR S :a [S5 SUlUR(dUR(aU(aOGMGMURnS Ul UR(aU(dUS :XaSnUR S:a+U(a[S[/U5-5 U$[S5 U$)NFrTr zshlex: in state z I see character: r z+shlex: I see whitespace in whitespace stateacz shlex: I see EOF in quotes statezNo closing quotationz shlex: I see EOF in escape statezNo escaped character)rVrWz%shlex: I see whitespace in word statez&shlex: I see punctuation in word statezshlex: raw token=zshlex: raw token=EOF)r0r*poprreadr$r%r;r"r&rrrreadliner rrr ValueErrorr!appendr#r=r<)r/quoted escapedstatenextcharresults r2rLshlex.read_tokens %%$*>*>//335==--a04 q zzQ$**BJLMzz! s"!%DJ0zzQKLzzdjjV 0MM**,KK1$KZZH $;#&L!)J/!)J!$DJ!7!77!)J!$DJ,::%- !)J**!)J!$DJ!)JzzdjjV t{{*zzQ@A$%;<<zz):: h. %( %( jjX%<++B,#'::L!)JJJ(*Jt{{*zzQ@A$%;<<!KK/ JJ.83KJJ$**,J h& ) z)!%DJ0zzQEF!$DJzzdjjV 0MM**,KK1$Kzz%( ::$**!$ " ZZ3&#9#99 h. #??: 0077A%( ZZH $;!)JZZH $;#&L!)J..0H 4K//"*@*@@JJ(*J--,,33H= 00:zzQFG!$DJzzdjjV GH ::f2F ::>)DL89 ,- r5cNUSS:XaUSSn[UR[5(ak[RR U5(dG[RR [RRUR5U5nU[US54$)Nrrrr) rrrospathisabsrdirnameopen)r/rCs r2rMshlex.sourcehookss 1: amG dkk3 ' ' g0F0Fggll277??4;;#?IGgs+,,r5cJUc URnUc URnSX4-$)Nz"%s", line %d: )rr$)r/rr$s r2 error_leadershlex.error_leader s, >[[F >[[F"f%555r5cU$r7r8s r2__iter__shlex.__iter__(s r5cPUR5nXR:Xa[eU$r7)rNr StopIteration)r/r&s r2__next__shlex.__next__+s#  HH   r5)r)r*rr%rr r!r'rrr$rr#rr(r"r&rrr)NNFFr7)NN)__name__ __module__ __qualname____firstlineno__r3propertyr0r?rDrIrNrLrMrlrprt__static_attributes__ror5r2rrsS9>#(-9^''& H@Pd-6r5rcpUc [S5e[XS9nSUlU(dSUl[ U5$)Nzs argument must not be None)rTr )r[rrrlist)scommentsrlexs r2rr1s9y677  CC  9r5c2SRSU55$)Nrc38# UHn[U5v M g7fr7)r).0args r2 join..>s8-3E#JJ-s)r) split_commands r2rr<s 888-8 88r5z[^\w@%+=:,./-]c^U(dg[U5cU$SURSS5-S-$)Nz'''z'"'"') _find_unsafereplace)r~s r2rrCs4 A 3 * *S 00r5cUR5=n(a1[S[U5-5 UR5=n(aM0gg)NzToken: )rNr;r<)lexertts r2 _print_tokensrOs<! !" ! i$r("#! !" ! !r5__main__r)FT)rerer collectionsrior__all__rrrcompileASCIIsearchrrrrvlenargvfnrifror5r2rs  -\\|9 zz+RXX6==  1$ z 388}eg XXa[ "X %2, 'X  Xs B77 C