rustG#rustc 1.72.0 (5680fa18f 2023-08-23) }ޱL{ :-8f88c761e33f2651ՆQ4-46a989d0e2cef827e$ɛDp>-b114db70ea0690b1rustc_std_workspace_core ūu sR-13da980d6c74fec5YnFmZܝ--649be05783c8912epWĪ9/-f002c8f83a289c4b &c~~*ĽVa-682387162b570769cfg_ifz$kdgK!--05a2cedbb78c1d4f miniz_oxidePnzn )m-9c3df673b2797081adlerA%lon  2-c6afbee8d1102512 hashbrown8*^| -356231f77d1e268arustc_std_workspace_allocL%gqG-80ed5799bf463787 std_detecta^Ʒc -1bccb7a942e1b311rustc_demanglekŗ,N/ST%L)-bc6864da821ce9a2 addr2line2Ȃ']51:.-4930b3dc482158f7gimli~2)F25˼-65bea4bb6af40828object^]UVW-919f89587cbed68dmemchrk/YO+-c6624cb4360306cdBhnge],Q-f9018f9cee1cc5fftests   findbyteset_create byteset_containsmaximal_suffixrange        'aemptyis_empty len_bytes substringgetsplit_atchars starts_with ends_with   !  RangeBounds# try_index# &  (  *  ,   8'tmp8 8'b8text8 grow_left= 8 grow_right? 8 shift_leftA 8 shift_rightC 8for_eachdiffF SolutionH H Htext1Htext2HdiffsN N computeQ Q bisectT T  bisect_splitW W  common_prefix common_suffixcommon_overlapcleanup_char_boundary]is_segmentation_boundary] boundary_down] boundary_up] skip_overlapa cleanup_semanticc cleanup_semantic_losslesscleanup_semantic_score cleanup_mergehj l lll q  s sChunkv v~x x vDelete{ { vInsert~ ~       Diff  ~             777 7 777 7 77  7 7 7  7!7"7<7=7?7A7C7E7E E7E7Z7Z7[7[7\7\7]7]7]7^7_7`7a7a7c7c7c7e7e7e7f7f7g7g7g7h7i7i7i7j7j7k7k7k7u777777#llnop,C7tr llnop,C7tt llnop,C7t7 # J;((m# CxKĮ#``t#ײײز _@z/vxy~z {|} ~ E۹{ ~ vxy~z {|} ~ E۹{ ~ vxy~z {|} ~ E۹{ ~ vxy~z {|} ~ E۹{ ~ vxy~z {|} ~ E۹{ ~ vxy~z {|} ~ E۹{ ~ ~    ;P'  ~    ;P'  Gvxy~z {|} ~ E۹{ ~7G~    ;P'77,ײ*&(vvhvjvvslv!lvql#hG ;;; ;?$;;@$; ;; ;$; ;;%; $;  $ $;%$;&;;$;$;$;;a;ch;;%qvuqqqllnop,C7tq 'qqq  %impl RangeBounds lU ' )) bounds) +    g l  '()+ ++  $)EE  {-P+EE E l+  +      EEF  {-P' {-P,k4E  g l m '   FF3 ()l c uty4+E1F+'g /++ F4        )    impl AsRef<[char]>   )  W     w w  ( : + )+ ' + +  :  prefix  w   9  '   :   '  W     s s  ( : + '+ ' + + <  suffix  s   9  : #   # s s  {-P ( : + + ' ++< needle  s       $D  !((%D  (   E GD +  G *, GvalueG formatterG1 2 7e*,  *,   G*,*, G   *,A,, A  A, %+D1D  D 7 A,IpiecesEEE4&w\NF*,E(H*, G*,K*,GIG E(( E(index out of range, index=E(, len=E((%E(E((vxy~z {|} ~ E۹{ ~ N             O     O     O      O     O ~EO ~E EE  OEOER OEOER           O O 7 7   OO 7 7 7 7 EWWWWWO O O O O O O O O O     __self_tag  __arg1_tag __self_0 __arg1_0 XXXX &O~    ;P' [ K  K >^ & >  llnop,C7t&K^ ' / /K^K^ increment K^_ref__increment K @& @___` /K_ K` K B!& B___!` /K!_ K!` K D!& D___!` /K!_ K!`   '  impl Fn(&mut Range)` ~'~'   i     i     '   i    Ed& [ i7``&  ii & mi `mi`mi range1range2  '“KKד)ד ד)“““ K ÔKÔ )p  )ܔ“>“>   “ “dd ''KKKKs' “>“ד)>)ÔKKKKlen_insertions1Klen_deletions1Klen_insertions2Klen_deletions2K last_equality _ref__len_insertions1_ref__len_deletions1_ref__len_insertions2_ref__len_deletions2 vyNE vyNE v|NE v|NE vNE vNE ['' ['' [' [' [' [' FHNQTWZ[\]cefgv   /l01!2%4pG5pG5xG6WriteG7 [![github]](https://github.com/dtolnay/dissimilar) [![crates-io]](https://crates.io/crates/dissimilar) [![docs-rs]](https://docs.rs/dissimilar)g [github]: https://img.shields.io/badge/github-8da0cb?style=for-the-badge&labelColor=555555&logo=githubjk [crates-io]: https://img.shields.io/badge/crates.io-fc8d62?style=for-the-badge&labelColor=555555&logo=rustnj [docs-rs]: https://img.shields.io/badge/docs.rs-66c2a5?style=for-the-badge&labelColor=555555&logo=docs.rsm
J ## Diff library with semantic cleanup, based on Google's diff-match-patchML This library is a port of the Diff component of [Diff Match Patch] to Rust.OI The diff implementation is based on [Myers' diff algorithm] but includesLH some [semantic cleanups] to increase human readability by factoring outK3 commonalities which are likely to be coincidental.6D Diff Match Patch was originally built in 2006 to power Google Docs.G # InterfaceK Here is the entire API of the Rust implementation. It operates on borrowedNI strings and the return value of the diff algorithm is a vector of chunksL- pointing into slices of those input strings.0  ```  pub enum Chunk<'a> {  Equal(&'a str),  Delete(&'a str),  Insert(&'a str),  }  $ # const IGNORE: &str = stringify! { '5 pub fn diff(text1: &str, text2: &str) -> Vec; 8 # };   ? [Diff Match Patch]: https://github.com/google/diff-match-patch BI [Myers' diff algorithm]: https://neil.fraser.name/writing/diff/myers.pdf L< [semantic cleanups]: https://neil.fraser.name/writing/diff/ ?       https://docs.rs/dissimilar/1.0.7 " ; FHNQTWZ[\]cefgv   /l01!2%4pG5pG5xG6G7  L @77 7 7BAhaystackB:(:7 7$:  :;%;3;$ byteset;%;?F?7 7+@ arr@ order_greater@   #l   p%G  p%G  ; A  L ײ L ز W %0/;5A A L L WW llnop,C7t   =  )()#)   )+7 7    7 7  9 7 7)(   )+;7 7) {-P(   )+ 2 7 7    mid  o 7 7       = 7 7:9 : :   : ;  ; 7 7:9     : >  ? 7 7:B9     : B %7llnop,C7t7 79 7"7 7 7!! "7, ##DDGD#ϩ$%$%9 D1##D,D+## %D&'8 1&& '%)8 1(( )#+8 1** +-8 1,, -'+ 9 : ;9:;: 9 ; 9 ~    ;P': ; <=?ACE7 7llnop,C7t9 88 <9 : ; ) 7 7&88 =9 : ; _ =>>>>=_* 7 7&88 ?9 : ; _ ?@@@@?b* 7 7&88 A9 : ; _ ABBBBAd+ 7 7&88 C9 : ; _ CDDDDCg.7 7i&8h8i77i 7llnop,C7t777i͹& E9 : ; iAG  G 444buf040bW`(vxy~z {|} ~ E۹{ ~G 666Global 7C\ w F  (( I JIJHH K L M _K8I J _K8KLM((((((HHllnop,C7tI ((HHllnop,C7tJ ))HH444040bW`(~    ;P'I J )O)O P llnop,C7tO llnop,C7tP HH K L M _K8O P ) N ) )))))3K3R S llnop,C7tR llnop,C7tS 444040bW`(~    ;P'R S 4 Q 4 44444?J?U V llnop,C7tU llnop,C7tV 444040bW`(~    ;P'U V ? T ? ?????_w_ X Y llnop,C7tX llnop,C7tY 444040bW`(~    ;P'X Y _ W _ _x_y_____b5b 77llnop,C7t7llnop,C7t7b Z b bd5d 77llnop,C7t7llnop,C7t7e [ d eh>h77llnop,C7t7llnop,C7t7h \ h hp1q777 7HH K L M _K877&q ]solutionqq=q7 7q ^qposqr3r 7 7s _rst1t 7 7t `ttv<v b 77 7llnop,C7tb 7&v aprevvvvvވ,777 7HH K L M _K877& ccddddcsѰ5԰777 7HH K L M _K877& e:77llnop,C7t7llnop,C7t7 fonetwo) 777 7HH K L M _K877& g7!iΌ<ь777 7! 7GGGEGEGEG EGEGEQ ! >S7   'w& z*hՌh i7֌F܌ 77!k<777 7! 7GGGEGEGEG EGEGEQ ! >S7jj k77ÏFɏ y mmllnop,C7tm ,C7tnopll m llllkkk.k rrqqq.q ttuqq7 7sqs ut q wwvxy~z {|} ~ E۹{ ~w E۹{ ~xy{|~yz w |}vv xw vv yw vvvv {w vv |w vvvv ~w vv w vv/ / 7 7     /     /    77 7 7    0 0 0 07 7&    ~    ;P'  ;P'llnop,C7t llnop,C7t                           1  1   7 7    :@  G I     Copiedit(хʒNNIterNMNMN_markerMjg(+   G I9 9 9 9             bbeehhqqqqstvvČՌ ԏޏ q8https://docs.rs/dissimilar#https://crates.io/crates/dissimilar/https://neil.fraser.name/writing/diff/myers.pdf*https://github.com/google/diff-match-patchǂ&https://neil.fraser.name/writing/diff/%https://github.com/dtolnay/dissimilarƒƒǂ0W ܂70Wk']d݊0Wc2̊0W(T0WO~J sf0Wё+I̊0W뇡b0W9'&0W 9SU0W`r󏊣0W֚j:0W;DP0Wt *Vϊ0WcW*e!0W0o%0WB+ኣ0WgMG0W`cc0W,rZW>0WLף_ي0WM0WSӗ-0W2i0W@NCE0W&G 0W55":ϊ0W]a>?0W8Z0Wc00W" ,8y0W ѯz&3Ċ0WC(⊣0W0N`۳0Wzx&S0W&iD0WaEFf4TZ0W}!*d0W@vtr|0W5sqGҊ0Wd"C0W%4K# 0W 0W 59a0W5>gۊ0Wl̐tږ0W@[lL0WOO*؊0Wz{}0WO>80W`-+`銣0WKPU0W>0WXrt0W[X0Wkq=@r0W@/L="0W\e1!0W'K80W Oσ0Wr @%@z0W#l芣0WT 60W60Wp =ګ)슣0W|PtlW"0WUi0Wvc8s⊣0Wr^? 0W?V J0W E䊊0WLNf0W  [犣0W>xc)0W,2A0K0WWo͏劣0W)OT=0W+P8\nN0Wr^`0W{i39\ኣ0W5pl0Wp15`܊0W5P⠿kU0WZA&0Wo<0WU &0W'Sψ<0W_0WLZ0WGl0WmDP 0W/|0WS4[B0WlXW1>0WHV=j@P0Wba/0WIl`h0W|-nVs?̊0W(I~w0WXb"e~0W_H3Q0WVF;?0WIs𠊣0W=30W |.i0W|7ىa0W7E](30Wdr:ϒ 0W#|Sω0Wh#0Wlcv2&0W0lvDg 0W]7GCʊ0WQBj0W)900WA/0WZj_ؠy0WZq>0WnfO0W筴ƴ0Wsuv0WZ 0W|0Wd|>/J0WO WI4Ŋ0W_lx80W 0WB#bC0WAGϊ0W:I8Ҋ0Wm]@0WV슣0W6.XՊ0W7\hL 0W1n늣0Wo?Cz0W@c畊0Wp/V/v] 0WCEOi0W画40WYCN+0WI5!0W1fc00WTl,B =0WB&6A؊0WCZ)~؊0WxCL"$늣0WVC}g70W熊0WR?z@0W;H8ъ0Wqu0W(Bъ0W +FNV^gpyʀӀ܀ !)19A^JJ6KhKK MMMoNN@OPPQQ+RRnSSS(TTU4UhUUUU$VNVV=WXXpYY4ZZZJ[[\]=^^_n_ab4defgKhhXiijjkklEmn0nkooppEqjqqq r^rrgssss,tRtqtttuhuuvfvv3ww4xxyGz{zzz {@{b{{{7||}Z}}}}CaQJJJaKKL~MM`NN"OOP QjQ RRaSSSTTT-U_UUUUVGVyVW{XXCYYZwZZ;[[\] ^^_e_ ab'defvg>hhKii jj~kksl7mmn[oowpp/?-;v<0==>?h!%0O1s23c7:;u</=3',-=>?.i!%/0S1w23d7^;<<=4',-l>.??.bJJnKKMNNNgO9PP(QQRRRrSSTUpUU,VVXYYZj[\]ab:defgQhi^iijjklKmn{opnruvGx}`T $$$$##  HIKLS T)UUUCVW^nopqq{rUss_tuPuvNvwhwUxyzN{|x|^qry^ qrx $(,3HLcx&6=DHOaqx| 04FJYdkz -AVr )=AHLSZahovz    ' + 3 7 ? G R Z b i n v ~     $ , 2 6 < @ F J P V \ b h n t z      & , 2 8 > D J P V \ b i p w ~ ^qss/syyyE/(хʒNNNMNMNMjg(+ #Map/8X% +&4Rev0Nпd]42[2[((/% ((MMF%%%%)Zip%3b333a_len3U`q)%33333U`qM3CharsXޛJ"4[ IntoIterinner>h9A]P[44(4[1[D&2["BI F& [99Splice9drain09 replace_with0ǺCƵE3"""Dropper"  L KK/h111 DropGuard1 0 $;#P[2222 1 ]bFs>>\>B&88TryReserveError8~E`888CapacityOverflow8 AllocError8layout8c%/Zs چ&BNonNull#CC8f $ _/GچTs Ljچ  bb߇grE3B LayoutError ډRS9}Ss ׉&ABBAEki?%&""""""""""4N4[576[6[%65[5N5[5[4[4[6[ {-P[4744[5[4[0[0[0[572[)[([QTsSs&Zs&77[77<N<<<7<[L[LLLNL7KKNK[K7KBNBB[?7?[?37888 Enumerate))məA388))məA380Nпd]8 J;((m78866[6N67;;;4[55[L5[@+@&MM[M7M[M[M[M7XX[XX7XN-1[D&575[0575[@@'2['"5575+5[@[@[)?[$%(%[$6["[51[4[444[00 ?A@i%dcore_intrinsicsderive_clone_copy0W-"f =\ 0W3~$crate::const_format_args*,Y fmt_internalsconst_fmt_arguments_new0WD4iq%d0W>5  0W) ,8eY)0WHрU  0WP0=uDm0W չi%d0Wqb$crate::panic::panic_2015 ;,libstd_sys_internals &&0W6z,Mqmk0WMc%Y)0WuGq I0Wƀ=u0W'R$k}O \ derive_eq 0WRm0W] b AbY)0W9څJ;  0W !q&yN.RlrU*bRE B\p>TODHT 0W;`%%0Wl̐tږ|0W[X0W>0WZ 0Wiu b4.0WT 60W 0W ѯz&30W E䊕0W C^ J0W/|0W(T0W!( D0W55":0W"Za0WxCL"$0W‰%?W0Wt *V 0W`-+`0W" ,8y0Wb㛄1_0W>Ff4TZs0Wp15`ܠ0WA969^0W{i39\0WaE0W{RZK0WXrt0Wk']d0W+P8\nN0WS4[B0W7E](30W1fc00W l|fD>0W@[lL}0Wo<0W|sL)P0WIs0Wz{}0Wߴ6C~jX:F0W&iD"0W(I~w0W!"Q /0W֚j: 0W_lx80WVn}y.T50Wzx&S!0Wsuv0W=E-($0WC(0Wet3H0W{".H80WHV=j@P0W:I80W8Z0Wm"Q0WVaׯ:[0WmDP 0WB+0W8) 0WGl0W?V J0W左hE0W 1 ڸX0WO>80WV0W|0W9܅C0W8j0W|8pG0WȄe0Wk0Wlcv2&0W60W'Sψ<0W0lvDg 0Wu}$Zjg0WcW*e! 0WZj_ؠy0W2i0WR?z@0WUOZJ)0Wr%j{M0W画40Wc00WIl`h0W@vtr|u0W6.X0W)900W5pl0Wba/0Wh#0W1n0WU &0Wd"Cw0WhKH(+0W2yTB0WܨHh0W Oσ0W@9w u30W rZ0Wu9Kxo0WO~J sf0W y0WLZ0W0Wr^? 0W]7GCʿ0W=30WQ{vV0Wc'0WVC}g70Wh g;0W&!b0WQ #I0WhXs's0W}!*dt0Wё+I0WOO*~0WSӗ-0W=5)i-rc0W |.i0W)2_Z70W%4K# x0WQ8CO0W 9SU0WbF:K60W T99r0W 59az0W)OT=0Wdr:ϒ 0Wd|>/J0Wr @%@z0WAG0Wo?Cz0WTl,B =0W;DP 0W.XD&0W8 Df0W;H80W@NCE0WYCN+0W_H3Q0W|-nVs?̰0WlXW1>0WO WI40WZC)Y0WCZ)~0WXc=ol0W>xc)0W@c0W7\hL 0W-ck@0W#l0W|PtlW"0W +g{0WZq>0Wr^`0WI5!0W,棯N20WgMG0W筴ƴ0WL?<9CH90WQ)q4=0W\e1!0WWo͏0Wvc8s0WNcd0WLNf0W(B0WB&6A0W_0W_.em0WfrY}rpfK]]bEw?HDgmubgt>-"&&1," N N1+;;=-4G@ -4G@ *$I?N!KM1''9J& ,2!)# ?]"&6O5) 3'4@bBJ+-C +# ?]"&62-77) 2'1@b>AB)"-C K3M ..$0. =8H #=8T #CN#A .#:&.'&54G =0"! `  4D2 := 8= C/%F# **=-EA*)&)&T&&..%3$E(%O%&%3$E(%O%& '%N/)OL@! =! 6+/31%$6>? O>KR 06/E.O8! "N#4A!M !)!;/,/,O6,\DDEQU!W=%UXW*O!I5..,1.1.TB&BRD*+^&&%)&)&MHW)(B&B0,eC;B>AD$D>B?D$ S C)355 2C*766 $%"K+> %A(yS9_/home/steffen/.cargo/registry/src/index.crates.io-6f17d22bba15001f/dissimilar-1.0.7/src/find.rs WSSCNLHLL`'PO<QNQ7IODP=M(77EOJGFBP7OO%KMQ#NON:;-QQK3KN<C!.HEE' %LQ ?PN2LOQ@ON' DB*; 55QNQQ?(OF@F3& 8%' '5." " 7:+5$"4" "+@67(LJCFOI78L6934$CB!#A&%C |nbsx,R87`/home/steffen/.cargo/registry/src/index.crates.io-6f17d22bba15001f/dissimilar-1.0.7/src/range.rs ߰/l*fOU5 D5#%'/@4* B9* 97U%D2B0F,(9)/ 7#"/>3,"Q )?76 (?1 &?  !?&CZ$SK_zV@ EFx86_64-unknown-linux-gnuD4Zd dissimilar-230cc7f8a223edad0W   ` `        < b