Kv\SSKrSSKJrJrJr SSKJr Sr"SS5rSrSr S r \ S :XaSS K J r \ "S S S9 gg)N) StringVar BooleanVarTclError) messageboxc\[US5(d[U5UlUR$)N _searchengine)hasattr SearchEnginer)roots ;/opt/alt/python313/lib64/python3.13/idlelib/searchengine.pygetr s* 4 ) ))$/   c~\rSrSrSrSrSrSrSrSr Sr S r S r S r S rSSjrSSjrSSjrSSjrSrg )r cXl[US5Ul[US5Ul[US5Ul[US5Ul[US5Ul[US5Ulg)NFT) r rpatvarrrevarcasevarwordvarwrapvarbackvar)selfr s r __init__SearchEngine.__init__s]  b) e, !$. !$. !$- !$. rc6URR5$N)rr rs r getpatSearchEngine.getpat%s{{  rc:URRU5 gr)rsetrpats r setpatSearchEngine.setpat(s rc6URR5$r)rr rs r isreSearchEngine.isre+szz~~rc6URR5$r)rr rs r iscaseSearchEngine.iscase.||!!rc6URR5$r)rr rs r iswordSearchEngine.isword1r-rc6URR5$r)rr rs r iswrapSearchEngine.iswrap4r-rc6URR5$r)rr rs r isbackSearchEngine.isback7r-rc|UR5(a[R"U5nURU5 gr)r(reescaper%r#s r setcookedpatSearchEngine.setcookedpat<s( 99;;))C.C CrcUR5nUR5(d[R"U5nUR 5(aSU-nU$)Nz\b%s\b)rr(r8r9r/r#s r getcookedpatSearchEngine.getcookedpatCs>kkmyy{{))C.C ;;==c/C rcUR5nU(dURUS5 gUR5nSnUR5(dU[R -n[R "X5nU$![Ra0nURXRUR5 SnAgSnAff=f)NzEmpty regular expressionr) r report_errorr=r+r8 IGNORECASEcompile PatternErrormsgpos)rr$flagsproges r getprogSearchEngine.getprogKskkm   c#= >!{{}}BMM)E ::c)D     c55!%% 0 s&A>>C&B==CNcS[U5-nU(aUS-[U5-nUbUS-[U5-n[R"SX RS9 g)NzError: z Pattern: z Offset: zRegular expression error)master)strr showerrorr )rr$rDcols r r@SearchEngine.report_error\sV#c("  %C0C ? $s3x/C7"99 6rcpU(dUR5nU(dgURR5n[U5upVUR 5(a.U(aUnOUn[ U5upUR XXXC5n U $U(aUnOUn[ U5upURXXXC5n U $r)rIrr get_selectionr5 get_line_colsearch_backwardsearch_forward) rtextrGokwrapfirstlaststartlinerOress r search_textSearchEngine.search_textfs$<<>D||!#D)  ;;==$U+ID&&t4dGC $U+ID%%d$TFC rcSnUnURSU-SUS--5n U (aURU SSU5n U (aU(dU R5U:aX:4$US-nU(aX8:agSnSnURSU-SUS--5n U (dU(aSnSnSnURSS5n U (aMg)Nr%d.0z1.0z2.0)r searchend) rrVrGr\rOrXrWwrapped startlinecharsms r rUSearchEngine.search_forwards $$q&(9: E#2J,A37N!8D4+CBHHVd]Fd1f,=>ET.e rcSnUnURSU-SUS--5n [X)SSU5n U (aU(dU R5U:aX:4$US- nU(aX8:agSnUS::a?U(dgSnSnURS5n [ [ U R S55up4URSU-SUS--5n [U 5S- nM)Nrrarbrczend-1c.)r search_reverser[indexmapintsplitlen) rrVrGr\rOrXrWrfrgrhrirEs r rTSearchEngine.search_backwards $$q&(9:t3BZ5AS7N!8D4+Bqy jj*SYYs^4 HHVd]Fd1f,=>Ee*q.C#r)rrrrr rrr)Nr)r)__name__ __module__ __qualname____firstlineno__rrr%r(r+r/r2r5r:r=rIr@r^rUrT__static_attributes__rr r r sN /! """" "6&P,rr cURU5nU(dgSnUR5upVXR:aJXb::aEUnXV:XaUS-nURX5nU(dU$UR5upVXR:aXb::aMEU$)Nrb)rdspan)rGrhrOrifoundijs r rmrms EA  E 668DA 'ah 6!A KK !  Lvvx 'ah LrcURS5nURS5nU(dURS5nU(dUnX4$![a S=pN3f=f)Nz sel.firstzsel.lastinsert)rnr)rVrYrZs r rRrRsa ;'zz*%  8$  ; s"A AAcJ[[URS55upX4$)Nrl)rorprq)rnr\rOs r rSrSs!CS)*ID 9r__main__)mainz#idlelib.idle_test.test_searchengine) verbosity)r8tkinterrrrrr r rmrRrSrtunittestrryrr rsO 33 ggT.   z .!<r